Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pants upgrade from 2.22.0 to 2.23.0a0 #6229

Merged
merged 6 commits into from
Sep 16, 2024
Merged

Pants upgrade from 2.22.0 to 2.23.0a0 #6229

merged 6 commits into from
Sep 16, 2024

Conversation

cognifloyd
Copy link
Member

@cognifloyd cognifloyd commented Aug 5, 2024

This updates from pants 2.22 to 2.23. The stable version of 2.23 has not been released yet, but with so many features that we need, it's worth using an alpha to unblock other developments.

I also added a .gitattributes file to try and improve the UX of fixing lockfile merge conflicts.

I also included 2 minor commits extracted from #6202:

  • pants is already configured to ignore dist_utils.py, so also ignore test_dist_utils.py: 4234724
  • Add tags=["pack"] to all of the pack tests so that we can easily run just the pack tests via pants: 77ee17c

Follow-up PRs will allow us to run all of the pack and unit tests via pants + pytest.

Interesting new features in 2.23

The [export].py_hermetic_scripts option is renamed to [export].py_non_hermetic_scripts_in_resolve in 2.23:

This release adds the last 2 features we need from pants to get pants+pytest to run all of our unit and pack tests, based on work in #6202:

v2.23.0a0 also includes the nfpm plugin I wrote to replace our st2-packaging repo. nFPM builds system packages like rpm and deb without the complicated ruby+docker+the-kitchen-sink dance we do in st2-packaging.

pants-plugins lockfile diffs

From 2.22 to 2.23

Lockfile diff: lockfiles/pants-plugins.lock [pants-plugins]
                                                                  
==                    Upgraded dependencies                     ==

  pantsbuild-pants               2.22.0       -->   2.23.0a0
  pantsbuild-pants-testutil      2.22.0       -->   2.23.0a0
  pex                            2.3.1        -->   2.16.2
  typing-extensions              4.3.0        -->   4.12.2
                                                                  
==                      Added dependencies                      ==

  libcst                         1.4.0

@cognifloyd cognifloyd added this to the 3.9.0 milestone Aug 5, 2024
@cognifloyd cognifloyd requested a review from a team August 5, 2024 17:45
@cognifloyd cognifloyd self-assigned this Aug 5, 2024
@pull-request-size pull-request-size bot added the size/L PR that changes 100-499 lines. Requires some effort to review. label Aug 5, 2024
@pull-request-size pull-request-size bot added size/XL PR that changes 500-999 lines. Consider splitting work into several ones that easier to review. and removed size/L PR that changes 100-499 lines. Requires some effort to review. labels Aug 7, 2024
@pull-request-size pull-request-size bot added size/XXL PR that changes 1000+ lines. You should absolutely split your PR into several. and removed size/XL PR that changes 500-999 lines. Consider splitting work into several ones that easier to review. labels Sep 9, 2024
@pull-request-size pull-request-size bot added size/L PR that changes 100-499 lines. Requires some effort to review. and removed size/XXL PR that changes 1000+ lines. You should absolutely split your PR into several. labels Sep 10, 2024
@cognifloyd cognifloyd modified the milestones: 3.9.0, pants Sep 11, 2024
Lockfile diff: lockfiles/pants-plugins.lock [pants-plugins]

==                    Upgraded dependencies                     ==

  pantsbuild-pants               2.22.0       -->   2.23.0a0
  pantsbuild-pants-testutil      2.22.0       -->   2.23.0a0
  pex                            2.3.1        -->   2.16.2
  typing-extensions              4.3.0        -->   4.12.2

==                      Added dependencies                      ==

  libcst                         1.4.0
It is now a per-resolve option:
[export].py_non_hermetic_scripts_in_resolve = ["st2"]
@cognifloyd cognifloyd changed the title Pants upgrade from 2.20.3 to 2.23 Pants upgrade from 2.22.0 to 2.23.0a0 Sep 12, 2024
Once pants can build our packages, all of the dist_utils bits should be deleted.
This facilitates running just the pack tests via pants using:
pants --tag=pack test ::
@cognifloyd cognifloyd marked this pull request as ready for review September 13, 2024 02:18
@cognifloyd cognifloyd requested review from a team September 13, 2024 02:25
@cognifloyd cognifloyd requested review from a team September 14, 2024 00:02
@cognifloyd cognifloyd merged commit 4c9d8d9 into master Sep 16, 2024
29 checks passed
@cognifloyd cognifloyd deleted the pants-upgrade-2.23 branch September 16, 2024 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
infrastructure: ci/cd pantsbuild size/L PR that changes 100-499 lines. Requires some effort to review.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants