From 6a57aede571873f1dac2359dc3e6f430a1fcd900 Mon Sep 17 00:00:00 2001 From: "Seth R. Johnson" Date: Tue, 24 May 2022 17:52:40 +0200 Subject: environments: fail gracefully on missing keys (#26378) --- lib/spack/spack/environment/environment.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/spack/spack/environment/environment.py b/lib/spack/spack/environment/environment.py index 2536186b63..b275dd02f2 100644 --- a/lib/spack/spack/environment/environment.py +++ b/lib/spack/spack/environment/environment.py @@ -1619,7 +1619,14 @@ class Environment(object): """Return all specs, even those a user spec would shadow.""" all_specs = set() for h in self.concretized_order: - all_specs.update(self.specs_by_hash[h].traverse()) + try: + spec = self.specs_by_hash[h] + except KeyError: + tty.warn( + 'Environment %s appears to be corrupt: missing spec ' + '"%s"' % (self.name, h)) + continue + all_specs.update(spec.traverse()) return sorted(all_specs) -- cgit v1.2.3-70-g09d2