indygreg / python-build-standalone

Produce redistributable builds of Python
BSD 3-Clause "New" or "Revised" License
1.71k stars 107 forks source link

CPython 3.11 distributions #141

Closed indygreg closed 1 year ago

indygreg commented 1 year ago

CPython 3.11 is scheduled for release on 2022-10-24.

I started to work on supporting the builds a few weeks ago. But there are considerable changes to extension module building that made the scope more significant than 3.9 and 3.10. It doesn't help that CPython's migration to using configure for extension module configuration is half-complete, leaving some extensions in a new (better IMO) world and others in the old. I'm still wrapping my head around the best way to proceed.

I'll be on holiday for the next few weeks and there is a ~0% chance I'll have 3.11 support in place before the planned release date of 3.11.0. But I figured I'd file an issue tracking 3.11 because it is only a matter of time before someone else does.

indygreg commented 1 year ago

I pushed a python311 branch with what I have so far. It is woefully incomplete.

damienrj commented 1 year ago

Sounds good, looking forward to it!

silverjam commented 1 year ago

🤘

tsukumijima commented 1 year ago

@indygreg Is there any progress in development regarding support for CPython 3.11? I am using Python Standalone Builds in my OSS product, KonomiTV, and Python 3.11 is much faster than previous versions, so I would like to see it supported as soon as possible. Thank you.

indygreg commented 1 year ago

I have an unpublished series of patches that produces 3.11 distributions for Linux. There are still lots of bugs. My personal goal is to get the 3.11 distributions published by the end of January. But I'm under no contractual obligation to deliver anything and it is ski season. So time will tell.

dae commented 1 year ago

Thank you for all the hard work you do Gregory - both PyOxidizer and python-build-standalone are great tools. Enjoy the season! :skier:

indygreg commented 1 year ago

I have Linux and macOS 3.11 distributions building and passing automated validations.

Windows 3.11 non-static builds are also looking good.

I'm still chasing issues with Windows 3.11 static builds.

I'll likely push the Linux and macOS builds to the main branch shortly. Just waiting on some CI runs to come back clean.

There's still a bit of verification work that needs to be done before a release. But I think the hardest part is done.

Hopefully the release will happen by 2023-01-17.

indygreg commented 1 year ago

Linux and macOS 3.11 build support is now on the main branch.

indygreg commented 1 year ago

And Windows 3.11 (the Python version, not the Windows version) build support is now on the main branch.

indygreg commented 1 year ago

I've published https://github.com/indygreg/python-build-standalone/releases/tag/20230113-testing as a testing release to make it easier to put the 3.11 builds through their paces.

I haven't done my usually battery of manual QA tests that I normally do when publishing a new major Python release. So there's likely some bugs in these distributions. Hopefully we'll find them before a real release is published. If not, that's what follow-up releases are for.

Anyway, 3.11 support is locked into the main branch and will be part of the next release. I don't see a continuing need for this issue. So closing.

Please file any specific issues with the 3.11 distributions in new issues.

indygreg commented 1 year ago

https://github.com/indygreg/python-build-standalone/releases/tag/20230116 is published. See #156 for a known issue with the 3.11 distributions. This issue is blocking me from adding 3.11 to PyOxidizer. So it should hopefully be fixed in the weeks ahead. I don't anticipate this causing problems at runtime though.

Please file GitHub issues for any problems with the 3.11 distributions.