-
Notifications
You must be signed in to change notification settings - Fork 928
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
Drop support for Python 3.9, require Python >= 3.10 #2132
Conversation
Starting development for Mesa 3.0 and following SPEC 0 we can drop Python 3.9 support and require Python 3.10 or higher for future development. This allows adopting more modern Python features and simplifies the testing and CI configurations. See the Python 3.10 release notes: https://docs.python.org/3/whatsnew/3.10.html The 2.3.x release series will keep supporting Python 3.9.
`X | Y` can now be used for type annotations, including making a variable optional with `X | None`
Performance benchmarks:
|
Duplicate of #2008. Missing update to https://github.com/projectmesa/mesa/pull/2008/files#diff-732a7eb31fbbd25075ee965837dc0092fb53c2cb64c068e60392d9bf69d9f9bb. |
Good catch, added it. The reason I opened a new PR because the previous one didn't move forward and looked incomplete. This one is a fresh take without conflicts including all the typing changes that can be made automatically. |
We can do this now in Python 3.10!
* Drop support for Python 3.9, require Python >= 3.10 Starting development for Mesa 3.0 and following SPEC 0 we can drop Python 3.9 support and require Python 3.10 or higher for future development. This allows adopting more modern Python features and simplifies the testing and CI configurations. See the Python 3.10 release notes: https://docs.python.org/3/whatsnew/3.10.html The 2.3.x release series will keep supporting Python 3.9. * Update type hinting for Python 3.10 `X | Y` can now be used for type annotations, including making a variable optional with `X | None` * intro_tutorial.ipynb: Require Python 3.10 * typing: Replace Union with pipe (|) We can do this now in Python 3.10!
Starting development for Mesa 3.0 and following SPEC 0 we can drop Python 3.9 support and require Python 3.10 or higher for future development. This allows adopting more modern Python features and simplifies the testing and CI configurations.
See the Python 3.10 release notes: https://docs.python.org/3/whatsnew/3.10.html
The 2.3.x release series will keep supporting Python 3.9.