Commit Graph

33844 Commits

Author SHA1 Message Date
Nicolas Grekas
9512f268f4 [DI] Add context to service-not-found exceptions thrown by service locators 2017-12-09 20:32:41 +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
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
Fabien Potencier
1aa06b8b06 bug #25380 [FrameworkBundle][Cache] register system cache clearer only if it's used (xabbuh)
This PR was merged into the 3.4 branch.

Discussion
----------

[FrameworkBundle][Cache] register system cache clearer only if it's used

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

Commits
-------

093eb3d40d register system cache clearer only if it's used
2017-12-07 08:52:37 -08:00
Christian Flothmann
093eb3d40d register system cache clearer only if it's used 2017-12-07 17:10:25 +01: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
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
Nicolas Grekas
931fe35e4d bug #25337 Remove Exclusive Lock That Breaks NFS Caching (brianfreytag)
This PR was merged into the 3.4 branch.

Discussion
----------

Remove Exclusive Lock That Breaks NFS Caching

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

#24960 introduced an issue with NFS mounts that do not support exclusive locks. This reverts that change.

FYI @kalessil

Commits
-------

a7ac100 Remove LOCK_EX That Breaks Cache Usage on NFS
2017-12-06 11:09:02 +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
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
46d4a9027c
Merge pull request #25321 from fabpot/release-3.4.1
released v3.4.1
2017-12-04 15:05:15 -08:00
Fabien Potencier
3a2d88fc6a updated VERSION for 3.4.1 2017-12-04 15:05:00 -08:00
Fabien Potencier
0e73257ef0 updated CHANGELOG for 3.4.1 2017-12-04 15:04:54 -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
Fabien Potencier
31e4533f13 bug #25304 [Bridge/PhpUnit] Prefer $_SERVER['argv'] over $argv (ricknox)
This PR was submitted for the master branch but it was squashed and merged into the 3.3 branch instead (closes #25304).

Discussion
----------

[Bridge/PhpUnit] Prefer $_SERVER['argv'] over $argv

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

This makes the script usable even if it is wrapped into another script, which is what some IDEs like PHPStorm do.

Commits
-------

1ff22e6acc [Bridge/PhpUnit] Prefer ['argv'] over
2017-12-04 12:15:54 -08:00
Ricardo de Vries
1ff22e6acc [Bridge/PhpUnit] Prefer ['argv'] over 2017-12-04 12:15:54 -08: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
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
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
Nicolas Grekas
fcd4aa7807 [DI] Register singly-implemented interfaces when doing PSR-4 discovery 2017-12-04 19:49:26 +01:00
Fabien Potencier
4ae47e0fd4 bug #25274 [Security] Adding a GuardAuthenticatorHandler alias (weaverryan)
This PR was submitted for the master branch but it was squashed and merged into the 3.4 branch instead (closes #25274).

Discussion
----------

[Security] Adding a GuardAuthenticatorHandler alias

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | kinda
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | none
| License       | MIT
| Doc PR        | This feature is not currently documented

The `security.authentication.guard_handler` service *is* actually meant to be available for users to use. Specifically, the `authenticateUserAndHandleSuccess()` method is useful to auto-login the user after, for example, registration, but maintain all the behavior of a normal login (success behavior, trigger the login event).

So, it should have an autowiring alias.

Commits
-------

844c402171 [Security] Adding a GuardAuthenticatorHandler alias
2017-12-04 10:49:12 -08: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
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