From 476bdedb21dddbc277faf55f51426a19847cf687 Mon Sep 17 00:00:00 2001 From: Antonin Godard Date: Tue, 27 Jan 2026 14:06:44 +0100 Subject: [PATCH] dev-manual/packages.rst: pr server: fix and explain why r0.X increments on SRCREV change The current example of the SRCREV change triggering a gitX bump is wrong, as both gitX and r0.X get incremented. Why this is happening is explained in bug 15729, which I copy here: > +gitX+ is indeed related to changes in the source code. > > r0.X is bumped each time the checksum of the do_package task of the > simple-hello-world-git recipe changes. This happens here: > https://git.openembedded.org/openembedded-core/tree/meta/classes-global/package.bbclass?id=235e6d49e5888ad04416219e10b6df91a738661a#n306 > > This line sets the value of PRAUTO and represents the number X found in > r0.X. It will in the end make it into EXTENDPRAUTO, which itself makes > to PKGR == r0.X. > > This line calls getPR(version, pkgarch, checksum). Between test case 5 > and 6, only the checksum changes. This checksum is the checksum of the > do_package task (gotten from get_do_package_hash() above). > > Now, let's dump what changed with regards to this task between two > consecutive runs, using the sigdata file in build/tmp/stamps/: > > ``` > [...] > Variable fetcher_hashes_dummyfunc value changed from '2650ad6714c3f3248abfe9d3daf1196f307ed494' to '4af682a50174f5deb0397847da97d7cdba4ad067' > ``` > > The last line shows that the value of fetcher_hashes_dummyfunc changed > from '2650ad6714c3f3248abfe9d3daf1196f307ed494' to > '4af682a50174f5deb0397847da97d7cdba4ad067'. Those are the commit hashes > in the git history of the simple-hello-world-git repository. > > Now you can see why this 0.X gets bumped, is because of the SRCREV change. Fix the example, and detail what gets changed and why. [YOCTO #15729] Cc: Robert Berger (From yocto-docs rev: 11fe7dbc49a8062cda8062d320dcb2be70a3b6f3) Signed-off-by: Antonin Godard (cherry picked from commit 09f0430bc69024b9854c31ba6783ddd807aa4f19) Signed-off-by: Antonin Godard Signed-off-by: Richard Purdie --- documentation/dev-manual/packages.rst | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/documentation/dev-manual/packages.rst b/documentation/dev-manual/packages.rst index 4ba2dcae3a..33bf4b7076 100644 --- a/documentation/dev-manual/packages.rst +++ b/documentation/dev-manual/packages.rst @@ -275,7 +275,22 @@ with a number. The number used depends on the state of the PR Service: .. code-block:: none hello-world-git_0.0+git0+b6558dd387-r0.0_armv7a-neon.ipk - hello-world-git_0.0+git1+dd2f5c3565-r0.0_armv7a-neon.ipk + hello-world-git_0.0+git1+dd2f5c3565-r0.1_armv7a-neon.ipk + + Two numbers got incremented here: + + - ``gitX`` changed from ``git0`` to ``git1``. This is because there was a + change in the source code (``SRCREV``). + + - ``r0.X`` changed from ``r0.0`` to ``r0.1``. This is because the hash of + the :ref:`ref-tasks-package` task changed. + + The reason for this change can be many. To understand why the hash of the + :ref:`ref-tasks-package` task changed, you can run the following command: + + .. code-block:: console + + $ bitbake-diffsigs -t hello-world package - If PR Service is not enabled, the build system replaces the ``AUTOINC`` placeholder with zero (i.e. "0"). This results in