summaryrefslogtreecommitdiffstats
path: root/documentation/migration-guides
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@microsoft.com>2022-04-21 18:40:41 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-04-25 15:14:09 +0100
commitf84b6a775c7c5d2a2ef9a5d54d07c246c249955f (patch)
treebfecb8586f2e01643f3b689e93df9dd861b8c60d /documentation/migration-guides
parentd89fbdfd16a9125664072ebb477935bd83ae4e5a (diff)
downloadpoky-f84b6a775c7c5d2a2ef9a5d54d07c246c249955f.tar.gz
migration-guides: complete migration guide for 4.0
* Make some corrections to preliminary set of entries * Move out entries that were more appropriate for the release notes (i.e. that are more additions rather than changes that require the user to make changes) * Add new entries based on commits in the kirkstone branch (From yocto-docs rev: bea2da80e7c5338dc5abefe95ce27b80ed4ee98a) Signed-off-by: Paul Eggleton <paul.eggleton@microsoft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/migration-guides')
-rw-r--r--documentation/migration-guides/migration-4.0.rst346
1 files changed, 221 insertions, 125 deletions
diff --git a/documentation/migration-guides/migration-4.0.rst b/documentation/migration-guides/migration-4.0.rst
index 202999ece8..097eeafdb4 100644
--- a/documentation/migration-guides/migration-4.0.rst
+++ b/documentation/migration-guides/migration-4.0.rst
@@ -1,61 +1,74 @@
1Release 4.0 (kirkstone) 1Release 4.0 (kirkstone)
2======================= 2=======================
3 3
4Migration notes for 4.0 (kirkstone)
5-----------------------------------
6
4This section provides migration information for moving to the Yocto 7This section provides migration information for moving to the Yocto
5Project 4.0 Release (codename "kirkstone") from the prior release. 8Project 4.0 Release (codename "kirkstone") from the prior release.
6 9
7Recipe changes 10.. _migration-4.0-inclusive-language:
8-------------- 11
9 12Inclusive language improvements
10- To use more `inclusive language <https://inclusivenaming.org/>`__ 13~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
11 in the code and documentation, some variables have been renamed or even 14
12 deleted. BitBake will stop with an error when renamed or removed variables 15To use more `inclusive language <https://inclusivenaming.org/>`__
13 still exist in your recipes or configuration. 16in the code and documentation, some variables have been renamed, and
14 17some have been deleted where they are no longer needed. In many cases the
15 Please note that the change applies also to environmental variables, so 18new names are also easier to understand. BitBake will stop with an error when
16 make sure you use a fresh environment for your build. 19renamed or removed variables still exist in your recipes or configuration.
17 20
18 The following variables have changed their names: 21Please note that the change applies also to environmental variables, so
19 22make sure you use a fresh environment for your build.
20 - ``BB_ENV_WHITELIST`` became :term:`BB_ENV_PASSTHROUGH` 23
21 - ``BB_ENV_EXTRAWHITE`` became :term:`BB_ENV_PASSTHROUGH_ADDITIONS` 24The following variables have changed their names:
22 - ``BB_HASHBASE_WHITELIST`` became :term:`BB_BASEHASH_IGNORE_VARS` 25
23 - ``BB_HASHCONFIG_WHITELIST`` became :term:`BB_HASHCONFIG_IGNORE_VARS` 26- ``BB_ENV_WHITELIST`` became :term:`BB_ENV_PASSTHROUGH`
24 - ``BB_HASHTASK_WHITELIST`` became ``BB_TASKHASH_IGNORE_TASKS`` 27- ``BB_ENV_EXTRAWHITE`` became :term:`BB_ENV_PASSTHROUGH_ADDITIONS`
25 - ``BB_SETSCENE_ENFORCE_WHITELIST`` became ``BB_SETSCENE_ENFORCE_IGNORE_TASKS`` 28- ``BB_HASHBASE_WHITELIST`` became :term:`BB_BASEHASH_IGNORE_VARS`
26 - ``CVE_CHECK_PN_WHITELIST`` became :term:`CVE_CHECK_SKIP_RECIPE` 29- ``BB_HASHCONFIG_WHITELIST`` became :term:`BB_HASHCONFIG_IGNORE_VARS`
27 - ``CVE_CHECK_WHITELIST`` became :term:`CVE_CHECK_IGNORE` 30- ``BB_HASHTASK_WHITELIST`` became ``BB_TASKHASH_IGNORE_TASKS``
28 - ``ICECC_USER_CLASS_BL`` became :term:`ICECC_CLASS_DISABLE` 31- ``BB_SETSCENE_ENFORCE_WHITELIST`` became ``BB_SETSCENE_ENFORCE_IGNORE_TASKS``
29 - ``ICECC_SYSTEM_CLASS_BL`` became :term:`ICECC_CLASS_DISABLE` 32- ``CVE_CHECK_PN_WHITELIST`` became :term:`CVE_CHECK_SKIP_RECIPE`
30 - ``ICECC_USER_PACKAGE_WL`` became :term:`ICECC_RECIPE_ENABLE` 33- ``CVE_CHECK_WHITELIST`` became :term:`CVE_CHECK_IGNORE`
31 - ``ICECC_USER_PACKAGE_BL`` became :term:`ICECC_RECIPE_DISABLE` 34- ``ICECC_USER_CLASS_BL`` became :term:`ICECC_CLASS_DISABLE`
32 - ``ICECC_SYSTEM_PACKAGE_BL`` became :term:`ICECC_RECIPE_DISABLE` 35- ``ICECC_SYSTEM_CLASS_BL`` became :term:`ICECC_CLASS_DISABLE`
33 - ``LICENSE_FLAGS_WHITELIST`` became :term:`LICENSE_FLAGS_ACCEPTED` 36- ``ICECC_USER_PACKAGE_WL`` became :term:`ICECC_RECIPE_ENABLE`
34 - ``MULTI_PROVIDER_WHITELIST`` became :term:`BB_MULTI_PROVIDER_ALLOWED` 37- ``ICECC_USER_PACKAGE_BL`` became :term:`ICECC_RECIPE_DISABLE`
35 - ``PNBLACKLIST`` became :term:`SKIP_RECIPE` 38- ``ICECC_SYSTEM_PACKAGE_BL`` became :term:`ICECC_RECIPE_DISABLE`
36 - ``SDK_LOCAL_CONF_BLACKLIST`` became :term:`ESDK_LOCALCONF_REMOVE` 39- ``LICENSE_FLAGS_WHITELIST`` became :term:`LICENSE_FLAGS_ACCEPTED`
37 - ``SDK_LOCAL_CONF_WHITELIST`` became :term:`ESDK_LOCALCONF_ALLOW` 40- ``MULTI_PROVIDER_WHITELIST`` became :term:`BB_MULTI_PROVIDER_ALLOWED`
38 - ``SDK_INHERIT_BLACKLIST`` became :term:`ESDK_CLASS_INHERIT_DISABLE` 41- ``PNBLACKLIST`` became :term:`SKIP_RECIPE`
39 - ``SSTATE_DUPWHITELIST`` became ``SSTATE_ALLOW_OVERLAP_FILES`` 42- ``SDK_LOCAL_CONF_BLACKLIST`` became :term:`ESDK_LOCALCONF_REMOVE`
40 - ``SYSROOT_DIRS_BLACKLIST`` became :term:`SYSROOT_DIRS_IGNORE` 43- ``SDK_LOCAL_CONF_WHITELIST`` became :term:`ESDK_LOCALCONF_ALLOW`
41 - ``UNKNOWN_CONFIGURE_WHITELIST`` became :term:`UNKNOWN_CONFIGURE_OPT_IGNORE` 44- ``SDK_INHERIT_BLACKLIST`` became :term:`ESDK_CLASS_INHERIT_DISABLE`
42 45- ``SSTATE_DUPWHITELIST`` became ``SSTATE_ALLOW_OVERLAP_FILES``
43 In addition, ``BB_STAMP_WHITELIST``, ``BB_STAMP_POLICY``, ``INHERIT_BLACKLIST`` 46- ``SYSROOT_DIRS_BLACKLIST`` became :term:`SYSROOT_DIRS_IGNORE`
44 and ``TUNEABI_WHITELIST`` have been removed. 47- ``UNKNOWN_CONFIGURE_WHITELIST`` became :term:`UNKNOWN_CONFIGURE_OPT_IGNORE`
45 48- ``WHITELIST_<license>`` became ``INCOMPATIBLE_LICENSE_EXCEPTIONS``
46 Many internal variable names have been also renamed accordingly. 49
47 50In addition, ``BB_STAMP_WHITELIST``, ``BB_STAMP_POLICY``, ``INHERIT_BLACKLIST``,
48 In addition, in the ``cve-check`` output, the CVE issue status ``Whitelisted`` 51``TUNEABI``, ``TUNEABI_WHITELIST``, and ``TUNEABI_OVERRIDE`` have been removed.
49 has been renamed to ``Ignored``. 52
50 53Many internal variable names have been also renamed accordingly.
51 A :oe_git:`convert-variable-renames.py 54
52 </openembedded-core/tree/scripts/contrib/convert-variable-renames.py>` 55In addition, in the ``cve-check`` output, the CVE issue status ``Whitelisted``
53 script is provided to convert your recipes and configuration, 56has been renamed to ``Ignored``.
54 and also warns you about the use of problematic words. The script performs 57
55 changes and you need to review them before committing. An example warning 58The :term:`BB_DISKMON_DIRS` variable value now uses the term ``HALT``
56 looks like:: 59instead of ``ABORT``.
57 60
58 poky/scripts/lib/devtool/upgrade.py needs further work at line 275 since it contains abort 61A :oe_git:`convert-variable-renames.py
62</openembedded-core/tree/scripts/contrib/convert-variable-renames.py>`
63script is provided to convert your recipes and configuration,
64and also warns you about the use of problematic words. The script performs
65changes and you need to review them before committing. An example warning
66looks like::
67
68 poky/scripts/lib/devtool/upgrade.py needs further work at line 275 since it contains abort
69
70Fetching changes
71~~~~~~~~~~~~~~~~
59 72
60- Because of the uncertainty in future default branch names in git repositories, 73- Because of the uncertainty in future default branch names in git repositories,
61 it is now required to add a branch name to all URLs described 74 it is now required to add a branch name to all URLs described
@@ -70,7 +83,8 @@ Recipe changes
70- Because of `GitHub dropping support for the git: 83- Because of `GitHub dropping support for the git:
71 protocol <https://github.blog/2021-09-01-improving-git-protocol-security-github/>`__, 84 protocol <https://github.blog/2021-09-01-improving-git-protocol-security-github/>`__,
72 recipes now need to use ``;protocol=https`` at the end of GitHub 85 recipes now need to use ``;protocol=https`` at the end of GitHub
73 URLs. The same script as above can be used to convert the recipes. 86 URLs. The same ``convert-srcuri`` script mentioned above can be used to convert
87 your recipes.
74 88
75- Network access from tasks is now disabled by default on kernels which support 89- Network access from tasks is now disabled by default on kernels which support
76 this feature (on most recent distros such as CentOS 8 and Debian 11 onwards). 90 this feature (on most recent distros such as CentOS 8 and Debian 11 onwards).
@@ -84,87 +98,169 @@ Recipe changes
84 usually undermines fetcher source mirroring, image and licence manifests, software 98 usually undermines fetcher source mirroring, image and licence manifests, software
85 auditing and supply chain security. 99 auditing and supply chain security.
86 100
87- The :term:`TOPDIR` variable and the current working directory are no longer modified 101License changes
88 when parsing recipes. Any code depending on that behaviour will no longer work. 102~~~~~~~~~~~~~~~
89
90- The ``append``, ``prepend`` and ``remove`` operators can now only be combined with
91 ``=`` and ``:=`` operators. To the exception of the ``append`` plus ``+=`` and
92 ``prepend`` plus ``=+`` combinations, all combinations could be factored up to the
93 ``append``, ``prepend`` or ``remove`` in the combination. This brought a lot of
94 confusion on how the override style syntax operators work and should be used.
95 Therefore, those combinations can simply be replaced by a single ``append``,
96 ``prepend`` or ``remove`` operator without any additional change.
97 For the ``append`` plus ``+=`` (and ``prepend`` plus ``=+``) combinations,
98 the content should be prefixed (respectively suffixed) by a space to maintain
99 the same behavior. You can learn more about override style syntax operators
100 (``append``, ``prepend`` and ``remove``) in the BitBake documentation:
101 :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:appending and prepending (override style syntax)`
102 and :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:removal (override style syntax)`.
103 103
104- :ref:`allarch <ref-classes-allarch>` packagegroups can no longer depend on packages 104- The ambiguous "BSD" license has been removed from the ``common-licenses`` directory.
105 which use :term:`PKG` renaming such as :ref:`ref-classes-debian`. 105 Each recipe that fetches or builds BSD-licensed code should specify the proper
106 version of the BSD license in its :term:`LICENSE` value.
106 107
107- :term:`LICENSE` definitions now have to use `SPDX identifiers <https://spdx.org/licenses/>`__. 108- :term:`LICENSE` variable values should now use `SPDX identifiers <https://spdx.org/licenses/>`__.
108 A :oe_git:`convert-spdx-licenses.py </openembedded-core/tree/scripts/contrib/convert-spdx-licenses.py>` 109 If they do not, by default a warning will be shown. A
110 :oe_git:`convert-spdx-licenses.py </openembedded-core/tree/scripts/contrib/convert-spdx-licenses.py>`
109 script can be used to update your recipes. 111 script can be used to update your recipes.
110 112
111- :term:`SRC_URI`: a new :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-fetching:crate fetcher (\`\`crate://\`\`)` 113- :term:`INCOMPATIBLE_LICENSE` should now use `SPDX identifiers <https://spdx.org/licenses/>`__.
112 is available for Rust packages. 114 Additionally, wildcarding is now limited to specifically supported values -
113 115 see the :term:`INCOMPATIBLE_LICENSE` documentation for further information.
114Class changes 116
115------------- 117- The ``AVAILABLE_LICENSES`` variable has been removed. This variable was a performance
116 118 liability and is highly dependent on which layers are added to the configuration,
117- The ``distutils*.bbclasses`` have been moved to ``meta-python``. The classes and 119 which can cause signature issues for users. In addition the ``available_licenses()``
118 `DISTUTILS*` variables have been removed from the documentation. 120 function has been removed from the :ref:`license <ref-classes-license>` class as
119 121 it is no longer needed.
120- ``blacklist.bbclass`` is removed and the functionality moved to the 122
121 :ref:`base <ref-classes-base>` class with a more descriptive 123Removed recipes
122 ``varflag`` named :term:`SKIP_RECIPE` which will use the `SkipRecipe()` 124~~~~~~~~~~~~~~~
123 function. The usage will remain the same:: 125
124 126The following recipes have been removed in this release:
125 SKIP_RECIPE[my-recipe] = "Reason for skipping recipe" 127
126 128- ``dbus-test``: merged into main dbus recipe
127- The Python package build process based on `wheels <https://pythonwheels.com/>`__. 129- ``libid3tag``: moved to meta-oe - no longer needed by anything in OE-Core
130- ``libportal``: moved to meta-gnome - no longer needed by anything in OE-Core
131- ``linux-yocto``: removed version 5.14 recipes (5.15 and 5.10 still provided)
132- ``python3-nose``: has not changed since 2016 upstream, and no longer needed by anything in OE-Core
133- ``rustfmt``: not especially useful as a standalone recipe
134
135Python changes
136~~~~~~~~~~~~~~
137
138- ``distutils`` has been deprecated upstream in Python 3.10 and thus the ``distutils*``
139 classes have been moved to ``meta-python``. Recipes that inherit the ``distutils*``
140 classes should be updated to inherit ``setuptools*`` equivalents instead.
141
142- The Python package build process is now based on `wheels <https://pythonwheels.com/>`__.
128 Here are the new Python packaging classes that should be used: 143 Here are the new Python packaging classes that should be used:
129 :ref:`python-flit_core <ref-classes-python_flit_core>`, 144 :ref:`python_flit_core <ref-classes-python_flit_core>`,
130 :ref:`setuptools_python-build_meta <ref-classes-python_setuptools_build_meta>` 145 :ref:`python_setuptools_build_meta <ref-classes-python_setuptools_build_meta>`
131 and :ref:`python_poetry_core <ref-classes-python_poetry_core>`. 146 and :ref:`python_poetry_core <ref-classes-python_poetry_core>`.
132 147
133- ``image-prelink.bbclass`` class is removed. 148- The :ref:`setuptools3 <ref-classes-setuptools3>` class ``do_install()`` task now
134 149 installs the ``wheel`` binary archive. In current versions of ``setuptools`` the
135- New :ref:`overlayfs <ref-classes-overlayfs>` and 150 legacy ``setup.py install`` method is deprecated. If the ``setup.py`` cannot be used
136 :ref:`overlayfs-etc <ref-classes-overlayfs-etc>` classes are available 151 with wheels, for example it creates files outside of the Python module or standard
137 to make it easier to overlay read-only filesystems (for example) 152 entry points, then :ref:`setuptools3_legacy <ref-classes-setuptools3_legacy>` should
138 with `OverlayFS <https://en.wikipedia.org/wiki/OverlayFS>`__. 153 be used instead.
139 154
140Configuration changes 155Prelink removed
141--------------------- 156~~~~~~~~~~~~~~~
142 157
143- The Yocto Project now allows to reuse Shared State from its autobuilder. 158Prelink has been dropped by ``glibc`` upstream in 2.36. It already caused issues with
144 If the network connection between our server and your machine is faster 159binary corruption, has a number of open bugs and is of questionable benefit
145 than you would build recipes, you can try to speed up your builds 160without disabling load address randomization and PIE executables.
146 by using such Share State and Hash Equivalence by setting:: 161
147 162We disabled prelinking by default in the honister (3.4) release, but left it able
148 BB_SIGNATURE_HANDLER = "OEEquivHash" 163to be enabled if desired. However, without glibc support it cannot be maintained
149 BB_HASHSERVE = "auto" 164any further, so all of the prelinking functionality has been removed in this release.
150 BB_HASHSERVE_UPSTREAM = "typhoon.yocto.io:8687" 165If you were enabling the ``image-prelink`` class in :term:`INHERIT`, :term:`IMAGE_CLASSES`,
151 SSTATE_MIRRORS ?= "file://.* https://sstate.yoctoproject.org/&YOCTO_DOC_VERSION;/PATH;downloadfilename=PATH" 166:term:`USER_CLASSES` etc in your configuration, then you will need to remove the
167reference(s).
168
169Reproducible as standard
170~~~~~~~~~~~~~~~~~~~~~~~~
171
172Reproducibility is now considered as standard functionality, thus the
173``reproducible`` class has been removed and its previous contents merged into the
174:ref:`base <ref-classes-base>` class. If you have references in your configuration to
175``reproducible`` in :term:`INHERIT`, :term:`USER_CLASSES` etc. then they should be
176removed.
177
178Additionally, the ``BUILD_REPRODUCIBLE_BINARIES`` variable is no longer used.
179Specifically for the kernel, if you wish to enable build timestamping functionality
180that is normally disabled for reproducibility reasons, you can do so by setting
181a new :term:`KERNEL_DEBUG_TIMESTAMPS` variable to "1".
152 182
153Supported host distribution changes 183Supported host distribution changes
154----------------------------------- 184~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
155 185
156- New support for `AlmaLinux <https://en.wikipedia.org/wiki/AlmaLinux>`__ 186- Support for `AlmaLinux <https://en.wikipedia.org/wiki/AlmaLinux>`__
157 hosts replacing `CentOS <https://en.wikipedia.org/wiki/CentOS>`__. 187 hosts replacing `CentOS <https://en.wikipedia.org/wiki/CentOS>`__.
158 The following distribution versions were dropped: CentOS 8, Ubuntu 16.04 and Fedora 30, 31 and 32. 188 The following distribution versions were dropped: CentOS 8, Ubuntu 16.04 and Fedora 30, 31 and 32.
159 189
160Changes for release notes 190- ``gcc`` version 7.5 is now required at minimum on the build host. For older
161------------------------- 191 host distributions where this is not available, you can use the
162 192 ``buildtools-extended-tarball`` (easily installable using
163- Share State cache: now using `ZStandard (zstd) <https://en.wikipedia.org/wiki/Zstd>`__ 193 ``scripts/install-buildtools``).
164 instead of Gzip compression, for better performance. 194
165 195:append/:prepend in combination with other operators
166- BitBake has an improved ``setscene`` task display. 196~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197
198The ``append``, ``prepend`` and ``remove`` operators can now only be combined with
199``=`` and ``:=`` operators. To the exception of the ``append`` plus ``+=`` and
200``prepend`` plus ``=+`` combinations, all combinations could be factored up to the
201``append``, ``prepend`` or ``remove`` in the combination. This brought a lot of
202confusion on how the override style syntax operators work and should be used.
203Therefore, those combinations should be replaced by a single ``append``,
204``prepend`` or ``remove`` operator without any additional change.
205For the ``append`` plus ``+=`` (and ``prepend`` plus ``=+``) combinations,
206the content should be prefixed (respectively suffixed) by a space to maintain
207the same behavior. You can learn more about override style syntax operators
208(``append``, ``prepend`` and ``remove``) in the BitBake documentation:
209:ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:appending and prepending (override style syntax)`
210and :ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:removal (override style syntax)`.
211
212Miscellaneous changes
213~~~~~~~~~~~~~~~~~~~~~
214
215- ``blacklist.bbclass`` is removed and the functionality moved to the
216 :ref:`base <ref-classes-base>` class with a more descriptive
217 ``varflag`` variable named :term:`SKIP_RECIPE` which will use the `bb.parse.SkipRecipe()`
218 function. The usage remains the same, for example::
167 219
168- This release fixes the reproducibility issues with ``rust-llvm`` and ``golang``. 220 SKIP_RECIPE[my-recipe] = "Reason for skipping recipe"
169 Recipes in OpenEmbedded-Core are now fully reproducible.
170 221
222- :ref:`allarch <ref-classes-allarch>` packagegroups can no longer depend on packages
223 which use :term:`PKG` renaming such as :ref:`ref-classes-debian`. Such packagegroups
224 recipes should be changed to avoid inheriting :ref:`allarch <ref-classes-allarch>`.
225
226- The ``lnr`` script has been removed. ``lnr`` implemented the same behaviour as `ln --relative --symbolic`,
227 since at the time of creation `--relative` was only available in coreutils 8.16
228 onwards which was too new for the older supported distros. Current supported host
229 distros have a new enough version of coreutils, so it is no longer needed. If you have
230 any calls to ``lnr`` in your recipes or classes, they should be replaced with
231 `ln --relative --symbolic` or `ln -rs` if you prefer the short version.
232
233- The ``package_qa_handle_error()`` function formerly in the :ref:`insane <ref-classes-insane>`
234 class has been moved and renamed - if you have any references in your own custom
235 classes they should be changed to ``oe.qa.handle_error()``.
236
237- When building ``perl``, Berkeley db support is no longer enabled by default, since
238 Berkeley db is largely obsolete. If you wish to reenable it, you can append ``bdb``
239 to :term:`PACKAGECONFIG` in a ``perl`` bbappend or ``PACKAGECONFIG:pn-perl`` at
240 the configuration level.
241
242- For the ``xserver-xorg`` recipe, the ``xshmfence``, ``xmlto`` and ``systemd`` options
243 previously supported in :term:`PACKAGECONFIG` have been removed, as they are no
244 longer supported since the move from building it with autotools to meson in this release.
245
246- For the ``libsdl2`` recipe, various X11 features are now disabled by default (primarily
247 for reproducibility purposes in the native case) with options in :term:`EXTRA_OECMAKE`
248 within the recipe. These can be changed within a bbappend if desired. See the
249 ``libsdl2`` recipe for more details.
250
251- The ``cortexa72-crc`` and ``cortexa72-crc-crypto`` tunes have been removed since
252 the crc extension is now enabled by default for cortexa72. Replace any references to
253 these with ``cortexa72`` and ``cortexa72-crypto`` respectively.
254
255- The Python development shell (previously known as ``devpyshell``) feature has been
256 renamed to ``pydevshell``. To start it you should now run::
257
258 bitbake <target> -c pydevshell
259
260- The ``packagegroups-core-full-cmdline-libs`` packagegroup is no longer produced, as
261 libraries should normally be brought in via dependencies. If you have any references
262 to this then remove them.
263
264- The :term:`TOPDIR` variable and the current working directory are no longer modified
265 when parsing recipes. Any code depending on the previous behaviour will no longer
266 work - change any such code to explicitly use appropriate path variables instead.