pyopengl
pyopengl copied to clipboard
Updated GitHub actions to support arm runners
Added support for arm architectures and extended manylinux and musllinux versions
- Windows on ARM
- MacOS on arm
- manylinux2014 (x86_64, i686, aarch64, armv7l)
- manylinux_2_28 (x86_64, aarch64, armv7l) - i686 is not supported
- musllinux_1_2 (x86_64, i686, aarch64, armv7l)
Removed support for Python 3.6-3.8 builds
Newer manylinux and musllinux distros do not come with older Python versions. Python 3.8 is at end of life by now.
Switched to experimental arm runners (for vastly improved build times for aarch64 and armv7l)
See https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
and arm runners?
and arm runners?
Good idea. It would require some additional testing though. That would potentially include the following architectures:
- MacOS apple silicon (arm64) (or universal2)
- Windows on Arm
- manylinux & musllinux aarch64, ppc64le, s390x and armv7l
It's not entirely clear though if all of those binaries can actually be built without modifying the code.
I can try, but it'll take a while.
and arm runners?
Good idea. It would require some additional testing though. That would potentially include the following architectures:
- MacOS apple silicon (arm64) (or universal2)
- Windows on Arm
- manylinux & musllinux aarch64, ppc64le, s390x and armv7l
It's not entirely clear though if all of those binaries can actually be built without modifying the code.
I can try, but it'll take a while.
yes, also you have arm runners now to test it: https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
digits, jetson thor, cuda arm laptops are coming...
yes, also you have arm runners now to test it: https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
Nice, thanks for the heads-up! I implemented the runners into a new workflow setup. I tested it and it seems to work quite well. ppc64le and s390x will not be supported, because NumPy does not support them. I added the code anyway, but it's commented out until that changes (if ever).
@Zuzu-Typ FYI: also window arm is coming for Q2 2025 https://github.com/github/roadmap/issues/1098
Thanks for your runners, I really appreciate it from Nvidia (Digits, Thor and Cuda ARM laptops)
cc @mcfletch could you merge it ASAP?
One question, Is it necessary mantain old python <3.9? https://devguide.python.org/versions/ i mean in terms of cost, efficiency and security
I mean
One question, Is it necessary mantain old python <3.9? https://devguide.python.org/versions/ i mean in terms of cost, efficiency and security
Are you asking me or mcfletch?
I believe it isn't strictly necessary. I think it's generally a good idea to support older versions if there is no downside (no workarounds, no features that can't be used). Then the users of those platforms can still use the latest version with all bugfixes. Most packages (e,g, numpy) don't do this though so one might run into compatibility problems.
I removed <=3.8 from the build script, because they might not be supported on all manylinux or musllinux images.
One question, Is it necessary mantain old python <3.9? https://devguide.python.org/versions/ i mean in terms of cost, efficiency and security
Are you asking me or mcfletch?
I believe it isn't strictly necessary. I think it's generally a good idea to support older versions if there is no downside (no workarounds, no features that can't be used). Then the users of those platforms can still use the latest version with all bugfixes. Most packages (e,g, numpy) don't do this though so one might run into compatibility problems.
I removed <=3.8 from the build script, because they might not be supported on all manylinux or musllinux images.
I hope that @mcfletch merge ASAP