conda-forge / erlang-feedstock

A conda-smithy repository for erlang.
BSD 3-Clause "New" or "Revised" License
0 stars 11 forks source link

Arm osx bootstrap #162

Closed danielhollas closed 1 week ago

danielhollas commented 1 month ago

Trying to see if the bootstrap build works for ARM64 on OSX as well. Build on top of #158

Checklist

conda-forge-webservices[bot] commented 1 month ago

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 (recipe) and found it was in an excellent condition.

danielhollas commented 1 month ago

@jakirkham I wanted to manually test the OSX arm64 build from this PR locally on a M2 Mac machine. I tried to follow the Downloading prebuilt packages from CI section of the Docs. I found it quite confusing and lacking enough details so perhaps I am doing something wrong. In the last commit, I've added the following to conda-forge.yml to enable artifact upload on Azure pipelines

azure:
   store_build_artifacts: true

But I still don't see any uploaded artifacts. Would you mind taking a look?

danielhollas commented 4 weeks ago

@conda-forge-admin please rerender

jakirkham commented 4 weeks ago

There are some screenshots with explanations in this issue ( https://github.com/conda-forge/conda-forge.github.io/issues/1424 ), which can help in downloading and testing these

jakirkham commented 4 weeks ago

Should add if you have recommendations on how to make the docs clearer we would welcome them 🙂

(even more so if in PR form 😉)

danielhollas commented 4 weeks ago

Haha, yes I was thinking of submitting a PR as I found the instructions very confusing. :-) I actually found the issue and the screenshots definitely helped. Do you think they should be in some form be included in the docs?

Ultimately the step I was missing is the rerender, which I think is not explicitly mentioned.

jakirkham commented 4 weeks ago

Yeah that was certainly one idea we had for the docs. If you find them helpful, agree we should add them 🙂

Calling out re-rendering in the docs is also a good idea 👍

danielhollas commented 4 weeks ago

Another question I had about this, is the artifact upload available only on Azure pipelines? I haven't seen the option for the other CI providers.

jakirkham commented 4 weeks ago

Yeah think it is just GitHub Actions and Azure

It's probably possible to implement on other CI providers, but am not aware of current work on that

danielhollas commented 4 weeks ago

Now that I've been able to download the artifact I could install the package locally on Mac M2. Unfortunately I am getting this error:

$ erl --version
dyld[36883]: Library not loaded: @rpath/libtinfo.6.dylib

  Referenced from: <64D3CFF0-45A6-37FA-AE4C-05C25E3CF527> miniconda3/envs/erlang-osx/lib/erlang/erts-15.0/bin/beam.smp

  Reason: tried: '/Users/veronikajuraskova/miniconda3/envs/erlang-osx/lib/erlang/erts-15.0/bin/../../../libtinfo.6.dylib' (no such file),
'/Users/veronikajuraskova/miniconda3/envs/erlang-osx/lib/erlang/erts-15.0/bin/../../../libtinfo.6.dylib' (no such file), '/usr/local/lib/libtinfo.6.dylib' (no such file), 
'/usr/lib/libtinfo.6.dylib' (no such file, not in dyld cache)

Googling around a bit it seems that libtinfo should come from ncurses library. Suspiciously, listing installed packages with mamba list only shows erlang and not other dependencies. So I suspect that runtime dependencies are somehow not correctly specified for the package. I'll need to have a closer look.

danielhollas commented 4 weeks ago

Okay, it seems that conda doesn't install package dependencies when installing from *.conda package file?? Installing ncurses and zlib manually solved the issue and we verified that erl --version works.

Unfortunately, the artifact doesn't contain the compiled test suite so we haven't run it. I don't know how much work it would be to try to upload the test suite as artifact as well, and if it is worth the hassle.

Apart from that I think this is ready to go. :rocket:

jakirkham commented 4 weeks ago

That's right. Would use file://<path to build_artifacts as the channel to install erlang

This should pull in dependencies

jakirkham commented 1 week ago

@conda-forge-admin , please re-render

conda-forge-webservices[bot] commented 1 week ago

Hi! This is the friendly automated conda-forge-linting service.

I was trying to look for recipes to lint for you, but it appears we have a merge conflict. Please try to merge or rebase with the base branch to resolve this conflict.

Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

jakirkham commented 1 week ago

@conda-forge-admin , please re-render

jakirkham commented 1 week ago

@conda-forge-admin , please re-render

github-actions[bot] commented 1 week ago

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/erlang-feedstock/actions/runs/9651736591.

conda-forge-webservices[bot] commented 1 week ago

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 (recipe) and found it was in an excellent condition.

jakirkham commented 1 week ago

@conda-forge-admin , please re-render

github-actions[bot] commented 1 week ago

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/erlang-feedstock/actions/runs/9651917601.

jakirkham commented 1 week ago

@conda-forge-admin , please re-render

github-actions[bot] commented 1 week ago

Hi! This is the friendly conda-forge automerge bot!

I considered the following status checks when analyzing this PR:

Thus the PR was passing and merged! Have a great day!

jakirkham commented 1 week ago

Thanks Daniel! 🙏

Have merged in the changes from PR ( https://github.com/conda-forge/erlang-feedstock/pull/159 ) and resolved conflicts