Skip to content

Conversation

@j-adamczyk
Copy link
Contributor

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.

@codecov
Copy link

codecov bot commented Feb 1, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 56.92%. Comparing base (ce3d8c5) to head (971d1fb).
Report is 13 commits behind head on master.

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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Collaborator

@sethaxen sethaxen left a 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.

@j-adamczyk
Copy link
Contributor Author

Sure, I will fix those.

Actually, I started working on this because we depend on e3fp in scikit-fingerprints, and 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?

Copy link
Collaborator

@sethaxen sethaxen left a 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.

@sethaxen sethaxen merged commit b30ec93 into keiserlab:master Feb 4, 2025
6 of 7 checks passed
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.

Allow Python 3.13

2 participants