pants

The Pants Build System

APACHE-2.0 License

Downloads
117.9K
Stars
3.1K
Committers
342

Bot releases are visible (Hide)

pants -

Published by stuhood over 2 years ago

Bug fixes

  • Apply parameter filling for parametrized dependencies to excludes, and fix accommodation for file-addressed atom targets (Cherry-pick of #16249) (#16251)

  • [internal] Refactors output_field to default to something that disambiguates on parametrized fields (cherry-pick of #16232) (#16248)

pants -

Published by stuhood over 2 years ago

Plugin API Changes

  • Generically compute dynamic defaults for Fields (Cherry-pick of #16206) (#16220)

Bug fixes

  • Fix scala plugins args order causing cache issues (Cherry-pick of #16228) (#16233)

  • Fix explicit dependencies of parametrized targets not working for some target types (Cherry-pick of #16197) (#16213)

  • Fill address parameters in all cases, rather than only when a consumer is parametrized. (Cherry-pick of #16198) (#16211)

  • Use filelists to make archive creation tasks more reliable (Cherry-pick of #16183) (#16185)

Documentation

  • Document the "fromfile" feature. (cherrypick of #16205) (#16207)
pants -

Published by stuhood over 2 years ago

User API Changes

  • Fix poetry locks missing hashes. (Cherry-pick of #16112) (#16114)

Bug fixes

  • Fix defaulting of parameters in explicitly specified deps on parametrized targets for AsyncFieldMixin (Cherry-pick of #16176) (#16179)

  • Improve memoization of interpreter constraints, Python parsing, and request classes (Cherry-pick of #16141) (#16153)

  • Fix pantsd TTY handling. (Cherry-pick of #16038) (#16047)

Documentation

  • Updates installation docs to refer to the 1-step setup script (Cherry-picks of #16149) (#16157)

  • Add 2.12 changelog to docsite (cherrypick #16136) (#16138)

  • Update docs with 2.12 changes: default Pex lockfile generator, pants.toml env var interpolation, pip VCS requirements, and Python interpreter constraints (Cherry-pick of #16000) (#16059)

  • Fix CI provider table rendering. (cherrypick of #16051) (#16061)

  • Document Docker registries configuration options for skip_push and extra_image_tags. (Cherry-pick of #16015) (#16021)

  • Bump 2.12 install version (#16002)

pants -

Published by benjyw over 2 years ago

User API Changes

  • Revert "Upgrade Pex to 2.1.95. (#16110)" (#16125)

  • Add a lock for the Poetry tool. (#16117)

  • Upgrade Pex to 2.1.95. (#16110)

  • Fix poetry locks missing hashes. (#16112)

  • java/avro: inject runtime library dependency (#15904)

Bug fixes

  • Fix issue with __defaults__ not propagating over gaps in the tree of BUILD files. (#16089)

  • Write to caches during backtracking (#16078)

  • Record ongoing backtrack attempts (#16075)

Documentation

  • New doc explaining vcs_version. (#16092)

  • Fix typo in warning for [python].resolve_all_constraints (#16068)

pants -

Published by jsirois over 2 years ago

New Features

  • Add support for extra env variables in go tests (#16013)

  • Add ability to run any PythonSourceField (#15849)

  • Add --debug-adapter flag to run (#15829)

User API Changes

  • Correct deprecation warning for addressing pex_binary targets by filename to 2.15 (#16056)

  • Default scala-infer force_add_siblings_as_dependencies to False. (#16031)

  • Upgrade Pex to 2.1.94. (#16029)

  • Remove python-infer inits option. (#16036)

  • Remove golang expected_version option. (#16033)

  • Remove the filter goal. (#16032)

  • Default --use-deprecated-pex-binary-run-semantics to False. (#16034)

  • Default python tailor_pex_binary_targets to False. (#16035)

  • Deprecate not setting tailor_pex_binary_targets explictly (#15962)

  • tailor and update-build-files require specifying CLI arguments (#15941)

  • Upgrade default version of black to 22.6.0 (#15960)

  • Upgrade default version of pyupgrade to 2.34.0 (#15956)

Plugin API Changes

  • fmt plugins can add new files (#15846)

  • Pants internally uses dedicated Sources and Dependencies fields (#16037)

Bug fixes

  • Fix pantsd TTY handling. (#16038)

  • revert REAPI batch API PRs (#16016)

  • Backtrack through calls from @rules to synchronous engine methods (#15979)

Documentation

  • Fix CI provider table rendering. (#16051)

  • Update docs with 2.12 changes: default Pex lockfile generator, pants.toml env var interpolation, pip VCS requirements, and Python interpreter constraints (#16000)

  • Fix alpha release email template typo. (#16027)

  • Document Docker registries configuration options for skip_push and extra_image_tags. (#16015)

  • Update Python documentation with 2.11 changes (#15857)

  • Update the docs for fmt and test report changes (#15968)

  • Use Markdown h3 for ToC support (#15964)

  • Direct people to a quick form before they join Slack. (#15957)

pants -

Published by jsirois over 2 years ago

New Features

  • Add ability to run any PythonSourceField (Cherry-pick of #15849) (#16022)

  • Add --debug-adapter flag to run (Cherry-pick of #15829) (#15988)

  • Add repository config option to Docker registries. (Cherry pick of #15884) (#15952)

User API Changes

  • Deprecate not setting tailor_pex_binary_targets explictly (Cherry-pick of #15962) (#16023)

  • Upgrade default iPython to 7.34, which drops Python 3.6 (Cherry-pick of #15934) (#15938)

Plugin API Changes

  • Introduce a plugin API to provide all thread local state, and deprecate stdio-specific methods (Cherry-pick of #15890) (#15916)

Bug fixes

  • Backtrack through calls from @rules to synchronous engine methods (Cherry-pick of #15979) (#16001)

  • Assorted remote metrics fixes. (Cherry-pick of #15914) (#15976)

  • Fix bad "" description in invalid addresses error messages (Cherry-pick of #15859) (#15936)

  • Fix reporting of time spent downloading files (Cherry-pick of #15873) (#15921)

  • Upgrade to nails 0.13.0 to pick up support for JDK >=13. (Cherry-pick of #15899) (#15918)

  • Allow JVM memory controls to bound the process pool size to less than the process parallelism (Cherry-pick of #15903) (#15917)

  • Increment the missing-digest backtracking level once per attempt (Cherry pick of #15889) (#15897)

  • Scala: should visit ctor args of base type (Cherry pick of #15880) (#15892)

  • Scala: mark an object that extends another type as recursive (Cherry pick of #15865) (#15891)

Performance

  • terraform: use immutable input for Terraform tool (Cherry-pick of #15037) (#15998)

  • Improve performance of file arguments when --owners-not-found-behavior not used (#15931)

  • Dedupe load_bytes_with calls to a remote Store (Cherry-pick of #15901) (#15915)

Documentation

  • Update Python documentation with 2.11 changes (Cherry-pick of #15857) (#15981)

  • Update certificate environment variable advice for #14808. (Cherry-pick of #15943) (#15974)

  • Update the docs for fmt and test report changes (Cherry-pick of #15968) (#15971)

  • Clarify deprecation messages for tailor and update-build-files requiring CLI arguments (Cherry-pick of #15932) (#15937)

pants -

Published by stuhood over 2 years ago

The second stable release in the 2.11.x series, with only documentation changes since the previous rc!

Documentation

  • Update certificate environment variable advice for #14808. (Cherry-pick of #15943) (#15972)
pants -

Published by stuhood over 2 years ago

The first stable release of the 2.12.x series, with only documentation changes since the previous rc!

Documentation

  • Update certificate environment variable advice for #14808. (Cherry-pick of #15943) (#15973)

  • Update the docs for fmt and test report changes (Cherry-pick of #15968) (#15970)

pants -

Published by wisechengyi over 2 years ago

New Features

  • Add repository config option to Docker registries. (#15884)

  • Add __defaults__ BUILD file symbol (#15836)

User API Changes

  • Deprecate --use-deprecated-directory-cli-args-semantics and default to false (#15939)

  • Remove deprecated [golang].expected_version in favor of [golang].minimum_expected_version (#15942)

  • Upgrade default iPython to 7.34, which drops Python 3.6 (#15934)

  • Remove deprecated --excluded-target-regexp, --files-not-found-behavior, and --owners-not-found-behavior global options (#15929)

  • Deprecate implicit setting of --remote-cache-{read,write,eager-fetch} with --remote-execution (#15900)

  • Upgrade Pex to 2.1.100. (#16285)

Plugin API Changes

  • Plugin fields should propagate to subclassed target types. (#15876)

  • Introduce a plugin API to provide all thread local state, and deprecate stdio-specific methods (#15890)

Bug fixes

  • Assorted remote metrics fixes. (#15914)

  • Fix bad "" description in invalid addresses error messages (#15859)

  • Allow JVM memory controls to bound the process pool size to less than the process parallelism (#15903)

  • Upgrade to nails 0.13.0 to pick up support for JDK >=13. (#15899)

  • Increment the missing-digest backtracking level once per attempt (#15889)

  • Scala: should visit ctor args of base type (#15880)

  • Scala: mark an object that extends another type as recursive (#15865)

  • Fix reporting of time spent downloading files (#15873)

Performance

  • Dedupe load_bytes_with calls to a remote Store (#15901)

  • Improve mypy runs by adding the "incremental" mypy cache (#16276)

Documentation

  • Add test debugging doc (#15948)

  • Update certificate environment variable advice for #14808. (#15943)

  • Clarify deprecation messages for tailor and update-build-files requiring CLI arguments (#15932)

  • Fix GCF Handler documentation. (#16284)

pants -

Published by stuhood over 2 years ago

New Features

  • Add option for max wait before terminating interactive process (Cherry-pick of #15767) (#15908)

User API Changes

  • Change the default remote_cache_warnings warnings behavior to backoff. (Cherry-pick of #15745) (#15746)

Plugin API Changes

  • Introduce a plugin API to provide all thread local state, and deprecate stdio-specific methods (Cherry-pick of #15890) (#15907)

Bug fixes

  • Upgrade to nails 0.13.0 to pick up support for JDK >=13. (Cherry-pick of #15899) (#15906)

  • Allow JVM memory controls to bound the process pool size to less than the process parallelism (Cherry-pick of #15903) (#15905)

  • Fix [python-infer].inits and [python-infer].conftests to consider resolve field (Cherry-pick of #15787) (#15793)

  • Record metrics for remote cache store errors (Cherry-pick of #15744) (#15747)

  • Fix help for --process-total-child-memory-usage and --process-per-child-memory-usage (Cherry-pick of #15733) (#15737)

Documentation

  • Fix broken links to tailor documentation (#15843)

  • Adds current contents of readme.com docs to repo and adds notes on how to sync. (Cherry-picks #15810) (#15820)

  • Handle anchors in doc_url() correctly (cherrypick of #15812) (#15823)

pants -

Published by stuhood over 2 years ago

Bug fixes

  • Fix [python-infer].inits and [python-infer].conftests to consider resolve field (Cherry-pick of #15787) (#15794)

Documentation

  • Fix broken links to tailor documentation (#15844)

  • Handle anchors in doc_url() correctly (cherrypick of #15812) (#15822)

pants -

Published by stuhood over 2 years ago

New Features

  • Add GraphQL API server backend for the experimental-explorer goal (#15697)

  • Add extra_env_vars field to experimental_shell_command target. (#15742)

  • Add experimental-explorer builtin goal. (#15695)

User API Changes

  • Always ignore paths which are not files, directories, or links. (#15773)

  • Add API types and rules to cli help info (#14227)

  • Change the default remote_cache_warnings warnings behavior to backoff. (#15745)

  • Revert "Go can use both file and resource targets (#15663)" (#15725)

  • Deprecate --exclude-target-regexp in favor of --filter-address-regex (#15729)

Plugin API Changes

  • Require setting description_of_origin with AddressInput and UnparsedAddressInputs (#15743)

  • Require keyword arguments for AddressInput (#15741)

Bug fixes

  • tailor should skip bad requirements targets (#15755)

  • tailor for Go does not add targets when no ancestor go.mod (#15750)

  • Record metrics for remote cache store errors (#15744)

  • Fix help for --process-total-child-memory-usage and --process-per-child-memory-usage (#15733)

  • Fix --changed-since with directories unknown to Pants (#15714)

Documentation

  • Improve error messages for invalid addresses (#15751)

  • Correctly describe the origin of invalid specs, e.g. --paths-from (#15730)

pants -

Published by benjyw over 2 years ago

New Features

  • Add Memory controls to JVM processes (Cherry-pick of #15224) (#15682)

User API Changes

  • Upgrade Pex to 2.1.90. (Cherry-pick of #15656) (#15658)

Bug fixes

  • Don't install Pex-style lockfile when no requirements used (Cherry-pick of #15706) (#15707)

  • python_requirements() can handle -r reqs.txt (Cherry-pick of #15672) (#15677)

  • Prevent collisions between attempts to materialize an immutable input digest. (Cherry-pick of #15652) (#15680)

  • Choose correct dialect according to scala-version (Cherry-pick of #15649) (#15681)

pants -

Published by benjyw over 2 years ago

User API Changes

  • Upgrade Pex to 2.1.90. (Cherry-pick of #15656) (#15659)

Bug fixes

  • Don't install Pex-style lockfile when no requirements used (Cherry-pick of #15706) (#15708)

  • python_requirements() can handle -r reqs.txt (Cherry-pick of #15672) (#15678)

  • Prevent collisions between attempts to materialize an immutable input digest. (Cherry-pick of #15652) (#15679)

pants -

Published by benjyw over 2 years ago

New Features

  • Support running pex_binary targets directly on the in-repo sources. (#15689)

  • Go can use both file and resource targets (#15663)

  • Add ignore command line arguments, e.g. -dir:: (#15619)

  • Allow to skip linting on Helm charts (#15640)

  • Helm charts support CRDS by default (#15623)

  • Adds dependency injection rule for protobuf-java runtime (#15006)

User API Changes

  • Make the global --no-process-cleanup conserve the run tmpdir. (#15683)

  • Upgrade Pex to 2.1.90. (#15656)

  • Remove -d as shorthand for --logdir (#15621)

Plugin API Changes

  • PutativeTargetsRequest.path_globs() can take multiple globs (#15634)

  • [Plugin API change] Remove default help message from MultipleSourcesField (#15633)

  • Don't allow multiple flag names for the same option (#15627)

  • Remove PutativeTargetsSearchPaths (#15625)

  • Refactor Specs as prework for ignore Specs (#15620)

  • Ban using short option names like -x, except for pre-blessed values (#15624)

Bug fixes

  • Don't install Pex-style lockfile when no requirements used (#15706)

  • python_requirements() can handle -r reqs.txt (#15672)

  • Increase RuleGraph solver loop threshold to allow for larger @rule sets (#15668)

  • Fix --help output when specs given. (#15665)

  • update-build-files falls back to interpreter constraints from tool lockfile for Black and Yapf (#15666)

  • Fix detection of --help when specs given (#15664)

  • Choose correct Scala dialect according to scala-version (#15649)

  • Fix deleted files with --changed-since when using target-less goals like count-loc (#15662)

  • Prevent collisions between attempts to materialize an immutable input digest. (#15652)

  • Fix another case of direct Coursier lockfile consumption (#15650)

Documentation

  • Mention language specific opt outs for tailor (#15673)

  • Provide more "Did you mean ..." suggestions for the CLI help. (#15646)

  • [docs] Add language specific file examples for sources help message of a target (#15635)

  • Docs: show language specific file examples in sources field in the help of targets (#15595)

pants -

Published by stuhood over 2 years ago

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_constraints are a subset of their dependencies' (Cherry-pick of #15373) (#15407)

Plugin API Changes

  • Move get_git deprecation to start in 2.14.0.dev0 (Cherry-pick of #15423) (#15437)

Bug fixes

  • Fix tags to work with filesystem arguments, overrides field, and python_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 tailor detection of existing python_requirements targets (Cherry-pick of #15363) (#15372)

  • Add the "named args explanation" to other relevant parametrize error 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_data in generated setup.py files (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-lockfiles goal (Cherry-pick of #15304) (#15308)

Documentation

  • Improve error message for dependencies on incompatible Python resolves (Cherry-pick of #15416) (#15439)

  • Improve help and error message for [python-infer].unowned_dependency_behavior (Cherry-pick of #15334) (#15391)

  • Disallow ! patterns in build_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)

pants -

Published by stuhood over 2 years ago

Bug fixes

  • Fix tags to work with filesystem arguments, overrides field, and python_tests (Cherry-pick of #15394) (#15413)

  • Support the {chroot} env placeholder for all interactive processes that are not executed in the workspace. (Cherry-pick of #15401) (#15404)

  • Fix [] in file names with target generators (Cherry-pick of #15383) (#15402)

  • Fix tailor detection of existing python_requirements targets (Cherry-pick of #15363) (#15371)

  • Add the "named args explanation" to other relevant parametrize error messages. (Cherry-pick of #15362) (#15369)

  • Use abspath to sandbox in PATH for docker tool shims. (Cherry-pick of #15341) (#15357)

  • Fix a bug in the python venv export logic. (cherrypick of #15294) (#15307)

  • Fix non-determinism of package_data in generated setup.py files (Cherry-pick of #15292) (#15300)

Performance

  • Eagerly skip tools with default lockfiles in export-lockfiles goal (Cherry-pick of #15304) (#15309)

Documentation

  • Improve error message for dependencies on incompatible Python resolves (Cherry-pick of #15416) (#15440)

  • Improve help and error message for [python-infer].unowned_dependency_behavior (Cherry-pick of #15334) (#15389)

  • Disallow ! patterns in build_ignore. (Cherry-pick of #15366) (#15367)

  • Improve error message for resolves x interpreter constraints issues (Cherry-pick of #15314) (#15365)

  • Fix error output of parametrize() (Cherry-pick of #15339) (#15349)

pants -

Published by stuhood over 2 years ago

The second stable release of the 2.10.x series, with no changes since the previous rc!

pants -

Published by stuhood over 2 years ago

The third stable release of the 2.9.x series, with no changes since the previous rc!

pants -

Published by stuhood over 2 years ago

The second stable release of the 2.8.x series, with no changes since the previous rc!