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.16.x Release Series
2.16.0.dev6 (Jan 29, 2023)
New Features
-
go: add
environmentfield togo_binary(#18113) -
Add experimental backend for ruff with lint and fmt goals (#17945)
-
Add support for
fmtcue files. (#18106) -
Add new experimental backend for CUE with initial support for the
lintgoal. (#17943) -
Add yamllint as a lint tool for YAML sources (#17821)
-
lint: add pydocstyle python backend (#17596)
User API Changes
- Upgrade Pex to 2.1.121. (#18037)
Plugin API Changes
-
Make the python dep inference script extensible. (#17997)
-
Remove some dead code from
lockfile.py(#18041)
Bug fixes
-
Inject a path-safe target spec into
experimental_shell_commandetc processes (#18092) -
docker: Allow overriding FROM args when determining upstream image dependencies (#18009)
-
Make mypy cache per-repo (#18043)
-
Fix caching of PATH lookups in remote execution (#18026)
Documentation
-
docs: make tutorials to get started writing plugins visible on readme pages (#18083)
-
Document new pants launcher binary, aka scie-pants. (#18056)
-
Front matter for new tutorial pages. (#18074)
-
Cosmetic fix for current value information in help output for pass-through arguments. (#18051)
-
docs: add pydocstyle to the docs and help reference (#18033)
-
docs: add tutorial to get started writing plugins: No 3 (#18018)
2.16.0.dev5 (Jan 16, 2023)
New Features
-
New
env()BUILD file function. (#17652) -
Support REPL command history. (#17959)
-
Resolve Python dep inference ambiguity via locality. (#17931)
-
Add targets to re-wrap source files in different
SourcesFieldtypes. (#17877) -
Allow plugins to add custom schema/authority URL handler rules (#17898)
-
Support freezing command line args and env vars into pex binaries. (#17905)
-
Support catching
@ruleerrors (#17911)
User API Changes
-
Ugrade Pex to 2.1.120 (#17957)
-
Adds
workdirfield forexperimental_shell_commandand friends (#17928)
Bug fixes
-
Let pyright see dependencies in other source roots. (#18014)
-
go: gather and link transitive prebuilt object files for cgo mode (#17971)
-
add skip_pyright field to python test targets (#17960)
-
Allow
experimental_shell_command/experimental_run_in_sandboxto specifyoutput_s from anywhere under the buildroot (#17938) -
Do not load the BUILD file prelude (macros) in the bootstrap scheduler. (#17939)
Documentation
-
WSL disclaimer in Getting Started/Prerequisites (#18000)
-
Add Daniel Goldman and Darcy Shen to team page (#17921)
-
Clarify runtime vs. complete_platforms for serverless. (#18001)
-
docs: add tutorial to get started writing plugins: No 2 (#17890)
-
docs: generate a JSON schema file to be used in IDEs when editing pants.toml (#17915)
-
docs: fix markdown inline code typo in a docstring (#18002)
-
fix type in
checkhelp output (#17969) -
Document how to update the pants script. (#17976)
-
Add Kaiko to "who uses Pants" page. (#17949)
-
docs: provide a link to Google Cloud Function in the backend docstring (#17948)
-
docs: add info about beta stage support of protobuf for Scala and Java (#17935)
-
docs: add the first tutorial on writing plugins to readme docs directory (#17930)
-
docs: reformat the kotlin docs to have better line breaks on readme.com (#17929)
-
Update and reorganize resource hub (#17922)
-
Add Payhere to user list. (#17917)
-
Nudge more technical support toward GH Discussions (#17906)
-
go: update docs to remove caveats about implemented features (#17913)
2.16.0.dev4 (Dec 30, 2022)
New Features
-
Add [buf] config and config_discovery options (#17885)
-
New help topic:
backends. (#17600) -
Make pants work when the uid doesn't map to a user. (#17881)
-
Make JVM sources runnable (#17847)
-
Support
python_requirementas arun/experimental_run_in_sandboxtarget (#17864) -
Support
experimental_run_in_sandbox/./pants runforjvm_artifacttargets (#17827) -
go: support the
go testprofiling options (#17836) -
Add output_path field to python_distribution. (#17841)
User API Changes
-
Upgrade default mypy-protobuf version to 3.4 (#17887)
-
allow each resolve to be exported for multiple python interpreters (#17711)
-
More default Python module mappings. (#17879)
-
Make export cleanup a subset of
dist/export, not the whole thing (#17849) -
Unify the messages for lockfile validation errors. (#17842)
-
Unify validation of tool and user lockfile metadata. (#17834)
-
Detect Pants-generated lockfiles before attempting to validate. (#17833)
Plugin API Changes
-
Remove
immutable_input_digestsfrom shell code (#17886) -
Default
use_pantsdtoFalseinrun_pants(#17874) -
Remove the ToolCustomLockfile/ToolDefaultLockfile classes. (#17843)
Bug fixes
- scala: support scala v3 which has different compiler/library artifacts (#17855)
Performance
-
Bring back hardlinking big files (#17878)
-
Don't invalidate watched files if non-perms metadata changed (#17875)
Documentation
-
docs: mention name clashing between custom goals and options when writing plugins (#17899)
-
docs: add tutorial to get started writing plugins: No 1 (#17732)
-
Document batched
pytestexecution. (#17845) -
Tweak the docs about defaults. (#17829)
-
docs: extend python test goal with info on collecting tests with pytests (#17894)
2.16.0.dev3 (Dec 16, 2022)
New Features
-
Allow targets that implement
RunFieldSetto be executed in the sandbox for side-effects (#17716) -
python_requirementstarget generator can parse PEP 621 pyproject.toml files (#16932)
User API Changes
-
Bump default version of shfmt from 3.2.4 to 3.6.0 (#17777)
-
An enum of Python export formats. (#17800)
-
Add export-codegen goal to more backends (#17773)
-
Adds
execution_dependenciesforexperimental_shell_command(#17743)
Plugin API Changes
- Remove boilerplate for run and test plugins (#17774)
Bug fixes
-
go: detect when
go.sumneeds additional entries filled in (#17811) -
go: pass module sources through to linker if
${SRCDIR}is referenced (#17780) -
go: improve options passed to assembler invocations (#17796)
-
Explicitly use "python" ijson backend (#17787)
-
Do not clear the
pantsdlog while restarting (#17783) -
Restore support for :all: in
only_binary/no_binary. (#17779) -
go: remove notion of separate
__obj__directory (#17775) -
Visibility: empty selector should match no target. (#17763)
-
[Visibility]
**/..globs can match root level files (#17681) -
Visibility: fix rules path for generated targets. (#17760)
Documentation
-
Documentation for the new visibility rules (#17632)
-
Add Doctrine's eng blog post and example repo to resource hub. (#17810)
-
Add Astranis to user list. (#17812)
-
Add Doctrine to user list (#17793)
-
Doc: update
Getdocstring for multiple inputs. (#17730)
2.16.0.dev2 (Dec 08, 2022)
New Features
-
go: use target spec for coverage output directories plus support import path (#17734)
-
go: add
assembler_flagsfield for adding arbitrary extra assembler flags (#17731) -
Expose target field defaults in BUILD files. (#17649)
-
Add a new "preamble" plugin (#17682)
-
go: support code coverage over multiple packages during single test (#17701)
-
go: add
linker_flagsfield togo_modandgo_binarytarget types (#17697) -
go: add
compiler_flagsfield for adding arbitrary extra compiler flags (#17683)
User API Changes
-
Include transitive requirements missing for
python_distribution. (#17594) -
Extend default module mapping for Python 3rd-party dependency inference: pysocks and atlassian-python-api (#17654)
Bug fixes
-
Test DebugAdapter requests, and fix issues (#17678)
-
chdir in
rule_runner.run_interactive_process(#17722) -
More precise running workunit for processes executing remotely (#17719)
-
Don't strip the input of a
DictOptionfile config (#17705) -
Visibility rules: error if more than one declaration per BUILD file. (#17669)
-
Allow JVM source to depend on relocated_files target (#17005)
-
Fix bug in Go test result exit code interpretation. (#17661)
Performance
Documentation
-
Doc fixes and updates: (#17708)
-
docs: tidy up Writing plugins : rules-api directory files (#17710)
-
Update docker docs to clarify dependency handling. (#17655)
2.16.0.dev1 (Nov 27, 2022)
New Features
-
go: address sanitizer support (#17651)
-
go: add support for C/C++ memory sanitizer (#17644)
-
shell: add
experimental_test_shell_commandfor arbitrary shell-driven tests (#17640) -
support Go data race detector (#17510)
-
Add
Field.none_is_valid_valuebool class var option. (#17577)
User API Changes
Plugin API Changes
- Remove deprecated Platform.current. (#17646)
Bug fixes
-
Fix twine env vars propagation for
publishgoal. (#17650) -
Support
source=Nonefordocker_imagetargets. (#17578) -
Specify local environment for python source analysis goal (#17603)
-
go: allow use of
go_asm.hassembly header in assembly files (#17611) -
Visibility rule glob tweaks for
*and**(#17588)
Documentation
-
Fix broken docs links to manual build instructions (#17608)
-
Docs: improve docs on handling option values in cli (#17506)
2.16.0.dev0 (Nov 19, 2022)
New Features
-
Add
environment=toexperimental_shell_command. (#17575) -
Add debug goals to python (#17057)
-
Target visibility rules (#17401)
-
Emit a
__run.shinto InteractiveProcess sandboxes. (#17532) -
Support newer pip versions. (#17555)
-
New dependency rules Plugin API (#17550)
-
Export metadata about a packaged docker image (#17299)
-
Don't require hardcoded name in
python_distribution.provides(#17522) -
Add
per_platformobject (#17334) -
Process output capturing is symlink-aware (#17496)
-
go: introduce
GoBuildOptionsandcgo_enabledfield (#17475) -
Disambiguate Python module providers by level of ancestry. (#17489)
-
go: support ".syso" prebuilt object files (#17479)
-
Add Docker registries
use_local_aliasconfiguration option. (#17265) -
Proposal for supporting Jar shading rules (#17251)
-
A --resolve flag, to specify the resolves to export. (#17416)
-
Handle duplicate JAR entries in
deploy_jar(#17419)
User API Changes
-
Upgrade default version of golangci-lint to 1.50.1 (#17574)
-
Deprecate the old export semantics. (#17465)
-
Add
restartablefield topython_sources(#17400) -
Deprecate the
# Dependeescolumn name in the py-constraints summary. (#17399) -
Rename the dependees goal to dependents. (#17397)
-
Rename --changed-dependees to --changed-dependents (#17395)
Bug fixes
-
Allow for
run --debug-adapterto match breakpoints when source is running in a sandbox (#17566) -
Created an
NpxToolBaseas an inheritable Subsystem fornodejstools (#17567) -
Fix loading of
SymlinkNodesfrom theStore. (#17549) -
Do not try to create
""output directory inCreateArchive(#17538) -
Persist digests before emitting them in
fs_util(#17525) -
Fix memoization of
CoarsenedTarget.closure(#17516) -
Support parsing targets from additional paths not containing BUILD files. (#17451)
-
Ensure lockfile target exists before injecting a dependency to it. (#17365)
-
Ensure correct eq/hash semantics for PythonArtifact. (#17484)
-
Isolate config seed values from the DEFAULT section. (#17474)
-
Fix poorly understood stdout redirection issue. (#17471)
-
Fix propagation of the remote-execution-append-only-caches path (#17469)
-
Pyright should grab non-transitive dependencies and make them available in the sandbox (#17235)
-
Plumb symlink support through the Pants engine (#16844)
-
Flip the default for
pullondocker_imagetoFalse(#17459) -
Merge pytest addopts (#16614)
-
Fix dep inference from
shuint2_teststargets. (#17417) -
Fix
EnvironmentNameused intestruns (#17412) -
Add the m1 homebrew bin dir to the system binary search path. (#17411)
-
Restore debug hints for
testexecution (#17406)
Performance
-
Skip loading of local cache data when possible (#17495)
-
Symlink site-packages into
pylintvenvs when possible. (#17488) -
Filter coarsened targets to only those that are relevant in
pylintrunner rule (#17487)
Documentation
-
correct docs: direnv can't save ulimit (#17561)
-
Update team pages for SJ and Dan! (#17534)
-
Fix line breaks in a docs page. (#17527)
-
Clarify how
__defaults__apply to target generators. (#17493) -
Fix typo in docs: debug-adaptor should be debug-adapter (#17452)
-
Update
nuke_if_too_bigdocumentation (#17429) -
Fix version templating in
vcs_versiondocs (#17423)
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.16.0.dev6-py3-none-any.whl.
File metadata
- Download URL: pantsbuild.pants.testutil-2.16.0.dev6-py3-none-any.whl
- Upload date:
- Size: 26.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.7.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61b22434dcd0cf8094a8ac67b92529d10b8fe20fe542a9243fa7724aa0db7eb1
|
|
| MD5 |
3f2c109fe7c267d7ef4eb9d8da88683b
|
|
| BLAKE2b-256 |
f9bc062046225c6dcd332d45aba8bf0ed144a1f1b6949d102b2da5893b2d5329
|