Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH v2] lib/oe/recipeutils: honor stable_upgrade for UPSTREAM_CHECK_COMMITS recipes
@ 2026-09-30 11:04 daniel.turull
  0 siblings, 0 replies; only message in thread
From: daniel.turull @ 2026-09-30 11:04 UTC (permalink / raw)
  To: openembedded-core; +Cc: alex.kanavin, Daniel Turull

From: Daniel Turull <daniel.turull@ericsson.com>

Found running AUH --stable on wrynose: recipes with
UPSTREAM_CHECK_COMMITS set (gnu-config, gn, piglit, etc.) always
reported "-new-commits-available" regardless of stable_upgrade, since
that check ran before stable_upgrade was ever consulted.

AI-Generated: kiro:claude-sonnet-5
Signed-off-by: Daniel Turull <daniel.turull@ericsson.com>
---
v2: restructure the UPSTREAM_CHECK_COMMITS/stable_upgrade conditional
as a nested if/else instead of if/elif on the same condition, ordered
to mirror the stable_upgrade/else branch below it, for clarity.
(feedback from Alex)
---
 meta/lib/oe/recipeutils.py | 25 ++++++++++++++++---------
 1 file changed, 16 insertions(+), 9 deletions(-)

diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py
index 99e7bc7acf..522537e0d9 100644
--- a/meta/lib/oe/recipeutils.py
+++ b/meta/lib/oe/recipeutils.py
@@ -1069,16 +1069,23 @@ def get_recipe_upstream_version(rd, stable_upgrade=False):
     else:
         ud = bb.fetch.FetchData(src_uri, rd)
         if rd.getVar("UPSTREAM_CHECK_COMMITS") == "1":
-            bb.fetch.get_srcrev(rd)
-            upversion = None
-            revision = None
-            try:
-                revision = ud.method.latest_revision(ud, rd, ud.name)
+            if stable_upgrade:
+                # UPSTREAM_CHECK_COMMITS recipes only track git HEAD, not a
+                # version number, so there's no way to filter for a "stable"
+                # release; treat as no update available.
                 upversion = pv
-                if revision != ud.revision:
-                    upversion = upversion + "-new-commits-available"
-            except bb.fetch.FetchError as e:
-                bb.warn("Unable to obtain latest revision: {}".format(e))
+                revision = None
+            else:
+                bb.fetch.get_srcrev(rd)
+                upversion = None
+                revision = None
+                try:
+                    revision = ud.method.latest_revision(ud, rd, ud.name)
+                    upversion = pv
+                    if revision != ud.revision:
+                        upversion = upversion + "-new-commits-available"
+                except bb.fetch.FetchError as e:
+                    bb.warn("Unable to obtain latest revision: {}".format(e))
         else:
             if stable_upgrade:
                 stable_release_regex = rd.getVar("UPSTREAM_STABLE_RELEASE_REGEX")



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-09-30 11:04 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-30 11:04 [PATCH v2] lib/oe/recipeutils: honor stable_upgrade for UPSTREAM_CHECK_COMMITS recipes daniel.turull

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox