Refactor DataModel with a strict type declaration

This commit is contained in:
Ivan Kravets
2019-09-30 19:44:03 +03:00
parent 5f55c18373
commit 744881da59
5 changed files with 100 additions and 110 deletions

View File

@@ -25,6 +25,7 @@ from platformio import exception, util
from platformio.commands import PlatformioCLI
from platformio.compat import dump_json_to_unicode
from platformio.managers.lib import LibraryManager, get_builtin_libs, is_builtin_lib
from platformio.package.manifest.model import ManifestModel
from platformio.package.manifest.parser import ManifestFactory
from platformio.proc import is_ci
from platformio.project.config import ProjectConfig
@@ -493,8 +494,8 @@ def lib_register(config_url):
if not config_url.startswith("http://") and not config_url.startswith("https://"):
raise exception.InvalidLibConfURL(config_url)
manifest = ManifestFactory.new_from_url(config_url)
assert set(["name", "version"]) & set(list(manifest.as_dict()))
model = ManifestModel(**ManifestFactory.new_from_url(config_url).as_dict())
assert set(["name", "version"]) & set(list(model.as_dict()))
result = util.get_api_result("/lib/register", data=dict(config_url=config_url))
if "message" in result and result["message"]: