spack/lib/spack
Harmen Stoppels 44c22a54c9
Spec traversal: add option for topological ordering (#33817)
Spec traversals can now specify a topological ordering. A topologically-
ordered traversal with input specs X1, X2... will

* include all of X1, X2... and their children
* be ordered such that a given node is guaranteed to appear before any
  of its children in the traversal

Other notes:

* Input specs can be children of other input specs (this is useful if
  a user specifies a set of specs to uninstall: some of those specs
  might be children of others)
* `direction="parents"` will produce a reversed topological order
  (children always come before parents).
* `cover="edges"` will generate a list of edges L such that (a) input
  edges will always appear before output edges and (b) if you create
  a list with the destination of each edge in L the result is
  topologically ordered
2022-11-21 18:33:35 -08:00
..
docs Hdf5 package: build on Windows (#31141) 2022-11-17 10:40:53 -08:00
env Cray support: use linux platform for newer craype versions (#29392) 2022-11-04 14:52:11 -07:00
external Stop using six in Spack (#33905) 2022-11-15 10:07:54 +01:00
llnl Stop using six in Spack (#33905) 2022-11-15 10:07:54 +01:00
spack Spec traversal: add option for topological ordering (#33817) 2022-11-21 18:33:35 -08:00
spack_installable Remove support for running with Python 2.7 (#33063) 2022-11-14 13:11:28 +01:00