spack / spack/spack

Feature request: CI tests on macOS

Open
#28,528 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

feature
Dominant language
Python
Stars
5.1k
Forks
2.5k
Avg merge
3d 4h
Merged PRs (30d)
82

Description

Summary

I propose to add macOS machines to the suite of CI pipelines that test package installs.

Rationale

I often find packages don’t build on macOS (most recently paraview and its dependencies, which triggered this issue). This is a frustrating experience that can discourage new users. The main target of Spack is Linux HPC systems, but I believe users often try installing packages on their local machine as well (I do), in particular when testing Spack for the first time, and macOS is very widespread on personal machines.

Description

Builds on macOS with AppleClang work more often than LLVM clang and GCC. I propose a build matrix with all three compilers.

Additional information

For what it’s worth, GitHub Actions offers macOS virtual machines.

General information
  • I have run spack --version and reported the version of Spack
  • I have searched the issues of this repo and believe this is not a duplicate

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing CI pipelines that test package installs and the GitHub Actions configuration. Determine how macOS runners and AppleClang, LLVM Clang, and GCC can fit into the current matrix. Done means package-install CI runs on macOS with all three compilers and reports failures clearly.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, macos
Domain
build-system, ci-cd
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.