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

Add support for Python 3.12 #1272

Merged
merged 50 commits into from
Feb 9, 2024
Merged

Conversation

tkumor3
Copy link
Contributor

@tkumor3 tkumor3 commented Feb 1, 2024

Closes #

Introduced changes

  • This PR contains breaking changes

dependabot bot and others added 20 commits January 11, 2024 09:26
Bumps the dev-dependencies group with 13 updates:

| Package | From | To |
| --- | --- | --- |
| [pytest](https://github.com/pytest-dev/pytest) | `7.4.0` | `7.4.4` |
| [black](https://github.com/psf/black) | `23.7.0` | `23.12.1` |
| [poethepoet](https://github.com/nat-n/poethepoet) | `0.22.0` | `0.24.4` |
| [coverage](https://github.com/nedbat/coveragepy) | `7.3.0` | `7.4.0` |
| [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `0.21.1` | `0.23.3` |
| [pylint](https://github.com/pylint-dev/pylint) | `2.17.5` | `3.0.3` |
| [setuptools](https://github.com/pypa/setuptools) | `68.1.2` | `69.0.3` |
| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.11.1` | `3.12.0` |
| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.3.1` | `3.5.0` |
| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.325` | `1.1.345` |
| [isort](https://github.com/pycqa/isort) | `5.12.0` | `5.13.2` |
| [pytest-rerunfailures](https://github.com/pytest-dev/pytest-rerunfailures) | `12.0` | `13.0` |
| [cairo-lang](https://github.com/starkware-libs/cairo-lang) | `0.12.2` | `0.13.0` |


Updates `pytest` from 7.4.0 to 7.4.4
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](pytest-dev/pytest@7.4.0...7.4.4)

Updates `black` from 23.7.0 to 23.12.1
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@23.7.0...23.12.1)

Updates `poethepoet` from 0.22.0 to 0.24.4
- [Release notes](https://github.com/nat-n/poethepoet/releases)
- [Commits](nat-n/poethepoet@v0.22.0...v0.24.4)

Updates `coverage` from 7.3.0 to 7.4.0
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](nedbat/coveragepy@7.3.0...7.4.0)

Updates `pytest-asyncio` from 0.21.1 to 0.23.3
- [Release notes](https://github.com/pytest-dev/pytest-asyncio/releases)
- [Commits](pytest-dev/pytest-asyncio@v0.21.1...v0.23.3)

Updates `pylint` from 2.17.5 to 3.0.3
- [Release notes](https://github.com/pylint-dev/pylint/releases)
- [Commits](pylint-dev/pylint@v2.17.5...v3.0.3)

Updates `setuptools` from 68.1.2 to 69.0.3
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](pypa/setuptools@v68.1.2...v69.0.3)

Updates `pytest-mock` from 3.11.1 to 3.12.0
- [Release notes](https://github.com/pytest-dev/pytest-mock/releases)
- [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst)
- [Commits](pytest-dev/pytest-mock@v3.11.1...v3.12.0)

Updates `pytest-xdist` from 3.3.1 to 3.5.0
- [Release notes](https://github.com/pytest-dev/pytest-xdist/releases)
- [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst)
- [Commits](pytest-dev/pytest-xdist@v3.3.1...v3.5.0)

Updates `pyright` from 1.1.325 to 1.1.345
- [Release notes](https://github.com/RobertCraigie/pyright-python/releases)
- [Commits](RobertCraigie/pyright-python@v1.1.325...v1.1.345)

Updates `isort` from 5.12.0 to 5.13.2
- [Release notes](https://github.com/pycqa/isort/releases)
- [Changelog](https://github.com/PyCQA/isort/blob/main/CHANGELOG.md)
- [Commits](PyCQA/isort@5.12.0...5.13.2)

Updates `pytest-rerunfailures` from 12.0 to 13.0
- [Changelog](https://github.com/pytest-dev/pytest-rerunfailures/blob/master/CHANGES.rst)
- [Commits](pytest-dev/pytest-rerunfailures@12.0...13.0)

Updates `cairo-lang` from 0.12.2 to 0.13.0
- [Release notes](https://github.com/starkware-libs/cairo-lang/releases)
- [Commits](starkware-libs/cairo-lang@v0.12.2...v0.13.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: black
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: poethepoet
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: coverage
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: pytest-asyncio
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: pylint
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: setuptools
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: pytest-mock
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: pytest-xdist
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: pyright
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: isort
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: pytest-rerunfailures
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: cairo-lang
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: ddoktorski <[email protected]>
@tkumor3 tkumor3 changed the base branch from development to dependabot/pip/dev-dependencies-79788bbfd5 February 1, 2024 10:22
@tkumor3 tkumor3 changed the base branch from dependabot/pip/dev-dependencies-79788bbfd5 to master February 1, 2024 11:27
@tkumor3 tkumor3 changed the base branch from master to development February 1, 2024 11:28
Copy link
Collaborator

@ddoktorski ddoktorski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left one comment, but overall it looks good 💪

Please also revise the Development dependencies section in the docs to remove the requirement for Python 3.9.x

pyproject.toml Outdated Show resolved Hide resolved
.github/workflows/checks.yml Outdated Show resolved Hide resolved
.github/workflows/checks.yml Outdated Show resolved Hide resolved
Comment on lines 103 to 105
- name: Install setuptools
run: |
pip install --upgrade setuptools
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the rationale behind this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

python 3.12 doesn't install it in the default

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use 3.11 for the setup and then omit this action?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, that was the first solution! We decided with @THenry14 to use 3.12 everywhere where possible.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess if we use 3.11 here we can also get rid of setuptools from pyproject.toml, is that correct?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can check it

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it works

.github/workflows/checks.yml Outdated Show resolved Hide resolved
docs/development.rst Outdated Show resolved Hide resolved
pyproject.toml Outdated Show resolved Hide resolved
pyproject.toml Show resolved Hide resolved
@tkumor3 tkumor3 linked an issue Feb 8, 2024 that may be closed by this pull request
docs/development.rst Outdated Show resolved Hide resolved
@tkumor3 tkumor3 force-pushed the tomaszkumor/python-3.12-support branch from b297fe4 to a97d06a Compare February 9, 2024 13:02
Copy link
Collaborator

@ddoktorski ddoktorski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left one more minor comment.

Please rename the title before merging 👍

.github/workflows/checks.yml Outdated Show resolved Hide resolved
@tkumor3 tkumor3 changed the title Tomaszkumor/python 3.12 support Add support for Python 3.12 Feb 9, 2024
@tkumor3 tkumor3 merged commit c44e782 into development Feb 9, 2024
16 checks passed
@tkumor3 tkumor3 deleted the tomaszkumor/python-3.12-support branch February 16, 2024 08:46
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.

Support python 3.12
2 participants