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 3.6.0`_ | 2024-02-23     | 2024-11-29    |
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   eol_releases
85   release-notes-2.7
86   release-notes-3.[6-7]
87   release-notes-4.0
88
89Migration Guides
90****************
91
92Zephyr provides migration guides for all major releases, in order to assist
93users transition from the previous release.
94
95As mentioned in the previous section, changes in the code that require an action
96(i.e. a modification of the source code or configuration files) on the part of
97the user in order to keep the existing behavior of their application belong in
98in the migration guide. This includes:
99
100- Breaking API changes
101- Deprecations
102- Devicetree or Kconfig changes that affect the user (changes to defaults,
103  renames, etc)
104- Treewide changes that have an effect (e.g. changing the include path or
105  defaulting to a different C standard library)
106- Anything else that can affect the compilation or runtime behavior of an
107  existing application
108
109Each entry in the migration guide must include a brief explanation of the change
110as well as refer to the Pull Request that introduced it, in order for the user
111to be able to understand the context of the change.
112
113.. toctree::
114   :maxdepth: 1
115   :glob:
116   :reversed:
117
118   migration-guide-*
119
120.. _`GitHub repository`: https://github.com/zephyrproject-rtos/zephyr
121.. _`GitHub tagged releases`: https://github.com/zephyrproject-rtos/zephyr/tags
122.. _`Zephyr 2.7.6`: https://docs.zephyrproject.org/2.7.6/
123.. _`Zephyr 3.6.0`: https://docs.zephyrproject.org/3.6.0/
124.. _`Zephyr 3.7.0`: https://docs.zephyrproject.org/3.7.0/
125