-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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 support for Python 3.13 #3967
Conversation
for more information, see https://pre-commit.ci
Tried to replicate the 3.13 issue on Windows locally, effectively killed my stream doing so. :-) Full Log
|
This reverts commit 35b862d.
Alright, this was rather annoying -- but here we are; our tests are passing for all OS/Python version combinations. There were a bunch of breaking changes mandated due to the need to upgrade numpy to I am not sure what to do with this PR in the meantime; probably we will just have to wait until |
@@ -58,6 +89,7 @@ def manim_caplog(caplog): | |||
@pytest.fixture | |||
def config(): | |||
saved = manim.config.copy() | |||
manim.config.renderer = "cairo" |
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.
Should this be reverted?
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.
This fixed a bunch of tests that were mistakenly run with the opengl renderer, we should keep it for now.
Curiously, the pipeline failed again in the pathological case, am looking into details.
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.
Official Python 3.13 support, here we go! 🚀
Python 3.13 has been out for a week or two now, it's highly probable that new users to Manim may start off with python 3.13. As such, we should start testing it.
All tests pass locally on my machine, and looking through the porting guide there isn't much to be concerned about (except a small change w.r.t.
functools.partial
which I don't think applies to us).This COMPLETELY REMOVES the upper python version bound. See https://iscinumpy.dev/post/bound-version-constraints/ for why upper bounds on python versions is a terrible idea.
(marking as a draft until tests pass on all operating systems)
Changes
>=1.14.0
for python >=3.13moderngl-window >= 3.0.2
numpy>=2.0
audioop-lts
after removal of stdlibaudioop
library.