| Message ID | 20260120-pr-server-increment-details-v1-1-fa5d288def24@bootlin.com |
|---|---|
| State | New |
| Headers | show |
| Series | dev-manual/packages.rst: pr server: fix and explain why r0.X increment on srcrev change | expand |
Hi Antonin, On 1/20/26 3:39 PM, Antonin Godard via lists.yoctoproject.org wrote: > 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> > Signed-off-by: Antonin Godard <antonin.godard@bootlin.com> > --- > documentation/dev-manual/packages.rst | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/documentation/dev-manual/packages.rst b/documentation/dev-manual/packages.rst > index 8bd48c8e8..9c38bc39b 100644 > --- a/documentation/dev-manual/packages.rst > +++ b/documentation/dev-manual/packages.rst > @@ -275,7 +275,20 @@ 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 there was a > + change in the recipe, which ultimately the hash of the > + :ref:`ref-tasks-package` task (the variable ``SRCREV`` changed value). > + Missing verb in the second part of the sentence. Cheers, Quentin
diff --git a/documentation/dev-manual/packages.rst b/documentation/dev-manual/packages.rst index 8bd48c8e8..9c38bc39b 100644 --- a/documentation/dev-manual/packages.rst +++ b/documentation/dev-manual/packages.rst @@ -275,7 +275,20 @@ 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 there was a + change in the recipe, which ultimately the hash of the + :ref:`ref-tasks-package` task (the variable ``SRCREV`` changed value). + + Anytime a recipe change triggers a change of the :ref:`ref-tasks-package` + task hash, this value is incremented. This means this value can be + incremented independently of ``gitX``. - If PR Service is not enabled, the build system replaces the ``AUTOINC`` placeholder with zero (i.e. "0"). This results in