mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-02 07:18:25 +01:00
info: skip missing subprojects
This commit is contained in:
committed by
Ruslan Kuprieiev
parent
a8415b01d0
commit
daee52e176
+5
-3
@@ -100,9 +100,11 @@ def _get_linktype_support_info(repo):
|
||||
def _get_subprojects():
|
||||
subprojects = []
|
||||
for subproject in SUBPROJECTS:
|
||||
subprojects.append(
|
||||
f"{subproject} = " f"{importlib_metadata.version(subproject)}"
|
||||
)
|
||||
try:
|
||||
version = importlib_metadata.version(subproject)
|
||||
subprojects.append(f"{subproject} = {version}")
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
return "\n\t" + "\n\t".join(subprojects)
|
||||
|
||||
|
||||
@@ -23,3 +23,26 @@ def test_(tmp_dir, dvc, scm, capsys):
|
||||
assert re.search(r"Caches: local", out)
|
||||
assert re.search(r"Remotes: None", out)
|
||||
assert "Repo: dvc, git" in out
|
||||
|
||||
|
||||
def test_import_error(tmp_dir, dvc, scm, capsys, monkeypatch):
|
||||
import importlib.metadata as importlib_metadata
|
||||
|
||||
original = importlib_metadata.version
|
||||
|
||||
def _import_error(name):
|
||||
if name == "dvclive":
|
||||
raise ImportError
|
||||
return original(name)
|
||||
|
||||
monkeypatch.setattr(importlib_metadata, "version", _import_error)
|
||||
assert main(["version"]) == 0
|
||||
|
||||
out, _ = capsys.readouterr()
|
||||
|
||||
for subproject in SUBPROJECTS:
|
||||
match = re.search(rf"{subproject} = {DVC_VERSION_REGEX}", out)
|
||||
if subproject != "dvclive":
|
||||
assert match
|
||||
else:
|
||||
assert match is None
|
||||
|
||||
Reference in New Issue
Block a user