Skip to content

Commit c4e4dc8

Browse files
committed
Merge remote-tracking branch 'origin/3.3' into 3.3
* origin/3.3: [#8195] fix requirement checker binary Simplified the requirements article [#6030] Simplifying and showing code Clearify behaviour of Blank and NotBlank validator [#5838] Tweaking comment - the phpdoc policy is not concrete Update standards to match actual practices Updated the requirements article for Smyfony 3.3 Updated the Requirements article for Symfony 3.2 Updated the Requirements article for Symfony 2.8 removed Charles Updated the Core Team information added CVE 2017-11365 added URL where to ask for a CVE identifier add missing choices_as_values options Update usage.rst
2 parents 48eb46a + b7299a6 commit c4e4dc8

File tree

9 files changed

+81
-69
lines changed

9 files changed

+81
-69
lines changed

contributing/code/core_team.rst

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,6 @@ Active Core Members
4949

5050
* **Mergers** (``@symfony/mergers`` on GitHub):
5151

52-
* **Bernhard Schussek** (`webmozart`_) can merge into the Form_,
53-
Validator_, Icu_, Intl_, Locale_, OptionsResolver_ and PropertyAccess_
54-
components;
55-
5652
* **Tobias Schultze** (`Tobion`_) can merge into the Routing_,
5753
OptionsResolver_ and PropertyAccess_ components;
5854

@@ -69,23 +65,37 @@ Active Core Members
6965
* **Kévin Dunglas** (`dunglas`_) can merge into the PropertyInfo_ and the Serializer_
7066
component;
7167

72-
* **Abdellatif AitBoudad** (`aitboudad`_) can merge into the Translation_
73-
component;
74-
75-
* **Jakub Zalas** (`jakzal`_) can merge into the DomCrawler_ component;
68+
* **Jakub Zalas** (`jakzal`_) can merge into the DomCrawler_ and Intl_
69+
components;
7670

7771
* **Christian Flothmann** (`xabbuh`_) can merge into the Yaml_ component;
7872

79-
* **Javier Eguiluz** (`javiereguiluz`_) can merge into the WebProfilerBundle_
80-
bundle.
73+
* **Javier Eguiluz** (`javiereguiluz`_) can merge into the WebProfilerBundle_;
74+
75+
* **Grégoire Pineau** (`lyrixx`_) can merge into the Workflow_ component;
76+
77+
* **Ryan Weaver** (`weaverryan`_) can merge into the Security_ component and
78+
the SecurityBundle_;
8179

82-
* **Grégoire Pineau** (`lyrixx`_) can merge into the Workflow_ component.
80+
* **Robin Chalas** (`chalasr`_) can merge into the Console_ and Security_
81+
components and the SecurityBundle_;
82+
83+
* **Maxime Steinhausser** (`ogizanagi`_) can merge into Config_, Console_,
84+
Form_, Serializer_, DependencyInjection_, and HttpKernel_ components.
8385

8486
* **Deciders** (``@symfony/deciders`` on GitHub):
8587

8688
* **Jordi Boggiano** (`seldaek`_);
87-
* **Lukas Kahwe Smith** (`lsmith77`_);
88-
* **Ryan Weaver** (`weaverryan`_).
89+
* **Lukas Kahwe Smith** (`lsmith77`_).
90+
91+
Former Core Members
92+
~~~~~~~~~~~~~~~~~~~
93+
94+
They are no longer part of the Core Team, but we are very grateful for all their
95+
Symfony contributions:
96+
97+
* **Bernhard Schussek** (`webmozart`_);
98+
* **Abdellatif AitBoudad** (`aitboudad`_).
8999

90100
Core Membership Application
91101
~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -158,7 +168,6 @@ Symfony Core Rules and Protocol Amendments
158168
The rules described in this document may be amended at anytime at the
159169
discretion of the **Project Leader**.
160170

161-
162171
.. [1] Minor changes comprise typos, DocBlock fixes, code standards
163172
violations, and minor CSS, JavaScript and HTML modifications.
164173
@@ -178,6 +187,7 @@ discretion of the **Project Leader**.
178187
.. _HttpKernel: https://github.com/symfony/http-kernel
179188
.. _Icu: https://github.com/symfony/icu
180189
.. _Intl: https://github.com/symfony/intl
190+
.. _LDAP: https://github.com/symfony/ldap
181191
.. _Locale: https://github.com/symfony/locale
182192
.. _MonologBridge: https://github.com/symfony/monolog-bridge
183193
.. _OptionsResolver: https://github.com/symfony/options-resolver
@@ -187,6 +197,8 @@ discretion of the **Project Leader**.
187197
.. _Routing: https://github.com/symfony/routing
188198
.. _Serializer: https://github.com/symfony/serializer
189199
.. _Translation: https://github.com/symfony/translation
200+
.. _Security: https://github.com/symfony/security
201+
.. _SecurityBundle: https://github.com/symfony/security-bundle
190202
.. _Stopwatch: https://github.com/symfony/stopwatch
191203
.. _TwigBridge: https://github.com/symfony/twig-bridge
192204
.. _Validator: https://github.com/symfony/validator
@@ -209,3 +221,6 @@ discretion of the **Project Leader**.
209221
.. _`xabbuh`: https://github.com/xabbuh/
210222
.. _`javiereguiluz`: https://github.com/javiereguiluz/
211223
.. _`lyrixx`: https://github.com/lyrixx/
224+
.. _`chalasr`: https://github.com/chalasr/
225+
.. _`ogizanagi`: https://github.com/ogizanagi/
226+
.. _`csarrazi`: https://github.com/csarrazi/

contributing/code/security.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ confirmed, the core-team works on a solution following these steps:
2121

2222
#. Send an acknowledgement to the reporter;
2323
#. Work on a patch;
24-
#. Get a CVE identifier from mitre.org;
24+
#. Get a CVE identifier from `mitre.org`_;
2525
#. Write a security announcement for the official Symfony `blog`_ about the
2626
vulnerability. This post should contain the following information:
2727

@@ -103,6 +103,7 @@ Security Advisories
103103
This section indexes security vulnerabilities that were fixed in Symfony
104104
releases, starting from Symfony 1.0.0:
105105

106+
* Jul 17, 2017, `CVE-2017-11365: Empty passwords validation issue <https://symfony.com/blog/cve-2017-11365-empty-passwords-validation-issue>`_ (2.7.30, 2.7.31, 2.8.23, 2.8.24, 3.2.10, 3.2.11, 3.3.3, and 3.3.4)
106107
* May 9, 2016: `CVE-2016-2403: Unauthorized access on a misconfigured Ldap server when using an empty password <https://symfony.com/blog/cve-2016-2403-unauthorized-access-on-a-misconfigured-ldap-server-when-using-an-empty-password>`_ (2.8.0-2.8.5, 3.0.0-3.0.5)
107108
* May 9, 2016: `CVE-2016-4423: Large username storage in session <https://symfony.com/blog/cve-2016-4423-large-username-storage-in-session>`_ (2.3.0-2.3.40, 2.7.0-2.7.12, 2.8.0-2.8.5, 3.0.0-3.0.5)
108109
* January 18, 2016: `CVE-2016-1902: SecureRandom's fallback not secure when OpenSSL fails <https://symfony.com/blog/cve-2016-1902-securerandom-s-fallback-not-secure-when-openssl-fails>`_ (2.3.0-2.3.36, 2.6.0-2.6.12, 2.7.0-2.7.8)
@@ -142,3 +143,4 @@ releases, starting from Symfony 1.0.0:
142143
.. _blog: https://symfony.com/blog/
143144
.. _Security Advisories: https://symfony.com/blog/category/security-advisories
144145
.. _`security advisories database`: https://github.com/FriendsOfPHP/security-advisories
146+
.. _`mitre.org`: https://cveform.mitre.org/

contributing/code/standards.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -226,8 +226,8 @@ Service Naming Conventions
226226
Documentation
227227
-------------
228228

229-
* Add PHPDoc blocks for all classes, methods, and functions, except when the
230-
comments are trivial (e.g. basic getter and setter methods);
229+
* Add PHPDoc blocks for all classes, methods, and functions (though you may
230+
be asked to remove PHPDoc that do not add value);
231231

232232
* Group annotations together so that annotations of the same type immediately
233233
follow each other, and annotations of a different type are separated by a

form/create_custom_field_type.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ for form fields, which is ``<BundleName>\Form\Type``. Make sure the field extend
3636
'Standard Shipping' => 'standard',
3737
'Expedited Shipping' => 'expedited',
3838
'Priority Shipping' => 'priority',
39-
)
39+
),
40+
'choices_as_values' => true,
4041
));
4142
}
4243

form/dynamic_form_modification.rst

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -409,9 +409,10 @@ sport like this::
409409
$positions = null === $sport ? array() : $sport->getAvailablePositions();
410410

411411
$form->add('position', EntityType::class, array(
412-
'class' => 'AppBundle:Position',
412+
'class' => 'AppBundle:Position',
413413
'placeholder' => '',
414-
'choices' => $positions,
414+
'choices' => $positions,
415+
'choices_as_values' => true,
415416
));
416417
}
417418
);
@@ -465,9 +466,10 @@ The type would now look like::
465466
$positions = null === $sport ? array() : $sport->getAvailablePositions();
466467

467468
$form->add('position', EntityType::class, array(
468-
'class' => 'AppBundle:Position',
469+
'class' => 'AppBundle:Position',
469470
'placeholder' => '',
470-
'choices' => $positions,
471+
'choices' => $positions,
472+
'choices_as_values' => true,
471473
));
472474
};
473475

reference/constraints/Blank.rst

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,18 @@
11
Blank
22
=====
33

4-
Validates that a value is blank, defined as equal to a blank string or equal
5-
to ``null``. To force that a value strictly be equal to ``null``, see the
6-
:doc:`/reference/constraints/IsNull` constraint. To force that a value is
7-
*not* blank, see :doc:`/reference/constraints/NotBlank`.
4+
Validates that a value is blank - meaning equal to an empty string or ``null``::
5+
6+
if ('' !== $value && null !== $value) {
7+
// validation will fail
8+
}
9+
10+
To force that a value strictly be equal to ``null``, see the
11+
:doc:`/reference/constraints/IsNull` constraint.
12+
13+
14+
To force that a value is *not* blank, see :doc:`/reference/constraints/NotBlank`.
15+
But be careful as ``NotBlank`` is *not* strictly the opposite of ``Blank``.
816

917
+----------------+---------------------------------------------------------------------+
1018
| Applies to | :ref:`property or method <validation-property-target>` |

reference/constraints/NotBlank.rst

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
11
NotBlank
22
========
33

4-
Validates that a value is not blank, defined as not strictly ``false``,
5-
not equal to a blank string and also not equal to ``null``. To force that
6-
a value is simply not equal to ``null``, see the
4+
Validates that a value is not blank - meaning not equal to a blank string,
5+
a blank array or ``null``::
6+
7+
if (false === $value || (empty($value) && '0' != $value)) {
8+
// validation will fail
9+
}
10+
11+
To force that a value is simply not equal to ``null``, see the
712
:doc:`/reference/constraints/NotNull` constraint.
813

914
+----------------+------------------------------------------------------------------------+

reference/requirements.rst

Lines changed: 18 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -6,50 +6,29 @@
66
Requirements for Running Symfony
77
================================
88

9-
To run Symfony, your system needs to adhere to a list of requirements. You
10-
can easily see if your system passes all requirements by running the
11-
``web/config.php`` in your Symfony distribution. Since the CLI often uses
12-
a different ``php.ini`` configuration file, it's also a good idea to check
13-
your requirements from the command line via:
9+
Symfony 3.3 requires **PHP 5.5.9** or higher to run, in addition to other minor
10+
requirements. To make things simple, Symfony provides a tool to quickly check if
11+
your system meets all those requirements.
1412

15-
.. code-block:: terminal
16-
17-
$ php bin/symfony_requirements
18-
19-
Below is the list of required and optional requirements.
13+
Beware that PHP can define a different configuration for the command console and
14+
the web server, so you need to check requirements in both environments.
2015

21-
Required
22-
--------
16+
Checking Requirements for the Web Server
17+
----------------------------------------
2318

24-
* PHP needs to be a minimum version of PHP 5.5.9
25-
* `JSON extension`_ needs to be enabled
26-
* `ctype extension`_ needs to be enabled
27-
* Your ``php.ini`` needs to have the ``date.timezone`` setting
19+
Symfony includes a ``config.php`` file in the ``web/`` directory of your project.
20+
Open that file with your browser to check the requirements.
2821

29-
Optional
30-
--------
22+
Once you've fixed all the reported issues, delete the ``web/config.php`` file
23+
to avoid leaking internal information about your application to visitors.
3124

32-
* You need to have the PHP-XML module installed
33-
* You need to have at least version 2.6.21 of libxml
34-
* PHP tokenizer needs to be enabled
35-
* mbstring functions need to be enabled
36-
* iconv needs to be enabled
37-
* POSIX needs to be enabled (only on \*nix)
38-
* Intl needs to be installed with ICU 4+
39-
* APC 3.0.17+ (or another opcode cache needs to be installed)
40-
* ``php.ini`` recommended settings
25+
Checking Requirements for the Command Console
26+
---------------------------------------------
4127

42-
* ``short_open_tag = Off``
43-
* ``magic_quotes_gpc = Off``
44-
* ``register_globals = Off``
45-
* ``session.auto_start = Off``
28+
Open your console or terminal, enter in your project directory, execute this
29+
command and fix the reported issues:
4630

47-
Doctrine
48-
--------
49-
50-
If you want to use Doctrine, you will need to have PDO installed. Additionally,
51-
you need to have the PDO driver installed for the database server you want
52-
to use.
31+
.. code-block:: terminal
5332
54-
.. _`JSON extension`: https://php.net/manual/book.json.php
55-
.. _`ctype extension`: https://php.net/manual/book.ctype.php
33+
$ cd my-project/
34+
$ php bin/symfony_requirements

workflow/usage.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ order:
229229
* ``workflow.[workflow name].enter``
230230
* ``workflow.[workflow name].enter.[place name]``
231231

232-
``work.flow.entered``
232+
``workflow.entered``
233233

234234
Similar to ``workflow.enter``, except the marking store is updated before this
235235
event (making it a good place to flush data in Doctrine).

0 commit comments

Comments
 (0)