External packages are now registered in the DB (#1167)
* treats correctly a change from `explicit=False` to `explicit=True` in an external package DB entry. * added unit tests * fixed issues raised by @tgamblin . In particular the PR is no more hash-changing for packages that are not external. * added a test to check correctness of a spec/yaml round-trip for things that involve an external * Don't find external module path at each step of concretization * it's not necessary.. The paths are retrieved at the end of concretizaion * Don't find replacements for external packages. * Test root of the DAG if external * No reason not to test if the root of the DAG is external when external packages are now first class citizens! * Create `external` property for Spec (for external_path and external_module) * Allow users to specify external package paths relative to spack * Canonicalize external package paths so that users may specify their locations relative to spack's directory. * Update tests to use new external_path and external properly. * skip license hooks on external
Showing
- lib/spack/spack/build_environment.py 4 additions, 1 deletionlib/spack/spack/build_environment.py
- lib/spack/spack/concretize.py 1 addition, 1 deletionlib/spack/spack/concretize.py
- lib/spack/spack/database.py 60 additions, 8 deletionslib/spack/spack/database.py
- lib/spack/spack/directory_layout.py 1 addition, 1 deletionlib/spack/spack/directory_layout.py
- lib/spack/spack/hooks/licensing.py 2 additions, 2 deletionslib/spack/spack/hooks/licensing.py
- lib/spack/spack/hooks/sbang.py 6 additions, 2 deletionslib/spack/spack/hooks/sbang.py
- lib/spack/spack/package.py 66 additions, 18 deletionslib/spack/spack/package.py
- lib/spack/spack/package_prefs.py 5 additions, 5 deletionslib/spack/spack/package_prefs.py
- lib/spack/spack/spec.py 38 additions, 9 deletionslib/spack/spack/spec.py
- lib/spack/spack/test/cmd/uninstall.py 1 addition, 1 deletionlib/spack/spack/test/cmd/uninstall.py
- lib/spack/spack/test/concretize.py 3 additions, 3 deletionslib/spack/spack/test/concretize.py
- lib/spack/spack/test/concretize_preferences.py 1 addition, 1 deletionlib/spack/spack/test/concretize_preferences.py
- lib/spack/spack/test/conftest.py 2 additions, 0 deletionslib/spack/spack/test/conftest.py
- lib/spack/spack/test/database.py 30 additions, 5 deletionslib/spack/spack/test/database.py
- lib/spack/spack/test/spec_yaml.py 10 additions, 0 deletionslib/spack/spack/test/spec_yaml.py
Loading
Please register or sign in to comment