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
Compatibility with Python 3.11 #4488
Comments
Marked as task and tentatively scheduled for 1.9.0 (more to have it on recall than anything else really). |
The dependency was updated & I've successfully tested Python 3.10 and 3.11, both work when it is bumped in OctoPrint. Next on the list will be a quick check with 3.7 and then I think it is good. |
I've been working on bringing up a machine with Fedora 37 to test compatibility with the various software packages I use. F37 has upgraded to Python 3.11 and its release is scheduled for the next couple of weeks (schedule). OctoPrint 1.8.6 does not have #4530, so the pip install instructions fail on F37. Would it be possible (and appropriate) to cut a 1.8.x release with #4530? |
Sorry, but no. OctoPrint 1.8.x clearly states it is compatible to 3.7 through 3.10. Releases cost time. Usually half a day to a day, plus a TON of support overhead for everyone helping out in the following days due to "I updated and now everything is broken, the update is shit" red herrings. I do them for fixes (specifically regressions and vulnerabilities), but a software not running under a runtime environment it doesn't explicitly say it supports is not a regression, not even a bug, it's working as designed. And every single 1.8.x release means yet another delay in getting around to working on 1.9.0. I'm pretty sure even Fedora supports creating a virtual environment with an older Python version than the new system wide default. If that isn't an option, you can also just run a checkout of |
You have no reason to be sorry. I recognized while writing my last comment that releases for every project come with work amount of work that someone must do, but how much varies depending on the project. Your time is valuable and I want to try to respect that. I can tell from your response that you've dealt with people demanding support (particularly free support) for a project they've never contributed to in any way. I appreciate the guidance on venv and maintenance. I'll use one of those for now. |
Note that this can also be worked around by manually installing the correct wrapt afterwards:
Pip will complain about unmet dependencies, but it will work fine. This is the approach I took when I switch my Octoprint installation to Python 3.11 under Debian Bullseye. |
This issue has been mentioned on OctoPrint Community Forum. There might be relevant details there: https://community.octoprint.org/t/setting-up-octoprint-on-windows/383/207 |
This issue has been mentioned on OctoPrint Community Forum. There might be relevant details there: |
While it's not pretty I can confirm that @flaviut's workaround of installing Hopefully there's a proper fix for OctoPrint with Python 3.11 soon. 🤞 |
- DietPi-Software | Python 3: Work around pip v23 issue via pip.conf instead of CLI argument, and do the same to disable the cache - DietPi-Software | OctoPrint: Replace build-essentials dependency with gcc. On x86_64 it is only needed on Bookworm since netifaces has no Python 3.11 compatible wheels on PyPI. OctoPrint is generally not Python 3.11 compatible at the momemt, but let's keep the dependency for once this changes: OctoPrint/OctoPrint#4488
Decided to backport this to |
Compatibility issues
Describe the solution you'd like
Python 3.11 is currently in alpha, scheduled to be released towards the end of the year. I tested it to see if OctoPrint runs successfully.
There were not as many issues to solve as there was with 3.10, which is good.
The only change I've found so far that needs to happen is for wrapt to be bumped to a newer release (fixing some change to a deprecated API) - 1.14.0.
However... according to the issues over there, the current version of wrapt doesn't work on 3.7 (and maybe others?). It looks like the issues are under control (GrahamDumpleton/wrapt#210) so we will need to wait for a newer release, hopefully soon.
So I created this issue so it was not forgotten 🙂
Describe alternatives you've considered
🤷
Additional context
GrahamDumpleton/wrapt#210
GrahamDumpleton/wrapt#196
The text was updated successfully, but these errors were encountered: