-
Notifications
You must be signed in to change notification settings - Fork 34
Allow Python 3.13 #89
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
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #89 +/- ##
==========================================
- Coverage 57.20% 56.92% -0.29%
==========================================
Files 18 18
Lines 2748 2774 +26
Branches 539 434 -105
==========================================
+ Hits 1572 1579 +7
- Misses 1060 1087 +27
+ Partials 116 108 -8 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
sethaxen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the PR. Can you also make sure that CI/publishing are both run for Python 3.13 and that the requires-python and classifiers fields in pyproject.toml are updated accordingly?
I suspect we'll run into an issue with the CI because uv sync uses global dependency resolution instead of platform-specific resolution. So e.g. numba v0.60 doesn't support Python 3.13 and v0.61.0 doesn't support Python 3.9, so we'll need to either drop support for Python 3.9 for our CI to work or we'll need to find a way to run CI with platform-specific resolution.
|
Sure, I will fix those. Actually, I started working on this because we depend on |
sethaxen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we're in the process of dropping Python 3.9 and enabling Python 3.13. So I would personally opt for dropping Python 3.9 support. Would that be ok for you?
I'd rather not just for getting CI to work. Looking at https://pypistats.org/packages/e3fp, we still have a fair number of Python 3.8 users (but I can't do anything for them due to pypi rdkit version constraints) and some 3.9, and Python 3.9 is supported through October of this year.
I found a way to force uv to resolve dependencies separately for each Python version, which allows us to keep the Python 3.9 support. Since this now allows a newer version of scipy to be installed, I needed to generalize a doctest that was sensitive to a repr method.
Allows Python 3.13 installation, fixes #88. I ran tests locally and everything seems to be working.
I also changed the version to 1.2.7, since that would probably be the next release, but I can revert that one if necessary.