1.30.x Stable Releases
This document describes releases leading up to the 1.30.x stable series.
See https://pants.readme.io/v1.30/docs/release-notes-1-30 for an overview of the changes in this release.
1.30.5rc1 (10/7/2021)
1.30.5rc0 (4/5/2021)
1.30.4 (3/19/2021)
The fifth stable release of the 1.30.x series, with no changes since the previous rc.
1.30.4rc0 (3/9/2021)
- Scala 2.13 support for 1.x (#11633) PR #11633
1.30.3 (2/22/2021)
The fourth stable release in the 1.30.x series, with no changes since rc0.
Thanks to Dan Worth who uncovered Issue #11579 and helped test rc0!
1.30.3rc0 (2/19/2021)
This release fixes a bug in Pants fetching of some Go internal packages.
Bugfixes
- Find remote roots for private internal packages. (#11581) PR #11581
1.30.2 (12/21/2020)
The third stable release in the 1.30.x series, with no changes since rc3.
Thank you to everyone who helped test the rcs!
1.30.2rc3 (12/16/2020)
This release backports an upgrade to Pex 2.1.24 to bring support for macOS BigSur.
Bugfixes
- Upgrade to Pex 2.1.24. (#11312) (#11317) PR #11317
1.30.2rc2 (11/24/2020)
Bugfixes
- Add a specific error for target names containing slashes (cherry pick of #11115) (#11121) PR #11121
1.30.2rc1 (9/30/2020)
Bugfixes
- Local process cache validates that digests exist locally before hitting (cherrypick of #10789) (#10879) PR #10879
1.30.2rc0 (9/23/2020)
New features
- Backport --test-extra-env-vars feature (from #10715) (#10844) PR #10844
1.30.1 (9/23/2020)
The second stable release of the 1.30.x series, with no changes since the previous release candidate.
1.30.1rc2 (9/14/2020)
Bugfixes
- Fix DictStringToStringField not working with default values (Cherry-pick of #10776) (#10777) PR #10777
1.30.1rc1 (9/11/2020)
Bugfixes
- Upgrade to Pex 2.1.14 (Cherry-pick of #10437) (#10763) PR #10763
1.30.1rc0 (8/5/2020)
Bugfixes
- Remove self-inflicted invalidation caused by exception logging (cherrypick of #10521) (#10553) PR #10553
- Fix bug that caused setup-py to hang if src root==buildroot (cherrypick of #10509) (#10552) PR #10552
- Fix Protobuf when using source roots (cherrypick of #10453) (#10476) PR #10476
- Fix --print-exception-stacktrace not invalidating pantsd (cherrypick of #10451) (#10461) PR #10461
- Call instance method on instance rather than class (cherrypick of #10314) (#10426) PR #10426
1.30.0 (7/17/2020)
The first stable release of the 1.30.x series, with no changes since the previous rc!
1.30.0rc2 (7/14/2020)
Bugfixes
Refactoring, Improvements, and Tooling
- Fix tests that relied on the docsite CNAME file. (cherrypick of #10337) (#10342) PR #10342
1.30.0rc1 (6/27/2020)
1.30.0rc0 (6/19/2020)
API Changes
New Features
Bugfixes
Refactoring, Improvements, and Tooling
- remoting: use debug level for remoting sub-workunits (#10098) PR #10098
- Render the first visible parent of a workunit in --dynamic-ui. (#9957) PR #9957
- Change StreamingWorkunitHandler default verbosity to DEBUG (#10090) PR #10090
- Inline _wrap_type in parser.py (#10096) PR #10096
- Make the roots goal display roots configured via marker files (#10079) PR #10079
- Refactor v2 coverage and add an integration test (#10073) PR #10073
- Extract member_type and type_arg in parser.py (#10063) PR #10063
- Replace TargetAdaptor implementation of list with Target API implementation (#9912) PR #9912
- Rename InteractiveProcessRequest to InteractiveProcess (#10050) PR #10050
- Remove stale TODO (#10048) PR #10048
- Reinitialize pantsd for most configuration changes (#10035) PR #10035
- Remove unused FmtRequest union. (#9934) PR #9934
- Use cargo-metadata not cargo to get packages (#10045) PR #10045
- Expose new StreamingWorkunitContext on streaming workunits callback (#10034) PR #10034
- Add report type to FilesystemCoverageReport (#10086) PR #10086
Testing
- Increase timeout on test targets (#10097) PR #10097
- Increase timeout for node_test_integration test target (#10094) PR #10094
- Increase timeout for incomplete_custom_scala test target (#10089) PR #10089
- remoting: add workunits for upload and execution (#10084) PR #10084
- disable append-only cache in remoting (#10077) PR #10077
- Push down process timeouts in remote execution (#10044) PR #10044
- Add a __run.sh script to reproduce a process execution in a preserved chroot (#10030) PR #10030
- Fix nightly build. (#10047) PR #10047
Documentation
- Prepare the 1.28.1rc0 release. Manual commit
- Prepare the 1.27.1rc0 release. PR #10066
- Prepare the 1.26.1rc0 release. PR #10067
- Prepare the 1.25.1rc1 release. PR #10068
- Prepare the 1.24.1rc1 release. PR #10069
- Prepare the 1.23.1rc0 release. PR #10070
- Prepare the 1.22.1rc0 release. PR #10071
- Prepare the 1.21.1rc0 release. PR #10072
- Prepare 1.29.0. (#10074) PR #10074
1.30.0.dev1 (6/12/2020)
API Changes
- Change the default MyPy version from 0.770 to 0.780 (#10001) PR #10001
New Features
- Add Python dependency inference for first-party imports (#10007) PR #10007
- Add third party modules to Python dependency inference (#10025) PR #10025
- Apply named caches to remote execution platform properties (#10009) PR #10009
- remoting: add --remote-execution-overall-deadline-secs option (#10002) PR #10002
- Add -- style passthrough args to V2 run and setup-py goals (#9911) PR #9911
- Add a configurable cap on total pantsd memory usage. (#10003) PR #10003
Bugfixes
Refactoring, Improvements, and Tooling
- Improve performance of Python dependency inference (#10031) PR #10031
- Use f-strings. (#10039) PR #10039
- Fix pants.toml contents appearing in engine error messages (#10033) PR #10033
- Tweak DescendantAddresses so that call sites can no-op when no matches (#10012) PR #10012
- Remove pyopenssl, parametrized, and wheel dependencies (#10023) PR #10023
- Skip stdlib imports with dependency inference (#10011) PR #10011
Documentation
- Fix release-strategy link (#10028) PR #10028
1.30.0.dev0 (6/05/2020)
API Changes
- Remove deprecated ExternalTool functionality (#9996) PR #9996
- Rename ReportType to CoverageReportType and move it to test.py (#9991) PR #9991
- Remove the passthrough-arguments-with-multiple-goals deprecation. (#9984) PR #9984
- Remove --files-not-found-behavior=ignore (#9986) PR #9986
- Change --filedeps-absolute option to default to False. (#9983) PR #9983
- Custom target types now need Target API bindings for full support (#9981) PR #9981
- Remove deprecated source root trie. (#9936) PR #9936
- Allow @rules to set their levels, and default to debug (#9940) PR #9940
- Enable pantsd by default (#9935) PR #9935
- Remove codeanalysis (Kythe) contrib plugin due to low usage (#9918) PR #9918
- Remove AWS Lambda contrib plugin in favor of V2 backend (#9917) PR #9917
- Remove V1 isort and lint.pythonstyle in favor of V2 isort and Flake8 (#9909) PR #9909
- Upgrade typing-extensions from 3.7.4 to 3.7.4.2 (#9930) PR #9930
- Upgrade pystache from 0.5.3 to 0.5.4 (#9929) PR #9929
New Features
- Create FFI functions for handling digests on workunits (#9965) PR #9965 PR #9906
- Add support for returning multiple coverage reports for each MergedCoverageData. (#9992) PR #9992
- Support for marking source roots via a specially-named file. (#9977) PR #9977
- Expose v2 goals from RunTracker. (#9963) PR #9963
- remoting: allow override of target_platform (#9954) PR #9954
- remoting: add streaming remote execution client (#9897) PR #9897
- Attach stdout/stderr digests to workunits (#9906) PR #9906
- Log workunit creation and completion (#9894) PR #9894
Bugfixes
- Kill child processes on drop. (#9998) PR #9998
- remoting: more unit tests and fix an edge case (#9980) PR #9980
- Release the gil while polling workunits. (#9969) PR #9969
- Fix lease extension, and make it recursive (#9956) PR #9956
- Fix deadlock between Session and WorkunitStore. (#9959) PR #9959
- Default to invalidating for requirements.txt to ameliorate #7022. (#9946) PR #9946
- Fix a bug in pyest coverage report computation. (#9933) PR #9933
- Fix ABI string when building pants.pex (#9908) PR #9908
Refactoring, Improvements, and Tooling
- Add a Python import parser for dependency inference (#9900) PR #9900
- Use f-strings, improve code readability. (#9990) PR #9990
- Remove unnecessary string interpolation, use generator expression. (#9993) PR #9993
- Use f-strings. (#9987) PR #9987
- Enable more Flake8 checks internally (#9885) PR #9885
- Reuse report_type (#9978) PR #9978
- Bump to Rust 1.44.0 (#9972) PR #9972
- Set the pex_root cache only at build time (#9958) PR #9958
- Finish removing Bytes fields from FallibleProcessResultWithPlatform (#9955) PR #9955
- Split client-related logic out of the PantsDaemon class. (#9949) PR #9949
- Silence failures to close pantsd stdio handles. (#9943) PR #9943
- Remove buildrefactor plugin that we never published (#9937) PR #9937
- Remove redundant names and logging. (#9921) PR #9921
- Remove unused union marker. (#9928) PR #9928
- Ensure BuildConfiguration is immutable. (#9931) PR #9931
- Make FrozenDict more ergonomic. (#9932) PR #9932
- Port from cffi to the cpython crate. (#9593) PR #9593
- Graph::get backs off on filesystem invalidation (#9920) PR #9920
- Port the graph crate and dependent code in engine to async/await. (#9910) PR #9910
- Improve pantsd waiting messages. (#9923) PR #9923
- Use flake8-2020 plugin internally (#9913) PR #9913
- Log timestamps should be in the local time zone (#9927) PR #9927
Testing
- remoting: add initial unit tests for streaming client and fix a bug (#9966) PR #9966