diff options
| author | Michael Opdenacker <michael.opdenacker@bootlin.com> | 2023-07-20 15:09:06 +0200 |
|---|---|---|
| committer | Steve Sakoman <steve@sakoman.com> | 2023-07-21 06:27:34 -1000 |
| commit | cc3287637c30080333d89a368e40473dfffb2fb7 (patch) | |
| tree | a90e1fd95449986281ecad2886f5c53cdd4847b2 /documentation/ref-manual/release-process.rst | |
| parent | 23ca3ba89009059ba99f1fa9a20ad892bcd5e901 (diff) | |
| download | poky-cc3287637c30080333d89a368e40473dfffb2fb7.tar.gz | |
ref-manual: release-process: update for LTS releases
(From yocto-docs rev: 145488ac9ee4ad5efb0966f07ff5e7ff804f6562)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Diffstat (limited to 'documentation/ref-manual/release-process.rst')
| -rw-r--r-- | documentation/ref-manual/release-process.rst | 78 |
1 files changed, 56 insertions, 22 deletions
diff --git a/documentation/ref-manual/release-process.rst b/documentation/ref-manual/release-process.rst index 8acb4b8e09..d376d51bd2 100644 --- a/documentation/ref-manual/release-process.rst +++ b/documentation/ref-manual/release-process.rst | |||
| @@ -18,9 +18,9 @@ Following are examples of some major YP releases with their codenames | |||
| 18 | also shown. See the ":ref:`ref-manual/release-process:major release codenames`" | 18 | also shown. See the ":ref:`ref-manual/release-process:major release codenames`" |
| 19 | section for information on codenames used with major releases. | 19 | section for information on codenames used with major releases. |
| 20 | 20 | ||
| 21 | - 2.2 (Morty) | 21 | - 4.1 ("Langdale") |
| 22 | - 2.1 (Krogoth) | 22 | - 4.0 ("Kirkstone") |
| 23 | - 2.0 (Jethro) | 23 | - 3.4 ("Honister") |
| 24 | 24 | ||
| 25 | While the cadence is never perfect, this timescale facilitates | 25 | While the cadence is never perfect, this timescale facilitates |
| 26 | regular releases that have strong QA cycles while not overwhelming users | 26 | regular releases that have strong QA cycles while not overwhelming users |
| @@ -32,9 +32,9 @@ basis and are usually driven by the accumulation of enough significant | |||
| 32 | fixes or enhancements to the associated major release. Following are | 32 | fixes or enhancements to the associated major release. Following are |
| 33 | some example past point releases: | 33 | some example past point releases: |
| 34 | 34 | ||
| 35 | - 2.1.1 | 35 | - 4.1.3 |
| 36 | - 2.1.2 | 36 | - 4.0.8 |
| 37 | - 2.2.1 | 37 | - 3.4.4 |
| 38 | 38 | ||
| 39 | The point release | 39 | The point release |
| 40 | indicates a point in the major release branch where a full QA cycle and | 40 | indicates a point in the major release branch where a full QA cycle and |
| @@ -87,15 +87,51 @@ stable release. | |||
| 87 | exception to this policy occurs when there is a strong reason such as | 87 | exception to this policy occurs when there is a strong reason such as |
| 88 | the fix happens to also be the preferred upstream approach. | 88 | the fix happens to also be the preferred upstream approach. |
| 89 | 89 | ||
| 90 | Stable release branches have strong maintenance for about a year after | 90 | .. _ref-long-term-support-releases: |
| 91 | their initial release. Should significant issues be found for any | 91 | |
| 92 | release regardless of its age, fixes could be backported to older | 92 | Long Term Support Releases |
| 93 | releases. For issues that are not backported given an older release, | 93 | ========================== |
| 94 | Community LTS trees and branches allow community members to share | 94 | |
| 95 | patches for older releases. However, these types of patches do not go | 95 | While stable releases are supported for a duration of seven months, |
| 96 | through the same release process as do point releases. You can find more | 96 | some specific ones are now supported for a longer period by the Yocto |
| 97 | information about stable branch maintenance at | 97 | Project, and are called Long Term Support (:term:`LTS`) releases. |
| 98 | :yocto_wiki:`/Stable_branch_maintenance`. | 98 | |
| 99 | When significant issues are found, :term:`LTS` releases allow to publish | ||
| 100 | fixes not only for the current stable release, but also to the | ||
| 101 | :term:`LTS` releases that are still supported. Older stable releases which | ||
| 102 | have reached their End of Life (EOL) won't receive such updates. | ||
| 103 | |||
| 104 | This started with version 3.1 ("Dunfell"), released in April 2020, which | ||
| 105 | the project initially committed to supporting for two years, but this duration | ||
| 106 | was later extended to four years. Similarly, the following :term:`LTS` release, | ||
| 107 | version 4.0 ("Kirkstone"), was released two years later in May 2022 and the | ||
| 108 | project committed to supporting it for four years too. | ||
| 109 | |||
| 110 | Therefore, a new :term:`LTS` release is made every two years and is supported | ||
| 111 | for four years. This offers more stability to project users and leaves more | ||
| 112 | time to upgrade to the following :term:`LTS` release. | ||
| 113 | |||
| 114 | See :yocto_wiki:`/Stable_Release_and_LTS` for details about the management | ||
| 115 | of stable and :term:`LTS` releases. | ||
| 116 | |||
| 117 | .. image:: svg/releases.* | ||
| 118 | :width: 100% | ||
| 119 | |||
| 120 | .. note:: | ||
| 121 | |||
| 122 | In some circumstances, a layer can be created by the community in order to | ||
| 123 | add a specific feature or support a new version of some package for an :term:`LTS` | ||
| 124 | release. This is called a :term:`Mixin` layer. These are thin and specific | ||
| 125 | purpose layers which can be stacked with an :term:`LTS` release to "mix" a specific | ||
| 126 | feature into that build. These are created on an as-needed basis and | ||
| 127 | maintained by the people who need them. | ||
| 128 | |||
| 129 | Policies on testing these layers depend on how widespread their usage is and | ||
| 130 | determined on a case-by-case basis. You can find some :term:`Mixin` layers in the | ||
| 131 | :yocto_git:`meta-lts-mixins </meta-lts-mixins>` repository. While the Yocto | ||
| 132 | Project provides hosting for those repositories, it does not provides | ||
| 133 | testing on them. Other :term:`Mixin` layers may be released elsewhere by the wider | ||
| 134 | community. | ||
| 99 | 135 | ||
| 100 | Testing and Quality Assurance | 136 | Testing and Quality Assurance |
| 101 | ============================= | 137 | ============================= |
| @@ -155,14 +191,12 @@ effort has been made to automate the tests so that more people can use | |||
| 155 | them and the Yocto Project development team can run them faster and more | 191 | them and the Yocto Project development team can run them faster and more |
| 156 | efficiently. | 192 | efficiently. |
| 157 | 193 | ||
| 158 | The Yocto Project's main Autobuilder (&YOCTO_AB_URL;) | 194 | The Yocto Project's main Autobuilder (&YOCTO_AB_URL;) publicly tests each Yocto |
| 159 | publicly tests each Yocto Project release's code in the | 195 | Project release's code in the :oe_git:`openembedded-core </openembedded-core>`, |
| 160 | :term:`OpenEmbedded-Core (OE-Core)`, Poky, and BitBake repositories. The testing | 196 | :yocto_git:`poky </poky>` and :oe_git:`bitbake </bitbake>` repositories. The |
| 161 | occurs for both the current state of the "master" branch and also for | 197 | testing occurs for both the current state of the "master" branch and also for |
| 162 | submitted patches. Testing for submitted patches usually occurs in the | 198 | submitted patches. Testing for submitted patches usually occurs in the |
| 163 | "ross/mut" branch in the ``poky-contrib`` repository (i.e. the | 199 | in the "master-next" branch in the :yocto_git:`poky </poky>` repository. |
| 164 | master-under-test branch) or in the "master-next" branch in the ``poky`` | ||
| 165 | repository. | ||
| 166 | 200 | ||
| 167 | .. note:: | 201 | .. note:: |
| 168 | 202 | ||
