concretizer args: --fresh-roots == --reuse-deps (#43988)

Since reuse is the default now, `--reuse-deps` can be confusing, as it
technically does not imply roots are fresh.

So add `--fresh-roots`, which is also easier to discover when running
`spack concretize --fre<tab>`
This commit is contained in:
Harmen Stoppels
2024-05-03 21:12:36 +02:00
committed by GitHub
parent 272c7c069a
commit d2ed217796
4 changed files with 57 additions and 50 deletions

View File

@@ -563,12 +563,13 @@ def add_concretizer_args(subparser):
help="reuse installed packages/buildcaches when possible",
)
subgroup.add_argument(
"--fresh-roots",
"--reuse-deps",
action=ConfigSetAction,
dest="concretizer:reuse",
const="dependencies",
default=None,
help="reuse installed dependencies only",
help="concretize with fresh roots and reused dependencies",
)
subgroup.add_argument(
"--deprecated",

View File

@@ -123,7 +123,13 @@ def test_root_and_dep_match_returns_root(mock_packages, mutable_mock_env_path):
@pytest.mark.parametrize(
"arg,conf", [("--reuse", True), ("--fresh", False), ("--reuse-deps", "dependencies")]
"arg,conf",
[
("--reuse", True),
("--fresh", False),
("--reuse-deps", "dependencies"),
("--fresh-roots", "dependencies"),
],
)
def test_concretizer_arguments(mutable_config, mock_packages, arg, conf):
"""Ensure that ConfigSetAction is doing the right thing."""