Commit Graph

20002 Commits

Author SHA1 Message Date
Nicolas Grekas
fe41155ea1 [Process] remove false-positive BC breaking exception on Windows 2017-12-11 21:29:48 +01:00
Fabien Potencier
5b66c269d2 bug #25381 [DI] Add context to service-not-found exceptions thrown by service locators (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Add context to service-not-found exceptions thrown by service locators

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes (DX)
| New feature?  | yes (...)
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25342, #25196
| License       | MIT
| Doc PR        | -

Here hopefully is the fully-context aware message you're looking for @weaverryan @curry684.

![image](https://user-images.githubusercontent.com/243674/33726013-1db38a34-db74-11e7-91dd-ca9d53e58891.png)

Commits
-------

9512f268f4 [DI] Add context to service-not-found exceptions thrown by service locators
2017-12-11 12:28:19 -08:00
Fabien Potencier
4b95961a58 minor #24599 Tweaking class not found autowiring error (weaverryan)
This PR was squashed before being merged into the 3.3 branch (closes #24599).

Discussion
----------

Tweaking class not found autowiring error

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        | n/a

A trainee in my workshop today hit this error, and it struck me as not as clear as it could be - it's really a "Class Not Found" error.

Commits
-------

48832e640a Tweaking class not found autowiring error
2017-12-11 12:15:53 -08:00
Ryan Weaver
48832e640a Tweaking class not found autowiring error 2017-12-11 12:15:52 -08:00
Fabien Potencier
8d0b7528bc [LDAP] added missing dots at the end of some exception messages. 2017-12-11 12:12:30 -08:00
Paweł Tomulik
089981e40f fixed #25440 2017-12-11 18:58:44 +01:00
Christian Flothmann
eb073fa349 empty lines don't count for indent detection 2017-12-11 16:47:32 +01:00
Robin Chalas
8be950f3a4 [Lock] Fix incorrect phpdoc 2017-12-11 10:12:53 +01:00
Robin Chalas
d21aa19e4d minor #25421 grammar typo in docs (michaelKaefer)
This PR was merged into the 4.1-dev branch.

Discussion
----------

grammar typo in docs

| Q             | A
| ------------- | ---
| Branch?       | master for features / 2.7 up to 4.0 for bug fixes <!-- see below -->
| Bug fix?      | yes/no
| New feature?  | yes/no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | yes/no
| Deprecations? | yes/no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes/no
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

<!--
- Bug fixes must be submitted against the lowest branch where they apply
  (lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against the master branch.
- Replace this comment by a description of what your PR is solving.
-->

Commits
-------

d53c889 grammar typo in docs
2017-12-11 09:45:16 +01:00
Michael Babker
95c1fc82bd Extend Argon2i support check to account for sodium_compat 2017-12-10 11:56:42 -06:00
Nicolas Grekas
ef632ec721 [Process] Dont rely on putenv(), it fails on ZTS PHP 2017-12-10 11:08:10 +01:00
Nicolas Grekas
81248bc855 [HttpKernel] detect deprecations thrown by container initialization during tests 2017-12-10 09:54:36 +01:00
Nicolas Grekas
e85b371d72 [HttpKernel] Fix logging of post-terminate errors/exceptions 2017-12-09 20:51:32 +01:00
Nicolas Grekas
9512f268f4 [DI] Add context to service-not-found exceptions thrown by service locators 2017-12-09 20:32:41 +01:00
Nicolas Grekas
27dc9a6c7c [Debug] Fix catching fatal errors in case of nested error handlers 2017-12-09 18:06:03 +01:00
Nicolas Grekas
17b5a2ca65 Merge branch '3.3' into 3.4
* 3.3:
  [Cache] fix doctrine deprecation
  fix cs
2017-12-08 17:11:27 +01:00
Nicolas Grekas
50644d0d58 [Cache] fix doctrine deprecation 2017-12-08 17:10:40 +01:00
Nicolas Grekas
41e69782dc fix cs 2017-12-08 16:50:58 +01:00
Nicolas Grekas
8621bd2569 minor #25402 Remove some unused variables and properties (tgalopin)
This PR was merged into the 3.4 branch.

Discussion
----------

Remove some unused variables and properties

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT

Analyzing symfony/symfony using https://insight.sensiolabs.com, I found several chunks of dead code. This PR removes them in the 3.4 branch.

Commits
-------

ec92d9b Remove some unused variables and properties
2017-12-08 16:26:26 +01:00
Nicolas Grekas
e9f7461ba9 Merge branch '3.3' into 3.4
* 3.3: (21 commits)
  [appveyor] disable memory limit on composer up
  Remove some unused variables and properties
  Remove some unused variables, properties and methods
  fix some edge cases with indented blocks
  [ExpressionLanguage] Fix parse error on 5.3
  [HttpKernel] remove noisy frame in controller stack traces
  [DI] Fix circular-aliases message
  [ExpressionLanguage] throw an SyntaxError instead of letting a undefined index notice
  Prevent a loop in aliases within the `findDefinition` method
  Fix php doc in Table class
  bumped Symfony version to 3.3.15
  updated VERSION for 3.3.14
  updated CHANGELOG for 3.3.14
  bumped Symfony version to 2.8.33
  updated VERSION for 2.8.32
  updated CHANGELOG for 2.8.32
  bumped Symfony version to 2.7.40
  updated VERSION for 2.7.39
  update CONTRIBUTORS for 2.7.39
  updated CHANGELOG for 2.7.39
  ...
2017-12-08 16:24:53 +01:00
Titouan Galopin
ec92d9b12e Remove some unused variables and properties 2017-12-08 16:14:47 +01:00
Nicolas Grekas
2f0e7863c2 bug #25389 [Yaml] fix some edge cases with indented blocks (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] fix some edge cases with indented blocks

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25329, #25341
| License       | MIT
| Doc PR        |

Now that comment-like lines are no longer ignored when subparsers are
created, we need to ignore them in some functions (e.g. when detecting
the indentation depth of the next block).

Commits
-------

b201c22 fix some edge cases with indented blocks
2017-12-08 16:12:16 +01:00
Nicolas Grekas
a3b480f230 bug #25396 [Form] Fix debug:form command definition (yceruto)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form] Fix debug:form command definition

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Sadly these changes were forgotten in https://github.com/symfony/symfony/pull/25011 and the `debug:form` command does not work properly right now :(

Commits
-------

97fdf31 Fix debug:form definition
2017-12-08 15:37:50 +01:00
Nicolas Grekas
344d93501e Merge branch '2.8' into 3.3
* 2.8:
  Remove some unused variables, properties and methods
  [ExpressionLanguage] Fix parse error on 5.3
  [HttpKernel] remove noisy frame in controller stack traces
  [ExpressionLanguage] throw an SyntaxError instead of letting a undefined index notice
  Fix php doc in Table class
  bumped Symfony version to 2.8.33
  updated VERSION for 2.8.32
  updated CHANGELOG for 2.8.32
  bumped Symfony version to 2.7.40
  updated VERSION for 2.7.39
  update CONTRIBUTORS for 2.7.39
  updated CHANGELOG for 2.7.39
2017-12-08 15:18:43 +01:00
Pablo Schläpfer
a4db20fbfd [HttpFoundation] don't prefix cookies with "Set-Cookie:"
See symfony/symfony#25393
2017-12-08 14:55:06 +01:00
Titouan Galopin
8bc2fbb934 Remove some unused variables and properties 2017-12-08 14:40:37 +01:00
Yonel Ceruto
97fdf31e09 Fix debug:form definition 2017-12-08 07:45:03 -05:00
Nicolas Grekas
af81bb5e24 Merge branch '2.7' into 2.8
* 2.7:
  Remove some unused variables, properties and methods
  [ExpressionLanguage] Fix parse error on 5.3
  [HttpKernel] remove noisy frame in controller stack traces
  [ExpressionLanguage] throw an SyntaxError instead of letting a undefined index notice
  Fix php doc in Table class
  bumped Symfony version to 2.7.40
  updated VERSION for 2.7.39
  update CONTRIBUTORS for 2.7.39
  updated CHANGELOG for 2.7.39
2017-12-08 13:32:59 +01:00
Titouan Galopin
30e227392a Remove some unused variables, properties and methods 2017-12-08 13:09:58 +01:00
Antal Áron
138cd09948 [VarDumper] Fixed file links leave blank pages when ide is configured 2017-12-08 12:46:23 +01:00
Christian Flothmann
b201c22d44 fix some edge cases with indented blocks
Now that comment-like lines are no longer ignored when subparsers are
created, we need to ignore them in some functions (e.g. when detecting
the indentation depth of the next block).
2017-12-08 11:15:25 +01:00
Nicolas Grekas
5cb35fe959 minor #25382 [DI] Fix circular-aliases message (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix circular-aliases message

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      |
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

The missing bits in #25364

Commits
-------

f1a7b07 [DI] Fix circular-aliases message
2017-12-08 10:56:57 +01:00
Fabien Potencier
ecf54d5aa0 bug #25354 [DI] Fix non-string class handling in PhpDumper (nicolas-grekas, sroze)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Fix non-string class handling in PhpDumper

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25353
| License       | MIT
| Doc PR        | -

Commits
-------

28f00866b1 Ensure that inlined services with parameterized class name can be dumped
730b156f35 [DI] Fix non-string class handling in PhpDumper
2017-12-07 18:43:43 -08:00
Fabien Potencier
6129ae221e minor #25383 [DI] Force root-namespace for function calls in the dumper container (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Force root-namespace for function calls in the dumper container

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Was not needed before 3.4, but now that the dumped container is namespaced, it is required.

Commits
-------

f87380c22a [DI] Force root-namespace for function calls in the dumper container
2017-12-07 18:41:42 -08:00
Fabien Potencier
87c5c2c06d minor #25384 [HttpKernel] remove noisy frame in controller stack traces (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[HttpKernel] remove noisy frame in controller stack traces

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

520cc97e18 [HttpKernel] remove noisy frame in controller stack traces
2017-12-07 18:40:29 -08:00
Fabien Potencier
d7cb006c11 bug #25340 [Serializer] Unset attributes when creating child context (dunglas)
This PR was merged into the 3.3 branch.

Discussion
----------

[Serializer] Unset attributes when creating child context

 | Q             | A
 | ------------- | ---
 | Branch?       | 3.3
 | Bug fix?      | yes
 | New feature?  | no
 | BC breaks?    | no
 | Deprecations? | no
 | Tests pass?   | yes
 | Fixed tickets | n/a
 | License       | MIT
 | Doc PR        | n/a

In some cases, the `attributes` key isn't overrode when creating the context passed to nested normalizers.
 It's definitely a bug, but an attacker cannot access to non public data (ignored attributes are checked before the `attributes` key). However some data that must be public may be missing as highlighted by the test.

I've introduced the initial bug here: https://github.com/symfony/symfony/pull/18834

Commits
-------

4ff9d99f23 [Serializer] Unset attributes when creating child context
2017-12-07 11:55:50 -08:00
Nicolas Grekas
2249f43c02 [ExpressionLanguage] Fix parse error on 5.3 2017-12-07 20:30:27 +01:00
Nicolas Grekas
520cc97e18 [HttpKernel] remove noisy frame in controller stack traces 2017-12-07 19:55:09 +01:00
Fabien Potencier
05ffb6f726 bug #25325 [Yaml] do not evaluate PHP constant names (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Yaml] do not evaluate PHP constant names

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25307
| License       | MIT
| Doc PR        |

PHP constant identifiers must be strings anyway. Thus, we only need to
parse quoted strings, but do not have to evaluate the data types.

Commits
-------

956287be72 do not evaluate PHP constant names
2017-12-07 10:43:53 -08:00
Fabien Potencier
5d7576cf84 minor #25299 [Serializer] improved CsvEncoder::decode performance (Roman Orlov)
This PR was merged into the 3.4 branch.

Discussion
----------

[Serializer] improved CsvEncoder::decode performance

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT

Improved CsvEncoder::decode performance by caching duplicate count calls.
Blackfire profiles before and after change tested on collection of 10000 elements:
[before] https://blackfire.io/profiles/9c08f789-cd29-4eae-92c8-046e3849a2b8/graph
[after] https://blackfire.io/profiles/a17bfb6b-ef82-41ee-9edd-9403f829d6ab/graph

Commits
-------

3b910a9fad [Serializer] improved CsvEncoder::decode performance by caching duplicate count calls
2017-12-07 10:36:42 -08:00
Nicolas Grekas
f87380c22a [DI] Force root-namespace for function calls in the dumper container 2017-12-07 18:32:09 +01:00
Nicolas Grekas
f1a7b075a6 [DI] Fix circular-aliases message 2017-12-07 18:21:50 +01:00
Fabien Potencier
7ba6000dd5 bug #25323 [ExpressionLanguage] throw an SyntaxError instead of an undefined index notice (Simperfit)
This PR was merged into the 2.7 branch.

Discussion
----------

[ExpressionLanguage] throw an SyntaxError instead of an undefined index notice

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #25214
| License       | MIT
| Doc PR        | none

I think this is a bug when the components throws a notice instead of an exception.

it's too early and too dark to see something outside so here is my couch :
![img_2915-2](https://user-images.githubusercontent.com/3451634/33592448-6b514050-d98b-11e7-8086-bc6e6b6e6e82.jpg)

Commits
-------

78abc89648 [ExpressionLanguage] throw an SyntaxError instead of letting a undefined index notice
2017-12-07 08:13:11 -08:00
Fabien Potencier
d57303faa6 bug #25363 [HttpKernel] Disable inlining on PHP 5 (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Disable inlining on PHP 5

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25334
| License       | MIT
| Doc PR        | -

Commits
-------

950fd9916b [HttpKernel] Disable inlining on PHP 5
2017-12-07 08:10:00 -08:00
Fabien Potencier
ae3d899b08 minor #25339 [DX][HttpKernel] Throw a sensible exception when controller has been removed (sroze)
This PR was merged into the 3.4 branch.

Discussion
----------

[DX][HttpKernel] Throw a sensible exception when controller has been removed

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25335
| License       | MIT
| Doc PR        | ø

Following on #25201, we need to throw the same kind of sensible exception when the controller service is not found.

Commits
-------

458d63fbb9 Throw a sensible exception when controller has been removed
2017-12-07 08:02:42 -08:00
Amrouche Hamza
78abc89648
[ExpressionLanguage] throw an SyntaxError instead of letting a undefined index notice 2017-12-07 10:26:22 +01:00
Samuel ROZE
22f35239a4
Prevent a loop in aliases within the findDefinition method 2017-12-06 16:40:30 +00:00
Nicolas Grekas
950fd9916b [HttpKernel] Disable inlining on PHP 5 2017-12-06 16:28:34 +01:00
Samuel ROZE
28f00866b1
Ensure that inlined services with parameterized class name can be dumped 2017-12-06 12:35:11 +00:00
Nicolas Grekas
730b156f35 [DI] Fix non-string class handling in PhpDumper 2017-12-06 13:03:52 +01:00
Samuel ROZE
458d63fbb9
Throw a sensible exception when controller has been removed 2017-12-06 11:59:38 +00:00
Robin Chalas
32b3db58f4 minor #25352 [Console] Fix phpdoc in Table class (maidmaid)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fix phpdoc in Table class

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | /
| License       | MIT
| Doc PR        | /

Before:
![screenshot from 2017-12-06 20-37-01](https://user-images.githubusercontent.com/4578773/33657735-eaeda05c-dac5-11e7-97da-1af0a8dc0c74.png)

After:
![screenshot from 2017-12-06 20-37-43](https://user-images.githubusercontent.com/4578773/33657737-eda77fde-dac5-11e7-83ea-7fc9bf097f17.png)

Commits
-------

a7d4489 Fix php doc in Table class
2017-12-06 11:48:25 +01:00
Brian Freytag
a7ac100c45 Remove LOCK_EX That Breaks Cache Usage on NFS
This removes the exclusive lock that was introduced in #24960.

NFS File Systems do not support exclusive locking, and generates a lot
of errors every time you try to do anything with che cache.
2017-12-05 10:17:41 -05:00
Dany Maillard
a7d44895e0 Fix php doc in Table class 2017-12-05 23:53:48 +10:00
Christian Flothmann
956287be72 do not evaluate PHP constant names
PHP constant identifiers must be strings anyway. Thus, we only need to
parse quoted strings, but do not have to evaluate the data types.
2017-12-05 09:19:51 +01:00
Roman Orlov
3b910a9fad [Serializer] improved CsvEncoder::decode performance by caching duplicate count calls 2017-12-05 17:56:53 +10:00
Fabien Potencier
22a6a7e4c5 bumped Symfony version to 3.4.2 2017-12-04 16:17:08 -08:00
Fabien Potencier
3a2d88fc6a updated VERSION for 3.4.1 2017-12-04 15:05:00 -08:00
Fabien Potencier
b783602622 bumped Symfony version to 3.3.15 2017-12-04 15:02:34 -08:00
Fabien Potencier
4965ef5311 updated VERSION for 3.3.14 2017-12-04 14:26:28 -08:00
Fabien Potencier
e8b5aa1cd1 bumped Symfony version to 2.8.33 2017-12-04 14:24:43 -08:00
Fabien Potencier
525b5ff976 updated VERSION for 2.8.32 2017-12-04 14:02:14 -08:00
Fabien Potencier
2c3344b8b7 bumped Symfony version to 2.7.40 2017-12-04 13:53:49 -08:00
Fabien Potencier
c7f09523e4 updated VERSION for 2.7.39 2017-12-04 12:40:11 -08:00
Fabien Potencier
831bdc3201 bug #25282 [DI] Register singly-implemented interfaces when doing PSR-4 discovery (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Register singly-implemented interfaces when doing PSR-4 discovery

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

I'm feeling bad for not having this idea before 3.4.0 went out, therefore submitting on 3.4, despite this being a new feature, technically. On a DX pov still, this is a bugfix :) I'll let you accept the argument or not...

So, when doing PSR-4-based service registration, we keep only classes as services.
This systematically leads to the question: "But what about interfaces, shouldn't we type-hint against abstractions and not classes?!"
And the answer has invariably been: "Well, just create an alias!"
Which means doing configuration manually.

I fear that if we leave things as is, we're going to grow a "generation" of devs that will hijack autowiring and abuse hinting for classes instead of interfaces.

BUT, here is the idea implemented by this PR: let's create an alias for every singly-implemented interface we discover while looking for classes!
Plain local, simple, and obvious, isn't it?

Votes pending :)

Commits
-------

fcd4aa7807 [DI] Register singly-implemented interfaces when doing PSR-4 discovery
2017-12-04 11:20:32 -08:00
Kévin Dunglas
4ff9d99f23
[Serializer] Unset attributes when creating child context 2017-12-04 20:08:57 +01:00
Nicolas Grekas
fcd4aa7807 [DI] Register singly-implemented interfaces when doing PSR-4 discovery 2017-12-04 19:49:26 +01:00
Fabien Potencier
9dff16479a Merge branch '3.3' into 3.4
* 3.3:
  [DI] Fix deep-inlining of non-shared refs
  parse newlines in quoted multiline strings
  Fix collision between view properties and form fields
2017-12-04 10:15:22 -08:00
Fabien Potencier
73ff764bd9 bug #25312 [DI] Fix deep-inlining of non-shared refs (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix deep-inlining of non-shared refs

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25263
| License       | MIT
| Doc PR        | -

Non-shared definitions should deep-clone their inlined non-shared definitions.

Commits
-------

eb2a15229a [DI] Fix deep-inlining of non-shared refs
2017-12-04 10:00:31 -08:00
Nicolas Grekas
17d84f6a87 [DI] Fix missing unset leading to false-positive circular ref 2017-12-04 17:04:41 +01:00
Nicolas Grekas
eb2a15229a [DI] Fix deep-inlining of non-shared refs 2017-12-04 16:44:12 +01:00
Christian Flothmann
b23b957ae9 parse newlines in quoted multiline strings 2017-12-04 15:51:35 +01:00
Nicolas Grekas
0b0542d45e bug #25285 [DI] Throw an exception if Expression Language is not installed (sroze)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Throw an exception if Expression Language is not installed

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25277
| License       | MIT
| Doc PR        | ø

The [`PhpDumper` already has this check](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php#L1688-L1690) but it is missing here.

Commits
-------

75b21e9 Throw an exception is expression language is not installed
2017-12-04 13:20:58 +01:00
Nicolas Grekas
abd76ba4c9 Merge branch '3.3' into 3.4
* 3.3:
  Fail as early and noisily as possible
  [FrameworkBundle] Fix visibility of a test helper
  [link] clear the cache after linking
  [link] Prevent warnings when running link with 2.7
  [Validator] ExpressionValidator should use OBJECT_TO_STRING to allow value in message
  do not eagerly filter comment lines
  [WebProfilerBundle], [TwigBundle] Fix Profiler breaking XHTML pages (Content-Type: application/xhtml+xml)
2017-12-04 13:17:59 +01:00
Nicolas Grekas
5b997f1f21 Merge branch '2.8' into 3.3
* 2.8:
  [FrameworkBundle] Fix visibility of a test helper
  [link] clear the cache after linking
  [link] Prevent warnings when running link with 2.7
  [Validator] ExpressionValidator should use OBJECT_TO_STRING to allow value in message
2017-12-04 13:17:10 +01:00
Nicolas Grekas
874d418a8f Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Fix visibility of a test helper
  [link] clear the cache after linking
  [link] Prevent warnings when running link with 2.7
  [Validator] ExpressionValidator should use OBJECT_TO_STRING to allow value in message
2017-12-04 13:15:49 +01:00
Nicolas Grekas
2adb67bb42 minor #24960 SCA with Php Inspections (EA Extended) (kalessil)
This PR was squashed before being merged into the 3.4 branch (closes #24960).

Discussion
----------

SCA with Php Inspections (EA Extended)

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

- Greedy regex characters set fixed
- Potential race-conditions fixed

Commits
-------

4d39a2d SCA with Php Inspections (EA Extended)
2017-12-04 13:09:04 +01:00
Vladimir Reznichenko
4d39a2d8dc SCA with Php Inspections (EA Extended) 2017-12-04 13:09:02 +01:00
Nicolas Grekas
86b0598810 bug #25297 [Validator] Fixed the @Valid(groups={"group"}) against null exception case (vudaltsov)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] Fixed the @Valid(groups={"group"}) against null exception case

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

When `@Valid(groups={"group"})` has non-empty groups and the value is `null`, validator throws `Cannot validate values of type "NULL" automatically. Please provide a constraint.` at `RecursiveContextualValidator:164`.

I don't really understand, why everything is okay for `@Valid()` without groups, but hope that my fix is correct anyway.

Commits
-------

56f24d0 Fixed the null value exception case.
2017-12-04 11:35:03 +01:00
Alessandro Lai
93441c1a85
Add test case for #25264 2017-12-04 10:23:02 +01:00
Fabien Potencier
5b8cf03dcb minor #25292 Remove rc/beta suffix from composer.json files (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

Remove rc/beta suffix from composer.json files

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25291
| License       | MIT
| Doc PR        | -

We don't need that anymore.

Commits
-------

9fb6a88580 Remove rc/beta suffix from composer.json files
2017-12-03 17:35:40 -08:00
Valentin
56f24d08c9 Fixed the null value exception case. 2017-12-04 02:10:25 +03:00
Nicolas Grekas
9fb6a88580 Remove rc/beta suffix from composer.json files 2017-12-03 22:15:09 +01:00
Samuel ROZE
75b21e9c86
Throw an exception is expression language is not installed 2017-12-03 13:07:37 +00:00
Fabien Potencier
c927c481aa bug #25255 [Console][DI] Fail gracefully (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console][DI] Fail gracefully

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/flex/issues/212, #25280
| License       | MIT
| Doc PR        | -

I already experienced this issue a few times without spending time digging it:
sometimes, you call `cache:clear`, and the command quits without any output, and with 255 status code.

The reason is the `@include` in `Kernel`, which makes everything silent, especially fatal errors (thanks PHP...)
So if the to-be-removed container is broken for some fatal reason, the failure is really bad.

To fix that, here are two measures:
- use `include_once` instead of `require_once` in the dumped container: that's OK there to actually not immediately load the file, any hard failure will happen later anyway, and any soft failure will allow the `cache:clear` command to complete (like when you remove a package)
- register `Application::renderException()` as the main PHP exception handler, via `Debug::ErrorHandler` when it's available

End result when it fails:
![image](https://user-images.githubusercontent.com/243674/33494543-e1d07202-d6c3-11e7-9677-bc2ae72fbba9.png)

instead of a blank output.

Commits
-------

4a5a3f52ab [Console][DI] Fail gracefully
2017-12-02 15:04:03 -08:00
Nicolas Grekas
4a5a3f52ab [Console][DI] Fail gracefully 2017-12-02 19:20:11 +01:00
Julien Falque
c5af7fd938
Fix hidden currency element with Bootstrap 3 theme 2017-12-02 11:52:27 +01:00
Nicolas Grekas
28175767d2 [DI] Trigger deprecation when setting a to-be-private synthetic service 2017-12-02 00:46:52 +01:00
Fabien Potencier
9401afd031 bug #25244 [DI] Add missing deprecation when fetching private services from ContainerBuilder (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Add missing deprecation when fetching private services from ContainerBuilder

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25242
| License       | MIT
| Doc PR        | -

Commits
-------

93c0b3801c [DI] Add missing deprecation when fetching private services from ContainerBuilder
2017-12-01 09:40:17 -08:00
Amrouche Hamza
7dac528a86
[Validator] ExpressionValidator should use OBJECT_TO_STRING to allow value in message 2017-12-01 18:16:29 +01:00
Nicolas Grekas
93c0b3801c [DI] Add missing deprecation when fetching private services from ContainerBuilder 2017-12-01 16:10:27 +01:00
Nicolas Grekas
adf18198f6 [DI] Fix false-positive circular exception 2017-12-01 14:16:38 +01:00
Christian Flothmann
d594038ad9 do not eagerly filter comment lines
Trying to be clever by filtering commented lines inside
`getNextEmbedBlock()` does not work as expected. The `#` may as well be
part of a multi-line quoted string where it must not be treated as the
beginning of a comment. Thus, we only must ensure that a comment-like
line does not skip the process of getting the next line of the embed
block.
2017-12-01 11:59:50 +01:00
Alex Rock Ancelet
159fedcef6
[HttpKernel] Fix issue when resetting DumpDataCollector 2017-11-30 20:02:12 +01:00
Fabien Potencier
76d356f36a bumped Symfony version to 3.4.1 2017-11-30 09:39:42 -08:00
Fabien Potencier
72538ff07f updated VERSION for 3.4.0 2017-11-30 08:56:05 -08:00
Nicolas Grekas
679eebb256 bug #25220 [HttpFoundation] Add Session::isEmpty(), fix MockFileSessionStorage to behave like the native one (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFoundation] Add Session::isEmpty(), fix MockFileSessionStorage to behave like the native one

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

MockFileSessionStorage should not create any file when the session is empty. Like the native session storage, it should ignore the metadataBag to decide if the session is empty.

And to prevent AbstractTestSessionListener from registered a wrong cookie, it must have access to this empty state, which is now possible thanks to a new `Session::isEmpty()` method. Implementing is requires access to the internal storage of bags, which is possible via an internal proxy.

Commits
-------

56846ac [HttpFoundation] Add Session::isEmpty(), fix MockFileSessionStorage to behave like the native one
2017-11-30 16:06:52 +01:00
Nicolas Grekas
7582b1a09e Merge branch '3.3' into 3.4
* 3.3:
  [VarDumper] Dont use empty(), it chokes on eg GMP objects
  [Dotenv] Changed preg_match flags from null to 0
  remove upgrade instructions for kernel.root_dir
  [HttpKernel] Arrays with scalar values passed to ESI fragment renderer throw deprecation notice
  [HttpKernel] add a test for FilterControllerEvents
2017-11-30 15:59:23 +01:00
Nicolas Grekas
56846ac6c1 [HttpFoundation] Add Session::isEmpty(), fix MockFileSessionStorage to behave like the native one 2017-11-30 15:56:21 +01:00
Nicolas Grekas
336600857b bug #25209 [VarDumper] Dont use empty(), it chokes on eg GMP objects (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[VarDumper] Dont use empty(), it chokes on eg GMP objects

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25198
| License       | MIT
| Doc PR        | -

Commits
-------

1b14173 [VarDumper] Dont use empty(), it chokes on eg GMP objects
2017-11-30 15:48:11 +01:00
Nicolas Grekas
26fb4c7055 bug #25200 [HttpKernel] Arrays with scalar values passed to ESI fragment renderer throw deprecation notice (Simperfit)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] Arrays with scalar values passed to ESI fragment renderer throw deprecation notice

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #25191
| License       | MIT
| Doc PR        | none

Coding in the train to Paris !

![img_2832](https://user-images.githubusercontent.com/3451634/33361971-8aa17a70-d4da-11e7-90a0-b2f08a60d0e6.JPG)

Commits
-------

d84b47f [HttpKernel] Arrays with scalar values passed to ESI fragment renderer throw deprecation notice
2017-11-30 15:42:59 +01:00
Nicolas Grekas
ae37c7ab76 bug #25201 [HttpKernel] Add a better error messages when passing a private or non-tagged controller (Simperfit)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Add a better error messages when passing a private or non-tagged controller

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #25192 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | none

- [x] Add more tests

Commits
-------

b1173f3 [HttpKernel] Add a better error messages when passing a private or non-tagged controller
2017-11-30 15:36:25 +01:00
Amrouche Hamza
b1173f3ea7
[HttpKernel] Add a better error messages when passing a private or non-tagged controller 2017-11-30 15:23:34 +01:00
Nicolas Grekas
8950aada3b minor #25054 [HttpKernel] add a test for FilterControllerEvents (Simperfit)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] add a test for FilterControllerEvents

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | no
| Fixed tickets | no <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | no

Commits
-------

b746e8a [HttpKernel] add a test for FilterControllerEvents
2017-11-30 10:33:45 +01:00
Nicolas Grekas
1b141732db [VarDumper] Dont use empty(), it chokes on eg GMP objects 2017-11-30 10:28:49 +01:00
Derek Bonner
b0d297b962 [Dotenv] Changed preg_match flags from null to 0 2017-11-29 20:22:22 -08:00
Nicolas Grekas
d90a3b50d4 bug #25180 [DI] Fix circular reference when using setters (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Fix circular reference when using setters

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

I did not manage to make a reproducing test case, yet @deguif provided me an app that I could play with to debug and fix.

Commits
-------

de5eecc [DI] Fix circular reference when using setters
2017-11-29 17:42:20 +01:00
Nicolas Grekas
ad3ddebf90 bug #25204 [DI] Clear service reference graph (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Clear service reference graph

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes (memory usage)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Spotted while playing with the container: we keep this graph in memory even it its stale already.
Clearing it also leave circular refs for the php garbage collector, better clean ourselves.

Commits
-------

2744b41 [DI] Clear service reference graph
2017-11-29 17:40:14 +01:00
Nicolas Grekas
de5eecc5fa [DI] Fix circular reference when using setters 2017-11-29 15:34:00 +01:00
Fabien Potencier
5cb6c93f5b minor #25205 [HttpKernel] Fix race condition when clearing old containers (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Fix race condition when clearing old containers

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Missed in #25190: when two concurrent requests create the new container concurrently, the last one would drop the old container files, because the first one just created the `*.legacyContainer` file.

Commits
-------

9d553f533f [HttpKernel] Fix race condition when clearing old containers
2017-11-29 05:36:35 -08:00
Christian Flothmann
f74ecedd0b Merge branch '3.3' into 3.4
* 3.3:
  [DI] Fix infinite loop in InlineServiceDefinitionsPass
  Do not cache cache attributes if `attributes` is in the context
  Test that it do not remove the new flashes when displaying the existing ones
  [HttpFoundation] AutExpireFlashBag should not clear new flashes
  [FrameworkBundle][Serializer] Remove YamlEncoder definition if Yaml component isn't installed
  [DI] Fix tracking of env vars in exceptions
  [Form] Don't rely on  if http-foundation isn't in FileType
  Fix merge
  substitute aliases in inline mappings
  added ability for substitute aliases when mapping in YAML is on single line
  [Console] Fix global console flag when used in chain
2017-11-29 14:28:14 +01:00
Christian Flothmann
b4afeb2e81 Merge branch '2.8' into 3.3
* 2.8:
  Test that it do not remove the new flashes when displaying the existing ones
  [HttpFoundation] AutExpireFlashBag should not clear new flashes
  [Form] Don't rely on  if http-foundation isn't in FileType
  Fix merge
  substitute aliases in inline mappings
  added ability for substitute aliases when mapping in YAML is on single line
  [Console] Fix global console flag when used in chain
2017-11-29 13:25:49 +01:00
Amrouche Hamza
d84b47fe9d
[HttpKernel] Arrays with scalar values passed to ESI fragment renderer throw deprecation notice 2017-11-29 10:42:06 +01:00
Nicolas Grekas
1941a78922 Merge branch '2.7' into 2.8
* 2.7:
  Test that it do not remove the new flashes when displaying the existing ones
  [HttpFoundation] AutExpireFlashBag should not clear new flashes
  [Form] Don't rely on  if http-foundation isn't in FileType
  substitute aliases in inline mappings
  added ability for substitute aliases when mapping in YAML is on single line
  [Console] Fix global console flag when used in chain
2017-11-29 10:33:18 +01:00
Nicolas Grekas
85223d373b bug #25203 [DI] Fix infinite loop in InlineServiceDefinitionsPass (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix infinite loop in InlineServiceDefinitionsPass

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

When a non-shared is involved in a setter-circular loop, the pass enters an infinite loop right now.

Commits
-------

b988aa7 [DI] Fix infinite loop in InlineServiceDefinitionsPass
2017-11-29 10:21:33 +01:00
Nicolas Grekas
9d553f533f [HttpKernel] Fix race condition when clearing old containers 2017-11-29 10:08:48 +01:00
Nicolas Grekas
2744b41c83 [DI] Clear service reference graph 2017-11-29 09:18:28 +01:00
Nicolas Grekas
b988aa7c59 [DI] Fix infinite loop in InlineServiceDefinitionsPass 2017-11-29 09:04:31 +01:00
Fabien Potencier
1f14f4d836 bug #25190 [HttpKernel] Keep legacy container files for concurrent requests (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Keep legacy container files for concurrent requests

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25177
| License       | MIT
| Doc PR        | -

Because concurrent requests might still be using them,
old container files should not be removed immediately,
but on a next dump of the container.

Commits
-------

ee3b6fe642 [HttpKernel] Keep legacy container files for concurrent requests
2017-11-28 18:27:08 -08:00
Nicolas Grekas
ee3b6fe642 [HttpKernel] Keep legacy container files for concurrent requests 2017-11-28 14:26:26 +01:00
Samuel ROZE
6e87382bfa
Do not cache cache attributes if attributes is in the context 2017-11-28 12:04:06 +00:00
Samuel ROZE
706201efe4
Test that it do not remove the new flashes when displaying the existing ones 2017-11-28 08:49:55 +00:00
Amrouche Hamza
7fe3fe8245
[HttpFoundation] AutExpireFlashBag should not clear new flashes 2017-11-28 06:31:17 +01:00
Fabien Potencier
3c8ff5ea83 bug #25174 [Translation] modify definitions only if the do exist (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Translation] modify definitions only if the do exist

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

If the `TranslatorPass` is used an application without the Console
component, the commands will not be registered. Thus, their service
definitions must not be modified.

Commits
-------

eab90ef1cf modify definitions only if the do exist
2017-11-27 14:17:52 -08:00
Nicolas Grekas
3a873f8877 [HttpKernel] Better handling of legacy cache 2017-11-27 16:08:42 +01:00
Christian Flothmann
eab90ef1cf modify definitions only if the do exist
If the `TranslatorPass` is used an application without the Console
component, the commands will not be registered. Thus, their service
definitions must not be modified.
2017-11-27 15:23:00 +01:00
Nicolas Grekas
a19d1e5d15 bug #25160 [DI] Prevent a ReflectionException during cache:clear when the parent class doesn't exist (dunglas)
This PR was squashed before being merged into the 3.4 branch (closes #25160).

Discussion
----------

[DI] Prevent a ReflectionException during cache:clear when the parent class doesn't exist

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  |  no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Currently, if you just run the following commands:

```
composer create-project -s beta symfony/skeleton:^3.4 test
composer req orm
```

You get the following error:

```
In UniqueEntityValidator.php line 27:

  [ReflectionException]
  Class Symfony\Component\Validator\ConstraintValidator not found
```

`UniqueEntityValidator` is in the bridge, but it's parent class is in the validator (that is not installed by default). The hot path optimization feature (enabled by default) uses reflection, and the reflection API throws an exception in this specific case.

This PR fixes the error.

Commits
-------

6e622c6 [DI] Prevent a ReflectionException during cache:clear when the parent class doesn't exist
2017-11-27 10:49:37 +01:00
Kévin Dunglas
6e622c668b [DI] Prevent a ReflectionException during cache:clear when the parent class doesn't exist 2017-11-27 10:49:34 +01:00
Nicolas Grekas
4cfd2d90a5 minor #25168 [HttpKernel] don't override existing verbosity env var (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] don't override existing verbosity env var

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

While playing with the changes from #25162 I noticed that setting the `SHELL_VERBOSITY` env var in `phpunit.xml.dist` did not work as the kernel was setting the variable before the logic in the `Logger` class was executed.

Commits
-------

df4d6d6 don't override existing verbosity env var
2017-11-27 09:12:26 +01:00
Christian Flothmann
df4d6d6e16 don't override existing verbosity env var 2017-11-26 21:27:09 +01:00
Nicolas Grekas
73f1ac5ea2 [DI] Fix tracking of env vars in exceptions 2017-11-26 20:37:03 +01:00
Fabien Potencier
a2844c04ca bug #25162 [HttpKernel] Read $_ENV when checking SHELL_VERBOSITY (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Read $_ENV when checking SHELL_VERBOSITY

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Needed so that we can set the env var from `phpunit.xml.dist`.

Commits
-------

7de1af4d53 [HttpKernel] Read $_ENV when checking SHELL_VERBOSITY
2017-11-26 11:02:43 -08:00
Nicolas Grekas
7de1af4d53 [HttpKernel] Read $_ENV when checking SHELL_VERBOSITY 2017-11-26 18:11:23 +01:00
Fabien Potencier
7c0a59ffed bug #25158 [DI] Remove unreachable code (GawainLynch)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Remove unreachable code

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

#24033 added the ability to ignore uninitialized references, but the regex above the conditional would lead to an `InvalidArgumentException` being thrown.

Commits
-------

ced0857560 Remove unreachable code
2017-11-26 07:53:06 -08:00
Fabien Potencier
e3e239ffb4 bug #25152 [Form] Don't rely on Symfony\Component\HttpFoundation\File\File if http-foundation isn't in FileType (issei-m)
This PR was squashed before being merged into the 2.7 branch (closes #25152).

Discussion
----------

[Form] Don't rely on `Symfony\Component\HttpFoundation\File\File` if http-foundation isn't in FileType

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | may need discussion
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Currently `FileType` may depend on `Symfony\Component\HttpFoundation\File\File` regardless `http-foundation` has been installed or not.
It leads to occur the class-not-found error.
(Attached the screen capture, please see below and I provided the representation [here](https://github.com/issei-m/form-bug-representation/issues/1) for your information)

So I ensure `Symfony\Component\HttpFoundation\File\File` does exist, and if not, we don't specify any classes for this type.
While setting no specified class to `data_class` means making [property path behavior changed](7234bfd56a/src/Symfony/Component/Form/Form.php (L229-L231)),
[NativeRequestHandler](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/Form/NativeRequestHandler.php) which is usually expected to be used in non-full-stack env handles a pure array like `$_FILES` holds, fully intended behavior AFAIK.

![image](https://user-images.githubusercontent.com/1135118/33216654-14706a56-d178-11e7-8e4b-c38c14ec7532.png)

Commits
-------

a264238e8a [Form] Don't rely on  if http-foundation isn't in FileType
2017-11-26 07:51:04 -08:00
Issei.M
a264238e8a [Form] Don't rely on if http-foundation isn't in FileType 2017-11-26 07:51:00 -08:00
Gawain Lynch
ced0857560
Remove unreachable code 2017-11-26 14:53:48 +01:00
Robin Chalas
9107fb0afd bug #24987 [Console] Fix global console flag when used in chain (Simperfit)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fix global console flag when used in chain

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #23876
| License       | MIT
| Doc PR        |

Because SymfonyCon is great we can create pull request in it ! (this was preparer in the plane and I can push it just right now ;))

Finished in the #SymfonyConHackday2017

Commits
-------

1f8db73 [Console] Fix global console flag when used in chain
2017-11-26 02:04:32 +01:00
Ryan Weaver
3502020834 adding checks for the expression language 2017-11-24 09:49:28 -05:00
Nicolas Grekas
f897542cb2 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Dont resolve envs in service ids
  Add tests proving it can load annotated files
  [WebProfilerBundle] Reset letter-spacing in toolbar
  Prefer overflow-wrap to word-break
  [Routing] Fix "config-file-relative" annotation loader resources
  Make search in debug:container command case-insensitive
  `resolveEnvPlaceholders` will return a mixed value
2017-11-24 15:13:49 +01:00
Nicolas Grekas
7921255faf [DI] Dont resolve envs in service ids 2017-11-24 13:44:22 +01:00
Samuel ROZE
f4999d8af0
Add tests proving it can load annotated files 2017-11-24 10:33:04 +00:00
Fabien Potencier
ec379e1541 bug #25065 [FrameworkBundle] Update translation commands to work with default paths (yceruto)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Update translation commands to work with default paths

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/25062
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/8634

This should make translation commands (debug & update) work with `translator.default_path` and `twig.default_path` directories (introduced here in 3.4) and their overridden paths if available.

Would be great to include also the custom paths mapping by the user, either `translator.paths` as `twig.paths`, but I'm not sure about the right way and probably it should be implemented on another branch.

TODO
- [x]  Add some tests.

Commits
-------

dc7286625b Update translation commands to work with default paths
2017-11-23 07:48:15 -08:00
Fabien Potencier
abe6e92593 bug #25043 [Yaml] added ability for substitute aliases when mapping is on single line (Michał Strzelecki, xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Yaml] added ability for substitute aliases when mapping is on single line

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #11569
| License       | MIT
| Doc PR        |

Commits
-------

dd26c80aa9 substitute aliases in inline mappings
675a3fe7f6 added ability for substitute aliases when mapping in YAML is on single line
2017-11-23 06:55:53 -08:00
Nicolas Grekas
5998e9d7b5 [Routing] Fix "config-file-relative" annotation loader resources 2017-11-23 14:58:49 +01:00
Samuel ROZE
b34d5b77a4
resolveEnvPlaceholders will return a mixed value 2017-11-23 12:10:51 +00:00
Nicolas Grekas
37baa1de51 Fix merge 2017-11-23 12:13:33 +01:00
Nicolas Grekas
6fc596754c Merge branch '3.3' into 3.4
* 3.3:
  [Form] Fixed ContextErrorException in FileType
  [DI] Fix handling of inlined definitions by ContainerBuilder
2017-11-23 12:03:08 +01:00
Nicolas Grekas
ae62e56d8a Merge branch '2.8' into 3.3
* 2.8:
  [Form] Fixed ContextErrorException in FileType
  [DI] Fix handling of inlined definitions by ContainerBuilder
2017-11-23 12:01:29 +01:00
Nicolas Grekas
10ec39e850 Merge branch '2.7' into 2.8
* 2.7:
  [Form] Fixed ContextErrorException in FileType
  [DI] Fix handling of inlined definitions by ContainerBuilder
2017-11-23 11:48:23 +01:00
Nicolas Grekas
a809ab27f6 bug #25102 [Form] Fixed ContextErrorException in FileType (chihiro-adachi)
This PR was squashed before being merged into the 2.7 branch (closes #25102).

Discussion
----------

[Form] Fixed ContextErrorException in FileType

| Q             | A
| ------------- | ---
| Branch?       |  2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #25063
| License       | MIT
| Doc PR        | --

Fixed an issue that ContextErrorException occurs when multiple is enabled.

Commits
-------

1b408e6 [Form] Fixed ContextErrorException in FileType
2017-11-23 11:40:42 +01:00
chihiro-adachi
1b408e692d [Form] Fixed ContextErrorException in FileType 2017-11-23 11:39:21 +01:00
Nicolas Grekas
c9c18ac7f3 [DI] Fix handling of inlined definitions by ContainerBuilder 2017-11-23 11:22:49 +01:00
Yonel Ceruto
dc7286625b Update translation commands to work with default paths 2017-11-22 13:43:08 -05:00
Nicolas Grekas
f772d2fc7c [DI] Fix infinite loop when analyzing references 2017-11-22 16:44:01 +01:00
Nicolas Grekas
878b08cd46 [Lock][Process][FrameworkBundle] fix tests 2017-11-22 13:18:49 +01:00
Fabien Potencier
232df2bab5 bumped Symfony version to 3.4.0 2017-11-21 19:27:13 +01:00
Fabien Potencier
5d27a7b11b updated VERSION for 3.4.0-RC1 2017-11-21 18:53:17 +01:00
Nicolas Grekas
4a11683548 [HttpKernel] Disable container inlining when legacy inlining has been used 2017-11-21 16:44:44 +01:00
Nicolas Grekas
2c2044b34f Merge branch '3.3' into 3.4
* 3.3:
  [HttpFoundation] Fix bad merge in NativeSessionStorage
  Bump phpunit-bridge requirement to 3.4|4.0
  [Bridge/PhpUnit] Remove trailing "\n" from ClockMock::microtime(false)
  [Form] Rename `FormConfigBuilder::$nativeRequestProcessor` private variable to `::$nativeRequestHandler`
  Add a "link" script to ease debugging Flex apps
  [Form] Add phpdoc to `RequestHandlerInterface::isFileUpload()` method
2017-11-21 10:59:09 +01:00
Nicolas Grekas
1a1079d7c4 Merge branch '2.8' into 3.3
* 2.8:
  [HttpFoundation] Fix bad merge in NativeSessionStorage
  Bump phpunit-bridge requirement to 3.4|4.0
  [Bridge/PhpUnit] Remove trailing "\n" from ClockMock::microtime(false)
  [Form] Rename `FormConfigBuilder::$nativeRequestProcessor` private variable to `::$nativeRequestHandler`
  Add a "link" script to ease debugging Flex apps
  [Form] Add phpdoc to `RequestHandlerInterface::isFileUpload()` method
2017-11-21 10:58:54 +01:00
Nicolas Grekas
8603bf1081 Merge branch '2.7' into 2.8
* 2.7:
  Bump phpunit-bridge requirement to 3.4|4.0
  [Form] Rename `FormConfigBuilder::$nativeRequestProcessor` private variable to `::$nativeRequestHandler`
  Add a "link" script to ease debugging Flex apps
  [Form] Add phpdoc to `RequestHandlerInterface::isFileUpload()` method
2017-11-21 10:57:39 +01:00
Nicolas Grekas
58d12e88b4 [HttpFoundation] Fix bad merge in NativeSessionStorage 2017-11-21 10:41:52 +01:00
Nicolas Grekas
21b23431ba [Debug] Fix undefined variable $lightTrace 2017-11-21 10:01:46 +01:00
Issei.M
a35d4f88b3 [Form] Rename FormConfigBuilder::$nativeRequestProcessor private variable to ::$nativeRequestHandler 2017-11-21 10:08:49 +09:00
Nicolas Grekas
961981577d bug #25053 [Serializer] Fixing PropertyNormalizer supports parent properties (Christopher Hertel)
This PR was merged into the 3.4 branch.

Discussion
----------

[Serializer] Fixing PropertyNormalizer supports parent properties

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

With 5ecafc5e25 support for parent properties was added to 3.4, but supports method was not updated for child classes without properties.

Commits
-------

a879e4f fixing that PropertyNormalizer supports parent properties
2017-11-20 21:50:55 +01:00
Issei.M
faf5470fd5 [Form] Add phpdoc to RequestHandlerInterface::isFileUpload() method 2017-11-20 18:59:30 +01:00
Nicolas Grekas
9cc4a213c9 [DI] Analyze setter-circular deps more precisely 2017-11-20 18:46:17 +01:00
Amrouche Hamza
b746e8a017
[HttpKernel] add a test for FilterControllerEvents 2017-11-20 17:56:59 +01:00
Christopher Hertel
a879e4f34b fixing that PropertyNormalizer supports parent properties 2017-11-20 17:26:54 +01:00
Christian Flothmann
dd26c80aa9 substitute aliases in inline mappings 2017-11-20 10:04:28 +01:00
Michał Strzelecki
675a3fe7f6 added ability for substitute aliases when mapping in YAML is on single line 2017-11-20 08:20:36 +01:00
Nicolas Grekas
1775bba68f [DI] Skip hot_path tag for deprecated services as their class might also be 2017-11-19 23:04:27 +01:00
Nicolas Grekas
de5f41d978 [Cache] Memcached options should ignore "lazy" 2017-11-19 22:17:36 +01:00
Nicolas Grekas
4baf9688a9 Merge branch '3.3' into 3.4
* 3.3:
  [Bridge/PhpUnit] Fix compat with phpunit 4.8 & bridge <=3.3.13
  Remove function_exists(__phpunit_run_isolated_test) checks
2017-11-19 22:09:36 +02:00
Nicolas Grekas
f2fc7bfccc Merge branch '2.8' into 3.3
* 2.8:
  Remove function_exists(__phpunit_run_isolated_test) checks
2017-11-19 21:07:30 +02:00
Nicolas Grekas
c23adaec43 Merge branch '2.7' into 2.8
* 2.7:
  Remove function_exists(__phpunit_run_isolated_test) checks
2017-11-19 21:05:05 +02:00
Nicolas Grekas
eb92d7ca07 bug #25014 Move deprecation under use statements (greg0ire)
This PR was squashed before being merged into the 3.4 branch (closes #25014).

Discussion
----------

Move deprecation under use statements

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        | n/a

Commits
-------

0a5b016 Move deprecation under use statements
2017-11-19 20:59:05 +02:00
Grégoire Paris
0a5b016427 Move deprecation under use statements 2017-11-19 20:59:03 +02:00
Nicolas Grekas
a512217431 Remove function_exists(__phpunit_run_isolated_test) checks 2017-11-19 20:49:57 +02:00
Nicolas Grekas
e40905a343 Merge branch '3.3' into 3.4
* 3.3:
  [Bridge\PhpUnit] Disable broken auto-require mechanism of phpunit
  [SecurityBundle] Fix syntax error in test
  [Console] Remove remaining dead code
  bumped Symfony version to 3.3.14
  bumped Symfony version to 2.8.32
  bumped Symfony version to 2.7.39
  updated VERSION for 3.3.13
  updated CHANGELOG for 3.3.13
  updated VERSION for 2.8.31
  updated CHANGELOG for 2.8.31
  updated VERSION for 2.7.38
  updated CHANGELOG for 2.7.38
  Replace array|\Traversable by iterable
  Fix ambiguous pattern
2017-11-19 20:41:20 +02:00
Nicolas Grekas
a3d398e825 Merge branch '2.8' into 3.3
* 2.8:
  [SecurityBundle] Fix syntax error in test
  [Console] Remove remaining dead code
  bumped Symfony version to 2.8.32
  bumped Symfony version to 2.7.39
  updated VERSION for 2.8.31
  updated CHANGELOG for 2.8.31
  updated VERSION for 2.7.38
  updated CHANGELOG for 2.7.38
  Replace array|\Traversable by iterable
  Fix ambiguous pattern
2017-11-19 20:40:28 +02:00
Nicolas Grekas
7215acb66f Merge branch '2.7' into 2.8
* 2.7:
  [SecurityBundle] Fix syntax error in test
  [Console] Remove remaining dead code
  bumped Symfony version to 2.7.39
  updated VERSION for 2.7.38
  updated CHANGELOG for 2.7.38
  Replace array|\Traversable by iterable
  Fix ambiguous pattern
2017-11-19 20:39:05 +02:00
Nicolas Grekas
fa7dd8ebbe bug #25030 [Console] Fix ability to disable lazy commands (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[Console] Fix ability to disable lazy commands

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Properly throw when running them and don't show them in the list, as for non lazy ones.

Commits
-------

6787d8e [Console] Fix disabling lazy commands
2017-11-19 20:31:47 +02:00
Robin Chalas
6787d8e5ab [Console] Fix disabling lazy commands 2017-11-19 17:18:18 +01:00
Maxime Steinhausser
5be25d55fd [DI] Remove scalar typehint in class used in test case 2017-11-19 14:43:05 +01:00
Amrouche Hamza
1f8db731a0
[Console] Fix global console flag when used in chain 2017-11-18 15:50:49 +02:00
Fabien Potencier
86986b41b0 minor #24969 Replace array|\Traversable by iterable (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

Replace array|\Traversable by iterable

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Replace `array|\Traversable` by `iterable`, favoring pure API (or less mixed at least :)) and be clear whenever phpdoc is replaced.

https://secure.php.net/manual/en/language.types.iterable.php

Commits
-------

278088931b Replace array|\Traversable by iterable
2017-11-18 09:48:31 +02:00
Fabien Potencier
9447016979 minor #25008 [Console] Remove remaining dead code (chalasr)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Remove remaining dead code

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Since they are always re-thrown, no need to catch `\Error` instances at all.

Commits
-------

3822c07f65 [Console] Remove remaining dead code
2017-11-18 09:40:15 +02:00
Christophe Coevoet
8d7f6ede84 bug #24991 [DependencyInjection] Single typed argument can be applied on multiple parameters (nicolas-grekas, sroze)
This PR was merged into the 3.4 branch.

Discussion
----------

[DependencyInjection] Single typed argument can be applied on multiple parameters

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | ø
| License       | MIT
| Doc PR        | ø

I'm @nicolas-grekas' test writer today. This makes the argument resolution working when injecting the same type multiple times (sub-set of PR #24978)

Commits
-------

d51265447d Test that named arguments are prioritized over typehinted
bf7eeef3fb Prove that change is working with tests
2176be74d8 [DI] Fix by-type args injection
2017-11-17 15:27:47 +01:00
Christophe Coevoet
2f19ddbd47 bug #24983 [Validator] enter the context in which to validate (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[Validator] enter the context in which to validate

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24246
| License       | MIT
| Doc PR        |

Commits
-------

7359cbe063 [Validator] enter the context in which to validate
2017-11-17 15:23:59 +01:00
Christophe Coevoet
11d79cbb12 bug #24956 Fix ambiguous pattern (weltling)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix ambiguous pattern

[Validator][Constraints][UrlValidator] Fix domain name pattern.

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

`\pS` is a unicode character class, `\pS-\.` pretends to be a range which is not. This pattern fails with PCRE2.

Thanks.

Commits
-------

059f59a106 Fix ambiguous pattern
2017-11-17 14:57:47 +01:00
Robin Chalas
3822c07f65 [Console] Remove remaining dead code 2017-11-17 13:59:02 +01:00
Valentin
49fc6778ee Throw on service:method factory notation in PHP-based DI configuration 2017-11-17 12:52:23 +03:00
Samuel ROZE
d51265447d
Test that named arguments are prioritized over typehinted 2017-11-17 10:42:21 +02:00
Fabien Potencier
3b6c22e86a bumped Symfony version to 3.3.14 2017-11-17 07:39:26 +01:00
Fabien Potencier
58352f2f02 bumped Symfony version to 2.8.32 2017-11-17 07:34:32 +01:00
Fabien Potencier
c963178206 bumped Symfony version to 2.7.39 2017-11-17 07:26:23 +01:00
Samuel ROZE
bf7eeef3fb
Prove that change is working with tests 2017-11-17 01:07:36 +02:00
Nicolas Grekas
4fadbcdc58 bug #24979 [HttpKernel] remove services resetter even when it's an alias (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] remove services resetter even when it's an alias

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

All the other places in the compiler pass do not care whether the
resetter service is aliased or not. Let's just also properly deal with
the case that the services resetter service was aliased by another
bundle.

Commits
-------

f7e634b remove services resetter even when it's an alias
2017-11-16 23:50:23 +02:00
Nicolas Grekas
a2f8c32bd3 bug #24972 [HttpKernel] Fix service arg resolver for controllers as array callables (sroze, nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Fix service arg resolver for controllers as array callables

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24970
| License       | MIT
| Doc PR        | ø

Replacing #24970 as I can't push tests directly to @nicolas-grekas' PR.

> As spotted today during a Symfony 4 workshop at SymfonyCon Cluj, setting a controller as an array [SomeController::class, 'helloAction'] works, it is defined as a service, BUT the actions don't get the services as arguments. This is fixing it.

Commits
-------

fc3d3bb [HttpKernel] Fix service arg resolver for controllers as array callables
a9e9f36 Add service value resolver tests Prove that the service value resolver will not work with the array notation
2017-11-16 23:41:27 +02:00
Fabien Potencier
c41da93c91 updated VERSION for 3.3.13 2017-11-16 19:14:43 +01:00
Fabien Potencier
762b8d85f3 updated VERSION for 2.8.31 2017-11-16 18:43:55 +01:00
Fabien Potencier
330c5e5577 updated VERSION for 2.7.38 2017-11-16 17:24:22 +01:00
Nicolas Grekas
c5595a1f11 Merge branch '3.3' into 3.4
* 3.3:
  fix deps=low
2017-11-16 18:19:19 +02:00
Nicolas Grekas
e4f00cc6be Merge branch '2.8' into 3.3
* 2.8:
  fix deps=low
2017-11-16 18:14:18 +02:00
Nicolas Grekas
1c026e0a5b Merge branch '2.7' into 2.8
* 2.7:
  fix deps=low
2017-11-16 18:08:43 +02:00
Nicolas Grekas
7993ce57a4 fix deps=low 2017-11-16 17:51:27 +02:00
Nicolas Grekas
caa10ae038 Merge branch '3.3' into 3.4
* 3.3:
  fixed CS
  fixed CS
  [Security] Namespace generated CSRF tokens depending of the current scheme
  ensure that submitted data are uploaded files
  [Console] remove dead code
  bumped Symfony version to 3.3.13
  updated VERSION for 3.3.12
  updated CHANGELOG for 3.3.12
  bumped Symfony version to 2.8.31
  updated VERSION for 2.8.30
  updated CHANGELOG for 2.8.30
  bumped Symfony version to 2.7.38
  updated VERSION for 2.7.37
  updated CHANGELOG for 2.7.37
  [Security] Validate redirect targets using the session cookie domain
  prevent bundle readers from breaking out of paths
2017-11-16 17:25:26 +02:00
Nicolas Grekas
ea2447f0b8 Merge branch '2.8' into 3.3
* 2.8:
  fixed CS
  fixed CS
  [Security] Namespace generated CSRF tokens depending of the current scheme
  ensure that submitted data are uploaded files
  [Console] remove dead code
  bumped Symfony version to 2.8.31
  updated VERSION for 2.8.30
  updated CHANGELOG for 2.8.30
  bumped Symfony version to 2.7.38
  updated VERSION for 2.7.37
  updated CHANGELOG for 2.7.37
  [Security] Validate redirect targets using the session cookie domain
  prevent bundle readers from breaking out of paths
2017-11-16 17:24:32 +02:00
Nicolas Grekas
44c5d7f405 Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  fixed CS
  [Security] Namespace generated CSRF tokens depending of the current scheme
  ensure that submitted data are uploaded files
  [Console] remove dead code
  bumped Symfony version to 2.7.38
  updated VERSION for 2.7.37
  updated CHANGELOG for 2.7.37
  [Security] Validate redirect targets using the session cookie domain
  prevent bundle readers from breaking out of paths
2017-11-16 17:20:19 +02:00
Fabien Potencier
4d288439bc security #24995 Validate redirect targets using the session cookie domain (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

Validate redirect targets using the session cookie domain

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

<!--
- Bug fixes must be submitted against the lowest branch where they apply
  (lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against the master branch.
- Please fill in this template according to the PR you're about to submit.
- Replace this comment by a description of what your PR is solving.
-->

Commits
-------

52b06f1c21 [Security] Validate redirect targets using the session cookie domain
2017-11-16 17:16:56 +02:00
Fabien Potencier
097ce09140 security #24994 Prevent bundle readers from breaking out of paths (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

Prevent bundle readers from breaking out of paths

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

<!--
- Bug fixes must be submitted against the lowest branch where they apply
  (lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against the master branch.
- Please fill in this template according to the PR you're about to submit.
- Replace this comment by a description of what your PR is solving.
-->

Commits
-------

c8f9f916b4 prevent bundle readers from breaking out of paths
2017-11-16 17:15:44 +02:00
Fabien Potencier
0a1ea85998 security #24993 Ensure that submitted data are uploaded files (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

Ensure that submitted data are uploaded files

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

<!--
- Bug fixes must be submitted against the lowest branch where they apply
  (lowest branches are regularly merged to upper ones so they get the fixes too).
- Features and deprecations must be submitted against the master branch.
- Please fill in this template according to the PR you're about to submit.
- Replace this comment by a description of what your PR is solving.
-->

Commits
-------

f9e210cc7b ensure that submitted data are uploaded files
2017-11-16 17:14:44 +02:00
Fabien Potencier
07fc11cd65 fixed CS 2017-11-16 17:13:44 +02:00
Kévin Dunglas
cdb4271975
[Security] Namespace generated CSRF tokens depending of the current scheme 2017-11-16 15:51:08 +02:00
Roland Franssen
278088931b Replace array|\Traversable by iterable 2017-11-16 13:37:27 +01:00
Nicolas Grekas
2176be74d8
[DI] Fix by-type args injection 2017-11-16 13:36:51 +02:00
Christian Flothmann
f9e210cc7b ensure that submitted data are uploaded files 2017-11-16 09:58:50 +01:00
Christian Flothmann
7359cbe063 [Validator] enter the context in which to validate 2017-11-16 09:10:44 +01:00
Christian Flothmann
f7e634bc3e remove services resetter even when it's an alias
All the other places in the compiler pass do not care whether the
resetter service is aliased or not. Let's just also properly deal with
the case that the services resetter service was aliased by another
bundle.
2017-11-15 18:30:56 +01:00
Nicolas Grekas
fc3d3bbf60
[HttpKernel] Fix service arg resolver for controllers as array callables 2017-11-15 13:29:33 +02:00
Samuel ROZE
a9e9f36799
Add service value resolver tests
Prove that the service value resolver will not work with the array notation
2017-11-15 13:29:21 +02:00
Robin Chalas
2c2253df8c minor #24962 [Console] remove dead code (Tobion)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] remove dead code

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Part of #24961 for 2.7

Commits
-------

65f2b13 [Console] remove dead code
2017-11-15 10:26:39 +01:00
Tobias Schultze
65f2b13e6b [Console] remove dead code 2017-11-13 22:35:01 +01:00
Fabien Potencier
73ef74aa8c bumped Symfony version to 3.3.13 2017-11-13 11:43:22 -08:00
Fabien Potencier
63f69f0c89 updated VERSION for 3.3.12 2017-11-13 11:37:21 -08:00
Fabien Potencier
db6da75a8d bumped Symfony version to 2.8.31 2017-11-13 11:36:26 -08:00
Fabien Potencier
42596fef66 updated VERSION for 2.8.30 2017-11-13 11:30:25 -08:00
Fabien Potencier
49fe412ccc bumped Symfony version to 2.7.38 2017-11-13 11:29:05 -08:00
Anatol Belski
059f59a106 Fix ambiguous pattern 2017-11-13 20:26:33 +01:00
Fabien Potencier
9a161068bc updated VERSION for 2.7.37 2017-11-13 10:51:22 -08:00
Nicolas Grekas
ecad1c4b3b Merge branch '3.3' into 3.4
* 3.3:
  [DI] Fix dumping with custom base class
  [HttpFoundation] Add test
  [HttpFoundation] Fix session-related BC break
  [Process] Workaround PHP bug #75515 in ProcessTest::testSimpleInputStream()
  fix method name
2017-11-13 19:20:08 +01:00
Nicolas Grekas
772f29fd25 bug #24954 [DI] Fix dumping with custom base class (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix dumping with custom base class

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24948
| License       | MIT
| Doc PR        | -

ping @kbond please confirm it's OK for you

Commits
-------

2dd74ab [DI] Fix dumping with custom base class
2017-11-13 19:15:33 +01:00
Nicolas Grekas
1b44a4bf16 Merge branch '2.8' into 3.3
* 2.8:
  [HttpFoundation] Add test
  [HttpFoundation] Fix session-related BC break
  fix method name
2017-11-13 19:13:16 +01:00
Nicolas Grekas
dee37688ab Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Add test
  [HttpFoundation] Fix session-related BC break
  fix method name
2017-11-13 19:11:59 +01:00
Nicolas Grekas
2dd74ab89e [DI] Fix dumping with custom base class 2017-11-13 19:10:32 +01:00
Nicolas Grekas
5fa5ef76b1 minor #24940 [Form] fix method name (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] fix method name

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Commits
-------

b862168 fix method name
2017-11-13 19:05:48 +01:00
Samuel ROZE
38186aab2f [HttpFoundation] Add test 2017-11-13 18:34:39 +01:00
Nicolas Grekas
3eaa18889c [HttpFoundation] Fix session-related BC break 2017-11-13 16:55:02 +01:00
Nicolas Grekas
65ebe99e78 [Process] Workaround PHP bug #75515 in ProcessTest::testSimpleInputStream() 2017-11-13 16:31:11 +01:00
Nicolas Grekas
e2ad89268b Merge branch '3.3' into 3.4
* 3.3:
  [Process] Skip ProcessTest::testSimpleInputStream() because of bug #75515 in PHP 7.2RC6
2017-11-13 11:20:40 +01:00
Nicolas Grekas
ce04c98101 [Process] Skip ProcessTest::testSimpleInputStream() because of bug #75515 in PHP 7.2RC6 2017-11-13 11:13:24 +01:00
Christian Flothmann
b862168cd0 fix method name 2017-11-13 06:34:51 +01:00
Fabien Potencier
9a771e69e5 minor #24928 [Filesystem] toIterable() in favor of toIterator() (ro0NL)
This PR was squashed before being merged into the 3.4 branch (closes #24928).

Discussion
----------

[Filesystem] toIterable() in favor of toIterator()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Enables to leverage iterable type as of 4.0, but really to avoid any useless `ArrayObject` inits.

Commits
-------

36462d678b [Filesystem] toIterable() in favor of toIterator()
2017-11-12 12:37:31 -08:00
Roland Franssen
36462d678b [Filesystem] toIterable() in favor of toIterator() 2017-11-12 12:37:29 -08:00
Fabien Potencier
b215ed5c23 bumped Symfony version to 3.4.0 2017-11-12 10:07:22 -08:00
Fabien Potencier
d24c43535c updated VERSION for 3.4.0-BETA4 2017-11-12 09:26:52 -08:00
Nicolas Grekas
261dfaebcf Merge branch '3.3' into 3.4
* 3.3:
  fix merge
2017-11-12 17:53:54 +01:00
Nicolas Grekas
239dd62171 fix merge 2017-11-12 17:53:41 +01:00
Nicolas Grekas
2b62887f06 Merge branch '3.3' into 3.4
* 3.3:
  [Console] Fix traversable autocomplete values
  [ExpressionLanguage] Fix PhpDoc type-hints on Token value
  bumped Symfony version to 3.3.12
  updated VERSION for 3.3.11
  updated CHANGELOG for 3.3.11
  bumped Symfony version to 2.8.30
  updated VERSION for 2.8.29
  updated CHANGELOG for 2.8.29
  bumped Symfony version to 2.7.37
  updated VERSION for 2.7.36
  update CONTRIBUTORS for 2.7.36
  updated CHANGELOG for 2.7.36
2017-11-12 17:41:51 +01:00
Nicolas Grekas
4482744527 Merge branch '2.8' into 3.3
* 2.8:
  [Console] Fix traversable autocomplete values
  [ExpressionLanguage] Fix PhpDoc type-hints on Token value
  bumped Symfony version to 2.8.30
  updated VERSION for 2.8.29
  updated CHANGELOG for 2.8.29
  bumped Symfony version to 2.7.37
  updated VERSION for 2.7.36
  update CONTRIBUTORS for 2.7.36
  updated CHANGELOG for 2.7.36
2017-11-12 17:40:29 +01:00
Nicolas Grekas
9f38c69a26 Merge branch '2.7' into 2.8
* 2.7:
  [Console] Fix traversable autocomplete values
  [ExpressionLanguage] Fix PhpDoc type-hints on Token value
  bumped Symfony version to 2.7.37
  updated VERSION for 2.7.36
  update CONTRIBUTORS for 2.7.36
  updated CHANGELOG for 2.7.36
2017-11-12 17:36:54 +01:00
Fabien Potencier
6ab9129693 bug #24874 [TwigBridge] Fixed the .form-check-input class in the bs4 templates (vudaltsov)
This PR was squashed before being merged into the 3.4 branch (closes #24874).

Discussion
----------

[TwigBridge] Fixed the .form-check-input class in the bs4 templates

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

If I am not mistaken, the `form-check-input` class should always be present in inputs of checkboxes and radios

Commits
-------

95a90e4231 [TwigBridge] Fixed the .form-check-input class in the bs4 templates
2017-11-12 08:19:44 -08:00
Valentin
95a90e4231 [TwigBridge] Fixed the .form-check-input class in the bs4 templates 2017-11-12 08:19:42 -08:00
Fabien Potencier
c1dfb4d2eb minor #24922 [DI] Friendlier name for generated container in "as_files" mode (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Friendlier name for generated container in "as_files" mode

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Noticed while looking at Blackfire profiles of a 3.4 app.
Gives friendlier profiles/stack traces.

Commits
-------

7db5d40a26 [DI] Friendlier name for generated container in "as_files" mode
2017-11-12 08:07:35 -08:00
Fabien Potencier
99f8d85116 bug #24929 [Console] Fix traversable autocomplete values (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[Console] Fix traversable autocomplete values

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #... <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

`Question::setAutocompleterValues` implies passing a `\Traversable` value is allowed, yet it doesnt work :) It also restricts the traversable to be countable, which is not really needed (blocking pure API / iterable type as of 4.0).

Commits
-------

965b5b5f8d [Console] Fix traversable autocomplete values
2017-11-12 08:02:36 -08:00
Roland Franssen
965b5b5f8d [Console] Fix traversable autocomplete values 2017-11-11 23:09:14 +01:00
Nicolas Grekas
7db5d40a26 [DI] Friendlier name for generated container in "as_files" mode 2017-11-11 17:18:07 +01:00
Nicolas Grekas
5edd4135ca [Debug] Remove false-positive deprecation from DebugClassLoader 2017-11-11 16:39:06 +01:00
Jeremiah VALERIE
18f0fc594d
[ExpressionLanguage] Fix PhpDoc type-hints on Token value
Also added tests to cover number parser BC
2017-11-11 08:04:00 +01:00
Fabien Potencier
1f7abeaede bumped Symfony version to 3.3.12 2017-11-10 12:20:42 -08:00
Fabien Potencier
cdadc2f9e1 updated VERSION for 3.3.11 2017-11-10 12:08:13 -08:00
Fabien Potencier
f2ac69a378 bumped Symfony version to 2.8.30 2017-11-10 12:07:16 -08:00
Fabien Potencier
9f5adf0a8c updated VERSION for 2.8.29 2017-11-10 11:54:14 -08:00
Fabien Potencier
6fe8435c6f bumped Symfony version to 2.7.37 2017-11-10 11:52:56 -08:00
Fabien Potencier
12135adbd0 updated VERSION for 2.7.36 2017-11-10 11:43:01 -08:00
Fabien Potencier
f1a11817cf fixed CS 2017-11-10 11:30:00 -08:00
Felix Marezki
8464bd0039 HttpCache lock update 2017-11-10 20:24:22 +01:00
Fabien Potencier
11aff9a071 Merge branch '3.3' into 3.4
* 3.3:
  [Intl] Update ICU data to 60.1
  [YAML] Allow to parse custom tags when linting yaml files
  [HttpKernel][Debug] Remove noise from stack frames of deprecations
  [Validator] Fix Costa Rica IBAN format
  [Bridge/ProxyManager] Remove direct reference to value holder property
  [Validator] Add Belarus IBAN format
  [FrameworkBundle] Specifically inject the debug dispatcher in the collector
  [WebserverBundle] fixed the bug that caused that the webserver would …
  update the pull request template
  [Stopwatch] minor fix
2017-11-10 11:03:56 -08:00
Fabien Potencier
e7201245cd Merge branch '2.8' into 3.3
* 2.8:
  [Intl] Update ICU data to 60.1
  [Validator] Fix Costa Rica IBAN format
  [Bridge/ProxyManager] Remove direct reference to value holder property
  [Validator] Add Belarus IBAN format
  [FrameworkBundle] Specifically inject the debug dispatcher in the collector
  update the pull request template
  [Stopwatch] minor fix
2017-11-10 11:02:53 -08:00
Fabien Potencier
e6087d6307 Merge branch '2.7' into 2.8
* 2.7:
  [Intl] Update ICU data to 60.1
  [Validator] Fix Costa Rica IBAN format
  [Bridge/ProxyManager] Remove direct reference to value holder property
  [Validator] Add Belarus IBAN format
  [FrameworkBundle] Specifically inject the debug dispatcher in the collector
  update the pull request template
  [Stopwatch] minor fix
2017-11-10 10:59:36 -08:00
Fabien Potencier
2110dc3a70 bug #24909 [Intl] Update ICU data to 60.1 (jakzal)
This PR was squashed before being merged into the 2.7 branch (closes #24909).

Discussion
----------

[Intl] Update ICU data to 60.1

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

http://site.icu-project.org/download/60

All tests are passing, including those from the intl-data group.

Commits
-------

cf04e7cefe [Intl] Update ICU data to 60.1
2017-11-10 10:28:11 -08:00
Jakub Zalas
cf04e7cefe [Intl] Update ICU data to 60.1 2017-11-10 10:28:06 -08:00
Fabien Potencier
35f300de55 bug #24870 [YAML] Allow to parse custom tags when linting yaml files (pierredup)
This PR was squashed before being merged into the 3.3 branch (closes #24870).

Discussion
----------

[YAML] Allow to parse custom tags when linting yaml files

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | N/A
| License       | MIT
| Doc PR        | N/A

When using custom tags in yaml, currently the `lint:yaml` command fails since the flag `Yaml::PARSE_CUSTOM_TAGS` is not passed through

Commits
-------

d8dd91d919 [YAML] Allow to parse custom tags when linting yaml files
2017-11-10 10:26:05 -08:00
Pierre du Plessis
d8dd91d919 [YAML] Allow to parse custom tags when linting yaml files 2017-11-10 10:26:04 -08:00
Nicolas Grekas
f154be3207 [HttpKernel][Debug] Remove noise from stack frames of deprecations 2017-11-10 17:38:39 +01:00
Fabien Potencier
9b3bf5d63f minor #24895 [Debug] More aggressively aggregate silenced notices per file+line (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Debug] More aggressively aggregate silenced notices per file+line

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24625
| License       | MIT
| Doc PR        | -

By aggregating silenced notices (deprecations mostly) per file+line instead of just per message, we loose some accuracy, but gain performance.

Commits
-------

9ab7559fb5 [Debug] More aggressively aggregate silenced notices per file+line
2017-11-10 08:05:54 -08:00
Fabien Potencier
bf5203102a feature #24887 [Cache][Lock] Add RedisProxy for lazy Redis connections (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[Cache][Lock] Add RedisProxy for lazy Redis connections

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24865
| License       | MIT
| Doc PR        | -

That's the only provider that is not lazy by default, leading to bad DX (see linked issue.)
Best reviewed [ignoring whitespaces](https://github.com/symfony/symfony/pull/24887/files?w=1).

Commits
-------

1f5e3538d8 [Cache][Lock] Add RedisProxy for lazy Redis connections
2017-11-10 07:24:34 -08:00
Fabien Potencier
b1ad577263 bug #24900 [Validator] Fix Costa Rica IBAN format (Bozhidar Hristov)
This PR was squashed before being merged into the 2.7 branch (closes #24900).

Discussion
----------

[Validator] Fix Costa Rica IBAN format

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | no
| License       | MIT
| Doc PR        | no

Fix Costa Rica IBAN format: https://bank.codes/iban/structure/costa-rica/

Commits
-------

b9b5e18f8b [Validator] Fix Costa Rica IBAN format
2017-11-10 07:11:42 -08:00
Bozhidar Hristov
b9b5e18f8b [Validator] Fix Costa Rica IBAN format 2017-11-10 07:11:41 -08:00
Bozhidar Hristov
128f2fa14e [Validator] Add Belarus IBAN format 2017-11-10 14:40:09 +02:00
Roland Franssen
2269f70180 [Config] Fix cannotBeEmpty() 2017-11-10 11:31:31 +01:00
Nicolas Grekas
9ab7559fb5 [Debug] More aggressively aggregate silenced notices per file+line 2017-11-10 10:14:26 +01:00
Nicolas Grekas
cf4eb4602a [HttpFoundation] minor session-related fix 2017-11-10 08:36:19 +01:00
Nicolas Grekas
1f5e3538d8 [Cache][Lock] Add RedisProxy for lazy Redis connections 2017-11-10 08:19:32 +01:00
Fabien Potencier
a3e0e49094 minor #24872 [DI] Add "container.hot_path" tag to flag the hot path and inline related services (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Add "container.hot_path" tag to flag the hot path and inline related services

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

This PR is the result of my quest to squeeze some performance out of 3.4/4.0.

It builds on two ideas:
- a new `container.inline` tag that identifies the services that are *always* needed. This tag is only applied to a very short list of bootstrapping services (`router`, `event_dispatcher`, `http_kernel` and `request_stack` only). Then, it is propagated to all dependencies of these services, with a special case for event listeners, where only listed events are propagated to their related listeners.
- replacing the PHP autoloader by plain inlined `require_once` in generated service factories, with the benefit of completely bypassing the autoloader for services and their class hierarchy.

The end result is significant, even on a simple Hello World.
Here is the Blackfire profile, results are consistent with `ab` benchmarks:

https://blackfire.io/profiles/compare/b5fa5ef0-755c-4967-b990-572305f8f381/graph

![capture du 2017-11-08 16-54-28](https://user-images.githubusercontent.com/243674/32558666-a3f439b2-c4a5-11e7-83a3-db588c3e21e5.png)

Commits
-------

f7cb559a06 [DI] Add "container.hot_path" tag to flag the hot path and inline related services
2017-11-09 06:24:55 -08:00
Nicolas Grekas
f7cb559a06 [DI] Add "container.hot_path" tag to flag the hot path and inline related services 2017-11-09 15:14:31 +01:00
Nicolas Grekas
2c0dc745d6 [HttpFoundation] Prevent PHP from sending Last-Modified on session start 2017-11-09 12:02:13 +01:00
Nicolas Grekas
e78d1c4551 Micro optim using explicit root namespaces 2017-11-07 21:33:43 +01:00
Nicolas Grekas
82ce33d5eb [3.4] Remove useless docblocks 2017-11-07 15:28:09 +01:00
Nicolas Grekas
5420cfca36 [Stopwatch] minor fix 2017-11-07 15:25:27 +01:00
Nicolas Grekas
629895c3ef Merge branch '3.3' into 3.4
* 3.3:
  [3.3] More docblock fixes
  [2.7] More docblock fixes
2017-11-07 15:20:24 +01:00
Nicolas Grekas
7b6cabad22 [3.3] More docblock fixes 2017-11-07 15:16:22 +01:00
Nicolas Grekas
d3d32d9deb Merge branch '2.8' into 3.3
* 2.8:
  [2.7] More docblock fixes
2017-11-07 15:12:55 +01:00
Nicolas Grekas
72b92c351e Merge branch '2.7' into 2.8
* 2.7:
  [2.7] More docblock fixes
2017-11-07 15:08:47 +01:00
Nicolas Grekas
ac671ac68c [2.7] More docblock fixes 2017-11-07 15:04:08 +01:00
Nicolas Grekas
b2edd51177 bug #24850 [DI] Fix cannot bind env var (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Fix cannot bind env var

| Q             | A
| ------------- | ---
| Branch?       | 3.4 <!-- see comment below -->
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #24845 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

In #24602 we removed the processing of bindings from the `AbstractRecursivePass`. But there is actually one case where we want a recursive pass to process them: to resolve env param placeholders.

Commits
-------

f8f3a15 [DI] Fix cannot bind env var
2017-11-07 14:40:01 +01:00
Nicolas Grekas
88f228b9cd minor #24846 Fix some signatures in PHP-DSLs (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

Fix some signatures in PHP-DSLs

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

af85431 Fix some signatures in PHP-DSLs
2017-11-07 13:12:57 +01:00
Nicolas Grekas
c4ae73939e Merge branch '3.3' into 3.4
* 3.3:
  Random fixes
  Docblock fixes
  [HttpKernel] Enhance deprecation message
  [SecurityBundle] Fix the datacollector to properly support decision.object being null
2017-11-07 13:10:25 +01:00
Nicolas Grekas
49e57636f2 Random fixes 2017-11-07 13:07:19 +01:00
Nicolas Grekas
39a5801fc9 Merge branch '2.8' into 3.3
* 2.8:
  Docblock fixes
2017-11-07 12:58:40 +01:00
Nicolas Grekas
96dcb10a80 Merge branch '2.7' into 2.8
* 2.7:
  Docblock fixes
2017-11-07 12:56:23 +01:00
Nicolas Grekas
b56bfe7d8a Docblock fixes 2017-11-07 12:54:30 +01:00
Maxime Steinhausser
f8f3a15b7a [DI] Fix cannot bind env var 2017-11-07 09:01:11 +01:00
Nicolas Grekas
af8543107a Fix some signatures in PHP-DSLs 2017-11-06 21:11:38 +01:00
Nicolas Grekas
52b06f1c21 [Security] Validate redirect targets using the session cookie domain 2017-11-06 18:06:45 +01:00
Fabien Potencier
cbd42f7fa0 minor #24610 [HttpKernel] Enhance deprecation message (delboy1978uk)
This PR was squashed before being merged into the 3.3 branch (closes #24610).

Discussion
----------

[HttpKernel] Enhance deprecation message

Q | A
-- | --
Branch? | 3.4
Bug fix? | no
New feature? | no
BC breaks? | no
Deprecations? | no (Docblock with info on how to handle deprecation)
Tests pass? | yes
Fixed tickets | NA
License | MIT
Doc PR | symfony/symfony-docs#...

Commits
-------

9e9d01684e [HttpKernel] Enhance deprecation message
2017-11-06 01:12:10 -08:00
Derek Stephen McLean
9e9d01684e [HttpKernel] Enhance deprecation message 2017-11-06 01:12:09 -08:00
Fabien Potencier
0aedd686dd bumped Symfony version to 3.4.0 2017-11-05 15:20:14 -08:00
Fabien Potencier
f317976fcf updated VERSION for 3.4.0-BETA3 2017-11-05 14:51:48 -08:00
Nicolas Grekas
eaeb820ee2 Merge branch '3.3' into 3.4
* 3.3:
  [HttpFoundation] Fix forward-compat of NativeSessionStorage with PHP 7.2
2017-11-05 20:07:09 +01:00
Nicolas Grekas
ed52036412 Merge branch '2.8' into 3.3
* 2.8:
  [HttpFoundation] Fix forward-compat of NativeSessionStorage with PHP 7.2
2017-11-05 20:07:00 +01:00
Nicolas Grekas
9ca5069cb4 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Fix forward-compat of NativeSessionStorage with PHP 7.2
2017-11-05 20:06:07 +01:00
Samuel ROZE
00a1357d82 [HttpFoundation] Fix forward-compat of NativeSessionStorage with PHP 7.2 2017-11-05 19:48:11 +01:00
Nicolas Grekas
e7cfaa9129 Remove useless phpdoc 2017-11-05 19:13:53 +01:00
Nicolas Grekas
db12a9872d [DI] Fix the "almost-circular refs" fix 2017-11-05 19:01:07 +01:00
Nicolas Grekas
e81005ed5e [Form] Fix low deps 2017-11-05 18:23:26 +01:00
Nicolas Grekas
51b15695f0 Fix merge 2017-11-05 18:11:12 +01:00
Nicolas Grekas
31e64bf7c5 Merge branch '3.3' into 3.4
* 3.3:
  [WebProfilerBundle] add missing tests
  Fix dump panel hidden when closing a dump
  FormInterface::getPropertyPath(): PropertyPathInterface|null
  [FrameworkBundle][Routing] Remove unused logger argument
2017-11-05 17:59:57 +01:00
Nicolas Grekas
024bfa4314 Merge branch '2.8' into 3.3
* 2.8:
  [WebProfilerBundle] add missing tests
  Fix dump panel hidden when closing a dump
  FormInterface::getPropertyPath(): PropertyPathInterface|null
  [FrameworkBundle][Routing] Remove unused logger argument
2017-11-05 17:53:00 +01:00
Fabien Potencier
d3054d6666 Merge branch '2.7' into 2.8
* 2.7:
  [WebProfilerBundle] add missing tests
  FormInterface::getPropertyPath(): PropertyPathInterface|null
  [FrameworkBundle][Routing] Remove unused logger argument
2017-11-05 08:18:41 -08:00
Fabien Potencier
4400921629 bug #24665 Fix dump panel hidden when closing a dump (julienfalque)
This PR was merged into the 2.8 branch.

Discussion
----------

Fix dump panel hidden when closing a dump

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | yes-ish
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

In the dump panel of the debug bar, when closing a dump the panel sometimes get hidden:

![before](https://user-images.githubusercontent.com/1736542/31867025-615e9c48-b788-11e7-8329-96716c211523.gif)

This is because when the size of the panel is reduced, if the mouse is not over it anymore, the `:hover` pseudo-class does not apply anymore.

I "fixed" it by setting a min-height on the panel when closing a dump. The min-height is removed when leaving the panel _on purpose_:

![after](https://user-images.githubusercontent.com/1736542/31867054-d01a01cc-b788-11e7-9ef7-8418ae2b3094.gif)

For now I only tested it on Firefox 56 on Arch Linux.

Commits
-------

2e0b263d9c Fix dump panel hidden when closing a dump
2017-11-05 08:13:31 -08:00
Nicolas Grekas
73982760f7 Merge branch '3.3' into 3.4
* 3.3:
  [Serializer] Fix extra attributes when no group specified
  [Intl] Make intl-data tests pass and save language aliases again
  [Console] Fix CommandTester::setInputs() docblock
  [Serializer] readd default argument value
  [VarDumper] fix trailling comma when dumping an exception
  Remove useless docblocks
  [FrameworkBundle] Fix docblocks
  [PropertyInfo] Remove useless docblocks
2017-11-05 17:10:10 +01:00
Julien Falque
2e0b263d9c
Fix dump panel hidden when closing a dump 2017-11-05 16:52:23 +01:00
Fabien Potencier
51cfaf86e0 minor #24740 [Form] Nullable FormInterface::getPropertyPath() (vudaltsov)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Nullable FormInterface::getPropertyPath()

| Q             | A
| ------------- | ---
| Branch?       | 4.0
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | yes
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24560
| License       | MIT
| Doc PR        |

`Symfony\Component\Form\Form::getPropertyPath()` returns `null` when the form has an empty name. It allows for unprefixed children.

```php
<?php

namespace App\Controller;

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Form\Extension\Core\Type\TextType;

class IndexController extends AbstractController
{
    /**
     * @Route(name="index")
     * @Template()
     */
    public function indexAction()
    {
        $form = $this->get('form.factory')
            ->createNamedBuilder('')
            ->add('text', TextType::class)
            ->getForm();

        return [
            'form' => $form->createView(),
        ];
    }
}
```

```html
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Welcome!</title>
    </head>
    <body>
        <form name="" method="post">
            <label for="text">Text</label>
            <input type="text" id="text" name="text">
        </form>
    </body>
</html>
```

But the return type of the `Symfony\Component\Form\FormInterface::getPropertyPath()` is not nullable.

We cannot change the behaviour, obviously. At least it's useful in API controllers.

So I decided to change the doc block of the interface.

Commits
-------

d56632a45f FormInterface::getPropertyPath(): PropertyPathInterface|null
2017-11-05 07:51:20 -08:00
ReenExe
79e8f57337 [HttpFoundation] refactoring: calculate when need 2017-11-05 07:49:31 -08:00
Nicolas Grekas
b354d6ca84 Merge branch '2.8' into 3.3
* 2.8:
  [Intl] Make intl-data tests pass and save language aliases again
  Remove useless docblocks
  [PropertyInfo] Remove useless docblocks
2017-11-05 16:47:03 +01:00
Fabien Potencier
c57cb8e74b bug #24816 [Serializer] Fix extra attributes when no group specified (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[Serializer] Fix extra attributes when no group specified

| Q             | A
| ------------- | ---
| Branch?       | 3.3 <!-- see comment below -->
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #24783 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

~~Two commits, for two possible solutions, but I think the last one is probably the most efficient one, as the first one will also impact normalization and systematically try to intersect allowedAttributes and extractedAttributes.~~

Commits
-------

d1b343c015 [Serializer] Fix extra attributes when no group specified
2017-11-05 07:42:45 -08:00
Fabien Potencier
15ed486ea1 bug #24822 [DI] Fix "almost-circular" dependencies handling (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Fix "almost-circular" dependencies handling

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19362, #24775
| License       | MIT
| Doc PR        | -

In a situation like the following one, we used to trigger a circular reference exception. But this was a false positive, as the reference is resolvable without hitting the circle. Fixing this exception could be considered as a new feature (because no existing config needs it, since it fails). But for 3.4, this should be considered a bug fix, as reported in #24775: not handling this situation now means creating broken service trees.

``` php
$containerBuilder = new ContainerBuilder();

$container->register('foo', FooCircular::class)->setPublic(true)
   ->addArgument(new Reference('bar'));

$container->register('bar', BarCircular::class)
    ->addMethodCall('addFoobar', array(new Reference('foobar')));

$container->register('foobar', FoobarCircular::class)
    ->addArgument(new Reference('foo'));

$foo = $containerBuilder->get('foo');
```

Commits
-------

beb4df712c [DI] Fix "almost-circular" dependencies handling
2017-11-05 07:38:28 -08:00
Nicolas Grekas
9bc9474ff0 Merge branch '2.7' into 2.8
* 2.7:
  [Intl] Make intl-data tests pass and save language aliases again
  Remove useless docblocks
2017-11-05 16:25:56 +01:00
Maxime Steinhausser
d1b343c015 [Serializer] Fix extra attributes when no group specified 2017-11-05 16:20:19 +01:00
Nicolas Grekas
5a3db6781c bug #24814 [Intl] Make intl-data tests pass and save language aliases again (jakzal)
This PR was squashed before being merged into the 2.7 branch (closes #24814).

Discussion
----------

[Intl] Make intl-data tests pass and save language aliases again

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Due to changes in ICU 5.5 aliases were not being saved since that version.

Commits
-------

661a4b6 [Intl] Make intl-data tests pass and save language aliases again
2017-11-05 16:10:08 +01:00
Jakub Zalas
661a4b60d0 [Intl] Make intl-data tests pass and save language aliases again 2017-11-05 16:10:05 +01:00
Nicolas Grekas
49806e05fa minor #24724 Remove useless docblocks (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

Remove useless docblocks

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

2443511 Remove useless docblocks
2017-11-05 16:05:07 +01:00
David Maicher
645f712190 [FrameworkBundle][Config] fix: do not add resource checkers for debug=false 2017-11-05 14:56:21 +01:00
Nicolas Grekas
beb4df712c [DI] Fix "almost-circular" dependencies handling 2017-11-05 13:06:25 +01:00
Maxime Steinhausser
44f6e6db2c [Console] Fix CommandTester::setInputs() docblock 2017-11-05 12:28:12 +01:00
Maxime Steinhausser
daf1bc20c7 minor #24725 [PropertyInfo] Remove useless docblocks (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[PropertyInfo] Remove useless docblocks

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

b58c31f2aa [PropertyInfo] Remove useless docblocks
2017-11-04 14:35:47 +01:00
Maxime Steinhausser
d483410086 minor #24726 [FrameworkBundle] Fix docblocks (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle] Fix docblocks

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

3ebf6ac45b [FrameworkBundle] Fix docblocks
2017-11-04 14:34:20 +01:00
Christian Flothmann
740abbe9ec [Serializer] readd default argument value 2017-11-03 15:12:43 +01:00
Robin Chalas
188eb34a71 Fix reference dump for deprecated nodes 2017-11-03 11:37:20 +01:00
Fabien Potencier
2e3df94f3a bug #24774 [HttpKernel] Let the storage manage the session starts (sroze)
This PR was squashed before being merged into the 3.4 branch (closes #24774).

Discussion
----------

[HttpKernel] Let the storage manage the session starts

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24730
| License       | MIT
| Doc PR        | ø

HttpKernel's request collector should not really care if the session has started or not, be let the storage decide. Without the session, it is not possible to track the redirected pages.

I don't think the consideration of "we should not start the session if not needed by the user's code" applies here as if this is running, that is very likely that the user is running the dev environment anyway.

Commits
-------

95d0b7235f [HttpKernel] Let the storage manage the session starts
2017-11-01 20:21:13 -07:00
Samuel ROZE
95d0b7235f [HttpKernel] Let the storage manage the session starts 2017-11-01 20:21:07 -07:00
Valentin
d56632a45f FormInterface::getPropertyPath(): PropertyPathInterface|null 2017-11-01 12:36:38 +03:00
Amrouche Hamza
fc3fe7f42e
[VarDumper] fix trailling comma when dumping an exception 2017-11-01 08:04:17 +01:00
Maxime Steinhausser
f5855fb039 [Validator] Fix TraceableValidator is reset on data collector instantiation 2017-10-31 17:02:06 +01:00
Fabien Potencier
5c46e393c7 Merge branch '3.3' into 3.4
* 3.3:
  removed extra whitespace
  Removes \n or space when / are empty
  [HttpFoundation] add Early Hints in Reponse to fix test
  Throwing exception if redis and predis unavailable
2017-10-31 08:19:40 -07:00
Fabien Potencier
3b54b3dfbc Merge branch '2.8' into 3.3
* 2.8:
  [HttpFoundation] add Early Hints in Reponse to fix test
2017-10-31 08:19:30 -07:00
Fabien Potencier
f334fb5d83 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] add Early Hints in Reponse to fix test
2017-10-31 08:19:21 -07:00
Amrouche Hamza
71ad77aed3
[HttpFoundation] add Early Hints in Reponse to fix test 2017-10-31 14:48:52 +01:00
Fabien Potencier
996f6ef3cb bumped Symfony version to 3.4.0 2017-10-30 15:52:56 -07:00
Fabien Potencier
33e9a13cac updated VERSION for 3.4.0-BETA2 2017-10-30 15:31:12 -07:00
Fabien Potencier
4ae046fd3c bug #24728 [Bridge\Twig] fix bootstrap checkbox_row to render properly & remove spaceless (arkste)
This PR was squashed before being merged into the 3.4 branch (closes #24728).

Discussion
----------

[Bridge\Twig] fix bootstrap checkbox_row to render properly & remove spaceless

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24711
| License       | MIT
| Doc PR        | -

As discussed in #24711 i reverted the change i did in `bootstrap_3_layout.html.twig` (which caused an unnecessary empty div-container in the vertical-layout), added the `checkbox_row` block to the `bootstrap_3_horizontal_layout.html.twig` and removed `spaceless` (as proposed in #24727).

since i added `{#--#}` in bootstrap 3, i did the same for the same horizontal blocks in bootstrap 4 as well.

I moved the `form_label_class` & `form_group_class` blocks to the top of `bootstrap_3_horizontal_layout.html.twig` & `bootstrap_4_horizontal_layout.html.twig`, this should improve DX as they were spreaded across the file.

#24702 affected the bootstrap 4 horizontal layout as well, so i added the `checkbox_row` block to bootstrap 4 too.

ping @fabpot @nicolas-grekas

Commits
-------

f84749f745 [Bridge\Twig] fix bootstrap checkbox_row to render properly & remove spaceless
2017-10-30 12:07:29 -07:00
Arkadius Stefanski
f84749f745 [Bridge\Twig] fix bootstrap checkbox_row to render properly & remove spaceless 2017-10-30 12:07:24 -07:00
Aaron Scherer
e664c81f12 Throwing exception if redis and predis unavailable 2017-10-30 11:07:15 -07:00
Fabien Potencier
039250acb3 bug #24709 [HttpKernel] Move services reset to Kernel::handle()+boot() (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Move services reset to Kernel::handle()+boot()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24552
| License       | MIT
| Doc PR        | -

This is an alternative to #24697 (which uses middlewares).
This PR adds a new `services_resetter` service that the Kernel calls on 2nd root requests to reset services.
Instead of #24697 which plans for optional enabling of the services reset, this approach moves the responsibility of calling the services resetter to the core Kernel class, so that no configuration/middleware/etc. is required at all, and no overhead exists at all for regular requests.

Commits
-------

4501a3688b [HttpKernel] Move services reset to Kernel
2017-10-30 11:03:10 -07:00
Nicolas Grekas
4501a3688b [HttpKernel] Move services reset to Kernel 2017-10-30 19:01:22 +01:00
Dany Maillard
e375e9ae81 Fix DST 2017-10-30 17:32:34 +10:00
Fabien Potencier
b327a7c100 Merge branch '3.3' into 3.4
* 3.3:
  Fixing a bug where non-existent classes would cause issues
  [SecurityBundle] hotfix: update phpdocs on logout url
  [FrameworkBundle] Do not load property_access.xml if the component isn't installed
  Fixed a few spelling mistakes in Luxembourgish translation
2017-10-29 14:08:13 -07:00
Fabien Potencier
7031b61187 Merge branch '2.8' into 3.3
* 2.8:
  [SecurityBundle] hotfix: update phpdocs on logout url
  [FrameworkBundle] Do not load property_access.xml if the component isn't installed
  Fixed a few spelling mistakes in Luxembourgish translation
2017-10-29 14:07:11 -07:00
Fabien Potencier
4a4f4d2ca2 Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Do not load property_access.xml if the component isn't installed
  Fixed a few spelling mistakes in Luxembourgish translation
2017-10-29 14:04:14 -07:00
Fabien Potencier
e839df9e75 minor #24723 [HttpFoundation] Mark new methods on Response as final (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFoundation] Mark new methods on Response as final

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Commits
-------

a913f70583 [HttpFoundation] Mark new methods on Response as final
2017-10-29 14:00:00 -07:00
Maxime Steinhausser
a1863c3b7c [VarDumper] HtmlDumper: fix collapsing nodes with depth <= maxDepth 2017-10-29 21:21:57 +01:00
Nicolas Grekas
2443511324 Remove useless docblocks 2017-10-29 10:49:53 +01:00
Nicolas Grekas
3ebf6ac45b [FrameworkBundle] Fix docblocks 2017-10-28 20:54:29 +02:00
Nicolas Grekas
b58c31f2aa [PropertyInfo] Remove useless docblocks 2017-10-28 20:53:30 +02:00
Nicolas Grekas
a913f70583 [HttpFoundation] Mark new methods on Response as final 2017-10-28 20:22:29 +02:00
Michel Weimerskirch
7a81576b97 Fixed a few spelling mistakes in Luxembourgish translation
Also adjusted trans-unit "51" to commit #21335
2017-10-28 19:02:43 +02:00
Nicolas Grekas
c7e59b3a5b Merge branch '3.3' into 3.4
* 3.3:
  Ensure DeprecationErrorHandler::collectDeprecations() is triggered
  [FrameworkBundle] Allow to disable assets via framework:assets xml configuration
  fixed $_ENV/$_SERVER precedence in test framework
  [HttpFoundation] Fix FileBag issue with associative arrays
  [DI] Throw when a service name or an alias contains dynamic values (prevent an infinite loop)
  fix the phpdoc that is not really inherited from response
  Minor docblock cleanup
  Remove redundant sprintf arguments.
2017-10-28 18:49:05 +02:00
Nicolas Grekas
e7b555e2c9 Merge branch '2.8' into 3.3
* 2.8:
  [HttpFoundation] Fix FileBag issue with associative arrays
  fix the phpdoc that is not really inherited from response
  Minor docblock cleanup
  Remove redundant sprintf arguments.
2017-10-28 18:47:30 +02:00
Nicolas Grekas
865622e630 Merge branch '2.7' into 2.8
* 2.7:
  [HttpFoundation] Fix FileBag issue with associative arrays
  fix the phpdoc that is not really inherited from response
  Minor docblock cleanup
  Remove redundant sprintf arguments.
2017-10-28 18:44:51 +02:00
Nicolas Grekas
7f746bd621 minor #24701 Config: mark builder property deprecated (bburnichon)
This PR was squashed before being merged into the 3.4 branch (closes #24701).

Discussion
----------

Config: mark builder property deprecated

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        |

`builder` protected property is not used at all in class. Mark as deprecated to enable removing asap. This is to avoid keeping dead code up to symfony `5.0` and still having this dead code in the `4.4` LTS version

Commits
-------

206fb74 Config: mark builder property deprecated
2017-10-28 18:10:23 +02:00
Benoît Burnichon
206fb74381 Config: mark builder property deprecated 2017-10-28 18:10:19 +02:00
Fabien Potencier
4910ac6fe9 bug #24686 Fix $_ENV/$_SERVER precedence in test framework (fabpot)
This PR was merged into the 3.3 branch.

Discussion
----------

Fix $_ENV/$_SERVER precedence in test framework

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

When defining env vars values in `phpunit.xml.dist`, we are using `<env ...>`. PHPUnit registers those env vars in `$_ENV`, but not in `$_SERVER`. This means that those values might not be used by Symfony if env vars defined in `.env` are automatically registered (which is my case).

In any case, I think it makes sense to make `$_ENV` take precedence as this is how we register them in `phpunit.xml.dist`.

Commits
-------

6ed9919d24 fixed $_ENV/$_SERVER precedence in test framework
2017-10-26 09:22:06 -07:00
Tobias Schultze
85551141a5 minor #24613 Remove redundant sprintf argument. (Aliance)
This PR was merged into the 2.7 branch.

Discussion
----------

Remove redundant sprintf argument.

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #22820
| License       | MIT
| Doc PR        | –

cc @fabpot @ogizanagi

Commits
-------

c8012f0448 Remove redundant sprintf arguments.
2017-10-26 16:04:37 +02:00
Tobias Schultze
fdac9e3911 bug #24691 [HttpFoundation] Fix caching of session-enabled pages (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFoundation] Fix caching of session-enabled pages

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24690
| License       | MIT
| Doc PR        | -

Commits
-------

572e02cec5 [HttpFoundation] Fix caching of session-enabled pages
2017-10-26 12:26:53 +02:00
Fabien Potencier
6ed9919d24 fixed $_ENV/$_SERVER precedence in test framework 2017-10-25 18:38:07 -07:00
Fabien Potencier
d744027357 bug #24606 [HttpFoundation] Fix FileBag issue with associative arrays (enumag)
This PR was squashed before being merged into the 2.7 branch (closes #24606).

Discussion
----------

[HttpFoundation] Fix FileBag issue with associative arrays

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |  #24546
| License       | MIT
| Doc PR        |

Commits
-------

8ea2860996 [HttpFoundation] Fix FileBag issue with associative arrays
2017-10-25 18:19:06 -07:00
Jáchym Toušek
8ea2860996 [HttpFoundation] Fix FileBag issue with associative arrays 2017-10-25 18:19:04 -07:00
Kévin Dunglas
14e30857ea [DI] Throw when a service name or an alias contains dynamic values (prevent an infinite loop) 2017-10-25 18:14:47 -07:00
Fabien Potencier
e1daff4a19 bug #24684 [Security] remove invalid deprecation notice on AbstractGuardAuthenticator::supports() (kbond)
This PR was merged into the 3.4 branch.

Discussion
----------

[Security] remove invalid deprecation notice on AbstractGuardAuthenticator::supports()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/16835#issuecomment-339097374
| License       | MIT
| Doc PR        | n/a

This deprecation flag causes a false positive.

Commits
-------

5fb44e767e [Guard] remove invalid deprecation notice
2017-10-25 11:28:42 -07:00
Nicolas Grekas
572e02cec5 [HttpFoundation] Fix caching of session-enabled pages 2017-10-25 18:42:56 +02:00
Nicolas Grekas
b6a0a38c4d [VarDumper] Fix test 2017-10-25 10:48:42 +02:00
Kevin Bond
5fb44e767e
[Guard] remove invalid deprecation notice 2017-10-24 15:52:50 -04:00
Rudy Onfroy
7cd3049454 fix the phpdoc that is not really inherited from response 2017-10-24 20:42:41 +02:00
Robin Chalas
7f9ef83020 Merge branch '3.3' into 3.4
* 3.3:
  fix merge
2017-10-24 16:40:29 +02:00
Robin Chalas
d9746d45b1 fix merge 2017-10-24 16:40:00 +02:00
Nicolas Grekas
1e1b37753c Merge branch '3.3' into 3.4
* 3.3:
  [DI] minor docblock fixes
2017-10-24 16:12:06 +02:00
Nicolas Grekas
7fb9f614ee Merge branch '2.8' into 3.3
* 2.8:
  [DI] minor docblock fixes
2017-10-24 16:05:06 +02:00
Nicolas Grekas
2b95ba3299 Merge branch '2.7' into 2.8
* 2.7:
  [DI] minor docblock fixes
2017-10-24 15:48:52 +02:00
Nicolas Grekas
962687e64f minor #24663 [DI] minor docblock fixes (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] minor docblock fixes

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

As found in #24611

Commits
-------

0c9edaf [DI] minor docblock fixes
2017-10-24 15:38:54 +02:00
Nicolas Grekas
cb5e7912c7 Merge branch '3.3' into 3.4
* 3.3:
  [2.8] Fix some docblocks
  Escape trailing \ in QuestionHelper autocompletion
  [FrameworkBundle][Serializer] Remove outdated condition
  Add "doctrine/annotations" to top-level composer.json
  Fix phpdoc inconsistencies, simplify no-op sprintf.
  Remove inapplicable phpdoc comment
  nit: Fix phpdoc inconsistency and unreachable statement
  Prefer line formatter on missing cli dumper
  [DI] Enhance service locator error message
2017-10-24 14:44:53 +02:00
Nicolas Grekas
c73ee30f6a Merge branch '2.8' into 3.3
* 2.8:
  [2.8] Fix some docblocks
  Escape trailing \ in QuestionHelper autocompletion
  Add "doctrine/annotations" to top-level composer.json
  Remove inapplicable phpdoc comment
  nit: Fix phpdoc inconsistency and unreachable statement
2017-10-24 14:44:43 +02:00
Nicolas Grekas
2627081a90 Merge branch '2.7' into 2.8
* 2.7:
  Escape trailing \ in QuestionHelper autocompletion
  Add "doctrine/annotations" to top-level composer.json
  nit: Fix phpdoc inconsistency and unreachable statement
2017-10-24 14:43:40 +02:00
Nicolas Grekas
2a5759d7b7 feature #24671 [DI] Handle container.autowiring.strict_mode to opt-out from legacy autowiring (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Handle container.autowiring.strict_mode to opt-out from legacy autowiring

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

To preserve BC, autowiring still wires things in hybrid 2.8/3.3 modes.
But 2.8 mode is really a foot gun.
I propose to add a new parameter in SF3.4, to opt-out of this 2.8 mode, and enable this strict mode for all new projects.
WDYT?
(see https://github.com/symfony/recipes/pull/221 for corresponding change on Flex recipe)

Commits
-------

a4a0ae2 [DI] Handle container.autowiring.strict_mode to opt-out from legacy autowiring
2017-10-24 14:37:11 +02:00
Nicolas Grekas
7d97133d2c bug #24624 [Security] Fix missing BC layer for AbstractGuardAuthenticator::getCredentials() (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[Security] Fix missing BC layer for AbstractGuardAuthenticator::getCredentials()

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

If a guard authenticator extends `AbstractGuardAuthenticator` and returns `null` from `getCredentials()`, an `\UnexpectedValueException` is thrown when upgrading to 3.4 because the abstract already implements the new interface.
This triggers a deprecation notice instead.

Commits
-------

b6bb84b [Security] Fix BC layer for AbstractGuardAuthenticator subclasses
2017-10-24 14:22:34 +02:00
Nicolas Grekas
0c9edaf336 [DI] minor docblock fixes 2017-10-24 13:40:19 +02:00
Nicolas Grekas
a4a0ae20ca [DI] Handle container.autowiring.strict_mode to opt-out from legacy autowiring 2017-10-24 09:38:31 +02:00
Fabien Potencier
fe07c25cd1 bug #24635 [DI] Register default env var provided types (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Register default env var provided types

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/23888#discussion_r144703581
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

cc @nicolas-grekas

Commits
-------

3cee7a65de [DI] Register default env var provided types
2017-10-23 08:26:20 -07:00
Nicolas Grekas
1cfd7de0dc [2.8] Fix some docblocks 2017-10-23 15:27:00 +02:00
Alexander Kurilo
0c0f1da67d Escape trailing \ in QuestionHelper autocompletion
Fixes symfony/symfony#24652
Trailing backslash, being unescaped, used to escape closing formatting
tag and, thus, formatting tag appeared in autocompletion
2017-10-22 14:12:24 +03:00
Tyson Andre
c9ddd68ea6 Fix phpdoc inconsistencies, simplify no-op sprintf.
(detected by static analysis)
2017-10-21 13:27:13 -07:00
Tyson Andre
44a21cd195 nit: Fix phpdoc inconsistency and unreachable statement
(detected by static analysis)
2017-10-21 13:19:30 -07:00
Roland Franssen
3cee7a65de [DI] Register default env var provided types 2017-10-21 10:39:15 +02:00
Tyson Andre
e64baf5d41 Fix phpdoc and unnecessary sprintf 2017-10-20 22:45:42 -07:00
Nicolas Grekas
beed426e9a minor #24582 [DI] Enhance service locator error message (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Enhance service locator error message

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24555
| License       | MIT
| Doc PR        | -

See linked issue.

Commits
-------

fdb0ea9 [DI] Enhance service locator error message
2017-10-20 12:00:26 -07:00
Fabien Potencier
1376b4becd Merge branch '3.3' into 3.4
* 3.3: (22 commits)
  [Routing] Fix resource miss
  [Security] Fixed auth provider authenticate() cannot return void
  declare argument type
  [FrameworkBundle][Serializer] Move normalizer/encoders definitions to xml file & remove unnecessary checks
  streamed response should return $this
  $isClientIpsVali is not used
  content can be a resource
  Adding the Form default theme files to be warmed up in Twig's cache
  Remove BC Break label from `NullDumper` class
  Username and password in basic auth are allowed to contain '.'
  Remove obsolete PHPDoc from UriSigner
  [Serializer] YamlEncoder: throw if the Yaml component isn't installed
  [Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed
  [PropertyInfo] Add support for the iterable type
  pdo session fix
  Fixed pathinfo calculation for requests starting with a question mark.  - fix bad conflict resolving issue  - port symfony/symfony#21968 to 3.3+
  Fixed unsetting from loosely equal keys OrderedHashMap
  add DOMElement as return type in Crawler::getIterator to support foreach support in ide
  Fixed mistake in exception expectation
  [Debug] Fix same vendor detection in class loader
  ...
2017-10-20 11:48:32 -07:00
Fabien Potencier
402246ebaa Merge branch '2.8' into 3.3
* 2.8:
  [Routing] Fix resource miss
  [Security] Fixed auth provider authenticate() cannot return void
  declare argument type
  streamed response should return $this
  content can be a resource
  Adding the Form default theme files to be warmed up in Twig's cache
2017-10-20 11:30:21 -07:00
Fabien Potencier
77a74df487 Merge branch '2.7' into 2.8
* 2.7:
  [Security] Fixed auth provider authenticate() cannot return void
  declare argument type
  streamed response should return $this
  content can be a resource
2017-10-20 11:30:07 -07:00
Fabien Potencier
2661da415e bug #24644 [Security] Fixed auth provider authenticate() cannot return void (glye)
This PR was merged into the 2.7 branch.

Discussion
----------

[Security] Fixed auth provider authenticate() cannot return void

| Q             | A
| ------------- | ---
| Branch?       | 2.7 and up
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no (arguably)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

The `AuthenticationManagerInterface` [requires](https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/Security/Core/Authentication/AuthenticationManagerInterface.php#L30) that `authenticate()` must return a TokenInterface, never null. Several authentication providers are violating this. Changed to throw exception instead.

See discussion in earlier PR https://github.com/symfony/symfony/pull/24585 which was changing the docblock rather than the implementations.

Commits
-------

6e18b56b77 [Security] Fixed auth provider authenticate() cannot return void
2017-10-20 11:28:37 -07:00
Fabien Potencier
5e7a03b288 minor #24622 declare type AcceptHeaderItem for array_map (DQNEO)
This PR was merged into the 2.7 branch.

Discussion
----------

declare type AcceptHeaderItem  for array_map

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

In `array_filter` , argument type is declared.
https://github.com/symfony/symfony/blob/2.7/src/Symfony/Component/HttpFoundation/AcceptHeader.php#L133
So It's natural to do so in `array_map` too.

Commits
-------

ab8f5be40c declare argument type
2017-10-20 11:23:47 -07:00
Kévin Dunglas
6610c25cd6 [Routing] Fix resource miss 2017-10-20 11:22:06 -07:00
Gunnstein Lye
6e18b56b77 [Security] Fixed auth provider authenticate() cannot return void
The AuthenticationManagerInterface requires that authenticate() must return a TokenInterface, never null.
Several authentication providers are violating this. Changed to throw exception instead.
2017-10-20 16:23:30 +02:00
Lesnykh Ilia
c8012f0448
Remove redundant sprintf arguments. 2017-10-20 12:44:28 +03:00
DQNEO
ab8f5be40c declare argument type 2017-10-20 13:13:59 +09:00
Ryan Weaver
ce4cf471b9 Improving annotation loader message 2017-10-19 19:13:30 -04:00
Fabien Potencier
0cd875957b minor #24618 content can be a resource (DQNEO)
This PR was merged into the 2.7 branch.

Discussion
----------

content can be a resource

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes (bug in a comment)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Commits
-------

c63742daef content can be a resource
2017-10-19 12:31:53 -07:00
DQNEO
058fb84554 streamed response should return $this 2017-10-19 12:17:47 -07:00
DQNEO
df086fd9b3 $isClientIpsVali is not used 2017-10-19 12:13:33 -07:00
Robin Chalas
b6bb84b8f1 [Security] Fix BC layer for AbstractGuardAuthenticator subclasses 2017-10-19 15:33:28 +02:00
DQNEO
c63742daef content can be a resource 2017-10-19 21:02:09 +09:00
Fabien Potencier
d484f7282a bumped Symfony version to 3.4.0 2017-10-18 15:39:44 -07:00
Fabien Potencier
c000b454c8 updated VERSION for 3.4.0-BETA1 2017-10-18 14:45:50 -07:00
Fabien Potencier
f51d4d4c8f Merge branch '2.8' into 3.3
* 2.8:
  Username and password in basic auth are allowed to contain '.'
  Remove obsolete PHPDoc from UriSigner
  [Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed
  [PropertyInfo] Add support for the iterable type
  pdo session fix
  Fixed unsetting from loosely equal keys OrderedHashMap
  [Debug] Fix same vendor detection in class loader
  Updated the source text and translation
  reject remember-me token if user check fails
2017-10-18 08:00:09 -07:00
Fabien Potencier
5f0a7047ff Merge branch '2.7' into 2.8
* 2.7:
  Username and password in basic auth are allowed to contain '.'
  Remove obsolete PHPDoc from UriSigner
  [Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed
  pdo session fix
  Fixed unsetting from loosely equal keys OrderedHashMap
  [Debug] Fix same vendor detection in class loader
  Updated the source text and translation
  reject remember-me token if user check fails
2017-10-18 07:57:21 -07:00
Fabien Potencier
0ff4480e28 bug #24600 [HttpKernel] Don't bind scalar values to controller method arguments (yceruto)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Don't bind scalar values to controller method arguments

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/24555#issuecomment-337071029
| License       | MIT
| Doc PR        | -

See linked issue.

Let's suppose we have this configuration:
```yaml
services:
    _defaults:
        # ...
        bind:
            $foo: '%foobar%'
```
`$foo` was successfully bound to any controller constructor, but in another controller I have this edit action (nothing to do with the intention of bind such a parameter, but it has the same name):
```php
/**
 * @Route("/{foo}/edit")
 */
public function editAction(string $foo) {}
```
triggering:
> Type error: Argument 1 passed to Symfony\Component\DependencyInjection\Argument\ServiceClosureArgument::__construct() must be an instance of Symfony\Component\DependencyInjection\Reference, string given, called in /home/yceruto/github/symfony/symfony-demo/vendor/symfony/dependency-injection/Compiler/ServiceLocatorTagPass.php on line 81

or after https://github.com/symfony/symfony/pull/24582:
> Invalid service locator definition: only services can be referenced, "string" found for key "foo". Inject parameter values using constructors instead.

Commits
-------

a1df9af20f don't bind scalar values to controller method arguments
2017-10-18 07:28:24 -07:00
Fabien Potencier
2fc9b57f65 bug #24589 Username and password in basic auth are allowed to contain '.' (Richard Quadling)
This PR was merged into the 2.7 branch.

Discussion
----------

Username and password in basic auth are allowed to contain '.'

Initially reported by Fede Isas in https://github.com/beberlei/assert/pull/234

| Q             | A
| ------------- | ---
| Branch?       | 2.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Commits
-------

e5d57dd050 Username and password in basic auth are allowed to contain '.'
2017-10-18 07:25:02 -07:00
Fabien Potencier
79caee2e08 bug #24602 [DI] Do not process bindings in AbstractRecursivePass (chalasr)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Do not process bindings in AbstractRecursivePass

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24559
| License       | MIT
| Doc PR        | n/a

Commits
-------

6a6256c6a8 Do not process bindings in AbstractRecursivePass
2017-10-18 07:16:04 -07:00
Robin Chalas
6a6256c6a8 Do not process bindings in AbstractRecursivePass 2017-10-18 14:27:18 +02:00
Yonel Ceruto
a1df9af20f don't bind scalar values to controller method arguments 2017-10-18 01:50:07 -04:00
Richard Quadling
e5d57dd050 Username and password in basic auth are allowed to contain '.'
Initially reported by Fede Isas in https://github.com/beberlei/assert/pull/234
2017-10-17 13:03:20 +01:00
Edi Modrić
45ac192200 Remove obsolete PHPDoc from UriSigner 2017-10-17 12:11:27 +02:00
Fabien Potencier
45e677e562 bug #24566 Fixed unsetting from loosely equal keys OrderedHashMap (maryo)
This PR was merged into the 2.7 branch.

Discussion
----------

Fixed unsetting from loosely equal keys OrderedHashMap

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24558
| License       | MIT

Commits
-------

ba37cba6c2 Fixed unsetting from loosely equal keys OrderedHashMap
2017-10-16 16:28:28 -07:00
Fabien Potencier
7ac01bc723 minor #24564 add DOMElement as return type in Crawler::getIterator to support foreach support in ide (Haehnchen)
This PR was merged into the 3.3 branch.

Discussion
----------

add DOMElement as return type in Crawler::getIterator to support foreach support in ide

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| License       | MIT

In `Crawler::getIterator` return type is missing so ide (PhpStorm) is not able to provide completion inside foreach statements. This PR adds `DOMElement[]` to it

```php
$crawler = new Crawler('foobar');
foreach($crawler->filter('a') as $link) {
   # support completion
   $link->...
}
```

Commits
-------

2350597288 add DOMElement as return type in Crawler::getIterator to support foreach support in ide
2017-10-16 16:26:23 -07:00
Fabien Potencier
ff459928c9 bug #24570 [Debug] Fix same vendor detection in class loader (Jean-Beru)
This PR was merged into the 2.7 branch.

Discussion
----------

[Debug] Fix same vendor detection in class loader

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

Fix about same vendor detection in ClassLoader. Actually, detected namespace for `Doctrine\ORM\Configuration` is `Doctrine\ORM` instead of `Doctrine\`. So deprecations are triggered for classes in same namespace.

Commits
-------

d2ab0d8019 [Debug] Fix same vendor detection in class loader
2017-10-16 16:22:53 -07:00
Fabien Potencier
1f4025a0ae feature #24523 [HttpFoundation] Make sessions secure and lazy (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpFoundation] Make sessions secure and lazy

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes
| Tests pass?   | not yet
| Fixed tickets | #6388, #6036, #12375, #12325
| License       | MIT
| Doc PR        | -

The `SessionUpdateTimestampHandlerInterface` (new to PHP 7.0) is mostly undocumented, and just not implemented anywhere. Yet, it's required to implement session fixation preventions and lazy write in userland session handlers (there is https://wiki.php.net/rfc/session-read_only-lazy_write which describes the behavior.)

By implementing it, we would make Symfony session handling much better and stronger. Meanwhile, doing some cookie headers management, this also gives the opportunity to fix the "don't start if session is only read issue".

So, here we are for the general idea. Now needs more (and green) tests, and review of course.

Commits
-------

347939c9b3 [HttpFoundation] Make sessions secure and lazy
2017-10-16 15:59:43 -07:00
Nicolas Grekas
fdb0ea9fdd [DI] Enhance service locator error message 2017-10-17 00:51:02 +02:00
Fabien Potencier
d32ecff202 bug #24573 [3.3] Fixed pathinfo calculation for requests starting with a question mark. (syzygymsu)
This PR was merged into the 3.3 branch.

Discussion
----------

[3.3] Fixed pathinfo calculation for requests starting with a question mark.

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24487
| License       | MIT
| Doc PR        | no

Fix of bad merge conflict resolving as mentioned in #24487. Port #21968 to 3.3+

Commits
-------

c17a92259a Fixed pathinfo calculation for requests starting with a question mark.  - fix bad conflict resolving issue  - port symfony/symfony#21968 to 3.3+
2017-10-16 15:36:09 -07:00
Nicolas Grekas
347939c9b3 [HttpFoundation] Make sessions secure and lazy 2017-10-17 00:24:46 +02:00
Kévin Dunglas
7d21caf8dd [Serializer] YamlEncoder: throw if the Yaml component isn't installed 2017-10-16 15:20:00 -07:00
Fabien Potencier
7dac168800 bug #24563 [Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed (dunglas)
This PR was squashed before being merged into the 2.7 branch (closes #24563).

Discussion
----------

[Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no <!-- don't forget to update src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget to update UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #24553
| License       | MIT
| Doc PR        | n/a

Commits
-------

b5246a72ca [Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed
2017-10-16 15:17:03 -07:00
Kévin Dunglas
b5246a72ca [Serializer] ObjectNormalizer: throw if PropertyAccess isn't installed 2017-10-16 15:16:57 -07:00
Kévin Dunglas
a73249db31 [PropertyInfo] Add support for the iterable type 2017-10-16 14:49:07 -07:00
Fabien Potencier
f757cd65e2 minor #24556 [Routing] Ensure uniqueness without repeated check (endroid)
This PR was squashed before being merged into the 3.4 branch (closes #24556).

Discussion
----------

[Routing] Ensure uniqueness without repeated check

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

The RouteCollection ensures uniqueness of resources by using array_unique. The current implementation suffers from the following problems.

1. The array_unique method calls __toString for every element in the array but it is very inefficient in terms of the number of calls made. I.e. if the array has 50 elements it does not do 50 __toString calls. I did some tests with Blackfire in PHP 7.1 and found the following numbers.

25 elements => 240 calls
50 elements => 607 calls
100 elements => 1382 calls
200 elements => 3333 calls

2. The array_unique function is called every time the getResources() method is called, even when the resources did not change in the mean time. Combined with the above this leads to lower performance.

Many applications have a low number of routes so this is not a big issue. But for larger applications or bundles that generate routes (i.e. for CRUD or API / doc generation) this will have a bigger impact.

Commits
-------

16f7281178 [Routing] Ensure uniqueness without repeated check
2017-10-16 13:33:36 -07:00
endroid
16f7281178 [Routing] Ensure uniqueness without repeated check 2017-10-16 13:33:34 -07:00
Fabien Potencier
60adbdd059 bug #24579 pdo session fix (mxp100)
This PR was merged into the 2.7 branch.

Discussion
----------

pdo session fix

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #24456
| License       | MIT
| Doc PR        |

Fix PDO session timestamp out of range for postgres. (branch from 2.7)
P.S. please delete this pull https://github.com/symfony/symfony/pull/24457

Commits
-------

56b29a754c pdo session fix
2017-10-16 13:29:26 -07:00
Yuriy Potemkin
56b29a754c pdo session fix 2017-10-16 20:34:10 +03:00
Anton A. Sumin
c17a92259a Fixed pathinfo calculation for requests starting with a question mark.
- fix bad conflict resolving issue
 - port symfony/symfony#21968 to 3.3+
2017-10-16 13:20:56 +03:00
maryo
ba37cba6c2 Fixed unsetting from loosely equal keys OrderedHashMap 2017-10-15 22:33:56 +02:00