diff --git a/micropython/mip/mip/__init__.py b/micropython/mip/mip/__init__.py index 7c0fb4d3..1c007169 100644 --- a/micropython/mip/mip/__init__.py +++ b/micropython/mip/mip/__init__.py @@ -168,6 +168,12 @@ def _install_package(package, index, target, version, mpy): return _install_json(package, index, target, version, mpy) +class InstallError(RuntimeError): + """ + Raised when an installation fails. + """ + + def install(package, index=None, target=None, version=None, mpy=True): if not target: for p in sys.path: @@ -175,8 +181,7 @@ def install(package, index=None, target=None, version=None, mpy=True): target = p break else: - print("Unable to find lib dir in sys.path") - return + raise InstallError("Unable to find lib dir in sys.path") if not index: index = _PACKAGE_INDEX @@ -184,4 +189,4 @@ def install(package, index=None, target=None, version=None, mpy=True): if _install_package(package, index.rstrip("/"), target, version, mpy): print("Done") else: - print("Package may be partially installed") + raise InstallError("Package may be partially installed")