1.. _zephyr_release_notes:
2
3Releases
4########
5
6Zephyr project is provided as source code and build scripts for different target
7architectures and configurations, and not as a binary image. Updated versions of
8the Zephyr project are released approximately every four months.
9
10All Zephyr project source code is maintained in a `GitHub repository`_. In order
11to use a released version of the Zephyr project, it is recommended that you use
12:ref:`west` to :ref:`get_the_code` of the release you are interested in.
13
14The technical documentation for current and past releases is available at
15https://docs.zephyrproject.org/ (use the version selector to select your release
16of interest).
17
18.. _zephyr_release_cycle:
19
20Release Life Cycle and Maintenance
21**********************************
22
23Periodic Releases
24=================
25
26The Zephyr project provides periodic releases every 4 months leading to the
27long term support releases approximately every 2 years. Periodic and non-LTS
28releases are maintained with updates, bug fixes and security related updates
29for at least two cycles, meaning that the project supports the most recent two
30releases in addition to the most recent LTS.
31
32Long Term Support and Maintenance
33=================================
34
35A Zephyr :ref:`Long Term Support (LTS) <release_process_lts>` release is
36published every 2 years and is branched and maintained independently from the
37main tree for at least 2.5 years after it was released.
38
39Support and maintenance for an LTS release stops at least half a year
40after the following LTS release is published.
41
42Security Fixes
43==============
44
45Each security issue fixed within Zephyr is backported or submitted to the
46following releases:
47
48- Currently supported Long Term Support (LTS) release.
49
50- The most recent two releases.
51
52For more information, see  :ref:`Security Vulnerability Reporting <reporting>`.
53
54
55Supported Releases
56******************
57
58+-----------------+----------------+---------------+
59| Release         | Release date   | EOL           |
60+=================+================+===============+
61| `Zephyr 2.7.6`_ | 2024-03-01     | 2025-01-26    |
62+-----------------+----------------+---------------+
63| `Zephyr 3.7.0`_ | 2024-07-26     | 2027-01-26    |
64+-----------------+----------------+---------------+
65| `Zephyr 4.0.0`_ | 2024-11-15     | 2025-07-18    |
66+-----------------+----------------+---------------+
67
68As of 2022-01-01, LTS1 (1.14.x) is not supported and has reached end of life (EOL).
69
70Release Notes
71*************
72
73Release notes contain a list of changes that have been made to the different
74areas of the project during the development cycle of the release.
75Changes that require the user to modify their own application to support the new
76release may be mentioned in the release notes, but the details regarding *what*
77needs to be changed are to be detailed in the release's migration guide.
78
79.. toctree::
80   :maxdepth: 1
81   :glob:
82   :reversed:
83
84   release-notes-2.7
85   release-notes-3.7
86   release-notes-4.[0-1]
87
88Migration Guides
89****************
90
91Zephyr provides migration guides for all major releases, in order to assist
92users transition from the previous release.
93
94As mentioned in the previous section, changes in the code that require an action
95(i.e. a modification of the source code or configuration files) on the part of
96the user in order to keep the existing behavior of their application belong in
97in the migration guide. This includes:
98
99- Breaking API changes
100- Deprecations
101- Devicetree or Kconfig changes that affect the user (changes to defaults,
102  renames, etc)
103- Treewide changes that have an effect (e.g. changing the include path or
104  defaulting to a different C standard library)
105- Anything else that can affect the compilation or runtime behavior of an
106  existing application
107
108Each entry in the migration guide must include a brief explanation of the change
109as well as refer to the Pull Request that introduced it, in order for the user
110to be able to understand the context of the change.
111
112.. toctree::
113   :maxdepth: 1
114   :glob:
115   :reversed:
116
117   migration-guide-3.[6-7]
118   migration-guide-4.[0-1]
119
120End-of-life Releases
121********************
122
123.. toctree::
124   :hidden:
125   :maxdepth: 1
126
127   eol_releases
128
129Release notes and migration guides for end-of-life releases of Zephyr RTOS can be accessed
130:ref:`here <eol_releases>`.
131
132.. _`GitHub repository`: https://github.com/zephyrproject-rtos/zephyr
133.. _`GitHub tagged releases`: https://github.com/zephyrproject-rtos/zephyr/tags
134.. _`Zephyr 2.7.6`: https://docs.zephyrproject.org/2.7.6/
135.. _`Zephyr 3.7.0`: https://docs.zephyrproject.org/3.7.0/
136.. _`Zephyr 4.0.0`: https://docs.zephyrproject.org/4.0.0/
137