Skip to content

Commit 3b640aa

Browse files
committed
feature symfony#3644 made some small addition about our BC promise and semantic versioning (fabpot)
This PR was submitted for the master branch but it was merged into the 2.3 branch instead (closes symfony#3644). Discussion ---------- made some small addition about our BC promise and semantic versioning | Q | A | ------------- | --- | Doc fix? | no | New docs? | no | Applies to | all | Fixed tickets | n/a Commits ------- a300510 made some small addition about our BC promise and semantic versioning
2 parents 2d1ecd9 + 17ee9bb commit 3b640aa

File tree

1 file changed

+38
-21
lines changed

1 file changed

+38
-21
lines changed

contributing/community/releases.rst

+38-21
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,15 @@ The Release Process
44
This document explains the Symfony release process (Symfony being the code
55
hosted on the main ``symfony/symfony`` `Git repository`_).
66

7-
Symfony manages its releases through a *time-based model*; a new Symfony
8-
release comes out every *six months*: one in *May* and one in *November*.
7+
Symfony manages its releases through a *time-based model*; a new Symfony minor
8+
version comes out every *six months*: one in *May* and one in *November*.
9+
10+
.. tip::
11+
12+
The meaning of "minor" comes from the `Semantic Versioning`_ strategy.
13+
14+
Each minor version sticks to the same very well-defined process where we start
15+
with a development period, followed by a maintenance period.
916

1017
.. note::
1118

@@ -18,7 +25,7 @@ release comes out every *six months*: one in *May* and one in *November*.
1825
Development
1926
-----------
2027

21-
The six-months period is divided into two phases:
28+
The first six-month period is divided into two phases:
2229

2330
* *Development*: *Four months* to add new features and to enhance existing
2431
ones;
@@ -36,8 +43,8 @@ final release.
3643
Maintenance
3744
-----------
3845

39-
Each Symfony version is maintained for a fixed period of time, depending on
40-
the type of the release. We have two maintenance periods:
46+
Each Symfony minor version is maintained for a fixed period of time, depending
47+
on the type of the release. We have two maintenance periods:
4148

4249
* *Bug fixes and security fixes*: During this period, all issues can be fixed.
4350
The end of this period is referenced as being the *end of maintenance* of a
@@ -47,17 +54,17 @@ the type of the release. We have two maintenance periods:
4754
be fixed. The end of this period is referenced as being the *end of
4855
life* of a release.
4956

50-
Standard Releases
57+
Standard Versions
5158
~~~~~~~~~~~~~~~~~
5259

53-
A standard release is maintained for an *eight month* period for bug fixes,
54-
and for a *fourteen month* period for security issue fixes.
60+
A standard minor version is maintained for an *eight month* period for bug
61+
fixes, and for a *fourteen month* period for security issue fixes.
5562

56-
Long Term Support Releases
63+
Long Term Support Versions
5764
~~~~~~~~~~~~~~~~~~~~~~~~~~
5865

59-
Every two years, a new Long Term Support Release (aka LTS release) is
60-
published. Each LTS release is supported for a *three year* period for bug
66+
Every two years, a new Long Term Support Version (aka LTS version) is
67+
published. Each LTS version is supported for a *three year* period for bug
6168
fixes, and for a *four year* period for security issue fixes.
6269

6370
.. note::
@@ -109,17 +116,26 @@ This results in very predictable dates and maintenance periods:
109116
use the online `timeline calculator`_. You can also get all data as a JSON
110117
string via a URL like `http://symfony.com/roadmap.json?version=2.x`.
111118

119+
.. tip::
120+
121+
Whenever an important event related to Symfony versions happens (a version
122+
reaches end of maintenance or a new patch version is released for
123+
instance), you can automatically receive an email notification if you
124+
subscribed on the `roadmap notification`_ page.
125+
112126
Backward Compatibility
113127
----------------------
114128

115-
After the release of Symfony 2.3, backward compatibility will be kept at all
116-
cost. If it is not possible, the feature, the enhancement, or the bug fix will
117-
be scheduled for the next major version: Symfony 3.0.
129+
Our `Backwards Compatibility Promise`_ is very strict and allows developers to
130+
upgrade with confidence from one minor version of Symfony to the next one.
131+
132+
Whenever keeping backward compatibility is not possible, the feature, the
133+
enhancement, or the bug fix will be scheduled for the next major version.
118134

119135
.. note::
120136

121-
The work on Symfony 3.0 will start whenever enough major features breaking
122-
backward compatibility are waiting on the todo-list.
137+
The work on a new major version of Symfony starts whenever enough major
138+
features breaking backward compatibility are waiting on the todo-list.
123139

124140
Deprecations
125141
------------
@@ -154,11 +170,12 @@ for the next cycle.
154170

155171
The dual maintenance mode was adopted to make every Symfony user happy. Fast
156172
movers, who want to work with the latest and the greatest, use the standard
157-
releases: a new version is published every six months, and there is a two
158-
months period to upgrade. Companies wanting more stability use the LTS
159-
releases: a new version is published every two years and there is a year to
160-
upgrade.
173+
version: a new version is published every six months, and there is a two months
174+
period to upgrade. Companies wanting more stability use the LTS versions: a new
175+
version is published every two years and there is a year to upgrade.
161176

177+
.. _Semantic Versioning: http://semver.org/
162178
.. _Git repository: https://github.com/symfony/symfony
163179
.. _SensioLabs: http://sensiolabs.com/
164-
.. _`timeline calculator`: http://symfony.com/roadmap
180+
.. _roadmap notification: http://symfony.com/roadmap
181+
.. _timeline calculator: http://symfony.com/roadmap

0 commit comments

Comments
 (0)