diff options
author | Todd Gamblin <tgamblin@llnl.gov> | 2021-03-13 16:03:50 -0800 |
---|---|---|
committer | Massimiliano Culpo <massimiliano.culpo@gmail.com> | 2021-03-16 12:50:14 +0100 |
commit | 3e570ce694203ad6639534e2b80ec5ef61561f66 (patch) | |
tree | 6b3d32c3c4d821f99f252c563bc159aa4c8a39df /.flake8 | |
parent | e7cba04b95e599b86c6fe0133dc1e227e6257d1c (diff) | |
download | spack-3e570ce694203ad6639534e2b80ec5ef61561f66.tar.gz spack-3e570ce694203ad6639534e2b80ec5ef61561f66.tar.bz2 spack-3e570ce694203ad6639534e2b80ec5ef61561f66.tar.xz spack-3e570ce694203ad6639534e2b80ec5ef61561f66.zip |
bugfix: allow imposed constraints to be overridden in special cases
In most cases, we want condition_holds(ID) to imply any imposed
constraints associated with the ID. However, the dependency relationship
in Spack is special because it's "extra" conditional -- a dependency
*condition* may hold, but we have decided that externals will not have
dependencies, so we need a way to avoid having imposed constraints appear
for nodes that don't exist.
This introduces a new rule that says that constraints are imposed
*unless* we define `do_not_impose(ID)`. This allows rules like
dependencies, which rely on more than just spec conditions, to cancel
imposed constraints.
We add one special case for this: dependencies of externals.
Diffstat (limited to '.flake8')
0 files changed, 0 insertions, 0 deletions