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 <https://www.pantsbuild.org/>_.

2.6.x Stable Releases

2.6.0 (Jul 30, 2021)

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

2.6.0rc4 (Jul 27, 2021)

New Features

  • Add option for async completion of StreamingWorkunitHandlers, disable by default in containers (Cherry-pick of #12392) (#12399)

Performance

  • Skip preparation of workunit log messages which will never be rendered. (Cherry-pick of #12396) (#12400)

  • Do not upload Action inputs for remote cache writes. (Cherry-pick of #12443) (#12444)

Documentation

  • Clarify when we are subsetting the lockfile for 3rdparty dependencies (Cherry-pick of #12435) (#12439)

  • Fix the content type for Pants' wheel long_descriptions. (Cherry-pick of #12391) (#12402)

2.6.0rc3 (Jul 20, 2021)

User API Changes

  • Add [python-setup].interpreter_versions_universe to ensure Pants works robustly with future Python interpreters (Cherry-pick of #12379) (#12383)

Bug fixes

  • More robust support for Poetry dependency attributes (markers andextras) (Cherry-pick of #12323) (#12385)

  • Mark workunits blocked, and skip rendering completed workunits (#12369) (#12376)

  • Fix anonymous telemetry logging. (#12344)

Performance

  • Reduce # of resolves when packaging pex_binary and python_awslambda targets (Cherry-pick of #12343) (#12350)

2.6.0rc2 (Jul 08, 2021)

Bug fixes

  • Set up pants to use the latest version of humbug (#12303)

2.6.0rc1 (Jul 7, 2021)

New Features

  • Add support for MyPy report files (Cherry-pick of #12271) (#12289)

Bug fixes

  • Hotfix poetry_requirements not being recognized as a macro in BUILD files (Cherry-pick of #12263) (#12264)

  • Do not use [python-setup].resolve_all_constraints when using platforms (Cherry-pick of #12268) (#12269)

  • Fix poetry_requirements: ignore internal projects. (Cherry-pick of #12280) (#12296)

  • Fix poetry_requirements handling of python. (#12278) (#12282)

  • Include experimental Go backends in pantsbuild.pants (Cherry-pick of #12290) (#12291)

Documentation

  • Change how we embed docsite links in help text (Cherry-pick of #12261) (#12266)

2.6.0rc0 (Jun 30, 2021)

New Features

  • Add dependency inference for Python third-party type stubs (#12248)

  • Add poetry_requirements macro for Poetry support (#12174)

User API Changes

  • Update default MyPy to 0.910 (#12249)

  • Update linter versions for pylint, black, bandit (#12135)

  • Upgrade Go distribution to v1.16.5 (#12247)

Plugin API Changes

  • Set default user-agent header on gRPC requests with Pants version (#12241)

  • Increment counter on missing file digests (#12235)

Bug fixes

  • Add support for multiple requirements for a single package name in the python_requirements macro (#12232)

  • Fix dependency inference to be ambiguous when >1 type stub for same module (#12244)

  • Hash the repo_id in the tag. (#12151)

  • Fix skip_tool not working with ./pants fmt if all files are skipped (#12230)

2.6.0.dev2 (Jun 16, 2021)

New Features

  • Adds --[no-]watch-filesystem switch (#12210)

User API Changes

  • Deprecate unused interpreter_constraints field for python_awslambda (#12208)

Plugin API Changes

  • Rename remote cache write start and finished metrics (#12202)

  • Support for custom target types in tailor. (#12156)

Bug fixes

  • Fallback to [python-setup].interpreter_constraints for python_distribution targets with no first-party dependencies (#12207)

  • Fix remote cache write attempts metric to record even if write does not finish (#12204)

  • Fix Process output capture re: working_directory. (#12197)

  • Fix Key interning race. (#12152)

Documentation

  • Fix relocated files help display. (#12185)

  • Suggest -ldebug and --no-process-execution-local-cleanup in exception messages (#12180)

2.6.0.dev1 (May 29, 2021)

New Features

  • Allow setting --pantsd-max-memory-usage with GiB, MiB, and KiB units (#12123)

  • Register strip_pex_env field with pex_binary. (#12147)

User API Changes

  • Fix [python-setup].resolver_jobs default value to better recognize containers (#12139)

  • Deprecate broken [lint].reports_dir and make mechanism more flexible (#12122)

  • Change Docformatter to not try to use Python 2 and Python 3.5 by default (#12099)

Plugin API Changes

  • Allow overriding option default help display. (#12128)

  • Rename ProcessCacheScope.NEVER to ProcessCacheScope.PER_SESSION (#12100)

  • Replace ProcessCacheScope.PER_RESTART with ProcessCacheScope.PER_RESTART_ALWAYS and ProcessCacheScope.PER_RESTART_SUCCESSFUL (#12094)

Performance

  • add retries for reads and writes from remote CAS (#12132)

  • Fix --coverage-py-global-report for >9 test files. (#12144)

Documentation

  • Clarify the default values for parallelism options (#12119)

  • Make timeouts in tests less confusing (#12120)

  • Rewrite error message when Pantsd is shut down during run (#12107)

  • Fix scheduler initialization log (#12105)

2.6.0.dev0 (May 19, 2021)

New Features

  • Add support for global coverage reports. (#12080)

  • Add extra_env_vars capability to python_tests() (#12022)

  • Add pex_binary support for --no-strip-pex-env. (#12061)

User API Changes

  • Remove deprecated [pytest].config in favor of [pytest].config_discovery (#12033)

  • Remove deprecated ignore_pants_warnings in favor of ignore_warnings (#12032)

  • Enforce [python-setup].resolve_all_constraints being a bool option (#12034)

  • Remove experimental and unused [python-setup].requirement_constraints_target option and _python_constraints target (#11998)

Plugin API Changes

  • Rename PexInterpreterConstraints to InterpreterConstraints and move to dedicated file (#12021)

  • Add plugin hook for setting up Pytest context (#12091)

  • Auth plugins can inspect the prior result, set an expiration, and override --remote-{store,execution}-address (#12029)

Bug fixes

  • Fix --remote-auth-plugin and --remote-oauth-bearer-token-path to execute every run with Pantsd (#12020)

  • Fix module_mapping to work regardless of capitalization and - vs _ (#12068)

  • Fix PEX_ROOT leak with run and repl goals. (#12066)

  • Fix constraints resolves to pass additional args. (#12076)

  • Fix skip_tool fields not working with ./pants fmt (#12073)

  • Fix Python run for apps that re-exec themselves. (#12060)

  • Fix remote cache writes memory exhaustion. (#12087)

  • Halve memory usage for remote cache writes. (#12083)

  • Fix Shell dependency inference not caching (#12052)

Project details


Release history Release notifications | RSS feed

This version

2.6.0

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-2.6.0-cp39-cp39-macosx_11_0_arm64.whl (8.2 MB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

pantsbuild.pants-2.6.0-cp39-cp39-macosx_10_15_x86_64.whl (8.3 MB view hashes)

Uploaded CPython 3.9 macOS 10.15+ x86-64

pantsbuild.pants-2.6.0-cp38-cp38-macosx_10_15_x86_64.whl (8.3 MB view hashes)

Uploaded CPython 3.8 macOS 10.15+ x86-64

pantsbuild.pants-2.6.0-cp37-cp37m-macosx_10_15_x86_64.whl (8.3 MB view hashes)

Uploaded CPython 3.7m macOS 10.15+ 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