Pants v2: Fast, consistent builds for Python and more

Welcome to the Pants v2 documentation hub!

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

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

Get Started

grpc_python_plugin

The gRPC Protobuf plugin for Python.

Config section: [grpc_python_plugin]

Basic options

None

Advanced options

--grpc_python_plugin-version=<str>
PANTS_GRPC_PYTHON_PLUGIN_VERSION
version
default: 1.32.0

Use this version of grpcpythonplugin.


--grpc_python_plugin-known-versions="['<str>', '<str>', ...]"
PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS
known_versions
default:
[
  "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304",
  "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728"
]

Known versions to verify downloads against.

Each element is a pipe-separated string of version|platform|sha256|length, where:

  • version is the version string
  • platform is one of [darwin,linux],
  • sha256 is the 64-character hex representation of the expected sha256
    digest of the download file, as emitted by shasum -a 256
  • length is the expected length of the download file in bytes

E.g., 3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813.

Values are space-stripped, so pipes can be indented for readability if necessary.


--grpc_python_plugin-url-template=<str>
PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE
url_template
default: https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin

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.


--grpc_python_plugin-url-platform-mapping="{'key1': val1, 'key2': val2, ...}"
PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING
url_platform_mapping
default:
{
  "darwin": "macos",
  "linux": "linux"
}

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 {&quot;darwin&quot;: &quot;apple-darwin&quot;, &quot;linux&quot;: &quot;unknown-linux&quot;}, and run Pants on Linux, then {platform}` will be substituted in the --url-template option with unknown-linux.


Deprecated options

None

Updated about a month ago


grpc_python_plugin


Suggested Edits are limited on API Reference Pages

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