blob: 8c2a7d2c65e8d259a6a3c3a04b6e6ba44b442b67 [file] [log] [blame]
Andrew Geissler595f6302022-01-24 19:11:47 +00001Release 3.5 (kirkstone)
2=======================
3
4This section provides migration information for moving to the Yocto
5Project 3.5 Release (codename "kirkstone") from the prior release.
6
7Recipe changes
8--------------
9
10- Because of the uncertainty in future default branch names in git repositories,
11 it is now required to add a branch name to all URLs described
12 by ``git://`` and ``gitsm://`` :term:`SRC_URI` entries. For example::
13
14 SRC_URI = "git://git.denx.de/u-boot.git;branch=master"
15
16 A :oe_git:`convert-srcuri </openembedded-core/tree/scripts/contrib/convert-srcuri.py>`
17 script to convert your recipes is available in :term:`OpenEmbedded-Core (OE-Core)`
18 and in :term:`Poky`.
19
20- Because of `GitHub dropping support for the git:
21 protocol <https://github.blog/2021-09-01-improving-git-protocol-security-github/>`__,
22 recipes now need to use ``;protocol=https`` at the end of GitHub
23 URLs. The same script as above can be used to convert the recipes.
24
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000025- Network access from tasks is now disabled by default on kernels which support
26 this feature (on most recent distros such as CentOS 8 and Debian 11 onwards).
27 This means that tasks accessing the network need to be marked as such with the ``network``
28 flag. For example::
29
30 do_mytask[network] = "1"
31
32 This is allowed by default from ``do_fetch`` but not from any of our other standard
33 tasks. Recipes shouldn't be accessing the network outside of ``do_fetch`` as it
34 usually undermines fetcher source mirroring, image and licence manifests, software
35 auditing and supply chain security.
36
Andrew Geissler595f6302022-01-24 19:11:47 +000037- The :term:`TOPDIR` variable and the current working directory are no longer modified
38 when parsing recipes. Any code depending on that behaviour will no longer work.
39
40- The ``append``, ``prepend`` and ``remove`` operators can now only be combined with
41 ``=`` and ``:=`` operators. To the exception of the ``append`` plus ``+=`` and
42 ``prepend`` plus ``=+`` combinations, all combinations could be factored up to the
43 ``append``, ``prepend`` or ``remove`` in the combination. This brought a lot of
44 confusion on how the override style syntax operators work and should be used.
45 Therefore, those combinations can simply be replaced by a single ``append``,
46 ``prepend`` or ``remove`` operator without any additional change.
47 For the ``append`` plus ``+=`` (and ``prepend`` plus ``=+``) combinations,
48 the content should be prefixed (respectively suffixed) by a space to maintain
49 the same behavior. You can learn more about override style syntax operators
50 (``append``, ``prepend`` and ``remove``) in the BitBake documentation:
51 :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:appending and prepending (override style syntax)`
52 and :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:removal (override style syntax)`.
53
54- :ref:`allarch <ref-classes-allarch>` packagegroups can no longer depend on packages
Andrew Geissler7e0e3c02022-02-25 20:34:39 +000055 which use :term:`PKG` renaming such as :ref:`ref-classes-debian`.
Andrew Geissler595f6302022-01-24 19:11:47 +000056