-
Notifications
You must be signed in to change notification settings - Fork 23
Update CI adding ARM #52
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
Conversation
|
cc @nmwsharp |
|
This pull request is helpful. Please merge it or fixing the typo error in core.cpp or gl_engine_egl.cpp in the first time. |
d4dbf60 to
d7ca265
Compare
when @nmwsharp fix main builds |
can you merge it? or I have to wait for @nmwsharp ? |
|
Thanks for submitting this! And for the pings :) To confirm, this is to add ARM Linux builds to the wheel set, and other changes to make those builds & tests succeed? I see a whole lot of changes to the cibuildwheel configs, which is a little scary to me so I will want to test/check carefully. There were already many rounds of testing & tweaking to find the current cibuildwheel config. That's not say the changes aren't appropriate, just warning you that these are the kind of changes I like to check very carefully. |
|
I've approved CI runs, and I'll look in to the main branch CI failures to sort out that distraction. |
Cibuildwheel now support natively arm ci |
|
I've fixed the build issues on the main branch! |
|
@nmwsharp I simplify the code. Now is building with your changes too. |
|
Thanks! The diff seems to contain many changes, added packages, etc. It also drops support for Python 3.7 & 3.8. I realize these are end-of-life, but I'd still rather build for them if possible. Are all of these changes really necessary for ARM builds? (Also, the diff is kinda hard to read because it looks like it adds a space to the end of every line or something?) |
I revert this, and also I revet commits, I don't now why git diff before not worked. Now you can see the differences |
|
@nmwsharp basically, I update tests with last stable python version 3.12, and I add last cibuildwheel and adapt packages that exists in both architectures x86 and arm in linux, finally, I added arm runners |
|
Thanks for the updates! I'm pretty sure there are still packages added to the CI lists which are not necessary. For instance I see GLFW, but Polyscope itself already includes GLFW as a submodule. And I also see Eigen, but this repository already includes Eigen as a submodule. Also, why was it necessary to add This may seem pedantic, if the builds are succeeding now, but having multiple versions of dependencies around in CI pipelines can be an annoying source of tricky bugs in the future. |
done |
|
Just merged! We still haven't really tested the builds, but I for some reason have had trouble getting builds to trigger from PRs, so it will be easier to debug that from the main branch. Thanks for your changes! As you may have noticed a pushed a few more small cleanup commits. As one additional change I removed the manually-set image names; I want to understand/verify problems with the default image before using overridden ones. |
|
Looks like the build succeeded! The wheels are here: https://github.com/nmwsharp/polyscope-py/actions/runs/14208200092 (artifact links at the bottom). If you have access to a suitable ARM machine feel free to test and verify they work as expected. I'll deploy a new version to pypi soon. |
Yes it works. I have running 3dgrut on jetson agx |

https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/
This pull request includes several updates to the CI workflows, build configurations, and dependencies. The primary focus is on enhancing compatibility, updating dependencies, and improving the build process across different operating systems.
CI Workflow and Build Configuration Updates:
.github/workflows/cibuildwheel_config.toml: Updated to skip Python versions 3.7 and 3.8, added new dependencies for Linux builds, and specified new manylinux images for x86_64 and aarch64. [1] [2].github/workflows/publish.yml: Modified job names, updated the cibuildwheel version to 2.22.0, and added architecture-specific configurations for different operating systems. [1] [2] [3].github/workflows/test_build.yml: Updated the job configuration to include architecture-specific settings and updated the cibuildwheel version to 2.22.0. [1] [2].github/workflows/test_linux.yml: Added architecture-specific settings, updated the checkout and setup-python actions to the latest versions, and updated the Python version to 3.12..github/workflows/test_macos.yml: Added architecture-specific settings, updated the checkout and setup-python actions to the latest versions, and updated the Python version to 3.12..github/workflows/test_windows.yml: Updated the checkout and setup-python actions to the latest versions, and updated the Python version to 3.12.