Skip to content
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

Promote arm64 macOS to tier 1 #1077

Merged
merged 7 commits into from
Feb 22, 2024
Merged

Promote arm64 macOS to tier 1 #1077

merged 7 commits into from
Feb 22, 2024

Conversation

mtreinish
Copy link
Member

Github recently added a new macOS runner that is using the m1 CPU that is usable for open source projects. [1] Previously rustworkx had support for arm64 macOS at tier 4 because we were only able to cross compile for the platform and not test the binaries. Now that we can run CI jobs on the platform we're able to run both unit tests and test our binaries on release. This commit adds a new set of test jobs and wheel builds that use the macos-14 runner that mirrors the existing x86_64 macOS jobs we have. This brings arm64 macOS to the same support level as arm64.

[1] https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/

Github recently added a new macOS runner that is using the m1 CPU that
is usable for open source projects. [1] Previously rustworkx had support
for arm64 macOS at tier 4 because we were only able to cross compile for
the platform and not test the binaries. Now that we can run CI jobs on
the platform we're able to run both unit tests and test our binaries on
release. This commit adds a new set of test jobs and wheel builds that
use the macos-14 runner that mirrors the existing x86_64 macOS jobs we
have. This brings arm64 macOS to the same support level as arm64.

[1] https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/
The setup-python action on macos-14 only has python 3.12 installers for
specific patch versions. This commit specifies that we use 3.12.0 as
this lets us start using stestr again to improve test throughput. Using
3.12.1 is blocked as there was a breaking api change made to unittest in
that Python release which is causing skip tests to be reported as errors.
@mtreinish
Copy link
Member Author

This failed for Python 3.8 and 3.9 because the setup-python action couldn't find those versions on macOS arm64. There is an open issue tracking this here: actions/setup-python#808

@coveralls
Copy link

coveralls commented Feb 5, 2024

Pull Request Test Coverage Report for Build 8003871005

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.03%) to 96.517%

Totals Coverage Status
Change from base Build 8003862941: 0.03%
Covered Lines: 16821
Relevant Lines: 17428

💛 - Coveralls

Copy link
Collaborator

@IvanIsCoding IvanIsCoding left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I just added a comment related to stestr and Python 3.12.

After #1064 is merged I wonder if we should have a Linux job cross-compiling the wheels for Linux, Windows and macOS universal because it would really save us time with all these runners. Most of the testing time is spent building the crate

.github/workflows/main.yml Outdated Show resolved Hide resolved
@mtreinish mtreinish added this to the 0.15.0 milestone Feb 21, 2024
@mtreinish mtreinish merged commit 40d34b6 into Qiskit:main Feb 22, 2024
28 checks passed
@mtreinish mtreinish deleted the m1-tier-one branch February 22, 2024 12:45
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.

3 participants