Improve after_dependencies handling (#36898)

This commit is contained in:
Paulus Schoutsen
2020-06-19 17:24:33 -07:00
committed by GitHub
parent 93272e3083
commit 5642027ffb
9 changed files with 377 additions and 166 deletions
+8
View File
@@ -103,6 +103,7 @@ ALLOWED_USED_COMPONENTS = {
"input_number",
"input_select",
"input_text",
"onboarding",
"persistent_notification",
"person",
"script",
@@ -253,7 +254,14 @@ def validate(integrations: Dict[str, Integration], config):
continue
# check that all referenced dependencies exist
after_deps = integration.manifest.get("after_dependencies", [])
for dep in integration.manifest.get("dependencies", []):
if dep in after_deps:
integration.add_error(
"dependencies",
f"Dependency {dep} is both in dependencies and after_dependencies",
)
if dep not in integrations:
integration.add_error(
"dependencies", f"Dependency {dep} does not exist"