summaryrefslogtreecommitdiffstats
path: root/documentation
diff options
context:
space:
mode:
authorAntonin Godard <antonin.godard@bootlin.com>2026-01-27 14:06:44 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2026-02-12 17:00:10 +0000
commit476bdedb21dddbc277faf55f51426a19847cf687 (patch)
tree14bc28f3e015a3c77aa0a1d7aafc49bfefa26864 /documentation
parentceb46cce4b83fdb8a4010792fc5f0d347dd48aea (diff)
downloadpoky-476bdedb21dddbc277faf55f51426a19847cf687.tar.gz
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 <pokylinux@reliableembeddedsystems.com> (From yocto-docs rev: 11fe7dbc49a8062cda8062d320dcb2be70a3b6f3) Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> (cherry picked from commit 09f0430bc69024b9854c31ba6783ddd807aa4f19) Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation')
-rw-r--r--documentation/dev-manual/packages.rst17
1 files changed, 16 insertions, 1 deletions
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:
275 .. code-block:: none 275 .. code-block:: none
276 276
277 hello-world-git_0.0+git0+b6558dd387-r0.0_armv7a-neon.ipk 277 hello-world-git_0.0+git0+b6558dd387-r0.0_armv7a-neon.ipk
278 hello-world-git_0.0+git1+dd2f5c3565-r0.0_armv7a-neon.ipk 278 hello-world-git_0.0+git1+dd2f5c3565-r0.1_armv7a-neon.ipk
279
280 Two numbers got incremented here:
281
282 - ``gitX`` changed from ``git0`` to ``git1``. This is because there was a
283 change in the source code (``SRCREV``).
284
285 - ``r0.X`` changed from ``r0.0`` to ``r0.1``. This is because the hash of
286 the :ref:`ref-tasks-package` task changed.
287
288 The reason for this change can be many. To understand why the hash of the
289 :ref:`ref-tasks-package` task changed, you can run the following command:
290
291 .. code-block:: console
292
293 $ bitbake-diffsigs -t hello-world package
279 294
280- If PR Service is not enabled, the build system replaces the 295- If PR Service is not enabled, the build system replaces the
281 ``AUTOINC`` placeholder with zero (i.e. "0"). This results in 296 ``AUTOINC`` placeholder with zero (i.e. "0"). This results in