Skip to content

feat: add Python 3.11 support#157

Merged
maxrake merged 2 commits into
mainfrom
python_for_workgroups
Nov 4, 2022
Merged

feat: add Python 3.11 support#157
maxrake merged 2 commits into
mainfrom
python_for_workgroups

Conversation

@maxrake
Copy link
Copy Markdown
Contributor

@maxrake maxrake commented Nov 4, 2022

This change coincides with the release of Python 3.11, which happened 24 OCT 2022. Anyone tracking this repository and this change should update their use of pyenv locally, to include py3.11.x

A number of changes were made:

  • Update the Docker base image version
  • Update the CONTRIBUTING documentation
  • Include lockfile checks in workflow steps
    • This will provide a CI failure if the lockfile does not correspond to the current version of the pyproject.toml file
    • Failures could indicate a manual or improperly updated lockfile, which could indicate malicious behavior
  • Update the testing environments in tox, workflows, and unit tests
  • Update pyproject.toml and generate an updated poetry.lock lockfile
    • Add a new classifier
    • Change from "caret" to specific range notation for supported Python versions
      • The ^3.7 caret form was getting translated to >=3.7,<4.0, which meant that Python 3.11 was getting included as a supported version as soon as it was released...before testing and explicit adoption could happen
    • poetry-core v1.3.2 is a new minimum requirement, given that Python 3.11 was added to the list of available Python versions in that release
  • Add package download count badges to the main README
  • Use single test rollup job
    • Aggregate all the test jobs into the "test rollup" job so that there will only be one job name that needs to be specified in the repository settings for branch protection and required status checks
    • The advantage of doing this is that the name of the status check will not change when the version of Python the underlying jobs use changes

Closes #150

Checklist

  • Does this PR have an associated issue (i.e., closes #<issueNum> in description above)?
  • Have you ensured that you have met the expected acceptance criteria?
  • Have you created sufficient tests?
  • Have you updated all affected documentation?

This change coincides with the release of Python 3.11, which happened
24 OCT 2022. Anyone tracking this repository and this change should
update their use of `pyenv` locally, to include py3.11.x

A number of changes were made:

* Update the Docker base image version
* Update the CONTRIBUTING documentation
* Include lockfile checks in workflow steps
  * This will provide a CI failure if the lockfile does not correspond
    to the current version of the `pyproject.toml` file
  * Failures could indicate a manual or improperly updated lockfile,
    which could indicate malicious behavior
* Update the testing environments in `tox`, workflows, and unit tests
* Update `pyproject.toml` and generate an updated `poetry.lock` lockfile
  * Add a new classifier
  * Change from "caret" to specific range for supported Python versions
  * `poetry-core` v1.3.2 is a new minimum requirement, given that Python
    3.11 was added to the list of available Python versions
    [in that release](https://github.com/python-poetry/poetry/releases/tag/1.2.2)
* Add package download count badges to the main README

Closes #150
@maxrake maxrake self-assigned this Nov 4, 2022
@maxrake maxrake requested a review from a team as a code owner November 4, 2022 16:35
@maxrake maxrake requested a review from cd-work November 4, 2022 16:35
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Nov 4, 2022

Phylum OSS Supply Chain Risk Analysis - SUCCESS

The Phylum risk analysis is complete and did not identify any issues.

View this project in the Phylum UI

This change aggregates all the test jobs into the "test rollup" job so that there will only be one job name that needs to be specified in the repository settings for branch protection and required status checks. The advantage of doing this is that the name of the status check will not change when the version of Python the underlying jobs use changes.
@maxrake maxrake enabled auto-merge (squash) November 4, 2022 17:26
@maxrake maxrake merged commit 815c368 into main Nov 4, 2022
@maxrake maxrake deleted the python_for_workgroups branch November 4, 2022 17:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Python 3.11 support

2 participants