Skip to content

spack diff: show runtime differences#51076

Merged
tgamblin merged 3 commits intodevelopfrom
bugfix/spack-diff-show-runtimes
Jul 31, 2025
Merged

spack diff: show runtime differences#51076
tgamblin merged 3 commits intodevelopfrom
bugfix/spack-diff-show-runtimes

Conversation

@becker33
Copy link
Copy Markdown
Member

Currently, differences in gcc-runtime or glibc packages are hidden by spack diff. This is an unintended artifact of how they are specially handled in the solver.

This PR adds an option to SpecSolverSetup.spec_clauses to include runtime specs that are not unified in the spec. The spack diff command calls spec_clauses with the new option, to ensure those differences are represented in the spack diff output.

Includes regression test.

@becker33 becker33 added the v1.0.1 PRs to backport for v1.0.1 label Jul 30, 2025
@becker33
Copy link
Copy Markdown
Member Author

@spackbot fix style

@spackbot-app
Copy link
Copy Markdown

spackbot-app bot commented Jul 30, 2025

Let me see if I can fix that for you!

@spackbot-app
Copy link
Copy Markdown

spackbot-app bot commented Jul 30, 2025

I was able to run spack style --fix for you!

spack style --fix
==> Running style checks on spack
  selected: import, isort, black, flake8, mypy
==> Modified files
  lib/spack/spack/cmd/diff.py
  lib/spack/spack/solver/asp.py
  lib/spack/spack/test/cmd/diff.py
==> Running import checks
  import checks were clean
==> Running isort checks
  isort checks were clean
==> Running black checks
reformatted lib/spack/spack/cmd/diff.py
All done! ✨ 🍰 ✨
1 file reformatted, 2 files left unchanged.
  black checks were clean
==> Running flake8 checks
  flake8 checks were clean
==> Running mypy checks
Success: no issues found in 614 source files
  mypy checks were clean
==> spack style checks were clean
Keep in mind that I cannot fix your flake8 or mypy errors, so if you have any you'll need to fix them and update the pull request. If I was able to push to your branch, if you make further changes you will need to pull from your updated branch before pushing again.

I've updated the branch with style fixes.

@becker33 becker33 force-pushed the bugfix/spack-diff-show-runtimes branch from 3eed1e0 to cf2a3b0 Compare July 30, 2025 15:03
@tgamblin tgamblin merged commit 21c3751 into develop Jul 31, 2025
32 of 33 checks passed
@tgamblin tgamblin deleted the bugfix/spack-diff-show-runtimes branch July 31, 2025 09:27
haampie pushed a commit that referenced this pull request Jul 31, 2025
Currently, differences in `gcc-runtime` or `glibc` packages are hidden
by `spack diff`. This is an unintended artifact of how they are specially
handled in the solver.

This PR adds an option to `SpecSolverSetup.spec_clauses` to include
runtime specs that are not unified in the spec. The `spack diff` command
calls `spec_clauses` with the new option, to ensure those differences are
represented in the `spack diff` output.

Includes regression test.

---------

Signed-off-by: Gregory Becker <[email protected]>
Co-authored-by: becker33 <[email protected]>
Signed-off-by: Harmen Stoppels <[email protected]>
@haampie haampie mentioned this pull request Jul 31, 2025
29 tasks
alecbcs pushed a commit that referenced this pull request Aug 12, 2025
Currently, differences in `gcc-runtime` or `glibc` packages are hidden
by `spack diff`. This is an unintended artifact of how they are specially
handled in the solver.

This PR adds an option to `SpecSolverSetup.spec_clauses` to include
runtime specs that are not unified in the spec. The `spack diff` command
calls `spec_clauses` with the new option, to ensure those differences are
represented in the `spack diff` output.

Includes regression test.

---------

Signed-off-by: Gregory Becker <[email protected]>
Co-authored-by: becker33 <[email protected]>
Signed-off-by: Harmen Stoppels <[email protected]>
alstar555 pushed a commit to alstar555/spack that referenced this pull request Aug 27, 2025
Currently, differences in `gcc-runtime` or `glibc` packages are hidden
by `spack diff`. This is an unintended artifact of how they are specially
handled in the solver.

This PR adds an option to `SpecSolverSetup.spec_clauses` to include
runtime specs that are not unified in the spec. The `spack diff` command
calls `spec_clauses` with the new option, to ensure those differences are
represented in the `spack diff` output.

Includes regression test.

---------

Signed-off-by: Gregory Becker <[email protected]>
Co-authored-by: becker33 <[email protected]>
Signed-off-by: Angelica Loshak <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

v1.0.1 PRs to backport for v1.0.1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants