diff --git a/lib/spack/spack/cmd/__init__.py b/lib/spack/spack/cmd/__init__.py index fe0ed0c2247a95228d8811a37aeaa61184797a7a..0d2e92940b83e2519d79a28705440175fe237b72 100644 --- a/lib/spack/spack/cmd/__init__.py +++ b/lib/spack/spack/cmd/__init__.py @@ -331,7 +331,7 @@ def get_arg(name, default=None): format_string = get_arg('format', None) if format_string is None: - nfmt = '{namespace}.{name}' if namespace else '{name}' + nfmt = '{fullname}' if namespace else '{name}' ffmt = '' if full_compiler or flags: ffmt += '{%compiler.name}' diff --git a/lib/spack/spack/cmd/find.py b/lib/spack/spack/cmd/find.py index ed8f2ed2bf463ee3b2027b34e898340670ad103f..37cfcd30d5eb7491f82838e1c4b5d38e8c4d110d 100644 --- a/lib/spack/spack/cmd/find.py +++ b/lib/spack/spack/cmd/find.py @@ -165,10 +165,18 @@ def display_env(env, args, decorator): tty.msg('No root specs') else: tty.msg('Root specs') - # TODO: Change this to not print extraneous deps and variants + + # Roots are displayed with variants, etc. so that we can see + # specifically what the user asked for. cmd.display_specs( - env.user_specs, args, - decorator=lambda s, f: color.colorize('@*{%s}' % f)) + env.user_specs, + args, + decorator=lambda s, f: color.colorize('@*{%s}' % f), + namespace=True, + show_flags=True, + show_full_compiler=True, + variants=True + ) print() if args.show_concretized: diff --git a/lib/spack/spack/test/cmd/env.py b/lib/spack/spack/test/cmd/env.py index b1e9e579aea057c11e445821ce5b7158bcf4d0f6..9b3ca6e66eb93fc2c4a52b174bd5d0bffb2be64d 100644 --- a/lib/spack/spack/test/cmd/env.py +++ b/lib/spack/spack/test/cmd/env.py @@ -615,6 +615,17 @@ def test_env_blocks_uninstall(mock_stage, mock_fetch, install_mockery): assert 'used by the following environments' in out +def test_roots_display_with_variants(): + env('create', 'test') + with ev.read('test'): + add('boost+shared') + + with ev.read('test'): + out = find(output=str) + + assert "boost +shared" in out + + def test_uninstall_removes_from_env(mock_stage, mock_fetch, install_mockery): env('create', 'test') with ev.read('test'):