-
Notifications
You must be signed in to change notification settings - Fork 268
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
Support python 3.11 #2107
Support python 3.11 #2107
Conversation
Seems we have to wait for a numba release adding python 3.11 support |
just rebased this on master - let's see if there are still issues |
Yes, still no numba for 3.11 |
Tests are now passing using the 0.57rc1 numba pre release |
I am not sure if the CI system allows for such conclusions, but: the python 3.11 test suite ran 1.5 minute faster than the python 3.10 tests (11:37 min vs. 10:03 min). If this is real and not just different workloads / hardware / vms in the CI system, it would be a really nice improvement for just updating to a new python minor version release (ca. 14 %, which is in line with what is promised in the release notes)! |
@@ -33,7 +33,7 @@ install_requires= | |||
importlib_metadata ; python_version < "3.10" | |||
joblib | |||
matplotlib ~=3.0 | |||
numba ~=0.56.0 | |||
numba >=0.56 |
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.
You wrote that we need at least numba 0.57, is that not correct anymore?
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.
For 3.11, 3.10 and below is fine with 0.56
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.
And since versions 0.56 correctly specifies that it is not compatible with 3.11, there is no issue.
The conda-forge package for 0.57 is not yet out, so prescribing 0.57 is not a good idea.
Python 3.11 changed the behavior of the format string for a
class Foo(str, Enum)
but also introduced a new classStrEnum
that keeps the old behavior.I added a
ctapipe.compat
module that encapsulates the version dependent behavior needed for ctapipe and added the previous implementation forStrEnum
there.Numba also needs to be at least 0.57 for python 3.11.