From e9f9871c1e7b42573f2865876070988379ba4980 Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Sat, 16 Nov 2019 17:25:27 +0200 Subject: [PATCH] Show to user the last exception when can't install a package --- platformio/managers/package.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/platformio/managers/package.py b/platformio/managers/package.py index 10dadd3c..32405d77 100644 --- a/platformio/managers/package.py +++ b/platformio/managers/package.py @@ -439,6 +439,7 @@ class PkgInstallerMixin(object): pkg_dir = None pkgdata = None versions = None + last_exc = None for versions in PackageRepoIterator(name, self.repositories): pkgdata = self.max_satisfying_repo_version(versions, requirements) if not pkgdata: @@ -449,12 +450,15 @@ class PkgInstallerMixin(object): ) break except Exception as e: # pylint: disable=broad-except + last_exc = e click.secho("Warning! Package Mirror: %s" % e, fg="yellow") click.secho("Looking for another mirror...", fg="yellow") if versions is None: util.internet_on(raise_exception=True) - raise exception.UnknownPackage(name) + raise exception.UnknownPackage( + name + (". Error -> %s" % last_exc if last_exc else "") + ) if not pkgdata: raise exception.UndefinedPackageVersion( requirements or "latest", util.get_systype()