diff options
| author | Antonin Godard <antonin.godard@bootlin.com> | 2026-01-27 14:06:44 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2026-02-12 17:00:10 +0000 |
| commit | 476bdedb21dddbc277faf55f51426a19847cf687 (patch) | |
| tree | 14bc28f3e015a3c77aa0a1d7aafc49bfefa26864 /documentation | |
| parent | ceb46cce4b83fdb8a4010792fc5f0d347dd48aea (diff) | |
| download | poky-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.rst | 17 |
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 |
