Do not issue a warning for a missing source id when installing from local sources (#24960)
This commit is contained in:
parent
d628e3ba5c
commit
ac8521e9b3
@ -1180,6 +1180,10 @@ def undevelop(self, spec):
|
|||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def is_develop(self, spec):
|
||||||
|
"""Returns true when the spec is built from local sources"""
|
||||||
|
return spec.name in self.dev_specs
|
||||||
|
|
||||||
def concretize(self, force=False, tests=False):
|
def concretize(self, force=False, tests=False):
|
||||||
"""Concretize user_specs in this environment.
|
"""Concretize user_specs in this environment.
|
||||||
|
|
||||||
|
@ -1537,7 +1537,9 @@ def content_hash(self, content=None):
|
|||||||
# should this attempt to download the source and set one? This
|
# should this attempt to download the source and set one? This
|
||||||
# probably only happens for source repositories which are
|
# probably only happens for source repositories which are
|
||||||
# referenced by branch name rather than tag or commit ID.
|
# referenced by branch name rather than tag or commit ID.
|
||||||
if not self.spec.external:
|
env = spack.environment.get_env(None, None)
|
||||||
|
from_local_sources = env and env.is_develop(self.spec)
|
||||||
|
if not self.spec.external and not from_local_sources:
|
||||||
message = 'Missing a source id for {s.name}@{s.version}'
|
message = 'Missing a source id for {s.name}@{s.version}'
|
||||||
tty.warn(message.format(s=self))
|
tty.warn(message.format(s=self))
|
||||||
hash_content.append(''.encode('utf-8'))
|
hash_content.append(''.encode('utf-8'))
|
||||||
|
@ -2591,3 +2591,15 @@ def test_virtual_spec_concretize_together(tmpdir):
|
|||||||
e.concretize()
|
e.concretize()
|
||||||
|
|
||||||
assert any(s.package.provides('mpi') for _, s in e.concretized_specs())
|
assert any(s.package.provides('mpi') for _, s in e.concretized_specs())
|
||||||
|
|
||||||
|
|
||||||
|
def test_query_develop_specs():
|
||||||
|
"""Test whether a spec is develop'ed or not"""
|
||||||
|
env('create', 'test')
|
||||||
|
with ev.read('test') as e:
|
||||||
|
e.add('mpich')
|
||||||
|
e.add('mpileaks')
|
||||||
|
e.develop(Spec('mpich@1'), 'here', clone=False)
|
||||||
|
|
||||||
|
assert e.is_develop(Spec('mpich'))
|
||||||
|
assert not e.is_develop(Spec('mpileaks'))
|
||||||
|
Loading…
Reference in New Issue
Block a user