You still want to be able to use this tool manually even if there is no maintainer defined for the recipe.
Signed-off-by: Paul Eggleton <[email protected]> --- upgradehelper.py | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/upgradehelper.py b/upgradehelper.py index 44b394a..42ac110 100755 --- a/upgradehelper.py +++ b/upgradehelper.py @@ -165,9 +165,15 @@ class Updater(object): self.recipe_dir = os.path.dirname(self.env['FILE']) def _parse_checkpkg_line(self, line): - m = re.match("^([^ \t]*)[ \t]+([^ \t]*)[ \t]+([^ \t]*).*<(.*)@(.*)>[ \t]+.*", line) - if m is not None: - return (m.group(1), m.group(2), m.group(3), m.group(4) + "@" + m.group(5)) + m = re.match("^([^ \t]*)[ \t]+([^ \t]*)[ \t]+([^ \t]*)[ \t]+.*", line) + if m: + res = (m.group(1), m.group(2), m.group(3)) + m = re.search("<([^ \t]+@[^ \t]+)>", line) + if m: + maintainer = m.group(1) + else: + maintainer = None + return res + (maintainer,) return (None, None, None, None) @@ -290,6 +296,8 @@ class Updater(object): pkgs_list = [] with open(get_build_dir() + "/tmp/log/checkpkg.csv") as csv: + # Skip header line + next(csv) for line in csv: (pn, cur_ver, next_ver, maintainer) = self._parse_checkpkg_line(line) @@ -443,6 +451,10 @@ class UniverseUpdater(Updater, Email): # blacklisted: python, gcc, etc. Also, check the history if the recipe # hasn't already been tried def pkg_upgradable(self, pn, next_ver, maintainer): + if not maintainer: + D("Skipping upgrade of %s: no maintainer" % pn) + return False + if "blacklist" in settings: for p in settings["blacklist"].split(): if p == pn: -- 1.9.3 -- _______________________________________________ yocto mailing list [email protected] https://lists.yoctoproject.org/listinfo/yocto
