Test support for writing Pants plugins.
Project description
Pants is an Apache2 licensed build tool written in Python and Rust.
The latest documentation can be found at pantsbuild.org.
2.12.x Release Series
2.12.0rc1 (May 23, 2022)
New Features
-
Allow turning off
exportof Python tools likeblack(Cherry-pick of #15509) (#15511) -
Support relative address syntax for JVM compiler plugin artifacts (Cherry-pick of #15462) (#15468)
User API Changes
- Upgrade Pex to 2.1.88. (Cherry-pick of #15484) (#15485)
Bug fixes
-
Fix incorrect digest for JVM multiple
jvm_artifact(.., jar=..)entries (Cherry-pick of #15571) (#15611) -
Record Scala
package objectas provided name (Cherry-pick of #15582) (#15608) -
Don't give a subsequent formatter an empty snapshot after skipping (Cherry-pick of #15483) (#15602)
-
Fix lockfile generation for Docker and Terraform to not require Python backend (Cherry-pick of #15453) (#15604)
-
Fix Scala inference not inferring a symbol name after a function call (Cherry-pick of #15565) (#15603)
-
Fix non-deterministic order of
jvm_artifact(.., excludes=..)(Cherry-pick of #15542) (#15575) -
Fix JVM resource classification and artifact grouping (Cherry-pick of #15567) (#15573)
-
Fix
tagfiltering with--changed-dependees(Cherry-pick of #15546) (#15564) -
Improve
name=used forpython_requirementstarget generators withtailor(Cherry-pick of #15507) (#15519) -
jvm: don't generate default tool lockfiles (Cherry pick of #15488) (#15498)
-
jvm: fix incorrect check for root-only
ClasspathEntryRequestimplementations (Cherry pick of #15494) (#15496) -
kotlin: the
plugin_idfield onkotlinc_plugintarget is optional (Cherry-pick of #15459) (#15466) -
kotlin: remove stray scala references (Cherry-pick of #15461) (#15465)
Performance
lintonly finds targets and files if the relevant linters were specified (Cherry-pick of #15579) (#15601)
2.12.0rc0 (May 13, 2022)
User API Changes
-
Upgrade default Protoc version to 3.20.1 (native Apple Silicon support) (Cherry-pick of #15424) (#15441)
-
Require that a target's
interpreter_constraintsare a subset of their dependencies' (Cherry-pick of #15373) (#15407)
Plugin API Changes
- Move
get_gitdeprecation to start in2.14.0.dev0(Cherry-pick of #15423) (#15437)
Bug fixes
-
Fix
tagsto work with filesystem arguments,overridesfield, andpython_tests(Cherry-pick of #15394) (#15412) -
Support the
{chroot}env placeholder for all interactive processes that are not executed in the workspace. (Cherry-pick of #15401) (#15405) -
Fix
[]in file names with target generators (Cherry-pick of #15383) (#15403) -
Fix
tailordetection of existingpython_requirementstargets (Cherry-pick of #15363) (#15372) -
Add the "named args explanation" to other relevant
parametrizeerror messages. (Cherry-pick of #15362) (#15370) -
Use abspath to sandbox in PATH for docker tool shims. (Cherry-pick of #15341) (#15356)
-
Fix non-determinism of
package_datain generatedsetup.pyfiles (Cherry-pick of #15292) (#15299) -
Fix a bug in the python venv export logic. (#15294) (#15297)
Performance
- Eagerly skip tools with default lockfiles in
export-lockfilesgoal (Cherry-pick of #15304) (#15308)
Documentation
-
Improve error message for
dependencieson incompatible Python resolves (Cherry-pick of #15416) (#15439) -
Improve
helpand error message for[python-infer].unowned_dependency_behavior(Cherry-pick of #15334) (#15391) -
Disallow
!patterns inbuild_ignore. (Cherry-pick of #15366) (#15368) -
Improve error message for resolves x interpreter constraints issues (Cherry-pick of #15314) (#15364)
-
Fix error output of
parametrize()(Cherry-pick of #15339) (#15348)
2.12.0a0 (Apr 29, 2022)
New Features
User API Changes
- Upgrade Pex to 2.1.84. (#15288)
Plugin API Changes
-
Allow for arbitrary suffixes when extracting (#15257)
-
Add lz4 support to archive extraction (#15245)
Bug fixes
-
Simplify BSP metadata merging, and handle the empty list. (#15283)
-
BSP resolve filtering observes computed default values of resolve fields (#15282)
-
Memoize equality for
CoarsenedTarget(s)to avoid exponential runtime incheck. (#15277) -
Fix ambiguity of Scala
package objects withclassorobjectdefinitions (#15265) -
Fix issue with Docker publish when using
[docker] tools. (#15255) -
Do not lowercase Docker image tags. (#15254)
-
Fix the placement of the pex verbosity args. (#15243)
-
Fix use of
@in path names. (#15226) -
Fix lockfile generation for duplicate
jvm_artifacttargets withjarfields. (#15219) -
golang: add more cache keys based on tool IDs (#15205)
-
Mention resolve when partitioning Mypy and Pylint (#15172)
Performance
MyPyandPylintpartition inputs viaCoarsenedTarget(#15141)
Documentation
-
Fix
ProtobufSourcesOverridesFieldhelp message (#15272) -
Update
helpfor python resolves with recent improvements (#15228) -
Improve cache-related error message to be less confusing (#15202)
-
Show
experimental-bspgoal in help (#15208)
2.12.0.dev3 (Apr 16, 2022)
New Features
-
Address specs for parametrized target templates expand to their created targets (#15126)
-
Implement
publishgoal for Helm charts (#15042) -
add experimental kotlin backend to distribution (#15109)
-
Support pip-style VCS requirements. (#15097)
User API Changes
Plugin API Changes
-
Throw a
DuplicateRuleErrorwhen there are conflicting rules in a module. (#15073) -
Expose
GitWorktreeas an@rule(#15030)
Bug fixes
-
Fix Requires-Python for pantsbuild.pants wheel. (#15149)
-
Allow dashes in inferred asset strings (#15123)
-
Fix when the same
python_requirementdefines both type stub and implementation (#15121) -
Fix missing field check in go protobuf rules (#15105)
Documentation
-
Last round of softwrapping help strings (#15142)
-
Softwrapping a few more files (#15138)
-
Softwrap python backend help strings (#15137)
2.12.0.dev2 (Apr 11, 2022)
New Features
-
Support for env var interpolation in config files. (#15087)
-
Support for finer control over which Docker images to push. (#15000)
-
Add a helpful hint to
lintif a formatter fails (#15048) -
Add support for Helm 3rd party dependencies (#14964)
User API Changes
-
Default
[python].lockfile_generatorto Pex (#15074) -
Upgrade Pex to 2.1.78. (#15078)
-
terraform: remove
terraform_modulesgenerator target type (#15035) -
Upgrade to Pex 2.1.77. (#15015)
-
Change JVM defaults to use Temurin JDK distribution (#15009)
Plugin API Changes
-
Remove deprecated
register_optionssupport. (#15090) -
Remove deprecated target generator API affordances. (#15091)
-
Add
@rule_helperdecorator, which participates in awaitable collection (#15025)
Bug fixes
-
Enable codegen on relocated files (#15100)
-
Preserve tombstones for workunits which complete while they still have children (#15088)
-
Clean the export dir under dist/ before populating it. (#15068)
-
Do not use a repository-PEX if a PEX has platforms specified (#15031)
-
Fix default layout and use of PEX-repositories for legacy lockfiles (#15014)
-
Pin pytest 7.0.1 (#14997)
Documentation
-
files/dirs swapped in Snapshot's repr (#15101)
-
Tweak deprecation messages. (#15027)
-
Add some codegen and terraform backends to docs generator (#15036)
-
Text in angle brackets needs to be escaped for the docsite. (#15046)
-
Fix presented provider backend for rules/subsystems. (#14999)
2.12.0.dev1 (Apr 05, 2022)
New Features
-
Support restricting specific requirements to just wheels or just sdists. (#14985)
-
Add support for Helm unittest (#14849)
-
Add support for parsing address parameters to CLI specs parsing (#14949)
User API Changes
-
Merge list values across config files. (#14850)
-
Write test reports to a standard location under the distdir. (#14929)
-
Upgrade Pex to 2.1.76. (#14992)
-
Upgrade coursier to v2.1.0-M5-18-gfebf9838c (#14978)
Plugin API Changes
-
"Unify"
fmtandlintrules for formatters (#14903) -
Refactor
prior_formatter_resultand its usage (#14987) -
Deprecate not implementing
TargetGeneratorinGenerateTargetsRequestimplementors. (#14959)
Bug fixes
-
add go protobuf backend to init/BUILD (#14979)
-
Fix Pylint config check strings (#14946)
-
Fix missing
checkoutput by allowing disabled workunits to re-enable themselves (#14934) -
Fix unrecognized field error and
update-build-filesto handle target generator moved fields (#14847)
Performance
- Make PEX lockfile subsetting incremental (#14944)
Documentation
- Don't warn if no relevant targets in glob or --changed. (#14904)
2.12.0.dev0 (Mar 25, 2022)
New Features
-
Add Protobuf formatting using buf format (#14907)
-
add registration for the Go Protobuf backend (#14874)
User API Changes
-
Remove
--use-deprecated-python-macrosin favor of always using target generators (#14842) -
Add
django-dotenv,django-safedeleteandfactory-boyto default Python module mapping (#14848) -
Add cattrs to Python's DEFAULT_MODULE_MAPPING (#14845)
-
hcl parser 3.0.5 (#14878)
Plugin API Changes
- FmtResult now operates on Snapshots (#14865)
Bug fixes
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 Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pantsbuild.pants.testutil-2.12.0rc1-py3-none-any.whl.
File metadata
- Download URL: pantsbuild.pants.testutil-2.12.0rc1-py3-none-any.whl
- Upload date:
- Size: 24.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23371f34c7a39b37c770f9ad19e9136f6fa4928eca0c91361fe785a4326b9716
|
|
| MD5 |
d013da17e0487315ed9a064f649a120c
|
|
| BLAKE2b-256 |
1bf4fa7d4777170bf3836b6de6dfb11c96ea563a86b42111aadd17c397f916fb
|