Skip to main content

A scalable build tool for large, complex, heterogeneous repos.

Project description

Pants is an Apache2 licensed build tool written in Python.

The latest documentation can be found at pantsbuild.

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.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

  • Fix Pytest XML reports and Coverage breaking with remote execution (cherrypick of #10136) (#10324) PR #10324

  • Set dynamic-ui default based on CI (cherrypick of #10140) (#10325) PR #10140

  • Hotfix Bandit breaking from Stevedore 3.0 release (#10322) PR #10322

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)

Bugfixes

  • Normalize paths before determining whether we can watch them. (#10130) PR #10130

  • Scrooge plugin: fix scala compiler_option_sets parameter passthrough (#10124) PR #10124

1.30.0rc0 (6/19/2020)

API Changes

  • Upgrade to Pex 2.1.12. (#10099) PR #10099

  • Deprecate pytest-coverage scope in favor of coverage-py (#10091) PR #10091

  • Deprecate –enable-pantsd in favor of –pantsd (#10049) PR #10049

  • Set default source root patterns. (#10043) PR #10043

New Features

  • Redesign v2 coverage mechanism (#10100) PR #10100

  • Add –pytest-coverage-omit-test-sources option to v2 (#10085) PR #10085

  • Control workunit levels at @rule execution time (#10053) PR #10053

Bugfixes

  • Fix v2 Coverage erroring when a test failed to generate data (#10095) PR #10095

  • Fix the coverage field not working with v2 (#10082) PR #10082

  • Wait for ongoing runs to complete before shutting down pantsd (#10052) PR #10052

  • use try_into for a fallible conversion to hashing::Digest (#9994) PR #9994

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

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

  • remoting: sort environment variables as per REv2 spec (#10038) PR #10038

  • Restore pytest coverage console report. (#10013) PR #10013

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

Documentation

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

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

pantsbuild.pants-1.30.4-cp38-cp38-macosx_10_11_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 3.8 macOS 10.11+ x86-64

pantsbuild.pants-1.30.4-cp37-cp37m-macosx_10_11_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 3.7m macOS 10.11+ x86-64

pantsbuild.pants-1.30.4-cp36-cp36m-macosx_10_11_x86_64.whl (8.2 MB view hashes)

Uploaded CPython 3.6m macOS 10.11+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page