-
-
Notifications
You must be signed in to change notification settings - Fork 517
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
Add all buildable packages to osx-arm64 #2436
base: main
Are you sure you want to change the base?
Conversation
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
Oh wow, thanks for the effort! I wonder though if this amount of packages can functionally DoS our bot? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The bot will do fine, but we cannot merge this.
Moving recipes over to the M1 is a burden on our maintainers and our cross-compiling architecture. Even if it builds natively, things can fail when cross-compiling.
Please add only what you need.
How about I attempt to cross-compile all of those packages and keep only the ones that cross-compile without modification? |
That would be better but still quite some burden on the maintainers and quite informative. I would expect many of them to fail. Keeping this list down to things you really need is much better (even better if you also step in as the maintainer of some of these packages). |
Just FYI before attempting to cross compile -- there is some "magic" somewhere in the bot that modifies the |
My motivation for this was that some M1 users (most, actually) don't know how to build Conda packages for M1. Not even simply adding the packages to this repo. What would be a way forward to help those people, in a way that doesn't put too much burden on the Conda-forge maintainers? |
Most of them are in https://github.com/regro/cf-scripts/blob/449368112dd90c4155934b526475aa9065647b86/conda_forge_tick/migrators/cross_compile.py#L1 |
|
List of packages that can be cross-compiled, top 100 by number of downloads:
There are definitely some false-positives in there, eg. Pandoc, enum34 (archived). |
Thanks for this. If you actually use any of those packages, please submit them in a new PR. |
Damn... it would'a been fun to see how merging this PR would'a unfolded 😆 @beckermr what's the endgame for these migrations usually? Does the bot have an expiration date where it goes all out or does keep going drip drip drip drip drip ad infinitum? |
For a migration like this we’ll just let it go forever. If we ever get enough CI support, we’ll likely build packages natively and turn on OS X arm by default. It’ll be at least a year for that or more is my guess. |
A matter of time, we will definitely get CI support I do wonder if the conda-forge community should petition Apple directly for some support, maybe they'd be so generous to give us something like this https://developer.apple.com/xcode-cloud/ (no way in hell would Apple do such a thing in general lol, but maybe if we fundamentally tweak how we build osx stuff...) |
Successfully building and publishing an osx-arm64 package doesn't mean it's correct, as I've unfortunately just discovered 😢. This is due to the upstream package if platform == 'darwin':
if not 'ARCHFLAGS' in os.environ:
os.environ['ARCHFLAGS'] = '-arch x86_64' I'm testing a fix for that here conda-forge/zeroc-ice-feedstock#25 |
Yes, unfortunately the osx-arm64 packages are only built but not tested right now: https://conda-forge.org/docs/maintainer/conda_forge_yml.html#test |
As a stopgap, could an osx_x86 host be able to use |
cc @conda-forge/core @isuruf Should we write this into the conda build checks? |
This adds all packages to osx-arm64 that I was able to build on my M1 machine without modifications.
Checklist
0
(if the version changed)conda-smithy
(Use the phrase@conda-forge-admin, please rerender
in a comment in this PR for automated rerendering)