Skip to content

Conversation

@cognifloyd
Copy link
Member

@cognifloyd cognifloyd commented Dec 19, 2024

This cherry-picks commits from #6236 by @nzlosh and @guzzijones.

This adds python 3.10 and 3.11 to:

  • GHA workflow test matrixes
  • pants interpreter_constraints and lockfiles

The vast number of additional tests in our test matrix made it difficult to ensure we included the new python versions everywhere required. So, I refactored the matrix in each workflow to let GitHub handle expanding the matrix for us.

While I was in the GHA workflows I noticed a couple of minor issues, so I fixed those as well:

  • Fixed a typo in .github/actions/setup-python that was causing a lot of warnings to be listed under GHA annotations.
  • Replaced on.pull_request.type with on.pull_request.types. "type" is not a valid key, so our workflows have just been using the default list of events: opened, reopened, synchronize. So, I used that as well. If someone wants to add edited later, that's fine--just know that there will be downsides because editing the PR description or name will retrigger CI.
  • Updated the benchmarks workflow so it will run whenever a PR touches the workflow file (like this PR does).

I also had to bump the pre-commit and pre-commit-hooks version as it was raising an error on python3.11.

Lockfile Diffs

Lockfile diff: lockfiles/st2.lock [st2]

==                    Upgraded dependencies                     ==

  psutil                         6.1.0        -->   6.1.1
Lockfile diff: lockfiles/black.lock [black]

==                    Upgraded dependencies                     ==

  platformdirs                   4.2.0        -->   4.3.6
  tomli                          2.0.1        -->   2.2.1
  typing-extensions              4.10.0       -->   4.12.2
Lockfile diff: lockfiles/pylint.lock [pylint]

==                    Upgraded dependencies                     ==

  dill                           0.3.8        -->   0.3.9
  platformdirs                   4.2.1        -->   4.3.6
  pylint                         3.1.0        -->   3.1.1
  setuptools                     69.5.1       -->   75.3.0
  tomli                          2.0.1        -->   2.2.1
  tomlkit                        0.12.4       -->   0.13.2
  typing-extensions              4.11.0       -->   4.12.2
Lockfile diff: lockfiles/bandit.lock [bandit]

==                    Upgraded dependencies                     ==

  rich                           13.9.3       -->   13.9.4
  setuptools                     75.2.0       -->   75.3.0
Lockfile diff: lockfiles/flake8.lock [flake8]

==                    Upgraded dependencies                     ==

  setuptools                     75.2.0       -->   75.3.0
Lockfile diff: lockfiles/twine.lock [twine]

==                    Upgraded dependencies                     ==

  certifi                        2024.2.2     -->   2024.12.14
  cffi                           1.16.0       -->   1.17.1
  charset-normalizer             3.3.2        -->   3.4.0
  cryptography                   42.0.5       -->   43.0.3
  idna                           3.6          -->   3.10
  importlib-metadata             7.1.0        -->   8.5.0
  importlib-resources            6.4.0        -->   6.4.5
  jaraco-context                 4.3.0        -->   6.0.1
  jaraco-functools               4.0.0        -->   4.1.0
  keyring                        25.1.0       -->   25.5.0
  more-itertools                 10.2.0       -->   10.5.0
  nh3                            0.2.17       -->   0.2.20
  pkginfo                        1.10.0       -->   1.12.0
  pygments                       2.17.2       -->   2.18.0
  requests                       2.31.0       -->   2.32.3
  tqdm                           4.66.2       -->   4.67.1
  urllib3                        2.2.1        -->   2.2.3
  zipp                           3.18.1       -->   3.20.2

==                      Added dependencies                      ==

  backports-tarfile              1.2.0

nzlosh and others added 15 commits December 19, 2024 14:47
There are a bunch of annotations that have been showing up in CI.
I finally found the source of that warning.
And harmonize the start version by copying the flake8 minimum.
…lake8 --resolve=pylint --resolve=twine

This also copies the pylint upgrade into test-requirements.txt.

Lockfile diff: lockfiles/black.lock [black]

==                    Upgraded dependencies                     ==

  platformdirs                   4.2.0        -->   4.3.6
  tomli                          2.0.1        -->   2.2.1
  typing-extensions              4.10.0       -->   4.12.2

Lockfile diff: lockfiles/pylint.lock [pylint]

==                    Upgraded dependencies                     ==

  dill                           0.3.8        -->   0.3.9
  platformdirs                   4.2.1        -->   4.3.6
  pylint                         3.1.0        -->   3.1.1
  setuptools                     69.5.1       -->   75.3.0
  tomli                          2.0.1        -->   2.2.1
  tomlkit                        0.12.4       -->   0.13.2
  typing-extensions              4.11.0       -->   4.12.2

Lockfile diff: lockfiles/bandit.lock [bandit]

==                    Upgraded dependencies                     ==

  rich                           13.9.3       -->   13.9.4
  setuptools                     75.2.0       -->   75.3.0

Lockfile diff: lockfiles/flake8.lock [flake8]

==                    Upgraded dependencies                     ==

  setuptools                     75.2.0       -->   75.3.0

Lockfile diff: lockfiles/twine.lock [twine]

==                    Upgraded dependencies                     ==

  certifi                        2024.2.2     -->   2024.12.14
  cffi                           1.16.0       -->   1.17.1
  charset-normalizer             3.3.2        -->   3.4.0
  cryptography                   42.0.5       -->   43.0.3
  idna                           3.6          -->   3.10
  importlib-metadata             7.1.0        -->   8.5.0
  importlib-resources            6.4.0        -->   6.4.5
  jaraco-context                 4.3.0        -->   6.0.1
  jaraco-functools               4.0.0        -->   4.1.0
  keyring                        25.1.0       -->   25.5.0
  more-itertools                 10.2.0       -->   10.5.0
  nh3                            0.2.17       -->   0.2.20
  pkginfo                        1.10.0       -->   1.12.0
  pygments                       2.17.2       -->   2.18.0
  requests                       2.31.0       -->   2.32.3
  tqdm                           4.66.2       -->   4.67.1
  urllib3                        2.2.1        -->   2.2.3
  zipp                           3.18.1       -->   3.20.2

==                      Added dependencies                      ==

  backports-tarfile              1.2.0
And copy the pusutil update to all requirements files.

Lockfile diff: lockfiles/st2.lock [st2]

==                    Upgraded dependencies                     ==

  psutil                         6.1.0        -->   6.1.1
@cognifloyd cognifloyd added this to the 3.9.0 milestone Dec 19, 2024
@cognifloyd cognifloyd self-assigned this Dec 19, 2024
@pull-request-size pull-request-size bot added the size/XXL PR that changes 1000+ lines. You should absolutely split your PR into several. label Dec 19, 2024
@cognifloyd cognifloyd force-pushed the py3.10 branch 2 times, most recently from 4a28d5c to 96925a7 Compare December 19, 2024 23:29
@cognifloyd cognifloyd marked this pull request as ready for review December 20, 2024 00:05
@cognifloyd cognifloyd requested a review from a team December 20, 2024 14:43
@guzzijones guzzijones merged commit ae50851 into master Jan 10, 2025
86 checks passed
@guzzijones guzzijones deleted the py3.10 branch January 10, 2025 21:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

external dependency feature infrastructure: ci/cd maintenance pantsbuild size/XXL PR that changes 1000+ lines. You should absolutely split your PR into several. tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants