Pants 2.22.0 is released!
Photo by
Florian Rebmann
on
Unsplash
We are pleased to announce Pants 2.22.0, the latest release of Pantsbuild, the scalable and ergonomic build system. To update, set pants_version = "2.22.0"
in your pants.toml
. If you're not using Pants yet, get started now.
Highlights in 2.22 include:
- 🎛️A major re-implementation of the Pants options system. See below for more!
- 🏠Support for executing local processes within the repository itself (rather than in a sandbox) via the new workspace environment feature.
- 🐍Initial support for Python 3.13.
- 🛫Ability to export Python tools from their default bundled lockfiles.
- ☁️Improvements in FaaS support, such as the ability to create cloud functions as directories, instead of .zip files.
- 🏷️
vcs_version
always executes locally, so that it has the local git context, even when otherwise using docker environments. - 📊A new experimental SQL backend, with SQLFluff linter support.
- 🗃️A new experimental Makeself backend for creating self-extractable archives.
- 🫙A
deploy_jar_exclude_files
option, to allow excluding irrelevant signature files from JAR files. - 🗺️Better understanding of self-type annotations in Scala dependency inference.
- 🎒the ability to bundle
openapi_document
and itsopenapi_source
dependencies into a single file, for consumption by other targets. - 📈 And lots of smaller features, update, bugfixes, and general improvements
Check out the full release notes. Pants is an open-source project, and the changes are all contributed by our community. If you want to see something more in the next changelog, join us on GitHub and become a contributor.
In particular, please note the transition to the new options system. In 2.22.x we run both the new and the legacy systems concurrently and compare the results, issuing warnings if there are any discrepancies. If you do encounter discrepancies that you can't resolve on your own, please reach out to us!.
We also offer formal sponsorship tiers for companies, as well as individual sponsorships via GitHub. These help pay for the ongoing development and hosting costs, and are managed by the Pants Build non-profit organization.
To see Pants in action, explore our example repositories:
- example-python
- example-adhoc
- example-codegen
- example-docker
- example-golang
- example-javascript
- example-jvm
- example-kotlin
- example-visibility
And let us know what you think in Slack!
Pants 2.22.0 took longer than usual to stabilize, but we hope to get 2.23.0 out quite soon!
Pants wouldn't be possible without everyone who contributed to 2.22.0, including everyone who shared feedback on changes and who tested release candidates! Thank you very much!