summaryrefslogtreecommitdiff
path: root/lib/spack/spack/build_systems/intel.py
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@gmail.com>2019-07-15 19:30:01 +0200
committerPeter Scheibel <scheibel1@llnl.gov>2019-07-15 10:30:01 -0700
commit5acbe449e5840a7592e93d3ba35ff10e45ebc8a0 (patch)
treef6d27dc613b6cdfb3df18792cf9a1e225c0dbce7 /lib/spack/spack/build_systems/intel.py
parent68ad4caf30b0c213c1f00d23a1b3ea375d265644 (diff)
downloadspack-5acbe449e5840a7592e93d3ba35ff10e45ebc8a0.tar.gz
spack-5acbe449e5840a7592e93d3ba35ff10e45ebc8a0.tar.bz2
spack-5acbe449e5840a7592e93d3ba35ff10e45ebc8a0.tar.xz
spack-5acbe449e5840a7592e93d3ba35ff10e45ebc8a0.zip
spack uninstall can uninstall specs with multiple roots (#11977)
Fixes #3690 Fixes #5637 Uninstalling dependents of a spec was relying on a traversal of the parents done by inspecting spec._dependents. This is in turn a DependencyMap that maps a package name to a single DependencySpec object (an edge in the DAG) and cannot thus model the case where a spec has multiple configurations of the same parent package installed (for example if different versions of the same Python library depend on the same Python installation). This commit works around this issue by constructing the list of specs to be uninstalled in an alternative way, and adds tests to verify the behavior. The core issue with DependencyMap is not resolved here.
Diffstat (limited to 'lib/spack/spack/build_systems/intel.py')
0 files changed, 0 insertions, 0 deletions