From: Christopher Larson Date: Wed, 28 Feb 2018 01:06:17 +0000 (-0800) Subject: buildhistory: fix latest_srcrev in the common case X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=4243555ab91ab763a098259011dfa72156bfe0b3;p=openembedded-core.git buildhistory: fix latest_srcrev in the common case buildhistory was writing srcrevs.values() as SRCREV when only one srcrev/branch exists. This returns a view of the dictionary values in python 3, and used to return a list in python 2, neither of which is an appropriate value for SRCREV. It was resulting in latest_srcrev files like this: # SRCREV = "346584bf6e38232be8773c24fd7dedcbd7b3d9ed" SRCREV = "dict_values(['346584bf6e38232be8773c24fd7dedcbd7b3d9ed'])" Which in turn would result in invalid output in buildhistory-collect-srcrevs. Fix by calling `next(iter())` on the `.values()` Signed-off-by: Christopher Larson Signed-off-by: Ross Burton (cherry picked from commit ef826a395612400924bbe49859d256b237ff59e1) Signed-off-by: Andre McCurdy Signed-off-by: Armin Kuster --- diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index 3a5bc2c3e3..d82e9bb55c 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass @@ -833,7 +833,7 @@ python write_srcrev() { f.write('# SRCREV_%s = "%s"\n' % (name, orig_srcrev)) f.write('SRCREV_%s = "%s"\n' % (name, srcrev)) else: - f.write('SRCREV = "%s"\n' % srcrevs.values()) + f.write('SRCREV = "%s"\n' % next(iter(srcrevs.values()))) if len(tag_srcrevs) > 0: for name, srcrev in tag_srcrevs.items(): f.write('# tag_%s = "%s"\n' % (name, srcrev))