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, drop support for Python 3.8 #79

Merged
merged 23 commits into from
Jan 19, 2024

Conversation

wilfried-huss
Copy link
Collaborator

@wilfried-huss wilfried-huss commented Oct 4, 2023

Summary

Add support for Python 3.12.

Because of dependency conflicts, remove support for Python 3.8. This major version is not actively supported since May 2021 and security support will end in October 2024.

Details and comments

  • update workflows to use Python 3.11 for non version-critical tasks;
  • update tooling to use Python 3.9 as target version. This triggers using standard containers as type annotations instead of dedicated imports from the typing module;
  • upgrade all dependencies. Qiskit dependencies are constrained further, to ensure Python 3.12 support:
    • Qiksit >= 0.45.2
    • Qistkit-Aer >= 0.13.2.

@airwoodix
Copy link
Collaborator

symengine 0.11 was released, with Python 3.12 wheels.
We can continue on this patch as soon as Qiskit/qiskit#11262 is released.

@airwoodix
Copy link
Collaborator

airwoodix commented Nov 29, 2023

Python 3.8 cannot be supported at the same time as Python 3.12, because numpy dropped support for Python 3.8 in 1.25.0. Numpy >=1.26.0 is required for Python 3.12 support (see 1680dec).

qiskit-aer doesn't ship Python 3.12 wheels yet. Building on demand fails. This may be fixed by Qiskit/qiskit-aer#1947.

@mtreinish
Copy link
Collaborator

Aer has support for Python 3.12 now with Qiskit/qiskit-aer#2022 which was recently published in 0.13.2.

@airwoodix
Copy link
Collaborator

@mtreinish thanks for the hint and the work on Python 3.12 support for Qiskit-Aer! It's great to have Python 3.12 support for all the dependencies in this package now.

@wilfried-huss I think this PR is ready now. Since you're the original author, I can only ask you for a review like this :)

@airwoodix airwoodix self-assigned this Jan 18, 2024
@airwoodix airwoodix marked this pull request as ready for review January 18, 2024 20:52
@airwoodix airwoodix changed the title Include Python 3.12 in test matrix Add support for Python 3.12, drop support for Python 3.8 Jan 18, 2024
@airwoodix airwoodix merged commit 9585bbe into master Jan 19, 2024
11 checks passed
@airwoodix airwoodix deleted the python-3.12 branch January 19, 2024 10:40
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.

4 participants