On Thu Jul 23, 2026 at 8:02 AM CEST, Baban via lists.openembedded.org wrote:
> 'devtool update-recipe' and 'devtool finish' default to guessing the
> recipe update mode: 'srcrev' when the source tree HEAD sits on the
> upstream branch (the "checked out another upstream revision" workflow),
> 'patch' otherwise. The guesser matches SRC_URI entries against a
> literal 'git://' prefix, so a gitsm:// recipe never has any git URIs
> from its point of view and always falls into patch mode.
>
> In that case there are no local commits to export either, so checking
> out a different upstream revision and running update-recipe reports
> "No patches or files need updating" and silently leaves the recipe's
> SRCREV untouched, while the same operation on a git:// recipe updates
> SRCREV. Forcing -m srcrev works, since _update_recipe_srcrev() is
> scheme-agnostic; only the guess is broken.
>
> Accept gitsm:// URIs the same way e7076f1742 ("devtool: gitsm://
> should be handled same as git:// in upgrades") did for the upgrade
> path, where the same omission was fixed; the guesser itself dates from
> 9b9733b7d7 (2015), before gitsm handling was a consideration.
>
> Note this changes the guessed mode for existing gitsm:// recipes from
> 'patch' to 'srcrev' when HEAD is on the upstream branch — the behavior
> git:// recipes have had since 2015. Trees carrying local commits still
> guess 'patch', because their HEAD is not reachable from the upstream
> branch.
>
> AI-Generated: Uses Claude (claude-sonnet-5)
> Signed-off-by: Babanpreet Singh <[email protected]>
> ---

Hi Babanpreet,

Thanks for your patch.

It looks like this is breaking some selftests:

2026-07-23 11:11:54,785 - oe-selftest - INFO - 
devtool.DevtoolUpdateTests.test_devtool_git_submodules (subunit.RemotedTestCase)
2026-07-23 11:11:54,786 - oe-selftest - INFO -  ... FAIL
...
2026-07-23 11:11:54,786 - oe-selftest - INFO - 
testtools.testresult.real._StringException: Traceback (most recent call last):
  File 
"/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/lib/oeqa/core/decorator/__init__.py",
 line 35, in wrapped_f
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File 
"/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/lib/oeqa/selftest/cases/devtool.py",
 line 1960, in test_devtool_git_submodules
    self._check_repo_status(recipedir, expected_status)
  File 
"/srv/pokybuild/yocto-worker/oe-selftest-debian/build/layers/openembedded-core/meta/lib/oeqa/selftest/cases/devtool.py",
 line 140, in _check_repo_status
    self.fail('Missing file changes: %s' % expected_status)
  File "/usr/lib/python3.11/unittest/case.py", line 703, in fail
    raise self.failureException(msg)
AssertionError: Missing file changes: [(' M', '.*/vulkan-samples_git.bb$'), 
('??', '.*/vulkan/vulkan-samples/$')]
...
2026-07-23 11:53:42,632 - oe-selftest - INFO - 
devtool.DevtoolUpgradeTests.test_devtool_finish_update_patch 
(subunit.RemotedTestCase)
2026-07-23 11:53:42,632 - oe-selftest - INFO -  ... FAIL
...
2026-07-23 12:43:54,062 - oe-selftest - INFO - 
devtool.DevtoolModifyTests.test_devtool_modify_nested_gitsm 
(subunit.RemotedTestCase)
2026-07-23 12:43:54,062 - oe-selftest - INFO -  ... FAIL

https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/4355
https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/4355

Can you have a look at the issue?

Thanks,
Mathieu

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#241855): 
https://lists.openembedded.org/g/openembedded-core/message/241855
Mute This Topic: https://lists.openembedded.org/mt/120407042/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to