Skip to content

Build osx-arm64 natively on Azure arm64 agents - #17

Merged
stoiver merged 5 commits into
conda-forge:mainfrom
stoiver:native-osx-arm64
Jun 8, 2026
Merged

Build osx-arm64 natively on Azure arm64 agents#17
stoiver merged 5 commits into
conda-forge:mainfrom
stoiver:native-osx-arm64

Conversation

@stoiver

@stoiver stoiver commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

Enables native osx-arm64 builds.

conda-forge now provides native Apple Silicon macOS agents on Azure Pipelines (see conda-forge/conda-forge.github.io#1781), so this switches osx-arm64 on via:

provider:
  osx_arm64: default

rather than cross-compiling from osx-64 (build_platform: {osx_arm64: osx_64}). A native build runs on a real arm64 mac, so it avoids the cross-compilation issues this recipe hits when cross-compiled (the meson build resolves numpy via pkg-config, which doesn't work for the host machine in a cross build), and it runs the test suite natively on arm64.

The build number is bumped 0 -> 1 because 3.3.7 build 0 is already published for linux-64/osx-64/win-64; rebuilding to add osx-arm64 re-runs all platforms, so the rebuilt artifacts need a new build number to upload.

I'll request a rerender to generate the osx_arm64 variant.

cc @conda-forge/anuga

conda-forge now offers native Apple Silicon macOS agents on Azure
(conda-forge.github.io#1781), so enable osx-arm64 via `provider: {osx_arm64:
default}` rather than cross-compiling from osx-64. A native build avoids the
cross-compile issues (Bad CPU type, host pkg-config, numpy lookup) and runs the
test suite on arm64.

Bump build number 0 -> 1: 3.3.7 build 0 is already published for linux-64,
osx-64 and win-64, so rebuilding to add osx-arm64 needs a new build number for
the rebuilt artifacts to upload.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@conda-forge-admin

conda-forge-admin commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

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/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ top-level output overrides versions pinned in the feedstock:
    ['- In section host: numpy >=2.0.0']
    Requirement spec should not list version specifiers to respect conda-forge-pinning. If you need to force another version, please override the pin via conda_build_config.yaml.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/27085871146. Examine the logs at this URL for more detail.

@stoiver

stoiver commented Jun 7, 2026

Copy link
Copy Markdown
Contributor Author

@conda-forge-admin, please rerender

conda-forge-webservices[bot] and others added 2 commits June 7, 2026 07:15
The native osx-arm64 jobs failed provisioning the base env: the micromamba
download returned a 92-byte "504 Gateway Time-out" page instead of the binary,
so bash failed executing it. Unrelated to the build; retrigger.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@conda-forge-admin

Copy link
Copy Markdown
Contributor

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

I wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found some lint.

Here's what I've got...

For recipe/meta.yaml:

  • ❌ Recipe maintainer "stoiver" does not exist

For recipe/meta.yaml:

  • ℹ️ top-level output overrides versions pinned in the feedstock:
    ['- In section host: numpy >=2.0.0']
    Requirement spec should not list version specifiers to respect conda-forge-pinning. If you need to force another version, please override the pin via conda_build_config.yaml.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/27086023124. Examine the logs at this URL for more detail.

Native osx-arm64 builds succeed; a couple of jobs intermittently fail fetching
micromamba (504 from the releases CDN) during base-env provisioning. Retrigger
the pipeline; unrelated to the build.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@conda-forge-admin

Copy link
Copy Markdown
Contributor

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/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ top-level output overrides versions pinned in the feedstock:
    ['- In section host: numpy >=2.0.0']
    Requirement spec should not list version specifiers to respect conda-forge-pinning. If you need to force another version, please override the pin via conda_build_config.yaml.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/27086316672. Examine the logs at this URL for more detail.

Addresses the conda-forge lint note about a host requirement overriding the
feedstock pinning. Build number stays 1 (this build is not yet published).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@stoiver

stoiver commented Jun 8, 2026

Copy link
Copy Markdown
Contributor Author

@conda-forge-admin, please lint

@conda-forge-admin

Copy link
Copy Markdown
Contributor

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/meta.yaml) and found it was in an excellent condition.

@stoiver
stoiver merged commit 36ac509 into conda-forge:main Jun 8, 2026
19 checks passed
@stoiver
stoiver deleted the native-osx-arm64 branch June 8, 2026 09:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants