-
-
Notifications
You must be signed in to change notification settings - Fork 553
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.8
, support Python 3.12
?
#3390
Comments
I don't think we should drop support for Python 3.8 unless PyBaMM breaks on 3.8 or 3.8 reaches We can actually start testing PyBaMM on 3.12 in the CI. IIRC, |
Yes, it would be good to try supporting Python 3.12, which comes tomorrow.
That makes sense, I just checked and Python 3.8 EOL is in October 2024, so we have just about a year to remove it |
We should only build and ship pybamm wheels once every dependency works, but testing pybamm (just with the required dependencies) in the CI should be good. (release candidates of 3.12 have been available on GH Actions for quite some time now) |
Good idea, we could also do these checks in the nightly releases when ready (#3251) since it would help catch errors and deprecations early |
Copying from slack -
|
There are a lot of interesting things available in the Scientific Python ecosystem, perhaps we should also try using |
Some of the failing checks in repo review are intentional from our end (for example - we removed codespell, prettier, and isort as pre-commit hooks because they were doing more harm than good), and some of them are potential GSoC projects (for example - pybamm wide typing hints), but yes an issue to track repo review's suggestions would be nice. We could either implement the suggestions, discard them, or mark them as implemented. PS: we weren't using repo review before because it was Scikit-HEP specific, but now they've moved it to Scientific Python, which is nice! |
Makes sense. I will run the tool locally and see what we are missing, I cannot get it to to work inside the browser at all for some reason. There has been some discussion about a PR for adding type hints to PyBaMM models after they have been serialised in #3397 (or they were probably for the expression tree: not sure) in the developer meeting yesterday |
I've been going through and adding type hints for the expression trees yes (they're more of a by-product from trying various methods for serialisation) - I'll make a PR asap for those. |
@Saransh-cpp: should we try for Python 3.12? We can still keep Python 3.8 as discussed above. I was supposed to work on #3443, which I can then close in the same PR to avoid merge conflicts. In any case, it will be merged only after the stable release, so we have a lot of time to look into any failures that occur. |
Yes! We can add a note in the docs about optional dependencies not yet supported for Python 3.12.
Ah, I remember the maintainers of scikits.odes were waiting for NumPy's migration to meson to stop using |
NumPy>=1.26 and SciPy>=1.11 support Python 3.9+ now and already have wheels for Python 3.12. The blocker should be CasADi, which might have a new release soon because the pre-release is available. In any case, we should be able to drop Python
3.8
support at this time and3.12
can waitThe text was updated successfully, but these errors were encountered: