klippy: python 3.13
Those are minimal that can be installed/built on Python 3.13. cffi 1.17.1 greenlet 3.1.1 # Depends on newer CFFI
This should help people with 3.13, from there: #6525
~~Greenlet 3.1.1 could possibly be reused on 3.12 with newer CFFI~~ - smoke test seems fine
Generally, I expect it would be helpful to have feedback that:
- ~~CAN still works on 3.13~~ - python-can seems to be only used in the
canbus_query.py - Klipper works as before with 3.12
Thanks for working on this. We can make this change if we need to. It is unfortunate that things break with seemingly every new Python release.
-Kevin
I still want someone to explicitly check on 3.12, that it still works. 3.13 works for me, and for the others I suspect too: https://klipper.discourse.group/t/python-3-13-not-supported-by-greenlet-v3-0-3/23132
Either way, PR could wait.
It seems to run on my Fedora desktop (at least enough to run the regression test cases):
Python 3.12.10 (main, Apr 22 2025, 00:00:00) [GCC 14.2.1 20240912 (Red Hat 14.2.1-3)] on linux
I used a slightly different formatting:
--- a/scripts/klippy-requirements.txt
+++ b/scripts/klippy-requirements.txt
@@ -3,11 +3,12 @@
# typically installed via the command:
# pip install -r klippy-requirements.txt
-# The 'cffi' package is used by the "chelper" code
-cffi==1.14.6
# greenlet is used by the reactor.py code
greenlet==2.0.2 ; python_version < '3.12'
-greenlet==3.0.3 ; python_version >= '3.12'
+greenlet==3.1.1 ; python_version >= '3.12'
+# cffi is used by "chelper" code and by greenlet
+cffi==1.14.6 ; python_version < '3.12'
+cffi==1.17.1 ; python_version >= '3.12'
# Jinja2 is used by gcode_macro.py
Jinja2==2.11.3
markupsafe==1.1.1 # Needed by Jinja2
-Kevin
What is the status of this? Should this be merged?
Thanks, -Kevin
Yes, let's do.
Thanks.
Okay thanks. I made this change with slightly different file comments (commit 1af219fa).
-Kevin