The ergonomic and hermetic software build system for Python, Java, Scala, Go, and Shell. Pants lets you fearlessly scale up your codebase.
Project description
Pants is an Apache2 licensed build tool written in Python and Rust.
The latest documentation can be found at pantsbuild.org.
2.17.x Release Series
2.17.0.dev4 (Apr 23, 2023)
New Features
-
javascript: Manage
npm
version with corepack (#18748) -
python_distribution
editable installs in exports (#18639)
User API Changes
-
Default to using the entire tool lockfile. (#18793)
-
Upgrade Pex to 2.1.134. (#18785)
-
Use the resolve's ICs for tools. (#18776)
-
Use Self backport in
BinaryPath
factory method. (#18763) -
Deprecate "Secondary Ownership" semantics (#18737)
-
Expand versions range for
ruff
+ upgrade it (#18707)
Plugin API Changes
Bug Fixes
-
The
OverridesField.compute_value()
must return a hashable value. (#18787) -
Dedup graph errors. (#18770)
-
Flush metadata to disk before renaming immutable store files (#18768)
-
Clear FSDB materialization cache when
remove
ing a file (#18747) -
Use address as stable key when batching field sets in
lint
/test
(#18725) -
Fix
repr
forField
s that don't definedefault
. (#18719) -
Add
ruff
lint rules (#18716) -
javascript: Use binary shims in nodejs sandboxes (#18682)
Documentation
-
Improve error location for invalid targets/target fields. (#18366)
-
Add info on how to configure Docker Desktop for using
docker_environment
(#18786) -
Update linter documentation to refer to
install_from_resolve
(#18781) -
docs: Fix typo on requirements-overrides code snippet (#18750)
-
Edit Python publishing docs for clarity. (#18718)
2.17.0.dev3 (Apr 10, 2023)
New Features
-
Helm: Add support for DNS lookups in Chart templates (#18670)
-
Include global Git ignore file and
.git/info/exclude
inpants_ignore
to ignore for file watching (#18649)
User API Changes
- Remove deprecated default ICs. (#18627)
Plugin API Changes
-
Move/Rename:
goals/setup_py.py
->{util_rules,goals}/package_dists.py
+subsystems/setup_py_generation.py
(#18702) -
Deprecate some
Request
types in favor ofGet()
with only one arg (#18655) -
Add support for
Get(MyType)
syntax with no input args (#18648)
Bug fixes
-
Adds a fully-qualified path to a Python interpreter for
pex_binary
RunRequest
s (#18699) -
Remove implicit conversion from
std::io::Error
toStoreError
(#18696) -
Add timeout to remote store calls, and adjust name of cache timeout. (#18695)
-
Makes
adhoc_tool
actually respect theextra_env_vars
field; adds tests (#18692) -
doc: Describe relevant error modes during rule compilation (#18663)
-
Bump minimum supported version of Pex to v2.1.129. (#18678)
-
Fix JVM resource JAR creation on older Mac OSes (#18673)
-
javascript: Do not read none mapped package.json files in javascript rules (#18523)
Documentation
-
Add PEP 621 pyproject.toml file docs (#18672)
-
Document AWS CDK issue that multiple users have encountered. (#18656)
-
Error when goals used without relevant backends activated (#18420)
-
Improve lockfile consumption error message. (#18638)
-
Remove a python-specific tip from the general prereqs page. (#18637)
-
Make UUID message clearer (#18561)
2.17.0.dev2 (Mar 31, 2023)
New Features
-
javascript: Test goal with package manager installed test runner support (#18554)
-
expose PANTS_VERSION and make it string-comparable (#18573)
User API Changes
- Upgrade Pex to 2.1.131. (#18626)
Bug fixes
-
Ensure that sandboxed processes exit before their sandboxes are cleaned up (#18632)
-
Plumb entire lockfile/internal only code through
create_pex_from_targets
(#18622) -
narrow pex_binary files warning (#18619)
-
Fix PexPEX invocations (#18610)
-
Improve debug information for docker auth, and expose an environment variable. (#18599)
Performance
- Only materialize immutable files once per process (#18600)
Documentation
-
Fix a string that should have been an f-string (#18608)
-
Fix
./pants
->pants
in some docs and help strings. (#18596)
2.17.0.dev1 (Mar 24, 2023)
New Features
-
engine: add an option to clear the destination directory when writing digest to disk (#18534)
-
javascript: NodeJS bootstrapping via binary paths, PATH, asdf or nvm (#18520)
-
javascript: Initial NPM support (#18326)
-
Always provide Python-for-Pants-scripts (#18433)
User API Changes
-
Upgrade Pex to 2.1.130. (#18576)
-
Deprecate old-style custom tool lockfiles. (#18494)
-
Let a user resolve shadow a tool lockfile of the same name (#18481)
Bug fixes
-
Ensure that a symlinked exported venv exists and is valid. (#18575)
-
Fail fast for attempts to use
test --debug
with a docker environment (#18560) -
Declare ruff outputs as files. (#18551)
-
Add support for Docker registry auth (#18541)
-
Fix Poetry req synthesis for URLs with markers. (#18535)
-
Re-enable hardlinking using
fclonefileat
on macOS. (#18501)
Performance
-
Materialize "large" files in a new store location and hardlink them in sandboxes (#18153)
-
Finish parallelizing materialization of Process inputs (#18469)
Documentation
-
First pass at
adhoc_tool
documentation (#18531) -
Add Tobias Nilsson to team page (#18571)
-
docs: fix an f-string in help (#18539)
-
Clarify that
experimental_
shell functions are deprecated and replaced (#18529) -
Update docs on running pants from sources with scie-pants. (#18513)
-
Add ExoFlare to user list. (#18496)
-
Fix malformed pantsbuild/example-python link in documentation (#18484)
-
update scie-jump cache directory reference (#18485)
-
Expand lockfile documentation to its own page. (#18471)
2.17.0.dev0 (Mar 10, 2023)
New Features
-
Expose environment information on process metadata (#18458)
-
Support running
pants
from anywhere in the project. (#18412)
User API Changes
Bug fixes
-
Preserve environment variables in
pantsd
to allow Docker auth. (#18465) -
Only expose the equiv of
from typing import *
in prelude files (#18452) -
Support type hints in prelude files. (#18442)
-
Synthesized lockfile targets should never err on missing lockfiles. (#18406)
-
Fixes to visualisations for xdot (#18421)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp39-cp39-manylinux2014_x86_64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp39-cp39-manylinux2014_x86_64.whl
- Upload date:
- Size: 70.3 MB
- Tags: CPython 3.9
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e86f5731f35e8d07131cd749ee30c3ed3abe9957286ed0e97697444a66dc820f |
|
MD5 | 1e30239cb95b7b3e2cca4dc95afb0ec7 |
|
BLAKE2b-256 | 389f22e04326d150c83b5ffe27ae4c766e7a3d3c17297d2be36df7da70984d6d |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp39-cp39-manylinux2014_aarch64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp39-cp39-manylinux2014_aarch64.whl
- Upload date:
- Size: 69.5 MB
- Tags: CPython 3.9
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 385bcbf8df597a92c485ccbfe06c38fb390ba9ef3175572cd74f991eb08d1bde |
|
MD5 | db033e4f6074a1bf30fdccb83dbed8ab |
|
BLAKE2b-256 | bbf442f022fa7fbe5b9eecb56f67eba9ce475fd09ec2a42179a027fb75bb62e3 |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp39-cp39-macosx_11_0_arm64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 12.1 MB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3cd8920d6ede615e0744d2190a574f07a8fe7d73d8c0cced3a47222ff290775f |
|
MD5 | 3efd17bf2554ddbf0b63f7dbb4a4d2c0 |
|
BLAKE2b-256 | f1dc984e1f7e3b5414d034315fbe4b74af34bb3af462cad8b6dacad45128328d |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp39-cp39-macosx_10_15_x86_64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp39-cp39-macosx_10_15_x86_64.whl
- Upload date:
- Size: 12.4 MB
- Tags: CPython 3.9, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9eb47488f17ff505a210826756cdee7df055e61a6e3359c98a145db28c90c124 |
|
MD5 | 82a9045f200061d230832b80f8ac7e88 |
|
BLAKE2b-256 | 162c83273167aa93a1b26aa0b9e1cb367482b1b39877c0e5502c52b0d48c6ef4 |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp38-cp38-manylinux2014_x86_64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp38-cp38-manylinux2014_x86_64.whl
- Upload date:
- Size: 70.3 MB
- Tags: CPython 3.8
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a778c26062938b683d09117188c60bf00ff32bd268e7529bc7b5c797515e29a4 |
|
MD5 | 2b677385212211456668552cf8e408b8 |
|
BLAKE2b-256 | 803219b106749489f36be6b4e4161e52e66c35a1b0c2cfcccbbb34755a726d5b |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp38-cp38-manylinux2014_aarch64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp38-cp38-manylinux2014_aarch64.whl
- Upload date:
- Size: 69.5 MB
- Tags: CPython 3.8
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c9a437074d57ac59b2dde24f182e49aa399fcc58d6a485cd8714b1bc0521943 |
|
MD5 | c835da593ce86456f9a216c4cad7111d |
|
BLAKE2b-256 | ffdafe6f20d90ed448931a992fd9428e33bb0c7e514af9d378379a6cbfbece27 |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp38-cp38-macosx_10_15_x86_64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp38-cp38-macosx_10_15_x86_64.whl
- Upload date:
- Size: 12.4 MB
- Tags: CPython 3.8, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22d82bca4ce4ebf08e62c9cbbe550c1acf97328bd0686c987377298437aa2f82 |
|
MD5 | 5c7421a5614fd9ef801c59bb95706da1 |
|
BLAKE2b-256 | 1beb9f879f5df242d5158466c1f39c690d20c184ebaccc3fd60552a0245fe8f0 |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp37-cp37m-manylinux2014_x86_64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp37-cp37m-manylinux2014_x86_64.whl
- Upload date:
- Size: 70.3 MB
- Tags: CPython 3.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd80c9424510855a1a4408e3cd5ec93a104ff62fd1cabeb7f686fc61f716b78 |
|
MD5 | 481a406ae1eefadee3fe5ce9af10b331 |
|
BLAKE2b-256 | 4b29d4e6ac80d39842d80ed2a79befabf7ffce437b47f2ecf92f789364879ae4 |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp37-cp37m-manylinux2014_aarch64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp37-cp37m-manylinux2014_aarch64.whl
- Upload date:
- Size: 69.5 MB
- Tags: CPython 3.7m
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | db83a9a3ba9e16d2d2572c5b4063ff1c02c8ee3228b66904bac94477c51b49ab |
|
MD5 | 3ca701dcca0a5137ff10326c8edf9773 |
|
BLAKE2b-256 | f719e5cbe347c939cb3bcc0d47c85fb5c0ee731867d36e64f0a0f7c59b2486ed |
File details
Details for the file pantsbuild.pants-2.17.0.dev4-cp37-cp37m-macosx_10_15_x86_64.whl
.
File metadata
- Download URL: pantsbuild.pants-2.17.0.dev4-cp37-cp37m-macosx_10_15_x86_64.whl
- Upload date:
- Size: 12.4 MB
- Tags: CPython 3.7m, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 22e399e0117b43ad22fb7250ed2e2a21fb477cba43731a3a7294abea630ff5ce |
|
MD5 | 85fe83c180f32636df33dcd0b4791c8a |
|
BLAKE2b-256 | 17acaeccb9f3899a2aa4048ab3aef10e2b7f731b598775219a0f6fa572903524 |