Skip to content

ci: test natively on Linux ARM64 - #4623

Open
Duo-ee wants to merge 4 commits into
zarr-developers:mainfrom
Duo-ee:ci/arm64-linux
Open

Duo-ee wants to merge 4 commits into
zarr-developers:mainfrom
Duo-ee:ci/arm64-linux

Conversation

@Duo-ee

@Duo-ee Duo-ee commented Nov 12, 2026

Copy link
Copy Markdown

What

Adds one entry to the test workflow matrix so the suite also runs natively
on Linux ARM64 (ubuntu-24.04-arm, Python 3.13, optional dependencies).

Why

#4524 asks for native Linux ARM64 testing to catch architecture-specific
issues in imaging workflows. Everything today runs on x86 hosts (plus macOS
and Windows), so anything that depends on pointer sizes, word order or SIMD
paths in the compression codecs only shows up downstream.

Cost

One extra job: the matrix already has 8 ubuntu-latest combinations plus four
macOS/Windows include entries, so this adds ~1/13 of the current test load.
The "Upload coverage" step is gated on matrix.os == 'ubuntu-latest', so the
ARM run does not upload a second coverage report.

Closes #4524.

@github-actions github-actions Bot added the needs release notes Automatically applied to PRs which haven't added release notes label Nov 12, 2026
@Duo-ee

Duo-ee commented Nov 12, 2026

Copy link
Copy Markdown
Author

The ARM job is live: os=ubuntu-24.04-arm, py=3.13, deps=optional ran on a
GitHub-hosted ARM runner (12m, 13 steps) and finished green, alongside the rest
of the matrix — 37 checks passed, 3 skipped, no failures. So the
ubuntu-24.04-arm label works from this repo with no extra setup, and the
suite passes natively on Linux ARM64.

Happy to switch the Python version, or add the minimal dependency set there
too, if you prefer different coverage.

@codecov

codecov Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.90%. Comparing base (4dc5b01) to head (f3d2ac8).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4623   +/-   ##
=======================================
  Coverage   94.90%   94.90%           
=======================================
  Files          96       96           
  Lines       14051    14051           
=======================================
  Hits        13335    13335           
  Misses        716      716           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs release notes Automatically applied to PRs which haven't added release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Test Zarr natively on Linux ARM64

1 participant