diff mbox series

[11/11] migration-guides/{migration,release-note}-5.2: update for 5.2 release

Message ID 20250328-release-note-5-2-updates-2-v1-11-c913513e9140@bootlin.com
State Accepted
Headers show
Series Final release note updates for 5.2 | expand

Commit Message

Antonin Godard March 28, 2025, 1:07 p.m. UTC
Document changes between 0e91a1dabf27 ("adwaita-icon-theme: upgrade 47.0
-> 48.0") up to b3c21a23ad3a ("migration-guides/release-notes-5.2:
update for upcoming 5.2 release") in Poky.

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
---
 documentation/migration-guides/migration-5.2.rst   | 26 ++++++++++++++++++++++
 .../migration-guides/release-notes-5.2.rst         | 22 ++++++++++++++++++
 2 files changed, 48 insertions(+)

Comments

Quentin Schulz March 28, 2025, 4:03 p.m. UTC | #1
Hi Antonin,

On 3/28/25 2:07 PM, Antonin Godard via lists.yoctoproject.org wrote:
> Document changes between 0e91a1dabf27 ("adwaita-icon-theme: upgrade 47.0
> -> 48.0") up to b3c21a23ad3a ("migration-guides/release-notes-5.2:
> update for upcoming 5.2 release") in Poky.
> 
> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
> ---
>   documentation/migration-guides/migration-5.2.rst   | 26 ++++++++++++++++++++++
>   .../migration-guides/release-notes-5.2.rst         | 22 ++++++++++++++++++
>   2 files changed, 48 insertions(+)
> 
> diff --git a/documentation/migration-guides/migration-5.2.rst b/documentation/migration-guides/migration-5.2.rst
> index 59a2782f2..c54f054c7 100644
> --- a/documentation/migration-guides/migration-5.2.rst
> +++ b/documentation/migration-guides/migration-5.2.rst
> @@ -178,6 +178,32 @@ This should now be replaced by::
>   
>      UBOOT_ENTRYPOINT ?= "0x20008000"
>   
> +
> +Git fetcher: support for multiple revisions per URL removed
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +The support for having multiple Git revisions per URL in :term:`SRC_URI` was
> +removed from BitBake, which means the following syntax is not supported
> +anymore::
> +
> +   SRC_URI = "git://some.host/somepath;branch=branchX,branchY;name=nameX,nameY"
> +   SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
> +   SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"
> +
> +This was rarely used in the core repositories, and this removal simplifies the
> +code logic in several places.
> +

Can we suggest the user how to transition away from that? What was this 
even supposed to do?

> +Git fetcher: Branch parameter now required in :term:`SRC_URI`
> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +The ``branch`` parameter is now required when specifying a Git repository in
> +:term:`SRC_URI`, for example::
> +
> +   SRC_URI = "git://some.host/somepath;branch=branchX"
> +
> +A missing ``branch`` parameter used to produce a warning, and will now produce
> +an error.
> +

You can specify that it used to default to "master" when it was missing, 
so if the recipe was building without, you likely want to have 
;branch=master in there? (I haven't re-checked but I believe that's the 
case?).

>   Recipe changes
>   ~~~~~~~~~~~~~~
>   
> diff --git a/documentation/migration-guides/release-notes-5.2.rst b/documentation/migration-guides/release-notes-5.2.rst
> index cbef0d686..05fc92e85 100644
> --- a/documentation/migration-guides/release-notes-5.2.rst
> +++ b/documentation/migration-guides/release-notes-5.2.rst
> @@ -43,6 +43,13 @@ New Features / Enhancements in |yocto-ver|
>         This can be used for authentication of private NPM registries, among other
>         uses.
>   
> +   -  The :term:`GRUB_MKIMAGE_OPTS` can be used to control the flags to the
> +      ``grub-mkimage`` command in the context of the Grub recipe (``grub-efi``).

It should be GRUB, all uppercase? https://en.wikipedia.org/wiki/GNU_GRUB

> +
> +   -  The :term:`SPDX_PACKAGE_VERSION` variable controls the package version as
> +      seen in the SPDX 3.0 JSON output (``software_packageVersion``). The default
> +      value for this variable is :term:`PV`.
> +

Would recommend not giving the default value here if it's already in the 
glossary, let's avoid having to modify multiple places if this gets 
changed in the future.

>   -  Kernel-related changes:
>   
>      -  :ref:`ref-classes-cml1`: in :ref:`ref-tasks-diffconfig`, do not override
> @@ -81,6 +88,10 @@ New Features / Enhancements in |yocto-ver|
>          -  ``qcom-x1e80100-lenovo-t14s-g6-adreno``
>          -  ``qcom-x1e80100-lenovo-t14s-g6-audio``
>          -  ``qcom-x1e80100-lenovo-t14s-g6-compute``
> +       -  ``qcom-adreno-a623``
> +       -  ``qcom-qcs8300-adreno``
> +       -  ``qca-qca2066``
> +       -  ``qcom-adreno-a2xx``

The git diff indentation seems odd, but maybe everything;s fine (a case 
of tabs vs spaces maybe?).

>   
>      -  ``linux-firmware``: split ``amgpu``, ``ath10k``, ``ath11k`` and ``ath12k``
>         in separate packages.
> @@ -208,6 +219,10 @@ New Features / Enhancements in |yocto-ver|
>      -  ``rust-target-config``: Update the data layout for the *x86-64* target, as
>         it was different in Rust from LLVM, which produced a data layout error.
>   
> +   -  The :term:`PACKAGECONFIG_CONFARGS` value if now passed to the ``cargo
> +      build`` command, which means that Rust recipes can now properly define
> +      their :term:`PACKAGECONFIG` configuration.
> +
>   -  Wic Image Creator changes:
>   
>      -  Allow the ``--exclude-path`` option to exclude symlinks.
> @@ -330,6 +345,8 @@ New Features / Enhancements in |yocto-ver|
>         -  ``wget``: increase timeout to 100s from 30s to match CDN worst
>            response time.
>   
> +      -  ``wget``: Support setting :term:`PV` in :term:`SRC_URI`.
> +

Sorry, don't understand what that means? Do you have a commit to refer to?

>         -  Add support for fast initial shallow fetch. The fetcher will prefer an
>            initial shallow clone, but will re-utilize an existing bare clone if
>            there is one. If the remote server does not allow shallow fetches, the
> @@ -494,6 +511,8 @@ New Features / Enhancements in |yocto-ver|
>      -  ``systemd``: ``apparmor``, ``fido``, ``mountfsd``, ``nsresourced``
>      -  ``ovmf``: ``debug``
>      -  ``webkitgtk``: ``assertions``
> +   -  ``iproute2``: ``iptables``
> +   -  ``man-db``: ``col``
>   

odd indentation in git diff but maybe just a tabs vs space issue?

Cheers,
Quentin
Richard Purdie March 28, 2025, 4:47 p.m. UTC | #2
On Fri, 2025-03-28 at 17:03 +0100, Quentin Schulz via lists.yoctoproject.org wrote:
> Hi Antonin,
> 
> On 3/28/25 2:07 PM, Antonin Godard via lists.yoctoproject.org wrote:
> > Document changes between 0e91a1dabf27 ("adwaita-icon-theme: upgrade 47.0
> > -> 48.0") up to b3c21a23ad3a ("migration-guides/release-notes-5.2:
> > update for upcoming 5.2 release") in Poky.
> > 
> > Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
> > ---
> >   documentation/migration-guides/migration-5.2.rst   | 26 ++++++++++++++++++++++
> >   .../migration-guides/release-notes-5.2.rst         | 22 ++++++++++++++++++
> >   2 files changed, 48 insertions(+)
> > 
> > diff --git a/documentation/migration-guides/migration-5.2.rst b/documentation/migration-guides/migration-5.2.rst
> > index 59a2782f2..c54f054c7 100644
> > --- a/documentation/migration-guides/migration-5.2.rst
> > +++ b/documentation/migration-guides/migration-5.2.rst
> > @@ -178,6 +178,32 @@ This should now be replaced by::
> >   
> >      UBOOT_ENTRYPOINT ?= "0x20008000"
> >   
> > +
> > +Git fetcher: support for multiple revisions per URL removed
> > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > +
> > +The support for having multiple Git revisions per URL in :term:`SRC_URI` was
> > +removed from BitBake, which means the following syntax is not supported
> > +anymore::
> > +
> > +   SRC_URI = "git://some.host/somepath;branch=branchX,branchY;name=nameX,nameY"
> > +   SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
> > +   SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"
> > +
> > +This was rarely used in the core repositories, and this removal simplifies the
> > +code logic in several places.
> > +
> 
> Can we suggest the user how to transition away from that? What was this 
> even supposed to do?

It would only have ever been useful with bare clones where there wasn't
a checkout. The only user I know of used to be the kernel recipe but
that no longer does this.

Cheers,

Richard
Quentin Schulz March 31, 2025, 8:32 a.m. UTC | #3
Hi Richard,

On 3/28/25 5:47 PM, Richard Purdie wrote:
> On Fri, 2025-03-28 at 17:03 +0100, Quentin Schulz via lists.yoctoproject.org wrote:
>> Hi Antonin,
>>
>> On 3/28/25 2:07 PM, Antonin Godard via lists.yoctoproject.org wrote:
>>> Document changes between 0e91a1dabf27 ("adwaita-icon-theme: upgrade 47.0
>>> -> 48.0") up to b3c21a23ad3a ("migration-guides/release-notes-5.2:
>>> update for upcoming 5.2 release") in Poky.
>>>
>>> Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
>>> ---
>>>    documentation/migration-guides/migration-5.2.rst   | 26 ++++++++++++++++++++++
>>>    .../migration-guides/release-notes-5.2.rst         | 22 ++++++++++++++++++
>>>    2 files changed, 48 insertions(+)
>>>
>>> diff --git a/documentation/migration-guides/migration-5.2.rst b/documentation/migration-guides/migration-5.2.rst
>>> index 59a2782f2..c54f054c7 100644
>>> --- a/documentation/migration-guides/migration-5.2.rst
>>> +++ b/documentation/migration-guides/migration-5.2.rst
>>> @@ -178,6 +178,32 @@ This should now be replaced by::
>>>    
>>>       UBOOT_ENTRYPOINT ?= "0x20008000"
>>>    
>>> +
>>> +Git fetcher: support for multiple revisions per URL removed
>>> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>> +
>>> +The support for having multiple Git revisions per URL in :term:`SRC_URI` was
>>> +removed from BitBake, which means the following syntax is not supported
>>> +anymore::
>>> +
>>> +   SRC_URI = "git://some.host/somepath;branch=branchX,branchY;name=nameX,nameY"
>>> +   SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
>>> +   SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"
>>> +
>>> +This was rarely used in the core repositories, and this removal simplifies the
>>> +code logic in several places.
>>> +
>>
>> Can we suggest the user how to transition away from that? What was this
>> even supposed to do?
> 
> It would only have ever been useful with bare clones where there wasn't
> a checkout. The only user I know of used to be the kernel recipe but
> that no longer does this.
> 

Ah yes, was doing my grep in git history from bitbake repo instead of 
poky :)

It seems like what we did was split the code into a separate git 
repository but I assume we can do the same by having the same git repo, 
simply in a second SRC_URI entry.

git log -p -G ";branch=.*,.*\""

followed by a search for \.bb, \.inc in the pager returned 
c29aac6a8b5b417ad46f3cdf9c1a2d61c4f6cdd5 in poky.

So I guess we can say:

"""
If one of your recipes is still using this mechanism, you can split the 
code source fetching into two separate entries::

    SRC_URI = "git://some.host/somepath;branch=branchX;name=nameX"
    SRC_URI += "git://some.host/somepath;branch=branchY;name=nameY"
    SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
    SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"

"""

(NOT tested).

Cheers,
Quentin
Richard Purdie April 3, 2025, 3:39 p.m. UTC | #4
On Mon, 2025-03-31 at 10:32 +0200, Quentin Schulz wrote:
> Hi Richard,
> 
> On 3/28/25 5:47 PM, Richard Purdie wrote:
> > On Fri, 2025-03-28 at 17:03 +0100, Quentin Schulz via
> > lists.yoctoproject.org wrote:
> > > Hi Antonin,
> > > 
> > > On 3/28/25 2:07 PM, Antonin Godard via lists.yoctoproject.org
> > > wrote:
> > > > Document changes between 0e91a1dabf27 ("adwaita-icon-theme:
> > > > upgrade 47.0
> > > > -> 48.0") up to b3c21a23ad3a ("migration-guides/release-notes-
> > > > 5.2:
> > > > update for upcoming 5.2 release") in Poky.
> > > > 
> > > > Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
> > > > ---
> > > >    documentation/migration-guides/migration-5.2.rst   | 26
> > > > ++++++++++++++++++++++
> > > >    .../migration-guides/release-notes-5.2.rst         | 22
> > > > ++++++++++++++++++
> > > >    2 files changed, 48 insertions(+)
> > > > 
> > > > diff --git a/documentation/migration-guides/migration-5.2.rst
> > > > b/documentation/migration-guides/migration-5.2.rst
> > > > index 59a2782f2..c54f054c7 100644
> > > > --- a/documentation/migration-guides/migration-5.2.rst
> > > > +++ b/documentation/migration-guides/migration-5.2.rst
> > > > @@ -178,6 +178,32 @@ This should now be replaced by::
> > > >    
> > > >       UBOOT_ENTRYPOINT ?= "0x20008000"
> > > >    
> > > > +
> > > > +Git fetcher: support for multiple revisions per URL removed
> > > > +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > > > +
> > > > +The support for having multiple Git revisions per URL in
> > > > :term:`SRC_URI` was
> > > > +removed from BitBake, which means the following syntax is not
> > > > supported
> > > > +anymore::
> > > > +
> > > > +   SRC_URI =
> > > > "git://some.host/somepath;branch=branchX,branchY;name=nameX,nam
> > > > eY"
> > > > +   SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
> > > > +   SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"
> > > > +
> > > > +This was rarely used in the core repositories, and this
> > > > removal simplifies the
> > > > +code logic in several places.
> > > > +
> > > 
> > > Can we suggest the user how to transition away from that? What
> > > was this
> > > even supposed to do?
> > 
> > It would only have ever been useful with bare clones where there
> > wasn't
> > a checkout. The only user I know of used to be the kernel recipe
> > but
> > that no longer does this.
> > 
> 
> Ah yes, was doing my grep in git history from bitbake repo instead of
> poky :)
> 
> It seems like what we did was split the code into a separate git 
> repository but I assume we can do the same by having the same git
> repo, 
> simply in a second SRC_URI entry.
> 
> git log -p -G ";branch=.*,.*\""
> 
> followed by a search for \.bb, \.inc in the pager returned 
> c29aac6a8b5b417ad46f3cdf9c1a2d61c4f6cdd5 in poky.
> 
> So I guess we can say:
> 
> """
> If one of your recipes is still using this mechanism, you can split
> the 
> code source fetching into two separate entries::
> 
>     SRC_URI = "git://some.host/somepath;branch=branchX;name=nameX"
>     SRC_URI += "git://some.host/somepath;branch=branchY;name=nameY"
>     SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
>     SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"
> 
> """
> 
> (NOT tested).

Multiple revisions only worked with bareclones otherwise it wouldn't
know how to checkout the resulting code during unpack. The above has
the same issue, it wouldn't know how to unpack the resulting code.

With a bare clone the checkout is left to the recipe so it isn't an
issue in that case.

For that reason I think examples are probably not needed as very little
code should be using this (hopefully nothing).

Cheers,

Richard
diff mbox series

Patch

diff --git a/documentation/migration-guides/migration-5.2.rst b/documentation/migration-guides/migration-5.2.rst
index 59a2782f2..c54f054c7 100644
--- a/documentation/migration-guides/migration-5.2.rst
+++ b/documentation/migration-guides/migration-5.2.rst
@@ -178,6 +178,32 @@  This should now be replaced by::
 
    UBOOT_ENTRYPOINT ?= "0x20008000"
 
+
+Git fetcher: support for multiple revisions per URL removed
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The support for having multiple Git revisions per URL in :term:`SRC_URI` was
+removed from BitBake, which means the following syntax is not supported
+anymore::
+
+   SRC_URI = "git://some.host/somepath;branch=branchX,branchY;name=nameX,nameY"
+   SRCREV_nameX = "xxxxxxxxxxxxxxxxxxxx"
+   SRCREV_nameY = "yyyyyyyyyyyyyyyyyyyy"
+
+This was rarely used in the core repositories, and this removal simplifies the
+code logic in several places.
+
+Git fetcher: Branch parameter now required in :term:`SRC_URI`
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The ``branch`` parameter is now required when specifying a Git repository in
+:term:`SRC_URI`, for example::
+
+   SRC_URI = "git://some.host/somepath;branch=branchX"
+
+A missing ``branch`` parameter used to produce a warning, and will now produce
+an error.
+
 Recipe changes
 ~~~~~~~~~~~~~~
 
diff --git a/documentation/migration-guides/release-notes-5.2.rst b/documentation/migration-guides/release-notes-5.2.rst
index cbef0d686..05fc92e85 100644
--- a/documentation/migration-guides/release-notes-5.2.rst
+++ b/documentation/migration-guides/release-notes-5.2.rst
@@ -43,6 +43,13 @@  New Features / Enhancements in |yocto-ver|
       This can be used for authentication of private NPM registries, among other
       uses.
 
+   -  The :term:`GRUB_MKIMAGE_OPTS` can be used to control the flags to the
+      ``grub-mkimage`` command in the context of the Grub recipe (``grub-efi``).
+
+   -  The :term:`SPDX_PACKAGE_VERSION` variable controls the package version as
+      seen in the SPDX 3.0 JSON output (``software_packageVersion``). The default
+      value for this variable is :term:`PV`.
+
 -  Kernel-related changes:
 
    -  :ref:`ref-classes-cml1`: in :ref:`ref-tasks-diffconfig`, do not override
@@ -81,6 +88,10 @@  New Features / Enhancements in |yocto-ver|
        -  ``qcom-x1e80100-lenovo-t14s-g6-adreno``
        -  ``qcom-x1e80100-lenovo-t14s-g6-audio``
        -  ``qcom-x1e80100-lenovo-t14s-g6-compute``
+       -  ``qcom-adreno-a623``
+       -  ``qcom-qcs8300-adreno``
+       -  ``qca-qca2066``
+       -  ``qcom-adreno-a2xx``
 
    -  ``linux-firmware``: split ``amgpu``, ``ath10k``, ``ath11k`` and ``ath12k``
       in separate packages.
@@ -208,6 +219,10 @@  New Features / Enhancements in |yocto-ver|
    -  ``rust-target-config``: Update the data layout for the *x86-64* target, as
       it was different in Rust from LLVM, which produced a data layout error.
 
+   -  The :term:`PACKAGECONFIG_CONFARGS` value if now passed to the ``cargo
+      build`` command, which means that Rust recipes can now properly define
+      their :term:`PACKAGECONFIG` configuration.
+
 -  Wic Image Creator changes:
 
    -  Allow the ``--exclude-path`` option to exclude symlinks.
@@ -330,6 +345,8 @@  New Features / Enhancements in |yocto-ver|
       -  ``wget``: increase timeout to 100s from 30s to match CDN worst
          response time.
 
+      -  ``wget``: Support setting :term:`PV` in :term:`SRC_URI`.
+
       -  Add support for fast initial shallow fetch. The fetcher will prefer an
          initial shallow clone, but will re-utilize an existing bare clone if
          there is one. If the remote server does not allow shallow fetches, the
@@ -494,6 +511,8 @@  New Features / Enhancements in |yocto-ver|
    -  ``systemd``: ``apparmor``, ``fido``, ``mountfsd``, ``nsresourced``
    -  ``ovmf``: ``debug``
    -  ``webkitgtk``: ``assertions``
+   -  ``iproute2``: ``iptables``
+   -  ``man-db``: ``col``
 
 -  Systemd related changes:
 
@@ -540,6 +559,9 @@  New Features / Enhancements in |yocto-ver|
    -  Add a sanity check to validate that the C++ toolchain is functional on the
       host.
 
+   -  Add a sanity check to check that the C++ compiler on the host supports
+      C++20.
+
    -  Add a sanity check to verify that :term:`TOPDIR` does not contain
       non-ASCII characters, as it may lead to unexpected build errors.