From: <daniel.turull@ericsson.com>
To: <openembedded-core@lists.openembedded.org>
Cc: Chen Qi <Qi.Chen@windriver.com>,
Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>,
Daniel Turull <daniel.turull@ericsson.com>
Subject: [wrynose][PATCH 03/20] devtool/upgrade.py: add --stable option
Date: Wed, 2 Sep 2026 11:59:03 +0200 [thread overview]
Message-ID: <20260902095920.2840293-4-daniel.turull@ericsson.com> (raw)
In-Reply-To: <20260902095920.2840293-1-daniel.turull@ericsson.com>
From: Chen Qi <Qi.Chen@windriver.com>
Add '--stable' option to the three subcommands:
- latest-version
- check-upgrade-status
- upgrade
The effect of this option is to make the subcommand only consider
stable releases.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
(cherry picked from commit 1e86aa039108621b2af734ef358a1e9d3c4d88d8)
Signed-off-by: Daniel Turull <daniel.turull@ericsson.com>
---
scripts/lib/devtool/upgrade.py | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/scripts/lib/devtool/upgrade.py b/scripts/lib/devtool/upgrade.py
index 8930fde5d6..91cb85403c 100644
--- a/scripts/lib/devtool/upgrade.py
+++ b/scripts/lib/devtool/upgrade.py
@@ -560,7 +560,7 @@ def upgrade(args, config, basepath, workspace):
# try to automatically discover latest version and revision if not provided on command line
if not args.version and not args.srcrev:
- version_info = oe.recipeutils.get_recipe_upstream_version(rd)
+ version_info = oe.recipeutils.get_recipe_upstream_version(rd, args.stable)
if version_info['version'] and not version_info['version'].endswith("new-commits-available"):
args.version = version_info['version']
if version_info['revision']:
@@ -626,7 +626,7 @@ def latest_version(args, config, basepath, workspace):
rd = parse_recipe(config, tinfoil, args.recipename, True)
if not rd:
return 1
- version_info = oe.recipeutils.get_recipe_upstream_version(rd)
+ version_info = oe.recipeutils.get_recipe_upstream_version(rd, args.stable)
# "new-commits-available" is an indication that upstream never issues version tags
if not version_info['version'].endswith("new-commits-available"):
logger.info("Current version: {}".format(version_info['current_version']))
@@ -649,7 +649,7 @@ def check_upgrade_status(args, config, basepath, workspace):
"cannot be updated due to: %s" %(recipe['no_upgrade_reason']) if recipe['no_upgrade_reason'] else ""))
if not args.recipe:
logger.info("Checking the upstream status for all recipes may take a few minutes")
- results = oe.recipeutils.get_recipe_upgrade_status(args.recipe)
+ results = oe.recipeutils.get_recipe_upgrade_status(args.recipe, args.stable)
for recipegroup in results:
upgrades = [r for r in recipegroup if r['status'] != 'MATCH']
currents = [r for r in recipegroup if r['status'] == 'MATCH']
@@ -673,6 +673,7 @@ def register_commands(subparsers, context):
group='starting')
parser_upgrade.add_argument('recipename', help='Name of recipe to upgrade (just name - no version, path or extension)')
parser_upgrade.add_argument('srctree', nargs='?', help='Path to where to extract the source tree. If not specified, a subdirectory of %s will be used.' % defsrctree)
+ parser_upgrade.add_argument('--stable', action="store_true", help='Only consider stable upstream releases')
parser_upgrade.add_argument('--version', '-V', help='Version to upgrade to (PV). If omitted, latest upstream version will be determined and used, if possible.')
parser_upgrade.add_argument('--srcrev', '-S', help='Source revision to upgrade to (useful when fetching from an SCM such as git)')
parser_upgrade.add_argument('--srcbranch', '-B', help='Branch in source repository containing the revision to use (if fetching from an SCM such as git)')
@@ -690,11 +691,13 @@ def register_commands(subparsers, context):
description='Queries the upstream server for what the latest upstream release is (for git, tags are checked, for tarballs, a list of them is obtained, and one with the highest version number is reported)',
group='info')
parser_latest_version.add_argument('recipename', help='Name of recipe to query (just name - no version, path or extension)')
+ parser_latest_version.add_argument('--stable', action="store_true", help='Only consider stable upstream releases')
parser_latest_version.set_defaults(func=latest_version)
parser_check_upgrade_status = subparsers.add_parser('check-upgrade-status', help="Report upgradability for multiple (or all) recipes",
description="Prints a table of recipes together with versions currently provided by recipes, and latest upstream versions, when there is a later version available",
group='info')
parser_check_upgrade_status.add_argument('recipe', help='Name of the recipe to report (omit to report upgrade info for all recipes)', nargs='*')
+ parser_check_upgrade_status.add_argument('--stable', action="store_true", help='Only consider stable upstream releases')
parser_check_upgrade_status.add_argument('--all', '-a', help='Show all recipes, not just recipes needing upgrade', action="store_true")
parser_check_upgrade_status.set_defaults(func=check_upgrade_status)
next prev parent reply other threads:[~2026-09-02 9:59 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-02 9:59 [wrynose][PATCH 00/20] backport inherit upstream-stable-release-point daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 01/20] recipeutils: add optional stable_upgrade parameter to get_recipe_upgrade_status daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 02/20] upstream-stable-release-point.bbclass: add bbclass for stable point upgrade daniel.turull
2026-09-02 9:59 ` daniel.turull [this message]
2026-09-02 9:59 ` [wrynose][PATCH 04/20] systemd: inherit upstream-stable-release-point daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 05/20] glib-2.0: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 06/20] dbus: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 07/20] xz: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 08/20] git: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 09/20] perl: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 10/20] libxml2: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 11/20] python3: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 12/20] openssl: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 13/20] binutils: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 14/20] libgcrypt: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 15/20] sqlite3: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 16/20] lttng-tools: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 17/20] util-linux: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 18/20] lttng-ust: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 19/20] babeltrace2: " daniel.turull
2026-09-02 9:59 ` [wrynose][PATCH 20/20] lttng-modules: " daniel.turull
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260902095920.2840293-4-daniel.turull@ericsson.com \
--to=daniel.turull@ericsson.com \
--cc=Qi.Chen@windriver.com \
--cc=mathieu.dubois-briand@bootlin.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.