Skip to content

Conversation

@ferstar
Copy link
Contributor

@ferstar ferstar commented Aug 15, 2025

Fixes #975

Summary

This PR adds support for the new macOS 14 (ARM64) GitHub Actions runners and fixes conda Terms of Service issues that were causing CI failures.

Changes

1. Add macOS 14 to GitHub Actions Matrix (ea627bd)

  • Added macos-14 to all workflow files that use matrix.os configuration:
    • .github/workflows/bazel.yml
    • .github/workflows/cmake.yml
    • .github/workflows/nodejs.yml
    • .github/workflows/python.yml
    • .github/workflows/release-pypi.yml
  • Ensures compatibility testing on the new M1 macOS runners

2. Fix Conda Terms of Service Issues (a51644e)

  • Added conda tos accept commands for required channels in all PyPI release scripts:
    • release-pypi-linux.sh
    • release-pypi-macos.sh
    • release-pypi-windows.cmd
  • Accepts ToS for https://repo.anaconda.com/pkgs/main and https://repo.anaconda.com/pkgs/r channels
  • Resolves CondaToSNonInteractiveError that was preventing PyPI workflows from completing

3. Support ARM64 Architecture in macOS Script (4e55f83)

  • Modified release-pypi-macos.sh to detect system architecture and download appropriate Miniconda version:
    • ARM64 (Apple Silicon/macos-14): Miniconda3-latest-MacOSX-arm64.sh
    • x86_64 (Intel/macos-latest): Miniconda3-latest-MacOSX-x86_64.sh
  • Ensures compatibility with both macos-latest and macos-14 runners

Testing

  • All changes are backward compatible with existing runners
  • New macos-14 runners will now work correctly with ARM64-specific Miniconda
  • Conda ToS acceptance prevents CI failures across all platforms

References

Files Changed

  • .github/workflows/bazel.yml
  • .github/workflows/cmake.yml
  • .github/workflows/nodejs.yml
  • .github/workflows/python.yml
  • .github/workflows/release-pypi.yml
  • release-pypi-linux.sh
  • release-pypi-macos.sh
  • release-pypi-windows.cmd

Add macos-14 runner to all workflow files that use matrix.os configuration:
- bazel.yml
- cmake.yml
- nodejs.yml
- python.yml
- release-pypi.yml

This ensures compatibility testing on the new M1 macOS runners.

Reference: https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/
…elease scripts

Add conda tos accept commands for required channels in all platform scripts:
- release-pypi-macos.sh: Accept ToS for main and r channels
- release-pypi-windows.cmd: Accept ToS for main and r channels

This ensures all PyPI release workflows can run without conda ToS errors
Detect macOS architecture (arm64 vs x86_64) and download the appropriate
Miniconda version:
- ARM64 (Apple Silicon): Miniconda3-latest-MacOSX-arm64.sh
- x86_64 (Intel): Miniconda3-latest-MacOSX-x86_64.sh

This ensures compatibility with both macos-latest (x86_64) and macos-14 (ARM64)
GitHub Actions runners.
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.

Missing ARM64 wheel packages for macOS (macosx_11_0_arm64.whl) in PyPI releases

1 participant