spack/lib/spack
scheibelp e4d2d747ce Spec.satisfies accesses Spec.concrete as property (#2928)
* Spec.satisfies accesses Spec.concrete as property

Fixes #2760

When copying a spec, _concrete is always set to False for each
dependency. "Spec.satisfies" was accessing the member "_concrete"
directly instead of using the property "concrete". This means that
if you copy a spec, the dependencies will be considered equal, but
did not necessarily satisfy one another. Spec.satisfies is a
prerequisite for a package to be considered an extension; as a
consequence, an extension with run-time dependencies that were also
extensions did not activate those extensions. This updates
Spec.satisfies to avoid checking the cached member "_concrete"
directly.

* Added test to check for activation of dependency extension

* Added test to check for transitive satisfiability between a spec and its copy
2017-01-25 21:43:12 -07:00
..
docs build systems: simpler, clearer decorators: run_after, run_before (#2860) 2017-01-25 08:57:01 -07:00
env Add support for IBM threaded compilers: xl*_r (#2894) 2017-01-25 16:26:17 -07:00
external Get Rid of nobuild, nolink, and alldeps (#2765) 2017-01-07 19:59:02 -08:00
llnl Spack: Correct fix_darwin_install_name (#2886) 2017-01-20 10:22:59 -08:00
spack Spec.satisfies accesses Spec.concrete as property (#2928) 2017-01-25 21:43:12 -07:00