Commit Graph

28204 Commits

Author SHA1 Message Date
Amrouche Hamza
78abc89648
[ExpressionLanguage] throw an SyntaxError instead of letting a undefined index notice 2017-12-07 10:26:22 +01:00
Roland Franssen
a203d31838 [HttpKernel] Decouple exception logging from rendering 2017-12-06 19:15:30 +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
Amrouche Hamza
42760d0d7f
[DoctrineBridge] DoctrineDataCollector comments the non runnable part of the query 2017-12-06 13:00:46 +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
Romain Neutron
6b5ab90b5b
[VarDumper] Allow VarDumperTestTrait expectation to be non-scalar 2017-12-05 13:52:08 +01: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
441cfb98d8 bumped Symfony version to 4.0.2 2017-12-04 16:25:53 -08:00
Fabien Potencier
da67aa7d67 updated VERSION for 4.0.1 2017-12-04 16:18:20 -08: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
3ce9c29ae4 Merge branch '4.0'
* 4.0:
  [Bridge/PhpUnit] Prefer ['argv'] over
  [SecurityBundle] fix setLogoutOnUserChange calls for context listeners
  [SecurityBundle] add note to info text of no-op config option logout_on_user_change
  [DI] Register singly-implemented interfaces when doing PSR-4 discovery
  Fix for missing whitespace control modifier in form layout
2017-12-04 12:24:15 -08:00
Fabien Potencier
4db9c89aeb Merge branch '3.4' into 4.0
* 3.4:
  [Bridge/PhpUnit] Prefer ['argv'] over
2017-12-04 12:23:32 -08:00
Fabien Potencier
0ed6e35bab Merge branch '3.3' into 3.4
* 3.3:
  [Bridge/PhpUnit] Prefer ['argv'] over
2017-12-04 12:23:06 -08:00
Ricardo de Vries
1ff22e6acc [Bridge/PhpUnit] Prefer ['argv'] over 2017-12-04 12:15:54 -08:00
Robin Chalas
fa42a0ccc2 Merge branch '3.4' into 4.0
* 3.4:
  [SecurityBundle] fix setLogoutOnUserChange calls for context listeners
  [DI] Register singly-implemented interfaces when doing PSR-4 discovery
  Fix for missing whitespace control modifier in form layout
2017-12-04 21:15:30 +01:00
Robin Chalas
0152527af3 bug #25272 [SecurityBundle] fix setLogoutOnUserChange calls for context listeners (dmaicher)
This PR was squashed before being merged into the 3.4 branch (closes #25272).

Discussion
----------

[SecurityBundle] fix setLogoutOnUserChange calls for context listeners

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

As pointed out in https://github.com/symfony/symfony/issues/25267 the `setLogoutOnUserChange` method calls were added to the parent definition `security.context_listener` instead of the concrete child definitions `security.context_listener.*`.

ping @iltar @chalasr

Commits
-------

4eff146 [SecurityBundle] fix setLogoutOnUserChange calls for context listeners
2017-12-04 21:03:56 +01:00
David Maicher
4eff1466d6 [SecurityBundle] fix setLogoutOnUserChange calls for context listeners 2017-12-04 21:03:35 +01:00
Nicolas Grekas
4086b12543 Merge branch '3.3' into 3.4
* 3.3:
  Fix for missing whitespace control modifier in form layout
2017-12-04 20:58:42 +01:00
Nicolas Grekas
1f2213a691 Merge branch '2.8' into 3.3
* 2.8:
  Fix for missing whitespace control modifier in form layout
2017-12-04 20:58:26 +01:00
Nicolas Grekas
c865b03fd5 Merge branch '2.7' into 2.8
* 2.7:
  Fix for missing whitespace control modifier in form layout
2017-12-04 20:58:03 +01:00
David Maicher
dec77f1983 [SecurityBundle] add note to info text of no-op config option logout_on_user_change 2017-12-04 20:48:56 +01:00
Fabien Potencier
5b60c8ead7 Merge branch '4.0'
* 4.0:
  fixed tests
2017-12-04 11:39:11 -08:00
Fabien Potencier
bf017a9393 fixed tests 2017-12-04 11:38:58 -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
Fabien Potencier
d259be1cf9 Merge branch '4.0'
* 4.0:
  fixed typo
  [FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash
2017-12-04 11:02:39 -08:00
Fabien Potencier
c3d6af05da Merge branch '3.4' into 4.0
* 3.4:
  fixed typo
  [FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash
2017-12-04 11:02:29 -08:00
Fabien Potencier
24be059ff4 Merge branch '3.3' into 3.4
* 3.3:
  fixed typo
  [FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash
2017-12-04 11:02:15 -08:00
Fabien Potencier
0f0a5764ca fixed typo 2017-12-04 11:01:57 -08:00
Fabien Potencier
d807cea826 Merge branch '4.0'
* 4.0:
  [Security] Adding a GuardAuthenticatorHandler alias
  fixed tests
  moved method to function
  marked method as being internal
  Disallow viewing dot-files in Profiler
2017-12-04 10:55:50 -08:00
Fabien Potencier
3a8ea581af Merge branch '3.4' into 4.0
* 3.4:
  [Security] Adding a GuardAuthenticatorHandler alias
  fixed tests
  moved method to function
  marked method as being internal
  Disallow viewing dot-files in Profiler
2017-12-04 10:54:26 -08:00
Nicolas Grekas
fcd4aa7807 [DI] Register singly-implemented interfaces when doing PSR-4 discovery 2017-12-04 19:49:26 +01:00
Ryan Weaver
844c402171 [Security] Adding a GuardAuthenticatorHandler alias 2017-12-04 10:49:12 -08:00
Fabien Potencier
b646de885c bug #25308 [FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash (Simperfit)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash

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

You can see in the [reproducer](e6509ffcb4) when running `bin/console debug:container` that there an error in the ouput (like in the issue) when using a class with `\` in the service name.

This PR fix this wrong output. (even if that feels more developer thingy when there are xml everywhere ;)

Commits
-------

890edf7c38 [FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash
2017-12-04 10:48:04 -08:00
Fabien Potencier
46a848cff4 Merge branch '3.3' into 3.4
* 3.3:
  fixed tests
  Disallow viewing dot-files in Profiler
2017-12-04 10:37:00 -08:00
Fabien Potencier
11105f3717 fixed tests 2017-12-04 10:36:52 -08:00
Nicolas Grekas
19b03b5d7e Merge branch '4.0'
* 4.0:
  [DI] Fix missing unset leading to false-positive circular ref
  [DI] Fix deep-inlining of non-shared refs
  parse newlines in quoted multiline strings
  Fix collision between view properties and form fields
  Fix collision between view properties and form fields
  [SecurityBundle] Fix compat with HttpFoundation >=3.4
  [DI] turn $private to protected in dumped container, to make cache:clear BC
  Fix collision between view properties and form fields
2017-12-04 19:35:44 +01:00
Nicolas Grekas
8849fb907f Merge branch '3.4' into 4.0
* 3.4:
  [DI] Fix missing unset leading to false-positive circular ref
  [DI] Fix deep-inlining of non-shared refs
  parse newlines in quoted multiline strings
  Fix collision between view properties and form fields
  Fix collision between view properties and form fields
  [SecurityBundle] Fix compat with HttpFoundation >=3.4
  Fix collision between view properties and form fields
2017-12-04 19:34:52 +01:00
Fabien Potencier
783cd69c75 bug #25278 Fix for missing whitespace control modifier in form layout (kubawerlos)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix for missing whitespace control modifier in form layout

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

That single missing whitespace control modifier results in e.g. new line in `data-prototype` attribute when using CollectionType field type in form.

Commits
-------

369075a282 Fix for missing whitespace control modifier in form layout
2017-12-04 10:25:32 -08:00
Fabien Potencier
8a4bb79203 minor #25296 [WebProfiler] Disallow viewing dot-files in Profiler (curry684)
This PR was merged into the 3.3 branch.

Discussion
----------

[WebProfiler] Disallow viewing dot-files in Profiler

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

The file viewer in the profiler should not open files that were specifically intended to be hidden, like specifically .env files, but similarly files like .htaccess that might expose server configuration knowledge.

Added tests validating both the new and old behavior.

Commits
-------

6a2f518e74 Disallow viewing dot-files in Profiler
2017-12-04 10:24:30 -08:00
Fabien Potencier
f37096c66d Merge branch '3.3' into 3.4
* 3.3:
  moved method to function
  marked method as being internal
2017-12-04 10:23:16 -08:00
Fabien Potencier
93e136b306 moved method to function 2017-12-04 10:22:59 -08:00
Fabien Potencier
0829b79c6d Merge branch '2.8' into 3.3
* 2.8:
  marked method as being internal
2017-12-04 10:21:35 -08:00
Fabien Potencier
4dccfefb7c Merge branch '2.7' into 2.8
* 2.7:
  marked method as being internal
2017-12-04 10:21:19 -08:00
Fabien Potencier
0f8ff1583a marked method as being internal 2017-12-04 10:21:12 -08:00
Fabien Potencier
6e390511b1 Merge branch '3.3' into 3.4
* 3.3:
  Fix collision between view properties and form fields
2017-12-04 10:18:35 -08:00
Fabien Potencier
327185ffff bug #25306 [Form][TwigBridge] Fix collision between view properties and form fields (yceruto)
This PR was merged into the 3.4 branch.

Discussion
----------

[Form][TwigBridge] Fix collision between view properties and form fields

| 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        | -

Require https://github.com/symfony/symfony/pull/25236 merged in 3.4

Commits
-------

c330965cfb Fix collision between view properties and form fields
2017-12-04 10:18:07 -08:00
Fabien Potencier
e4ce3129d9 bug #25305 [Form][TwigBridge] Fix collision between view properties and form fields (yceruto)
This PR was merged into the 3.3 branch.

Discussion
----------

[Form][TwigBridge] Fix collision between view properties and form fields

| 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        | -

Require https://github.com/symfony/symfony/pull/25236 merged in 3.3

Commits
-------

888b48a89c Fix collision between view properties and form fields
2017-12-04 10:16:13 -08: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
561767ce65 Merge branch '2.8' into 3.3
* 2.8:
  Fix collision between view properties and form fields
2017-12-04 10:09:49 -08:00
Fabien Potencier
c610a32b4b Merge branch '2.7' into 2.8
* 2.7:
  Fix collision between view properties and form fields
2017-12-04 10:08:18 -08:00
Fabien Potencier
9524396712 bug #25236 [Form][TwigBridge] Fix collision between view properties and form fields (yceruto)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form][TwigBridge] Fix collision between view properties and form fields

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

This introduce a new Twig test function `rootform` that guarantee the right access to the `parent` property of the form view. The rest of the properties (`vars` and `children`) are not used at least inside Symfony repo.

I've chosen this solution because it doesn't [affect the design of the form view class/interface](https://github.com/symfony/symfony/pull/19492/files#diff-f60b55ea46e40b9c4475a1bd361f6940R168) and because [the problem happen only on Twig](fd98722d15/lib/Twig/Extension/Core.php (L1439-L1447)).

More details about the problem here:
* https://github.com/symfony/symfony/issues/24892
* https://github.com/symfony/symfony/pull/19492
* https://github.com/symfony/symfony/pull/23649#discussion_r129244236

_if this is approved_ we should update also:
* [`foundation_5_layout.html.twig`](336600857b/src/Symfony/Bridge/Twig/Resources/views/Form/foundation_5_layout.html.twig (L321-L326)) in `3.3` (done in https://github.com/symfony/symfony/pull/25305)
* [`bootstrap_4_layout.html.twig`](76d356f36a/src/Symfony/Bridge/Twig/Resources/views/Form/bootstrap_4_layout.html.twig (L176)) in `3.4` (done in https://github.com/symfony/symfony/pull/25306)

Commits
-------

8505894988 Fix collision between view properties and form fields
2017-12-04 10:06:36 -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
Fabien Potencier
c08602cb80 bug #25309 [Yaml] parse newlines in quoted multiline strings (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] parse newlines in quoted multiline strings

| 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        |

Commits
-------

b23b957ae9 parse newlines in quoted multiline strings
2017-12-04 09:04:06 -08:00
Fabien Potencier
e566998809 feature #25293 [Routing] Parse PHP constants in YAML routing files (ostrolucky)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[Routing] Parse PHP constants in YAML routing files

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

Commits
-------

6040e5f859 [Routing] Parse PHP constants in YAML routing files
2017-12-04 08:57:32 -08:00
Fabien Potencier
56d1f3ebdf feature #25295 [Translation] Parse PHP constants in YAML translation files (ostrolucky)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[Translation] Parse PHP constants in YAML translation files

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

Commits
-------

d2c85328bc [Translator] Parse PHP constants in YAML translation files
2017-12-04 08:56:32 -08:00
Fabien Potencier
02521164c6 feature #25294 [Serializer] Parse PHP constants in YAML mappings (ostrolucky)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[Serializer] Parse PHP constants in YAML mappings

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

Commits
-------

b82f301b05 [Serializer] Parse PHP constants in YAML mappings
2017-12-04 08:53:20 -08:00
Fabien Potencier
b95a05a8c4 bug #25268 [DI] turn $private to protected in dumped container, to make cache:clear BC (nicolas-grekas)
This PR was merged into the 4.0 branch.

Discussion
----------

[DI] turn $private to protected in dumped container, to make cache:clear BC

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

Turning this property to protected changes nothing to its visibility in practice as the class is final anyway,
but when migrating to SF4.0 from 3.4, the `cache:clear` command chokes with "Compile Error: Access level to srcDevDebugProjectContainer::$privates must be protected".

Let's make it protected to remove this WTF.

Commits
-------

c98d967b0c [DI] turn $private to protected in dumped container, to make cache:clear BC
2017-12-04 08:50:56 -08:00
Amrouche Hamza
890edf7c38
[FrameworkBundle] Fix a bug where a color tag will be shown when passing an antislash 2017-12-04 17:41:23 +01: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
Amrouche Hamza
e8351d8f54
[Workflow] Introduce a Workflow interface 2017-12-04 16:23:01 +01:00
Christian Flothmann
b23b957ae9 parse newlines in quoted multiline strings 2017-12-04 15:51:35 +01:00
Yonel Ceruto
c330965cfb Fix collision between view properties and form fields 2017-12-04 09:06:01 -05:00
Yonel Ceruto
888b48a89c Fix collision between view properties and form fields 2017-12-04 08:54:58 -05:00
Niels Keurentjes
6a2f518e74 Disallow viewing dot-files in Profiler
The file viewer in the profiler should not open files that were meant
to be hidden, like specifically .env files, but similarly files like
.htaccess that might expose server configuration knowledge.
2017-12-04 14:14:51 +01:00
Nicolas Grekas
c9f72e2807 [SecurityBundle] Fix compat with HttpFoundation >=3.4 2017-12-04 13:50:51 +01:00
Nicolas Grekas
5ed5dcf994 Merge branch '4.0'
* 4.0:
  SCA with Php Inspections (EA Extended)
  Add test case for #25264
  Fixed the null value exception case.
  Remove rc/beta suffix from composer.json files
  Ensure services & aliases can be referred to with `__toString`able objects
  Throw an exception is expression language is not installed
  [DI] Cast ids to string, as done on 3.4
  Fail as early and noisily as possible
  [Console][DI] Fail gracefully
  [FrameworkBundle] Fix visibility of a test helper
  [link] clear the cache after linking
  [DI] Trigger deprecation when setting a to-be-private synthetic service
  [Intl] Correct Typehint
  [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:32:14 +01:00
Nicolas Grekas
1da85910c7 Merge branch '3.4' into 4.0
* 3.4:
  SCA with Php Inspections (EA Extended)
  Add test case for #25264
  Fixed the null value exception case.
  Remove rc/beta suffix from composer.json files
  Throw an exception is expression language is not installed
  Fail as early and noisily as possible
  [Console][DI] Fail gracefully
  [FrameworkBundle] Fix visibility of a test helper
  [link] clear the cache after linking
  [DI] Trigger deprecation when setting a to-be-private synthetic service
  [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:31:58 +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
Kuba Werłos
369075a282 Fix for missing whitespace control modifier in form layout 2017-12-04 13:08:37 +01:00
Nicolas Grekas
5f5edf26f2 bug #25241 [Yaml] do not eagerly filter comment lines (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] do not eagerly filter comment lines

| 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        |

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.

Commits
-------

d594038 do not eagerly filter comment lines
2017-12-04 13:05:43 +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
Samuel ROZE
561cd7e317 Add tests on the ContainerBag 2017-12-04 10:48:22 +01:00
Alessandro Lai
93441c1a85
Add test case for #25264 2017-12-04 10:23:02 +01:00
Nicolas Grekas
0e18d3ec2b [DI][FrameworkBundle] Add PSR-11 "ContainerBag" to access parameters as-a-service 2017-12-04 09:41:54 +01:00
Dany Maillard
360a984b0c Add box style table 2017-12-04 17:06:19 +10: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
Tobias Schultze
8e7eac60a3 feature #24637 [FrameworkBundle] Improve the DX of TemplateController when using SF 4 (dunglas)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[FrameworkBundle] Improve the DX of TemplateController when using SF 4

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no
| 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

Tiny DX improvement when using modern Symfony.

Allow to write:

```yaml
# config/routes.yaml
index:
    path: /
    defaults:
      _controller: 'Symfony\Bundle\FrameworkBundle\Controller\TemplateController'
      template: 'homepage.html.twig'
```

Instead of:

```yaml
index:
    path: /
    defaults:
      _controller: 'Symfony\Bundle\FrameworkBundle\Controller\TemplateController::templateAction'
      template: 'homepage.html.twig'
```
I was thinking about doing the same for `RedirectController`, but it's not that easy because it contains two methods.

Commits
-------

6d150550cc [FrameworkBundle] Improve the DX of TemplateController when using SF 4
2017-12-04 02:13:27 +01:00
Valentin
56f24d08c9 Fixed the null value exception case. 2017-12-04 02:10:25 +03:00
Gabriel Ostrolucký
d2c85328bc [Translator] Parse PHP constants in YAML translation files 2017-12-03 23:47:57 +01:00
Gabriel Ostrolucký
b82f301b05 [Serializer] Parse PHP constants in YAML mappings 2017-12-03 23:37:47 +01:00
Gabriel Ostrolucký
6040e5f859 [Routing] Parse PHP constants in YAML routing files 2017-12-03 23:09:33 +01:00
Nicolas Grekas
9fb6a88580 Remove rc/beta suffix from composer.json files 2017-12-03 22:15:09 +01:00
Nicolas Grekas
8cbfa1eaf3 [FrameworkBundle] debug:autowiring: don't list FQCN when they are aliased 2017-12-03 17:25:13 +01:00
Samuel ROZE
11c6b386c6
Ensure services & aliases can be referred to with __toStringable objects 2017-12-03 13:36:40 +00:00
Nicolas Grekas
c98d967b0c [DI] turn $private to protected in dumped container, to make cache:clear BC 2017-12-03 14:10:40 +01:00
Samuel ROZE
75b21e9c86
Throw an exception is expression language is not installed 2017-12-03 13:07:37 +00:00
Nicolas Grekas
483dd134f4 [DI] Cast ids to string, as done on 3.4 2017-12-03 12:09:35 +01:00
Grégoire Paris
3bdeda048b
Fail as early and noisily as possible
Today, I tried using SYMFONY_PHPUNIT_VERSION=6 because I don't really
care about the minor version. I got lots of warnings, followed by
hard-to-understand error messages. This will silence the first warning
and will throw an exception instead.
2017-12-03 00:45:47 +01: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
Fabien Potencier
a603ba0bee feature #25178 [Routing] Allow to set name prefixes from the configuration (sroze)
This PR was squashed before being merged into the 4.1-dev branch (closes #25178).

Discussion
----------

[Routing] Allow to set name prefixes from the configuration

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

This allows setting name prefixes to routes while importing them. Typically, we can then import multiple times a similar file. This was originally requested by 🎸 @chrisguitarguy in https://github.com/symfony/symfony/issues/19612

```yaml
app:
    resource: ../controller/routing.yml

api:
    resource: ../controller/routing.yml
    name_prefix: api_
    prefix: /api
```

```xml
<?xml version="1.0" encoding="UTF-8" ?>
<routes xmlns="http://symfony.com/schema/routing"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://symfony.com/schema/routing
        http://symfony.com/schema/routing/routing-1.0.xsd">

    <import resource="../controller/routing.xml" />
    <import resource="../controller/routing.xml" prefix="/api" name-prefix="api_" />

</routes>
```

Commits
-------

880d7e7436 [Routing] Allow to set name prefixes from the configuration
2017-12-02 08:31:40 -08:00
Samuel ROZE
880d7e7436 [Routing] Allow to set name prefixes from the configuration 2017-12-02 08:31:39 -08:00
Kévin Dunglas
23b5758198
[FrameworkBundle] Fix visibility of a test helper 2017-12-02 16:57:48 +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
Michael Gwynne
5377e28463 [Intl] Correct Typehint 2017-12-01 20:03:44 +00:00
Nicolas Grekas
44fcbd3489 Merge branch '4.0'
* 4.0:
  [DI] Add missing deprecation when fetching private services from ContainerBuilder
  [FrameworkBundle] Rename getDotEnvVars to getDotenvVars
  [DI] Fix false-positive circular exception
  Use a more specific file for detecting the bridge
  [HttpKernel] Fix issue when resetting DumpDataCollector
  bumped Symfony version to 4.0.1
  updated VERSION for 4.0.0
  updated CHANGELOG for 4.0.0
  bumped Symfony version to 3.4.1
  updated VERSION for 3.4.0
  updated CHANGELOG for 3.4.0
2017-12-01 20:21:14 +01:00
Nicolas Grekas
9857419f1a Merge branch '3.4' into 4.0
* 3.4:
  [DI] Add missing deprecation when fetching private services from ContainerBuilder
  [FrameworkBundle] Rename getDotEnvVars to getDotenvVars
  [DI] Fix false-positive circular exception
  Use a more specific file for detecting the bridge
  [HttpKernel] Fix issue when resetting DumpDataCollector
  bumped Symfony version to 3.4.1
  updated VERSION for 3.4.0
  updated CHANGELOG for 3.4.0
2017-12-01 20:20:47 +01:00
Kévin Dunglas
6d150550cc
[FrameworkBundle] Improve the DX of TemplateController when using SF 4 2017-12-01 19:56:17 +01:00
Fabien Potencier
5b360e2684 feature #25237 [VarDumper] add a GMP caster in order to cast GMP resources into string or integer (Simperfit)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[VarDumper] add a GMP caster in order to cast GMP resources into string or integer

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

Do you want to dump that kind of resources ? Then it means that the app you are writing is doing some math... why?! :p

It quite nice the little snow that we have in the north of france right now:
![img_2844](https://user-images.githubusercontent.com/3451634/33472917-8b48913e-d674-11e7-923f-ad951f7f2966.JPG)

Commits
-------

ed2c1af26b [VarDumper] add a GMP caster in order to cast GMP resources into string or integer
2017-12-01 09:50:06 -08:00
Fabien Potencier
2edb7faad5 feature #25166 [WebProfilerBundle] Expose dotenv variables (ro0NL)
This PR was squashed before being merged into the 4.1-dev branch (closes #25166).

Discussion
----------

[WebProfilerBundle] Expose dotenv variables

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes/no
| Fixed tickets | #23951
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!--highly recommended for new features-->

Variant of #23951

![image](https://user-images.githubusercontent.com/1047696/33243493-a6c94484-d2e7-11e7-9cfc-4a886d013f8b.png)

Commits
-------

de33d87abd [WebProfilerBundle] Expose dotenv variables
2017-12-01 09:42:06 -08:00
Roland Franssen
de33d87abd [WebProfilerBundle] Expose dotenv variables 2017-12-01 09:42:05 -08: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
Amrouche Hamza
ed2c1af26b
[VarDumper] add a GMP caster in order to cast GMP resources into string or integer 2017-12-01 16:54:45 +01:00
Nicolas Grekas
93c0b3801c [DI] Add missing deprecation when fetching private services from ContainerBuilder 2017-12-01 16:10:27 +01:00
Fabien Potencier
424cbcc1c5 feature #24785 [Profiler][Translation] Logging false by default and desactivated when using the profiler (Simperfit)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[Profiler][Translation] Logging false by default and desactivated when using the profiler

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

Commits
-------

0252830755 [Profiler][Translation] Logging false by default and desactivated when using the profiler
2017-12-01 06:38:06 -08:00
Fabien Potencier
ee90e05562 feature #24826 [FrameworkBundle] Allow to pass a logger instance to the Router (ogizanagi)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[FrameworkBundle] Allow to pass a logger instance to the Router

| Q             | A
| ------------- | ---
| Branch?       | 4.1 <!-- see comment below -->
| Bug fix?      | no
| New feature?  | yes <!-- 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 | #24739 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

As explained in #24739, this will allow the `UrlGenerator` to log invalid calls when `router.strict_requirements` is `false` (so instead of throwing):

<img width="1064" alt="screenshot 2017-10-29 a 09 57 31" src="https://user-images.githubusercontent.com/2211145/32142080-482bc64e-bc90-11e7-8382-b78b507bae48.PNG">

~~This PR must re-introduce the `logger` argument in the definition along with the `monolog.logger` tag removed for cleaning in #24739, once it's merged up into master.~~ Done

Commits
-------

78f4f88cdd [FrameworkBundle] Allow to pass a logger instance to the Router
2017-12-01 06:36:20 -08:00
Fabien Potencier
3da36e39ec fixed CHANGELOG 2017-12-01 06:34:03 -08:00
Roland Franssen
de137d286e
[FrameworkBundle] Rename getDotEnvVars to getDotenvVars 2017-12-01 15:32:30 +01:00
Fabien Potencier
87f5876842 feature #24937 [DependencyInjection] Added support for variadics in named arguments (PabloKowalczyk)
This PR was squashed before being merged into the 4.1-dev branch (closes #24937).

Discussion
----------

[DependencyInjection] Added support for variadics in named arguments

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

Commits
-------

b5c0e8977c [DependencyInjection] Added support for variadics in named arguments
2017-12-01 06:31:07 -08:00
pkowalczyk
b5c0e8977c [DependencyInjection] Added support for variadics in named arguments 2017-12-01 06:31:04 -08: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
Nicolas Grekas
b9fb27cab2 bug #25226 [HttpKernel] Fix issue when resetting DumpDataCollector (Pierstoval)
This PR was merged into the 3.4 branch.

Discussion
----------

[HttpKernel] Fix issue when resetting DumpDataCollector

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

Fixes issue when resetting the collector and no stopwatch was provided in the constructor.

By the way, current workaround is to `composer require symfony/stopwatch`, so this is not a "big blocker".

Commits
-------

159fedc [HttpKernel] Fix issue when resetting DumpDataCollector
2017-12-01 11:32:03 +01:00
Tim Strehle
b1ab7d0050 [WebProfilerBundle], [TwigBundle] Fix Profiler breaking XHTML pages (Content-Type: application/xhtml+xml) 2017-12-01 11:26:11 +01:00
Yonel Ceruto
8505894988 Fix collision between view properties and form fields 2017-11-30 23:33:59 -05:00
Grégoire Paris
355bbd19fa
Use a more specific file for detecting the bridge
When using bin as a Composer bin-dir, this will break because both
composer.json and bin/simple-phpunit will exist relatively to the
current directory. This change checks for a non-binary file specific to
the bridge that will not have this issue.
Fixes #25228
2017-11-30 20:42:05 +01:00
Alex Rock Ancelet
159fedcef6
[HttpKernel] Fix issue when resetting DumpDataCollector 2017-11-30 20:02:12 +01:00
Fabien Potencier
186fd5c9cf bumped Symfony version to 4.0.1 2017-11-30 09:51:21 -08:00
Fabien Potencier
ddb377e1fd updated VERSION for 4.0.0 2017-11-30 09:43:40 -08: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
bf4b09f9c5 Merge branch '4.0'
* 4.0:
  [HttpFoundation] Add Session::isEmpty(), fix MockFileSessionStorage to behave like the native one
  [HttpKernel] Add a better error messages when passing a private or non-tagged controller
  Test the suggestion of already registered services
  [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
  [DependencyInjection] Add more information to the message when passing miss matching class.
  [HttpKernel] add a test for FilterControllerEvents
2017-11-30 16:12:01 +01:00
Nicolas Grekas
32dfdb30c6 Merge branch '3.4' into 4.0
* 3.4:
  [HttpFoundation] Add Session::isEmpty(), fix MockFileSessionStorage to behave like the native one
  [HttpKernel] Add a better error messages when passing a private or non-tagged controller
  [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 16:11:43 +01: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
Nicolas Grekas
ee71106da5 bug #25155 [DependencyInjection] Detect case mismatch in autowiring (Simperfit, sroze)
This PR was merged into the 4.0 branch.

Discussion
----------

[DependencyInjection] Detect case mismatch in autowiring

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

If there is a case-sensitive typo in the service injection, this will suggest the non-typoed version.

Commits
-------

407f132 Test the suggestion of already registered services
decaf23 [DependencyInjection] Add more information to the message when passing miss matching class.
2017-11-30 15:32:51 +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
Samuel ROZE
407f132e43
Test the suggestion of already registered services 2017-11-30 11:00:15 +00: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
7bab5b2656 Merge branch '4.0'
* 4.0:
  [DI] Fix circular reference when using setters
  [DI] Clear service reference graph
2017-11-29 18:00:02 +01:00
Nicolas Grekas
ff87b4c939 Merge branch '3.4' into 4.0
* 3.4:
  [DI] Fix circular reference when using setters
  [DI] Clear service reference graph
2017-11-29 17:55:50 +01: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
Christian Flothmann
ed2222bb85 Merge branch '4.0'
* 4.0:
  [HttpKernel] Fix race condition when clearing old containers
  [DI] Fix infinite loop in InlineServiceDefinitionsPass
  [HttpKernel] Keep legacy container files for concurrent requests
  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:47:22 +01:00
Christian Flothmann
1897ea087a Merge branch '3.4' into 4.0
* 3.4:
  [HttpKernel] Fix race condition when clearing old containers
  [DI] Fix infinite loop in InlineServiceDefinitionsPass
  [HttpKernel] Keep legacy container files for concurrent requests
  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:42:03 +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
Christian Flothmann
1cada24000 Merge branch '4.0'
* 4.0:
  [HttpKernel] Better handling of legacy cache
  modify definitions only if the do exist
  [DI] Prevent a ReflectionException during cache:clear when the parent class doesn't exist
  [FrameworkBundle] Make MicroKernelTraitTest green
  don't override existing verbosity env var
  [HttpKernel] Read $_ENV when checking SHELL_VERBOSITY
  Remove unreachable code
  bumped Symfony version to 4.0.0
  Automatically enable the CSRF protection if CSRF manager exists
  updated VERSION for 4.0.0-RC2
  updated CHANGELOG for 4.0.0-RC2
  bumped Symfony version to 3.4.0
  adding checks for the expression language
  updated VERSION for 3.4.0-RC2
  updated CHANGELOG for 3.4.0-RC2
2017-11-28 23:07:16 +01:00
Christian Flothmann
d2496ab5d2 Merge branch '3.4' into 4.0
* 3.4:
  [HttpKernel] Better handling of legacy cache
  modify definitions only if the do exist
  [DI] Prevent a ReflectionException during cache:clear when the parent class doesn't exist
  [FrameworkBundle] Make MicroKernelTraitTest green
  don't override existing verbosity env var
  [HttpKernel] Read $_ENV when checking SHELL_VERBOSITY
  Remove unreachable code
  Automatically enable the CSRF protection if CSRF manager exists
  bumped Symfony version to 3.4.0
  adding checks for the expression language
  updated VERSION for 3.4.0-RC2
  updated CHANGELOG for 3.4.0-RC2
2017-11-28 23:05:27 +01: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
Maxime Steinhausser
a44f8a5b1a [FrameworkBundle][Serializer] Remove YamlEncoder definition if Yaml component isn't installed 2017-11-27 18:35:30 +01: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
d954af52c6 minor #25171 [FrameworkBundle] Make MicroKernelTraitTest green (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Make MicroKernelTraitTest green

| 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        | -

Fixes the current failure on PHP 5.6:
```
1) Symfony\Bundle\FrameworkBundle\Tests\Kernel\MicroKernelTraitTest::testAsEventSubscriber

filemtime(): stat failed for /tmp/sf_micro_kernel/KernelTestDebugProjectContainer.php

/home/travis/build/symfony/symfony/src/Symfony/Component/Config/ResourceCheckerConfigCache.php:91
/home/travis/build/symfony/symfony/src/Symfony/Component/Config/ConfigCache.php:60
/home/travis/build/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:585
/home/travis/build/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:137
/home/travis/build/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Tests/Kernel/MicroKernelTraitTest.php:35
```

Commits
-------

01edbf7 [FrameworkBundle] Make MicroKernelTraitTest green
2017-11-27 10:44:27 +01:00
Nicolas Grekas
01edbf7802 [FrameworkBundle] Make MicroKernelTraitTest green 2017-11-27 10:12:25 +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
Robin Lehrmann
771f11b994 added clean option to assets install command 2017-11-26 18:08:33 +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
Christian Flothmann
22192b16d8 fix tests 2017-11-26 16:08:23 +01:00
Gawain Lynch
ced0857560
Remove unreachable code 2017-11-26 14:53:48 +01:00
Robin Chalas
18dd63a4a8 feature #24819 [Console] add setInputs to ApplicationTester and share some code (Simperfit)
This PR was merged into the 4.1-dev branch.

Discussion
----------

[Console] add setInputs to ApplicationTester and share some code

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

I didn't implemented the tests because I don't know how to write them on ApplicationTester.

Commits
-------

ea86ed8 [Console] add setInputs to ApplicationTest and share some code
2017-11-26 02:09:27 +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
Robin Chalas
eb8e2d3301 feature #25131 [SecurityBundle][Security][Translation] trigger some deprecations for legacy methods (xabbuh)
This PR was merged into the 4.0-dev branch.

Discussion
----------

[SecurityBundle][Security][Translation] trigger some deprecations for legacy methods

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

Commits
-------

e3396ea trigger some deprecations for legacy methods
2017-11-26 01:59:00 +01:00
Amrouche Hamza
decaf234dd
[DependencyInjection] Add more information to the message when passing miss matching class. 2017-11-25 14:01:35 +00:00
Fabien Potencier
1d7d564c61 bug #25137 Adding checks for the expression language (weaverryan)
This PR was merged into the 3.4 branch.

Discussion
----------

Adding checks for the expression language

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

If you try to use the expression syntax in DI, this will drastically improve the error message :)

Commits
-------

3502020834 adding checks for the expression language
2017-11-24 08:36:36 -08:00
Fabien Potencier
04e09bd3c6 minor #25133 Proposing Flex-specific error messages in the controller shortcuts (weaverryan)
This PR was merged into the 4.1-dev branch.

Discussion
----------

Proposing Flex-specific error messages in the controller shortcuts

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

This is to help discoverability when you try to use a feature that's not installed. It's opinionated about Flex being installed, which is why this is done on 4.0.

Two of the options relate to configuration. An alternative (if we don't like the short description) is to include a link instead (which could be some short URL - e.g. `http://symfony.com/docs/sessions` would be pretty cool).

Commits
-------

d377b1545b Proposing Flex-specific error messages in the controller shortcuts
2017-11-24 08:20:29 -08:00
Fabien Potencier
d5f04284f9 bug #25151 [FrameworkBundle] Automatically enable the CSRF protection if CSRF manager exists (sroze)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Automatically enable the CSRF protection if CSRF manager exists

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

This will automatically enable the CSRF protection if `CsrfTokenManagerInterface` exists.

Commits
-------

fd4340693c Automatically enable the CSRF protection if CSRF manager exists
2017-11-24 08:16:56 -08:00
Fabien Potencier
e251993ce2 bumped Symfony version to 4.0.0 2017-11-24 07:38:29 -08:00
Samuel ROZE
fd4340693c
Automatically enable the CSRF protection if CSRF manager exists 2017-11-24 15:22:02 +00:00
Fabien Potencier
a76ef07106 updated VERSION for 4.0.0-RC2 2017-11-24 07:21:18 -08:00
Fabien Potencier
e52825e253 bumped Symfony version to 3.4.0 2017-11-24 07:20:16 -08:00
Ryan Weaver
3502020834 adding checks for the expression language 2017-11-24 09:49:28 -05:00
Fabien Potencier
7576174115 updated VERSION for 3.4.0-RC2 2017-11-24 06:48:42 -08:00
Nicolas Grekas
7234bfd56a Merge branch '4.0'
* 4.0:
  [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
  remove more kernel.root_dir parameter refs
  [*Bundle] Replace some kernel.root_dir by kernel.project_dir
  removed some phpdocs
  [Routing] Fix "config-file-relative" annotation loader resources
  Make search in debug:container command case-insensitive
  `resolveEnvPlaceholders` will return a mixed value
  Remove dead code, add missing test
  Update translation commands to work with default paths
  [FrameworkBundle] Fix AssetsInstallCommand
2017-11-24 15:34:34 +01:00
Nicolas Grekas
8b98282821 Merge branch '3.4' into 4.0
* 3.4:
  [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
  remove more kernel.root_dir parameter refs
  [*Bundle] Replace some kernel.root_dir by kernel.project_dir
  removed some phpdocs
  [Routing] Fix "config-file-relative" annotation loader resources
  Make search in debug:container command case-insensitive
  `resolveEnvPlaceholders` will return a mixed value
  Update translation commands to work with default paths
  [FrameworkBundle] Fix AssetsInstallCommand
2017-11-24 15:34:08 +01: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
Fabien Potencier
ca5b15a53b bug #25146 [DI] Dont resolve envs in service ids (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Dont resolve envs in service ids

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

Env placeholders should not be forbidden in **private** service identifiers. Instead, they should just be *not* resolved. This is effectively used in many bundle extensions fr good reasons (see eg. SecurityBundle and linked issue).

Commits
-------

7921255faf [DI] Dont resolve envs in service ids
2017-11-24 05:54:00 -08:00
Fabien Potencier
5c954c79c0 minor #25138 [TwigBundle] Exception page: prefer overflow-wrap to word-break (julienfalque)
This PR was merged into the 3.3 branch.

Discussion
----------

[TwigBundle] Exception page: prefer overflow-wrap to word-break

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

This prevents arbitrary text wrapping, breaks are always made on whitespace when possible:

**Before**
![long-before](https://user-images.githubusercontent.com/1736542/33190369-4c23fb88-d0ac-11e7-8c4d-60e60fc06b83.png)

**After**
![long-after](https://user-images.githubusercontent.com/1736542/33190370-4e449a4e-d0ac-11e7-90bd-6dacca10e9fd.png)

Random breaks inside words can still be made for very long words:

**Before**
![very-long-before](https://user-images.githubusercontent.com/1736542/33190387-83a3572a-d0ac-11e7-8d6b-c19b3812c339.png)

**After**
![very-long-after](https://user-images.githubusercontent.com/1736542/33190388-84cf6724-d0ac-11e7-9756-bb34a0a64bb8.png)

Tested on Chrome 62 (Linux) and Firefox 47 (Linux).

Commits
-------

c7333b1c68 Prefer overflow-wrap to word-break
2017-11-24 05:42:52 -08:00
Nicolas Grekas
7921255faf [DI] Dont resolve envs in service ids 2017-11-24 13:44:22 +01:00
Nicolas Grekas
6cb270702f minor #25115 [*Bundle] Replace some kernel.root_dir by kernel.project_dir (nicolas-grekas, xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[*Bundle] Replace some kernel.root_dir by kernel.project_dir

| 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
-------

92fc2f7 remove more kernel.root_dir parameter refs
4add28b [*Bundle] Replace some kernel.root_dir by kernel.project_dir
2017-11-24 12:33:45 +01:00
Nicolas Grekas
db979e88e8 bug #25113 [Routing] Fix "config-file-relative" annotation loader resources (nicolas-grekas, sroze)
This PR was merged into the 3.3 branch.

Discussion
----------

[Routing] Fix "config-file-relative" annotation loader resources

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

By using the locator in its `supports()` method, the `AnnotationDirectoryLoader` breaks config-relative annotation resources. The workaround is to fallback on `kernel.root_dir`-relative paths, as done in https://github.com/symfony/recipes/blob/master/doctrine/annotations/1.0/config/routes/annotations.yaml
But as you can see, this is rather WTF: extra knowledge is required to know what to type there. All the other loader look relatively to the config file first.

This is a bug, but since this is a slight behavior change, I think it's best to merge it on 3.4.

Commits
-------

f4999d8 Add tests proving it can load annotated files
5998e9d [Routing] Fix "config-file-relative" annotation loader resources
2017-11-24 12:32:34 +01:00
Samuel ROZE
f4999d8af0
Add tests proving it can load annotated files 2017-11-24 10:33:04 +00:00
Johann Pardanaud
a1398f6de4 Create a "isTtySupported" static method 2017-11-24 11:13:34 +01:00
Roland Franssen
bef2618779 [WebProfilerBundle] Reset letter-spacing in toolbar 2017-11-24 10:11:48 +01:00
Julien Falque
c7333b1c68
Prefer overflow-wrap to word-break 2017-11-24 00:09:47 +01:00
Christian Flothmann
92fc2f724b remove more kernel.root_dir parameter refs 2017-11-23 19:10:15 +01:00
Nicolas Grekas
4add28b518 [*Bundle] Replace some kernel.root_dir by kernel.project_dir 2017-11-23 19:10:14 +01:00
Ryan Weaver
d377b1545b Proposing Flex-specific error messages in the controller shortcuts 2017-11-23 13:06:27 -05:00
Fabien Potencier
ceba239662 removed some phpdocs 2017-11-23 07:49:31 -08: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
a824d34555 bug #25109 Make debug:container search command case-insensitive (jzawadzki)
This PR was merged into the 3.3 branch.

Discussion
----------

Make debug:container search command case-insensitive

| Q             | A
| ------------- | ---
| Branch?       | 3.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Fixed tickets | #25107
| License       | MIT
| Doc PR        |

This bug fixes the #25107 - starts from 3.2 services may be written with uppercase (e.g. FQCN) and search fails to match those services.

Commits
-------

c429c3346a Make search in debug:container command case-insensitive
2017-11-23 07:30:24 -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
Christian Flothmann
e3396ea231 trigger some deprecations for legacy methods 2017-11-23 15:53:15 +01:00
Nicolas Grekas
5998e9d7b5 [Routing] Fix "config-file-relative" annotation loader resources 2017-11-23 14:58:49 +01:00
Jerzy Zawadzki
c429c3346a Make search in debug:container command case-insensitive 2017-11-23 13:39:16 +01:00
Nicolas Grekas
7a33b017e9 minor #25128 [SecurityBundle][Console] Remove dead code, add missing test (chalasr)
This PR was merged into the 4.0 branch.

Discussion
----------

[SecurityBundle][Console] Remove dead code, add missing test

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

Commits
-------

190df1a Remove dead code, add missing test
2017-11-23 13:16:27 +01:00
Samuel ROZE
b34d5b77a4
resolveEnvPlaceholders will return a mixed value 2017-11-23 12:10:51 +00:00
Nicolas Grekas
7a70077bec bug #25121 [FrameworkBundle] Fix AssetsInstallCommand (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle] Fix AssetsInstallCommand

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

Fixes a deprecation notice on 3.4, and a failure on 4.0.

Commits
-------

a84efa7 [FrameworkBundle] Fix AssetsInstallCommand
2017-11-23 12:30:09 +01:00
Nicolas Grekas
37baa1de51 Fix merge 2017-11-23 12:13:33 +01:00
Nicolas Grekas
cfdc145dab Merge branch '4.0'
* 4.0:
  [Form] Fixed ContextErrorException in FileType
  [DI] Fix handling of inlined definitions by ContainerBuilder
  [Security] remove unused variable
  [DI] Fix infinite loop when analyzing references
  [Lock][Process][FrameworkBundle] fix tests
  Display a nice error message if the form/serializer component is missing.
  [SecurityBundle] providerIds is undefined error when firewall provider is not specified
  [SecurityBundle] providerIds is undefined error when firewall provider is not specified
  [SecurityBundle] providerIds is undefined error when firewall provider is not specified
  Force phpunit-bridge update (bis)
  [Bridge/PhpUnit] Fix disabling global state preservation
  Incorrect dot on method loadChoices in upgrade doc
2017-11-23 12:04:09 +01:00
Nicolas Grekas
38ddcefc63 Merge branch '3.4' into 4.0
* 3.4:
  [Form] Fixed ContextErrorException in FileType
  [DI] Fix handling of inlined definitions by ContainerBuilder
  [DI] Fix infinite loop when analyzing references
2017-11-23 12:03:24 +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
Christian Flothmann
9fbcfd2413 [Security] remove unused variable 2017-11-23 11:02:03 +01:00
Robin Chalas
190df1ab4b Remove dead code, add missing test 2017-11-23 10:03:09 +01:00
Yonel Ceruto
dc7286625b Update translation commands to work with default paths 2017-11-22 13:43:08 -05:00