@@ -24,23 +24,21 @@ There are a couple of steps to upgrading a major version:
24
24
----------------------------------
25
25
26
26
During the lifecycle of a major release, new features are added and method
27
- signatures and public API usages are changed. However, minor versions should
28
- not contain any backwards compatibility changes. It is made sure that there is
29
- a so-called *backwards compatibility layer * (or BC layer). This means that the
30
- old API will still work, while the new feature is used internally. This BC
31
- layer is then marked as *deprecated *, indicating that it will be
32
- removed/changed in the future.
33
-
34
- The major version is the only time all existing BC layers are removed. However,
35
- if you make sure you've fixed all deprecated usages in the last version of the
36
- previous major version, you should be able to upgrade to the new major version
37
- without problems. To help you with this, the last minor releases will trigger
38
- deprecated notices. For example, 2.7 and 2.8 trigger deprecated notices and if
39
- you do not have any notice while using 2.8, you can savely upgrade to 3.0.
40
-
41
- When visiting your application in the
42
- :doc: `dev environment </cookbook/configuration/environments >` in your browser,
43
- these notices are shown in the web dev toolbar:
27
+ signatures and public API usages are changed. However,
28
+ :doc: `minor versions </cookbook/upgrade/minor_version ` should not contain any
29
+ backwards compatibility changes. To accomplish this, the "old" (e.g. functions,
30
+ classes, etc) code still works, but is marked as *deprecated *, indicating that
31
+ it will be removed/changed in the future and that you should stop using it.
32
+
33
+ When the major version is released (e.g. 3.0.0), all deprecated features and
34
+ functionality are removed. So, as long as you've updated your code to stop
35
+ using these deprecated features in the last version before the major (e.g.
36
+ 2.8.*), you should be able to upgrade without a problem.
37
+
38
+ To help you with this, the last minor releases will trigger deprecated notices.
39
+ For example, 2.7 and 2.8 trigger deprecated notices. When visiting your
40
+ application in the :doc: `dev environment </cookbook/configuration/environments >`
41
+ in your browser, these notices are shown in the web dev toolbar:
44
42
45
43
.. image :: /images/cookbook/deprecations-in-profiler.png
46
44
@@ -107,7 +105,7 @@ Next, use Composer to download new versions of the libraries:
107
105
3) Update your Code to Work with the New Version
108
106
------------------------------------------------
109
107
110
- There is a high chance that you're done now! However, the next major version
108
+ There is a good chance that you're done now! However, the next major version
111
109
*may * also contain new BC breaks as a BC layer is not always a possibility.
112
110
Make sure you read the ``UPGRADE-X.0.md `` (where X is the new major version)
113
111
included in the Symfony repository for any BC break that you need to be aware
0 commit comments