-
Notifications
You must be signed in to change notification settings - Fork 26
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 Python 3.11 support #803
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## dev #803 +/- ##
========================================
Coverage 87.79% 87.79%
========================================
Files 44 44
Lines 8950 8950
Branches 2062 2695 +633
========================================
Hits 7858 7858
Misses 779 779
Partials 313 313
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report in Codecov by Sentry. |
Now that h5py has released wheels for Python 3.11, I would like to make a minor release of hdmf in the next week or two to add support for Python 3.11. TODO:
|
yikes! numpy even dropped 3.8 already in its |
I guess might stem from https://numpy.org/neps/nep-0029-deprecation_policy.html where 3.9 becomes minimal supported some time this Apr 2023. yet to comprehend it fully but at least it answers the question "why". It also doesn't imply that downstream projects (such as hdmf etc) have to drop versions no longer supported by numpy etc, since they could still be used with earlier versions of python and numpy which might still be supported or simply be supported/present in some given distribution. |
Yes, we don't have to drop Python 3.7 support for newer versions of HDMF (EOL is 27 Jun 2023). The main benefits are that we can use Python 3.8+ only features (not critical but nice to have) and we need not test on Python 3.7 in CI. Dropping Python 3.6 was more useful since Python 3.7 introduced some nice-to-have features. Python 3.8 is less important. I'll update the PR, and we can drop Python 3.7 if we come across an incompatibility. |
Note that #785 highlights an inconvenience with Python 3.7. We have worked around it though. |
PyNWB tests pass locally on my Mac M1 with Python 3.11. We can check for issues with other OSs in the PyNWB repo. I also made a change to the |
Motivation
- Drop Python 3.7 support. Major scientific Python packages, such as numpy, pandas, and scipy, have already dropped Python 3.7 support in their latest releasesNOTE: h5py has not yet released wheels for Python 3.11, so all tests will currently fail.Checklist
flake8
from the source directory.