summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorHarmen Stoppels <harmenstoppels@gmail.com>2022-03-24 14:59:24 +0100
committerGitHub <noreply@github.com>2022-03-24 14:59:24 +0100
commitf8224f284cb4f9c4470bce29925e94c06d3c04b9 (patch)
treeec1be0294506cb87a1a6f2f3f63cba03f3362a7a /lib
parent1a728c98ffc7dc2607fd725d48bda4e774262192 (diff)
downloadspack-f8224f284cb4f9c4470bce29925e94c06d3c04b9.tar.gz
spack-f8224f284cb4f9c4470bce29925e94c06d3c04b9.tar.bz2
spack-f8224f284cb4f9c4470bce29925e94c06d3c04b9.tar.xz
spack-f8224f284cb4f9c4470bce29925e94c06d3c04b9.zip
environment.py: concrete root specs to view (#29634)
Slight simplification of the code: just pass the list of concrete root specs to the view
Diffstat (limited to 'lib')
-rw-r--r--lib/spack/spack/environment/environment.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/spack/spack/environment/environment.py b/lib/spack/spack/environment/environment.py
index 1c5e1d46c1..20f6060265 100644
--- a/lib/spack/spack/environment/environment.py
+++ b/lib/spack/spack/environment/environment.py
@@ -474,14 +474,14 @@ class ViewDescriptor(object):
return True
- def specs_for_view(self, concretized_specs):
+ def specs_for_view(self, concretized_root_specs):
"""
From the list of concretized user specs in the environment, flatten
the dags, and filter selected, installed specs, remove duplicates on dag hash.
"""
specs = []
- for (_, s) in concretized_specs:
+ for s in concretized_root_specs:
if self.link == 'all':
specs.extend(s.traverse(deptype=('link', 'run')))
elif self.link == 'run':
@@ -498,8 +498,8 @@ class ViewDescriptor(object):
return specs
- def regenerate(self, concretized_specs):
- specs = self.specs_for_view(concretized_specs)
+ def regenerate(self, concretized_root_specs):
+ specs = self.specs_for_view(concretized_root_specs)
# To ensure there are no conflicts with packages being installed
# that cannot be resolved or have repos that have been removed
@@ -1321,8 +1321,9 @@ class Environment(object):
" maintain a view")
return
+ concretized_root_specs = [s for _, s in self.concretized_specs()]
for view in self.views.values():
- view.regenerate(self.concretized_specs())
+ view.regenerate(concretized_root_specs)
def check_views(self):
"""Checks if the environments default view can be activated."""