Skip to content

Conversation

@climbfuji
Copy link
Collaborator

@climbfuji climbfuji commented Jan 12, 2026

Description

This PR updates the spack submodule branch spack-stack-dev from the upstream spack develop. Until now, it was based on Spack v1.0.1. See JCSDA/spack#574

This update requires us to switch to the new (spack v1) syntax for declaring preferred compilers, since the blanket packages:all:require:['gcc'] (for example) no longer works for packages that don't depend on a compiler (no c, cxx, fortran dependency). While updating the common packages_<compiler>.yaml files, I removed the remaining configs/common/packages_<compiler>.yaml.NOTYETUPDATED files.

The concretizer now behaves slightly differently, and we can no longer declare external compiler runtime libraries. I opposed this for a long time, but, alas, I'll choose a different hill to die on. This had to be done for every site config. A few more tweaks to the common packages.yaml are needed to avoid duplicate packages. Note also that external packages now have to match any variants that are require:d in the environment config.

The above changes require updates to the setup-meta-modules extension, the GitHub actions workflows, and the unit tests for the spack-stack extension.

Lastly, this PR brings in a new version of bufr-query 0.0.5. Note that the concretizer in spack v1.0.1 had a bug that caused it to simply ignore bufr-query, even though it was supposed to be built (variant in jedi-base-env had default value True). The new concretizer fixed this bug, and now we do get bufr-query as part of the unified environment and the Skylab environment.

Dependencies

Issues addressed

Closes #1874
Closes #1875
Closes #1766
Closes #1767

Applications affected

Potentially all. Or none.

Systems affected

Potential all. Or none. Heck, who knows. We'll find out.

Testing

  • CI: Note whether the automatic tests (GitHub actions tests that run automatically for every commit) pass or not
    • GitHub actions CI tests pass
    • GitHub actions CI tests do not pass (provide explanation)
    • GitHub actions CI tests skipped (provide explanation if necessary)
  • New tests added: List and describe any new tests added to GitHub actions
    • ...
  • Additional testing: Add information on any additional tests conducted
    • ...

Checklist

  • This PR addresses one issue/problem/enhancement or has a very good reason for not doing so.
  • These changes have been tested on the affected systems and applications. No, see note above.
  • All dependency PRs/issues have been resolved and this PR can be merged.
  • All necessary updates to the documentation (spack-stack wiki) will be made when this PR is merged

.gitmodules and submodule pointer for spack for code review and testing
…g,gcc,oneapi}.yaml; remove outdated packages yaamls for aocc, apple-clang, intel classic
…eature/update_spack-stack-dev_from_develop
…/ubuntu-ci-x86_64-oneapi.cfg and .github/workflows/ubuntu-ci-x86_64-oneapi-ifx.cfg
@climbfuji climbfuji changed the title WIP IGNORE Feature/update spack stack dev from develop Update spack submodule branch spack-stack-dev from spack develop Jan 14, 2026
Copy link
Collaborator Author

@climbfuji climbfuji left a comment

Choose a reason for hiding this comment

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

self-review

# Set compiler and MPI specs
spack config add "packages:mpi:require:['openmpi@5.0.8']"
spack config add "packages:all:prefer:['%gcc']"
#spack config add "packages:all:prefer:['%gcc']"
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Suggested change
#spack config add "packages:all:prefer:['%gcc']"

spack config add "packages:mpi:buildable:False"
spack config add "packages:mpi:require:['intel-oneapi-mpi@2021.13']"
spack config add "packages:all:prefer:['%oneapi']"
#spack config add "packages:all:prefer:['%oneapi']"
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Suggested change
#spack config add "packages:all:prefer:['%oneapi']"

spack config add "packages:mpi:buildable:False"
spack config add "packages:mpi:require:['intel-oneapi-mpi@2021.13']"
spack config add "packages:all:prefer:['%oneapi']"
#spack config add "packages:all:prefer:['%oneapi']"
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Suggested change
#spack config add "packages:all:prefer:['%oneapi']"

Copy link
Collaborator

@rickgrubin-noaa rickgrubin-noaa left a comment

Choose a reason for hiding this comment

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

The changed noted in the PR description will come into play for v2.1, correct?

@climbfuji
Copy link
Collaborator Author

The changed noted in the PR description will come into play for v2.1, correct?

Correct, but we can start building and testing with develop.

@rickgrubin-noaa rickgrubin-noaa self-requested a review January 14, 2026 23:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

2 participants