@@ -2,10 +2,10 @@ Our Backwards Compatibility Promise
2
2
===================================
3
3
4
4
If you are using Symfony, we promise you backwards compatibility (BC) for all
5
- major releases (2.x, 3.x, .. .). Ensuring smooth upgrades of your projects is our
5
+ minor releases (2.5, 2.6, etc .). Ensuring smooth upgrades of your projects is our
6
6
first priority. However, backwards compatibility comes in many different flavors.
7
7
8
- .. note ::
8
+ .. caution ::
9
9
10
10
This promise was introduced with Symfony 2.3 and does not apply to previous
11
11
versions of Symfony.
@@ -29,10 +29,10 @@ All interfaces shipped with Symfony can be used in type hints. You can also call
29
29
any of the methods that they declare. We guarantee that we won't break code that
30
30
sticks to these rules.
31
31
32
- .. note ::
32
+ .. caution ::
33
33
34
34
The exception to this rule are interfaces tagged with ``@internal ``. Such
35
- interfaces should never be used or implemented.
35
+ interfaces should * never * be used or implemented.
36
36
37
37
If you want to implement an interface, you should first make sure that the
38
38
interface is an API interface. You can recognize API interfaces by the ``@api ``
@@ -47,6 +47,8 @@ tag in their source code::
47
47
*/
48
48
interface HttpKernelInterface
49
49
{
50
+ // ...
51
+ }
50
52
51
53
If you implement an API interface, we promise that we won't ever break your
52
54
code. Regular interfaces, by contrast, should never be implemented, because if
@@ -86,12 +88,12 @@ Using Our Classes
86
88
All classes provided by Symfony may be instantiated and accessed through their
87
89
public methods and properties.
88
90
89
- .. note ::
91
+ .. caution ::
90
92
91
93
Classes, properties and methods that bear the tag ``@internal `` as well as
92
94
the classes located in the various ``*\\Tests\\ `` namespaces are an
93
- exception to this rule. They are meant for internal use only and should not
94
- be accessed by your own code.
95
+ exception to this rule. They are meant for internal use only and should
96
+ * never * be accessed by your own code.
95
97
96
98
Just like with interfaces, we also distinguish between regular and API classes.
97
99
Like API interfaces, API classes are marked with an ``@api `` tag::
@@ -105,6 +107,8 @@ Like API interfaces, API classes are marked with an ``@api`` tag::
105
107
*/
106
108
class Request
107
109
{
110
+ // ...
111
+ }
108
112
109
113
The difference between regular and API classes is that we guarantee full
110
114
backwards compatibility if you extend an API class and override its methods. We
@@ -304,13 +308,8 @@ Change return type Yes [2]_ [5]_ No
304
308
previously generated a fatal error.
305
309
306
310
.. _scalar type : http://php.net/manual/en/function.is-scalar.php
307
-
308
311
.. _boolean values : http://php.net/manual/en/function.boolval.php
309
-
310
312
.. _string values : http://www.php.net/manual/en/function.strval.php
311
-
312
313
.. _integer values : http://www.php.net/manual/en/function.intval.php
313
-
314
314
.. _float values : http://www.php.net/manual/en/function.floatval.php
315
-
316
315
.. _new ticket on GitHub : https://github.com/symfony/symfony/issues/new
0 commit comments