Added macos arm64 Apple Silicon to CI
This PR adds macos arm64 Apple Silicon to CI.
- Added missing python 3.10 metadata to setup.py
We need to tell CMAKE to use arm64 as well as the wheel building process otherwise it tries to link an x86 version and fails. I have tested this cross compile on my Intel Mac and then pushed it to an Apple M1 in the cloud and confirmed it installs and imports for python 3.10.
@haata Do you know why CI was breaking on master? Also any chance you can help me get this merged and released, we want to use pycapnp in our library and everyone seems to be getting new Apple Silicon these days. 😍
Okay, so I solved the issues, for macOS the minimum target needs to be higher for older python versions I guess.. 🤷♂️ and for windows, they must have changed something in the new windows-2022 runner which is now windows-latest the weird thing is they made the 2022 runner latest before the last pycapnp release, so they must have changed something in that runner.
I can't figure it out, I tried to reverse shell in using tunshell but it doesnt support Windows properly, so then I tried to install a variety of visualstudio libraries and cmake versions which didnt help.
Weirdly, I did a fresh install of Windows 11 on a VM and all that was required was choco install cmake visualstudio2019-workload-vctools which is what we use in our Windows runners which also works on windows server 2022. So.... it must be something to do with cmake and visual studio but I have limited understanding of Windows build systems and C++.
...But its working. 😅
If anyone can figure out the difference here are the two system manifests: https://github.com/actions/virtual-environments/blob/main/images/win/Windows2019-Readme.md https://github.com/actions/virtual-environments/blob/main/images/win/Windows2022-Readme.md
@haata & @kentonv any chance of a review? Before we release our latest version https://github.com/OpenMined/pysyft it would be great if M1 silicon wheels were available on pypi, otherwise we have to tell all our users to install cmake.
Sorry for the delay, I'll take a look at this (i was on a long vacation without internet).
Thanks so much for doing this. I'll try to look into getting a release out this weekend.
@haata no worries, I hope your internet free holiday was great. Sorry. ❤️
https://pypi.org/project/pycapnp/1.2.0/
Pushed this a few days ago.