-
Notifications
You must be signed in to change notification settings - Fork 25
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
arm64 runner improvements #101
Comments
None of the packages affected provide arm64 binary wheels. They are likely all waiting for GitHub hosted runners (for example pyca/cryptography#11199) as Python packaging does not support cross compiling (except hackily with setuptools which is on the way out). So I don't expect much progress there. The timeline for those runners was recently moved/adjusted to Q1 2025 (github/roadmap#970) |
I've added pre and post job scripts/hooks on my ARM64 runners: jeremyd2019/winautoconfig@202e943...3419a78 |
Does that mean we can cancel stuck jobs now? edit: I tried it, seems to have worked (or it was in a good state): https://github.com/msys2-arm/msys2-autobuild/actions/runs/12702640749/job/35409213279 oh, now it's stuck again in make_tree_writable |
Yes, it now should be safer to cancel jobs. Not completely safe, but safer. The fact that it was not building a package means it probably would have been relatively safe before.
That's git-for-windows/git#5320. Local |
maybe make_tree_writable needs to detect symlinks/directory junctions and not follow them also? Just thinking out loud |
huh, good point, python/cpython#67596 |
As found out here, os.walk() by default follows junctions, which we don't want and can even lead to loops: msys2#101 (comment) Integrate the workaround mentioned in the CPython bug report: python/cpython#67596 (comment) Since this is Python 3.12+ only and we still support 3.10 make it optional though. This also adds tests, which uncovered some other minor issues: It was not chmoding top-down, which meant that os.walk would skip things if there were no read permissions. So chmod before os.walk() lists the dir.
I've created #107 |
As found out here, os.walk() by default follows junctions, which we don't want and can even lead to loops: #101 (comment) Integrate the workaround mentioned in the CPython bug report: python/cpython#67596 (comment) Since this is Python 3.12+ only and we still support 3.10 make it optional though. This also adds tests, which uncovered some other minor issues: It was not chmoding top-down, which meant that os.walk would skip things if there were no read permissions. So chmod before os.walk() lists the dir.
architecture: x64
. I tested, but there are not yet binary wheels for win-arm64, so installing requirements fails for lack of visual studio. I'm not interested in installing visual studio just for that.The text was updated successfully, but these errors were encountered: