Extends: support spec, not just package name (#27754)
This commit is contained in:
@@ -466,7 +466,8 @@ def _execute_extends(pkg):
|
||||
return
|
||||
|
||||
_depends_on(pkg, spec, when=when, type=type)
|
||||
pkg.extendees[spec] = (spack.spec.Spec(spec), kwargs)
|
||||
spec_obj = spack.spec.Spec(spec)
|
||||
pkg.extendees[spec_obj.name] = (spec_obj, kwargs)
|
||||
return _execute_extends
|
||||
|
||||
|
||||
|
@@ -51,3 +51,12 @@ def test_constraints_from_context_are_merged(mock_packages):
|
||||
|
||||
assert pkg_cls.dependencies
|
||||
assert spack.spec.Spec('@0.14:15 ^b@3.8:4.0') in pkg_cls.dependencies['c']
|
||||
|
||||
|
||||
@pytest.mark.regression('27754')
|
||||
def test_extends_spec(config, mock_packages):
|
||||
extender = spack.spec.Spec('extends-spec').concretized()
|
||||
extendee = spack.spec.Spec('extendee').concretized()
|
||||
|
||||
assert extender.dependencies
|
||||
assert extender.package.extends(extendee)
|
||||
|
Reference in New Issue
Block a user