Commit Graph

2550 Commits

Author SHA1 Message Date
Nicolas Grekas
49e57636f2 Random fixes 2017-11-07 13:07:19 +01:00
Nicolas Grekas
39a5801fc9 Merge branch '2.8' into 3.3
* 2.8:
  Docblock fixes
2017-11-07 12:58:40 +01:00
Nicolas Grekas
96dcb10a80 Merge branch '2.7' into 2.8
* 2.7:
  Docblock fixes
2017-11-07 12:56:23 +01:00
Nicolas Grekas
b56bfe7d8a Docblock fixes 2017-11-07 12:54:30 +01:00
Maxime Steinhausser
f8f3a15b7a [DI] Fix cannot bind env var 2017-11-07 09:01:11 +01:00
Nicolas Grekas
af8543107a Fix some signatures in PHP-DSLs 2017-11-06 21:11:38 +01:00
Nicolas Grekas
db12a9872d [DI] Fix the "almost-circular refs" fix 2017-11-05 19:01:07 +01:00
Nicolas Grekas
73982760f7 Merge branch '3.3' into 3.4
* 3.3:
  [Serializer] Fix extra attributes when no group specified
  [Intl] Make intl-data tests pass and save language aliases again
  [Console] Fix CommandTester::setInputs() docblock
  [Serializer] readd default argument value
  [VarDumper] fix trailling comma when dumping an exception
  Remove useless docblocks
  [FrameworkBundle] Fix docblocks
  [PropertyInfo] Remove useless docblocks
2017-11-05 17:10:10 +01:00
Nicolas Grekas
b354d6ca84 Merge branch '2.8' into 3.3
* 2.8:
  [Intl] Make intl-data tests pass and save language aliases again
  Remove useless docblocks
  [PropertyInfo] Remove useless docblocks
2017-11-05 16:47:03 +01:00
Nicolas Grekas
9bc9474ff0 Merge branch '2.7' into 2.8
* 2.7:
  [Intl] Make intl-data tests pass and save language aliases again
  Remove useless docblocks
2017-11-05 16:25:56 +01:00
Nicolas Grekas
beb4df712c [DI] Fix "almost-circular" dependencies handling 2017-11-05 13:06:25 +01:00
Nicolas Grekas
2443511324 Remove useless docblocks 2017-10-29 10:49:53 +01:00
Nicolas Grekas
c7e59b3a5b Merge branch '3.3' into 3.4
* 3.3:
  Ensure DeprecationErrorHandler::collectDeprecations() is triggered
  [FrameworkBundle] Allow to disable assets via framework:assets xml configuration
  fixed $_ENV/$_SERVER precedence in test framework
  [HttpFoundation] Fix FileBag issue with associative arrays
  [DI] Throw when a service name or an alias contains dynamic values (prevent an infinite loop)
  fix the phpdoc that is not really inherited from response
  Minor docblock cleanup
  Remove redundant sprintf arguments.
2017-10-28 18:49:05 +02:00
Fabien Potencier
4910ac6fe9 bug #24686 Fix $_ENV/$_SERVER precedence in test framework (fabpot)
This PR was merged into the 3.3 branch.

Discussion
----------

Fix $_ENV/$_SERVER precedence in test framework

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

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

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

Commits
-------

6ed9919d24 fixed $_ENV/$_SERVER precedence in test framework
2017-10-26 09:22:06 -07:00
Fabien Potencier
6ed9919d24 fixed $_ENV/$_SERVER precedence in test framework 2017-10-25 18:38:07 -07:00
Kévin Dunglas
14e30857ea [DI] Throw when a service name or an alias contains dynamic values (prevent an infinite loop) 2017-10-25 18:14:47 -07:00
Nicolas Grekas
1e1b37753c Merge branch '3.3' into 3.4
* 3.3:
  [DI] minor docblock fixes
2017-10-24 16:12:06 +02:00
Nicolas Grekas
7fb9f614ee Merge branch '2.8' into 3.3
* 2.8:
  [DI] minor docblock fixes
2017-10-24 16:05:06 +02:00
Nicolas Grekas
2b95ba3299 Merge branch '2.7' into 2.8
* 2.7:
  [DI] minor docblock fixes
2017-10-24 15:48:52 +02:00
Nicolas Grekas
cb5e7912c7 Merge branch '3.3' into 3.4
* 3.3:
  [2.8] Fix some docblocks
  Escape trailing \ in QuestionHelper autocompletion
  [FrameworkBundle][Serializer] Remove outdated condition
  Add "doctrine/annotations" to top-level composer.json
  Fix phpdoc inconsistencies, simplify no-op sprintf.
  Remove inapplicable phpdoc comment
  nit: Fix phpdoc inconsistency and unreachable statement
  Prefer line formatter on missing cli dumper
  [DI] Enhance service locator error message
2017-10-24 14:44:53 +02:00
Nicolas Grekas
2a5759d7b7 feature #24671 [DI] Handle container.autowiring.strict_mode to opt-out from legacy autowiring (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

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

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

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

Commits
-------

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

Discussion
----------

[DI] Register default env var provided types

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

cc @nicolas-grekas

Commits
-------

3cee7a65de [DI] Register default env var provided types
2017-10-23 08:26:20 -07:00
Roland Franssen
3cee7a65de [DI] Register default env var provided types 2017-10-21 10:39:15 +02:00
Tyson Andre
e64baf5d41 Fix phpdoc and unnecessary sprintf 2017-10-20 22:45:42 -07:00
Robin Chalas
6a6256c6a8 Do not process bindings in AbstractRecursivePass 2017-10-18 14:27:18 +02:00
Nicolas Grekas
fdb0ea9fdd [DI] Enhance service locator error message 2017-10-17 00:51:02 +02:00
Nicolas Grekas
2c18da709f Merge branch '3.3' into 3.4
* 3.3:
  [BrowserKit] Handle deprecations triggered in insulated requests
  [Bridge\PhpUnit] Handle deprecations triggered in separate processes
  [Validator] added magic method __isset()  to File Constraint class
  [DI] Fix possible incorrect php-code when dumped strings contains newlines
  [Translation] minor: remove unused variable in test
  never match invalid IP addresses
2017-10-13 15:33:47 +02:00
Nicolas Grekas
17b48edebc Merge branch '2.8' into 3.3
* 2.8:
  [Validator] added magic method __isset()  to File Constraint class
  [DI] Fix possible incorrect php-code when dumped strings contains newlines
  [Translation] minor: remove unused variable in test
  never match invalid IP addresses
2017-10-13 15:32:37 +02:00
Nicolas Grekas
d04c0ea45b Merge branch '2.7' into 2.8
* 2.7:
  [Validator] added magic method __isset()  to File Constraint class
  [DI] Fix possible incorrect php-code when dumped strings contains newlines
  [Translation] minor: remove unused variable in test
  never match invalid IP addresses
2017-10-13 15:30:20 +02:00
Artur Eshenbrener
345f2fc60e [DI] Fix possible incorrect php-code when dumped strings contains newlines 2017-10-12 17:34:26 +02:00
Nicolas Grekas
d3bc436cd2 Merge branch '3.3' into 3.4
* 3.3:
  fix merge
  fix merge
  fix merge
  Fix 7.2 compat layer
  Fix PHP 7.2 support
  [HttpFoundation] Add missing session.lazy_write config option
  [HttpFoundation] Combine Cache-Control headers
  [Form] fix parsing invalid floating point numbers
  Escape command usage when displaying it in the text descriptor
  Use for=ID on radio/checkbox label.
2017-10-10 12:38:39 +02:00
Nicolas Grekas
01c50eb070 Merge branch '2.8' into 3.3
* 2.8:
  fix merge
  Fix 7.2 compat layer
  Fix PHP 7.2 support
  [HttpFoundation] Add missing session.lazy_write config option
  [HttpFoundation] Combine Cache-Control headers
  [Form] fix parsing invalid floating point numbers
  Escape command usage when displaying it in the text descriptor
  Use for=ID on radio/checkbox label.
2017-10-10 12:12:32 +02:00
Nicolas Grekas
e71c4f71f5 fix merge 2017-10-10 12:05:53 +02:00
Nicolas Grekas
d7b3a6234a Merge branch '2.7' into 2.8
* 2.7:
  Fix 7.2 compat layer
  Fix PHP 7.2 support
  [HttpFoundation] Add missing session.lazy_write config option
  [HttpFoundation] Combine Cache-Control headers
  [Form] fix parsing invalid floating point numbers
  Escape command usage when displaying it in the text descriptor
  Use for=ID on radio/checkbox label.
2017-10-10 09:42:03 +02:00
Fabien Potencier
d48bcbfcf6 feature #24484 [DI] Throw accurate failures when accessing removed services (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Throw accurate failures when accessing removed services

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

See linked issue.
This will throw a useful message when accessing a removed service.
When setting a removed service, a deprecation notice will be thrown also so that in master we can throw an exception then.

Commits
-------

fe7f26d4f3 [DI] Throw accurate failures when accessing removed services
2017-10-09 21:07:35 -07:00
Fabien Potencier
5904d34125 bug #24488 [DI] Prefixed env vars and load time inlining are incompatible (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Prefixed env vars and load time inlining are incompatible

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

That's because env var processors are not registered yet.

Commits
-------

91c9287c55 [DI] Prefixed env vars and load time inlining are incompatible
2017-10-09 21:05:35 -07:00
Fabien Potencier
7f899a965a bug #24468 [DI] Turn private defs to non-public ones before removing passes (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Turn private defs to non-public ones before removing passes

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

As spotted by @stof in https://github.com/symfony/symfony/issues/24465#issuecomment-334786670.

Commits
-------

e5d0934b87 [DI] Turn private defs to non-public ones before removing passes
2017-10-09 21:03:01 -07:00
Nicolas Grekas
fdf285b5c9 Fix 7.2 compat layer 2017-10-09 20:05:34 +02:00
Nicolas Grekas
91c9287c55 [DI] Prefixed env vars and load time inlining are incompatible 2017-10-09 19:43:01 +02:00
Fabien Potencier
f756fb8b5b bug #24491 [DI] Exclude inline services declared in XML from autowiring candidates (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Exclude inline services declared in XML from autowiring candidates

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

As reported in #24311, inline services should not be candidates for autowiring.
This PR fixes the issue, but is submitted against 3.4 because there is a potential BC break here, for ppl that didn't realize they relied on this (already deprecated) behavior.
We *could* not merge this PR and consider the deprecation is fine - but in practice, the WTF is hitting several ppl already AFAIK, so we should close that door IMHO.

Commits
-------

d90e7212ea [DI] Exclude inline services declared in XML from autowiring candidates
2017-10-09 10:13:32 -07:00
Nicolas Grekas
92f621fcf7 Merge branch '3.3' into 3.4
* 3.3:
  [Bridge\PhpUnit] Fix infinite loop when running isolated method
  remove unused fixtures file
  parse references on merge keys with objects
2017-10-09 16:52:13 +02:00
Nicolas Grekas
d90e7212ea [DI] Exclude inline services declared in XML from autowiring candidates 2017-10-08 16:39:03 +02:00
Nicolas Grekas
dca930f579 [DI] Remove colon from env placeholders 2017-10-08 11:22:35 +02:00
Nicolas Grekas
fe7f26d4f3 [DI] Throw accurate failures when accessing removed services 2017-10-07 23:38:34 +02:00
Nicolas Grekas
e5d0934b87 [DI] Turn private defs to non-public ones before removing passes 2017-10-07 10:21:26 +02:00
Christian Flothmann
3702e5ff37 remove unused fixtures file 2017-10-06 17:17:51 +02:00
Nicolas Grekas
51a1b57c67 fix merge 2017-10-05 17:24:04 +02:00
Nicolas Grekas
c674bd7613 Merge branch '3.3' into 3.4
* 3.3:
  [FrameworkBundle] Fix bad interface hint in AbstractController
  [DI] Improve some deprecation messages
  [Cache] Fix race condition in TagAwareAdapter
  [Yaml] parse references on merge keys
  treat trailing backslashes in multi-line strings
2017-10-05 16:46:27 +02:00
Fabien Potencier
d6b68e19e5 Merge branch '3.3' into 3.4
* 3.3:
  [Config] Fix dumped files invalidation by OPCache
  [DI] Allow setting any public non-initialized services
2017-10-04 11:58:07 -07:00
Nicolas Grekas
3e8076023d [DI] Improve some deprecation messages 2017-10-04 19:15:30 +02:00
Tobias Schultze
d779845c3b [DI] remove inheritdoc from dumped container 2017-10-04 18:30:17 +02:00
Nicolas Grekas
d314b1ff62 [DI] Allow setting any public non-initialized services 2017-10-04 09:45:46 +02:00
Maxime Steinhausser
f9aeee5e63 [DI] Fix missing CHANGELOG update + typo 2017-10-02 14:00:46 +02:00
Nicolas Grekas
d6972d4233 Merge branch '3.3' into 3.4
* 3.3:
  fix merge
  Fix in simple-phpunit script
2017-10-02 09:23:43 +02:00
Nicolas Grekas
e36a69710e Merge branch '2.8' into 3.3
* 2.8:
  fix merge
2017-10-02 09:18:51 +02:00
Nicolas Grekas
ef4f532395 fix merge 2017-10-02 09:17:52 +02:00
Nicolas Grekas
90986f4502 fix merge 2017-10-02 09:00:01 +02:00
Nicolas Grekas
fedcc91c8d Merge branch '3.3' into 3.4
* 3.3: (23 commits)
  Tests and fix for issue in array model data in EntityType field with multiple=true
  [Form] Fixed PercentToLocalizedStringTransformer to accept both comma and dot as decimal separator, if possible
  removed useless PHPDoc
  [Form] Fix FormInterface::submit() annotation
  [PHPUnitBridge] don't remove when set to  empty string
  PdoSessionHandler: fix advisory lock for pgsql when session.sid_bits_per_character > 4
  HttpCache does not consider ESI resources in HEAD requests
  Fix translation for "This field was not expected"
  [Routing] Enhance Route(Collection) docblocks
  Added improvement for accuracy in MoneyToLocalizedStringTransformer.
  Removed unused private property
  Use correct verb form in the pull request template
  Use PHP_MAXPATHLEN in Filesystem.
  Added null as explicit return type (?TokenInterface)
  [FrameworkBundle] Fix Routing\DelegatingLoader
  Render all line breaks according to the exception message
  [Form] Fix phpdoc
  [DI] remove confusing code
  [Form] Fixed GroupSequence with "constraints" option
  [Validator] Clarify UUID validator behavior
  ...
2017-10-02 08:49:52 +02:00
Nicolas Grekas
a707bbf090 Merge branch '2.8' into 3.3
* 2.8: (22 commits)
  Tests and fix for issue in array model data in EntityType field with multiple=true
  [Form] Fixed PercentToLocalizedStringTransformer to accept both comma and dot as decimal separator, if possible
  removed useless PHPDoc
  [Form] Fix FormInterface::submit() annotation
  PdoSessionHandler: fix advisory lock for pgsql when session.sid_bits_per_character > 4
  HttpCache does not consider ESI resources in HEAD requests
  Fix translation for "This field was not expected"
  [Routing] Enhance Route(Collection) docblocks
  Added improvement for accuracy in MoneyToLocalizedStringTransformer.
  Removed unused private property
  Use correct verb form in the pull request template
  Use PHP_MAXPATHLEN in Filesystem.
  Added null as explicit return type (?TokenInterface)
  [FrameworkBundle] Fix Routing\DelegatingLoader
  Render all line breaks according to the exception message
  [Form] Fix phpdoc
  [DI] remove confusing code
  [Form] Fixed GroupSequence with "constraints" option
  [Validator] Clarify UUID validator behavior
  [Filesystem] Fixed makePathRelative
  ...
2017-10-02 08:42:24 +02:00
Nicolas Grekas
d4cbc70c50 Merge branch '2.7' into 2.8
* 2.7: (22 commits)
  Tests and fix for issue in array model data in EntityType field with multiple=true
  [Form] Fixed PercentToLocalizedStringTransformer to accept both comma and dot as decimal separator, if possible
  removed useless PHPDoc
  [Form] Fix FormInterface::submit() annotation
  PdoSessionHandler: fix advisory lock for pgsql when session.sid_bits_per_character > 4
  HttpCache does not consider ESI resources in HEAD requests
  Fix translation for "This field was not expected"
  [Routing] Enhance Route(Collection) docblocks
  Added improvement for accuracy in MoneyToLocalizedStringTransformer.
  Removed unused private property
  Use correct verb form in the pull request template
  Use PHP_MAXPATHLEN in Filesystem.
  Added null as explicit return type (?TokenInterface)
  [FrameworkBundle] Fix Routing\DelegatingLoader
  Render all line breaks according to the exception message
  [Form] Fix phpdoc
  [DI] remove confusing code
  [Form] Fixed GroupSequence with "constraints" option
  [Validator] Clarify UUID validator behavior
  [Filesystem] Fixed makePathRelative
  ...
2017-10-01 23:00:16 +02:00
Fabien Potencier
72cc5df5fc minor #24342 removed useless PHPDoc (OskarStark)
This PR was squashed before being merged into the 2.7 branch (closes #24342).

Discussion
----------

removed useless PHPDoc

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

Commits
-------

5ee9043d8b removed useless PHPDoc
2017-09-30 07:00:25 -07:00
Oskar Stark
5ee9043d8b removed useless PHPDoc 2017-09-30 07:00:23 -07:00
Maxime Steinhausser
260d2f02d8 [DI] EnvVarProcessorInterface: fix missing use 2017-09-29 13:52:29 +02:00
Christian Flothmann
ee545bf8d4 Merge branch '3.3' into 3.4
* 3.3:
  include file and line number in deprecation
  parse merge keys with PARSE_OBJECT_FOR_MAP flag
2017-09-29 13:19:35 +02:00
Simon Mönch
1c0701ab85 [DI] Fix typehint 2017-09-29 12:03:48 +02:00
Nicolas Grekas
648a8953dd feature #22200 [DI] Reference tagged services in config (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Reference tagged services in config

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

This is a proof of concept to reference a sequence of tagged services.

The problem bugs me for some time, and at first i thought the solution was to have some super generic compiler pass. If it could replace a lot of compilers in core.. perhaps worth it, but eventually each tag comes with it's own logic, including how to deal with tag attributes.

However, writing the passes over and over again becomes tedious for the most basic usecase. So given the recent developments, this idea came to mind.

```yml
services:
    a:
        class: stdClass
        properties: { a: true }
        tags: [foo]

    b:
        class: stdClass
        properties: { b: true }
        tags: [foo]

    c:
        class: stdClass
        properties:
            #stds: !tagged_services foo (see #22198)
            stds: !tagged_services
                foo
```

```
dump(iterator_to_array($this->get('c')->stds));
```

```
array:2 [▼
  0 => {#5052 ▼
    +"a": true
  }
  1 => {#4667 ▼
    +"b": true
  }
]
```

Given the _basic_ example at https://symfony.com/doc/current/service_container/tags.html, this could replace that.

Any thoughts?

Commits
-------

979e58f [DI] Reference tagged services in config
2017-09-28 17:24:12 +02:00
Christian Flothmann
cf03552033 include file and line number in deprecation 2017-09-28 16:22:01 +02:00
Roland Franssen
979e58f370 [DI] Reference tagged services in config 2017-09-28 16:10:08 +02:00
Christian Flothmann
b7d0b09f31 Merge branch '3.3' into 3.4
* 3.3:
  Set a NullLogger in ApcuAdapter when Apcu is disabled in CLI
  Minor reword
  [HttpKernel] Make array vs "::" controller definitions consistent
  Fix tests
  [TwigBundle] Remove profiler related scripting
  [TwigBundle][WebProfilerBundle] Switch to DOMContentLoaded event
  [WebProfilerBundle] Hide inactive tabs from CSS
  [TwigBundle] Make deprecations scream in logs
  [TwigBundle] Hide logs if unavailable, i.e. webprofiler
  [TwigBundle] Break long lines in exceptions
  [WebProfilerBundle] Added missing link to profile token
  [DI] Fix decorated service merge in ResolveInstanceofConditionalsPass
  Preserve URI fragment in HttpUtils::generateUri()
  [PhpUnitBridge] do not require an error context
2017-09-28 15:03:46 +02:00
Maxime Steinhausser
0a7e5b0d09 [DI] Fix missing use + minor tweaks 2017-09-28 09:59:26 +02:00
Nicolas Grekas
5dcd573ecf bug #24313 [DI] Fix tracking of bound arguments when using autoconfiguration (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Fix tracking of bound arguments when using autoconfiguration

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

An exception is currently thrown when using arguments bindings on an autoconfigured controller action.
This fixes the issue.

Commits
-------

091f943 [DI] Fix tracking of bound arguments when using autoconfiguration
2017-09-26 11:47:50 +02:00
Nicolas Grekas
091f943900 [DI] Fix tracking of bound arguments when using autoconfiguration 2017-09-26 11:38:39 +02:00
Maxime Steinhausser
55aa662480 feature #24295 [DI][DX] Throw exception on some ContainerBuilder methods used from extensions (ogizanagi)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI][DX] Throw exception on some ContainerBuilder methods used from extensions

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | yes <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no (unlikely, that would mean there already was an issue in userland code)
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | #24282 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

Commits
-------

88549fff5b [DI][DX] Throw exception on some ContainerBuilder methods used from extensions
2017-09-26 07:54:41 +02:00
Christian Flothmann
8bf465f48d use the parseFile() method of the YAML parser 2017-09-25 21:59:34 +02:00
Nicolas Grekas
8136fa5050 feature #24290 Adding Definition::addError() and a compiler pass to throw errors as exceptions (weaverryan)
This PR was squashed before being merged into the 3.4 branch (closes #24290).

Discussion
----------

Adding Definition::addError() and a compiler pass to throw errors as exceptions

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes & no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | yes (very minor)
| Tests pass?   | yes
| Fixed tickets | #23606
| License       | MIT
| Doc PR        | Not needed

Hi guys!

Very simple: when there is an error with a Definition, we can now call `Definition::addError()` instead of throwing an exception. Then, a new compiler pass (after removal) actually throws an exception. The advantage is that we can avoid throwing exceptions for services that are ultimately removed from the container. That's important for auto-registration, where we commonly register all services in `src/`... but then many of them are removed later.

A few interesting notes:
- We can probably convert more things from exceptions to `Definition::addError()`. I've only converted autowiring errors and things in `CheckArgumentsValidityPass` (that was necessary because it was throwing exceptions in some cases due to autowiring failing... which was the true error)
- `Definition` can hold multiple errors, but I'm only showing the first error in the exception message. The reason is clarity: I think usually the first error is the most (or only) important. But having `Definition::addError()` avoids the possibility of a later error overriding an earlier one

Cheers!

Commits
-------

a85b37a Adding Definition::addError() and a compiler pass to throw errors as exceptions
2017-09-25 11:29:01 +02:00
Ryan Weaver
a85b37a0e6 Adding Definition::addError() and a compiler pass to throw errors as exceptions 2017-09-25 11:28:57 +02:00
Nicolas Grekas
ec111877fa feature #24301 [DI] Add AutowireRequiredMethodsPass to fix bindings for @required methods (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Add AutowireRequiredMethodsPass to fix bindings for `@required` methods

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

Spotted while doing a SF4 workshop :)

Discovery of `@required` methods should be split from AutowirePass so that bindings can apply to these methods also when autowiring is enabled.

Commits
-------

dc55dd2 [DI] Add AutowireRequiredMethodsPass to fix bindings for `@required` methods
2017-09-25 11:24:50 +02:00
Nicolas Grekas
dc55dd2c99 [DI] Add AutowireRequiredMethodsPass to fix bindings for @required methods 2017-09-25 10:48:11 +02:00
Maxime Steinhausser
88549fff5b [DI][DX] Throw exception on some ContainerBuilder methods used from extensions 2017-09-24 17:28:40 +02:00
Oskar Stark
e17426c65c added missing @author tag for new class 2017-09-24 15:33:47 +02:00
Nicolas Grekas
830f286464 [DI] Dont use JSON_BIGINT_AS_STRING 2017-09-22 11:57:45 +01:00
Nicolas Grekas
701d41cc33 feature #24257 [HttpKernel][DI] Enable Kernel to implement CompilerPassInterface (nicolas-grekas)
This PR was squashed before being merged into the 3.4 branch (closes #24257).

Discussion
----------

[HttpKernel][DI] Enable Kernel to implement CompilerPassInterface

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

In the same spirit as #13761 that allowed DI exts to be also compiler passes, and as #23812 that allowed the kernel to listen to events, in our new bundle-less world, should we allow the kernel to register itself as a compiler pass? That would make some scenario possible (like having a `TestKernel` that turns some services public.)

Commits
-------

6973a1a [HttpKernel][DI] Enable Kernel to implement CompilerPassInterface
2017-09-20 15:13:22 +02:00
Nicolas Grekas
6973a1ae3b [HttpKernel][DI] Enable Kernel to implement CompilerPassInterface 2017-09-20 15:13:20 +02:00
Nicolas Grekas
814cc31e57 [DI] Add "PHP fluent format" for configuring the container 2017-09-20 09:09:19 +02:00
Nicolas Grekas
ff2ab5831a [DI] Fix private-by-default BC layer 2017-09-19 23:28:23 +02:00
Nicolas Grekas
9948b09c6d [DI] Turn services and aliases private by default, with BC layer 2017-09-19 11:28:48 +02:00
Nicolas Grekas
3da645efed [DI] remove confusing code 2017-09-18 17:50:14 +02:00
Kévin Dunglas
2a30908bcd
[DI] Fix decorated service merge in ResolveInstanceofConditionalsPass 2017-09-16 20:21:20 +02:00
Fabien Potencier
40a3466268 Merge branch '3.3' into 3.4
* 3.3:
  CS: recover no_break_comment
  [DI] Fix non-instantiables auto-discovery
2017-09-15 10:11:35 -07:00
Nicolas Grekas
46811fdd01 bug #24199 [DI] Fix non-instantiables auto-discovery (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix non-instantiables auto-discovery

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

Commits
-------

8b7c7c1 [DI] Fix non-instantiables auto-discovery
2017-09-15 15:18:29 +02:00
Nicolas Grekas
4b31b47f08 Merge branch '3.3' into 3.4
* 3.3:
  [CS][2.7] yoda_style, no_unneeded_curly_braces, no_unneeded_final_method, semicolon_after_instruction
  [Filesystem] mirror - fix copying content with same name as source/target.
  Removed unnecessary getDefinition() call.
  .php_cs.dist - simplify config
  [WebProfilerBundle] fixed TemplateManager when using Twig 2 without compat interfaces
2017-09-15 12:12:22 +02:00
Nicolas Grekas
ebbcb7b1be Merge branch '2.8' into 3.3
* 2.8:
  [CS][2.7] yoda_style, no_unneeded_curly_braces, no_unneeded_final_method, semicolon_after_instruction
  [Filesystem] mirror - fix copying content with same name as source/target.
  .php_cs.dist - simplify config
  [WebProfilerBundle] fixed TemplateManager when using Twig 2 without compat interfaces
2017-09-15 12:08:59 +02:00
Nicolas Grekas
6f924755a6 Merge branch '2.7' into 2.8
* 2.7:
  [CS][2.7] yoda_style, no_unneeded_curly_braces, no_unneeded_final_method, semicolon_after_instruction
2017-09-15 11:59:38 +02:00
SpacePossum
3e90138214 [CS][2.7] yoda_style, no_unneeded_curly_braces, no_unneeded_final_method, semicolon_after_instruction 2017-09-15 11:46:57 +02:00
Nicolas Grekas
8b7c7c179b [DI] Fix non-instantiables auto-discovery 2017-09-14 10:50:29 +02:00
Nicolas Grekas
30a13baef3 fix oups 2017-09-13 13:33:28 +02:00
Nicolas Grekas
8729f9fd6a [DI] Resolve nested refs to aliases 2017-09-13 13:21:02 +02:00
Nicolas Grekas
1936491f9b Make as many services private as possible 2017-09-13 09:59:43 +02:00
Fabien Potencier
f46d324d63 Merge branch '3.3' into 3.4
* 3.3:
  fixed CS
  fixed CS
2017-09-11 14:23:16 -07:00
Fabien Potencier
ceae3bf16c fixed CS 2017-09-11 14:23:01 -07:00
Fabien Potencier
ebfb24070c Merge branch '2.8' into 3.3
* 2.8:
  fixed CS
2017-09-11 14:11:44 -07:00
Fabien Potencier
df07e73363 fixed CS 2017-09-11 14:10:59 -07:00
Fabien Potencier
8cb614df9f Merge branch '3.3' into 3.4
* 3.3:
  [CS] Apply phpdoc_annotation_without_dot
  bumped Symfony version to 3.3.10
  updated VERSION for 3.3.9
  updated CHANGELOG for 3.3.9
  [DomCrawler] Fix conversion to int on GetPhpFiles
  Remove `protected_to_private` rule.
  Filtering empty uuids in ORMQueryBuilderLoader.
2017-09-11 13:45:17 -07:00
Fabien Potencier
e844b640de Merge branch '2.8' into 3.3
* 2.8:
  [CS] Apply phpdoc_annotation_without_dot
2017-09-11 13:43:11 -07:00
Fabien Potencier
4e1c65c6f9 Merge branch '2.7' into 2.8
* 2.7:
  [CS] Apply phpdoc_annotation_without_dot
2017-09-11 13:39:16 -07:00
Dariusz
7a97b49436 [CS] Apply phpdoc_annotation_without_dot 2017-09-11 13:37:52 -07:00
Fabien Potencier
7dfb5aa321 feature #24122 [DI] rename ResolveDefinitionTemplatesPass to ResolveChildDefinitionsPass (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] rename ResolveDefinitionTemplatesPass to ResolveChildDefinitionsPass

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

Because that name makes things harder to understand now.
This uses exactly the same BC layer logic as the one we have for the renaming of DefinitionDecorator to ChildDefinition.

Commits
-------

a7f98c60d9 [DI] rename ResolveDefinitionTemplatesPass to ResolveChildDefinitionsPass
2017-09-07 07:45:15 -07:00
Nicolas Grekas
a7f98c60d9 [DI] rename ResolveDefinitionTemplatesPass to ResolveChildDefinitionsPass 2017-09-07 10:45:01 +02:00
Nicolas Grekas
1f92e459db [DI] Allow processing env vars 2017-09-07 08:08:52 +02:00
Nicolas Grekas
e565c6de00 Merge branch '3.3' into 3.4
* 3.3:
  [travis] fix minor php7.0 version
  [travis] add ldap.so for php70
  [HttpFoundation] Fix logic when JsonSerializable is missing
  [travis] update to trusty
  Don't use return on Assert::markTestSkipped.
  Create directories recursively in the PHPUnit bridge
  [Dotenv] Add a BC break note
  Fix ArrayInput::toString() for VALUE_IS_ARRAY options/args
  [ExpressionLanguage] throws an exception on calling uncallable method
2017-09-06 21:03:12 +02:00
Alexander M. Turek
9cadeb8af2 Don't use return on Assert::markTestSkipped. 2017-09-05 22:39:38 +02:00
Nicolas Grekas
61966df131 [DI] There are no initialized-only refs to undeclared services 2017-09-04 19:49:50 +02:00
Nicolas Grekas
2a7f86f85b [3.4][DI] Inline trivial services 2017-09-04 19:14:45 +02:00
Nicolas Grekas
80c0ec1cfd Merge branch '3.3' into 3.4
* 3.3:
  [DI] Minor fix in dumped code
  #24046 added check for ext-dom to XmlUtil::loadFile
2017-09-04 19:13:19 +02:00
Nicolas Grekas
263b95e1d1 [DI] Minor fix in dumped code 2017-09-03 20:01:57 +02:00
Nicolas Grekas
012c56b8cb Merge branch '3.3' into 3.4
* 3.3:
  Improved the design of the redirection method in the web toolbar
  Update NoSuchPropertyException message for writeProperty
  [DI] Don't track merged configs when the extension doesn't expose it
  [Cache] Use namespace versioning for backends that dont support clearing by keys
2017-09-03 10:01:11 +02:00
Nicolas Grekas
0db3358ddb [DI] Add ContainerInterface::IGNORE_ON_UNINITIALIZED_REFERENCE 2017-08-31 23:26:27 +02:00
Fabien Potencier
2e111b3cca Merge branch '3.3' into 3.4
* 3.3: (27 commits)
  Always require symfony/polyfill-apcu to provide APCuIterator everywhere
  bumped Symfony version to 3.3.9
  updated VERSION for 3.3.8
  updated CHANGELOG for 3.3.8
  [DI] Fix tracking env var placeholders nested in object graphs
  bumped Symfony version to 3.3.8
  updated VERSION for 3.3.7
  updated CHANGELOG for 3.3.7
  [DI] Fix tracking env vars when merging configs (bis)
  removed obsolete comment
  install PHPUnit 6 on PHP 7.2
  [Cache] Use zend.detect_unicode instead of zend.multibyte
  Fix case sensitive typo in use class name
  [VarDumper] Enhance docblock to tell about AbstractDumper::dumpLine(-1)
  [Debug] Remove false-positive check in DebugClassLoader
  [Validator] Fix use of GroupSequenceProvider in child classes
  Change number PHPDoc type to int|float
  [Cache] Workaround zend.detect_unicode + zend.multibyte
  [VarDumper] Strengthen dumped JS
  [VarDumper] Strengthen dumped JS
  ...
2017-08-29 14:00:42 -07:00
Nicolas Grekas
a8e6aac2f5 [DI] Don't track merged configs when the extension doesn't expose it 2017-08-29 15:24:02 +02:00
Nicolas Grekas
a8397cf1c7 [DI] Fix tracking env var placeholders nested in object graphs 2017-08-29 00:20:37 +02:00
Kevin Bond
00d7f6fa71
[DI] improve psr4-based service discovery with namespace option 2017-08-28 12:51:31 -04:00
Nicolas Grekas
baaff20f4a [DI] Fix tracking env vars when merging configs (bis) 2017-08-28 17:49:50 +02:00
Phil Taylor
6fe9072c42 Fix case sensitive typo in use class name
closes #24001

Simple typo fix
2017-08-27 14:23:17 +01:00
Fabien Potencier
481e31c2d1 feature #23874 [DI] Case sensitive parameter names (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Case sensitive parameter names

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

@GuilhemN took your patch.. but i use the same deprecation messages as for case sensitive service id's, i found it more clear. Also comparing to $origName to keep the diff smaller

Commits
-------

8a1d16839e [DI] Case sensitive parameter names
2017-08-22 15:02:44 -07:00
Fabien Potencier
e8bb73c775 feature #23936 Remove some sf2 references (fabpot)
This PR was merged into the 3.4 branch.

Discussion
----------

Remove some sf2 references

| 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

Those `sf2` references can be safely remove and changed to `symfony` as there are internal or they don't break anything when upgrading Symfony's version:

* Flashes are ephemeral, so changing the key in the session is not a problem;
* Changing the local storage key for the profiler is not an issue as this is a dev tool.

Commits
-------

1b0265417b removed sf2 references
2017-08-22 14:55:52 -07:00
Fabien Potencier
1b0265417b removed sf2 references 2017-08-22 13:48:27 -07:00
Nicolas Grekas
85f03e19cd Merge branch '3.3' into 3.4
* 3.3:
  [Dotenv] Get env using $_SERVER to work with fastcgi_param and workaround thread safety issues
  [Dotenv][WebServerBundle] Override previously loaded variables
  [DI] Use GlobResource for non-tracked directories
  [WebProfilerBundle] Re add missing link to the controller
2017-08-22 18:06:26 +02:00
Nicolas Grekas
f76e420e09 [Dotenv] Get env using $_SERVER to work with fastcgi_param and workaround thread safety issues 2017-08-22 15:55:16 +02:00
Nicolas Grekas
981001852b bug #23870 [DI] Use GlobResource for non-tracked directories (vudaltsov)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Use GlobResource for non-tracked directories

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

I noticed that some of my excluded directories are still tracked by the container and changes to files inside them make it recompile. This brought me to the `$trackContents || is_dir($path)` line introduced in #21505.

Commits
-------

048eb18 [DI] Use GlobResource for non-tracked directories
2017-08-22 13:27:11 +02:00
Valentin
048eb186c7 [DI] Use GlobResource for non-tracked directories 2017-08-22 13:12:00 +02:00
Nicolas Grekas
3db39f453f Merge branch '3.3' into 3.4
* 3.3:
  [DI] Fix resolving env vars when compiling a ContainerBuilder
2017-08-21 18:05:35 +02:00
Nicolas Grekas
921959422f [DI] Fix resolving env vars when compiling a ContainerBuilder 2017-08-21 17:49:07 +02:00
Nicolas Grekas
3fa5b3aeba Merge branch '3.3' into 3.4
* 3.3:
  [DI] Fix merging of env vars in configs
2017-08-18 16:18:15 +02:00
Fabien Potencier
50fe6a3c76 feature #23915 [DI] Allow get available services from service locator (Koc)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Allow get available services from service locator

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

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

Sometimes we are using service locators and throw context specific exceptions if service not found inside it. Would be nice inform user about available services in our custom exception, like:

```php
try {
    return $this->transports->get($transport);
} catch (NotFoundExceptionInterface $e) {
    $availableTransports = method_exists($e, 'getAlternatives') ? $e->getAlternatives() : [];

    throw TransportNotFoundException::create($transport, $availableTransports, $e);
}
```

Commits
-------

4993b1c14c Allow to get alternatives when ServiceNotFoundException occurs.
2017-08-18 14:05:45 +02:00
Nicolas Grekas
00b927322c [DI] Fix merging of env vars in configs 2017-08-18 13:25:49 +02:00
Fabien Potencier
9306fec43e minor #23912 [DI] Rererence parameter arrays when possible (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Rererence parameter arrays when possible

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

This a minor optim that might save memory and CPU for cases where big array parameters are inlined by DI extensions. This re-references them when possible.

Commits
-------

62c1bb5d3b [DI] Rererence parameter arrays when possible
2017-08-18 10:12:20 +02:00
Nicolas Grekas
16d34ebcae Merge branch '3.3' into 3.4
* 3.3:
  [VarDumper] Fix tests with phpredis 3.1.3
  [DI] Fix reading env vars from fastcgi params
  Allow phpdocumentor/reflection-docblock 4.
  [VarDumper] play nice with open_basedir when looking for composer.json
2017-08-17 15:38:59 +02:00
Konstantin.Myakshin
4993b1c14c Allow to get alternatives when ServiceNotFoundException occurs. 2017-08-17 15:22:42 +03:00
Nicolas Grekas
62c1bb5d3b [DI] Rererence parameter arrays when possible 2017-08-17 11:23:46 +02:00
Nicolas Grekas
adff65a602 [DI] Fix reading env vars from fastcgi params 2017-08-16 16:07:29 +02:00
Nicolas Grekas
aef502b1a2 Merge branch '3.3' into 3.4
* 3.3:
  Update JsonBundleReader.php
  [HttpKernel] Clean test directory on tear down
  [Console] Remove useless http-kernel dev dep
  Fix testHtml method with regexp
  Fixed some param/return annotations in PHPDOC blocks.
  [Workflow] fixed InvalidDefinitionException message for StateMachineValidator
2017-08-15 15:32:22 +02:00
Roland Franssen
8a1d16839e [DI] Case sensitive parameter names 2017-08-14 17:16:04 +02:00
Alexander M. Turek
423656f8ea Fixed some param/return annotations in PHPDOC blocks. 2017-08-14 00:08:09 +02:00
Nicolas Grekas
d1c754d8ca Merge branch '3.3' into 3.4
* 3.3:
  [DI] Fix dumping abstract with YamlDumper
  restrict reflection doc block
  [DI] Fix YamlDumper not dumping abstract and autoconfigure
2017-08-10 21:43:00 +02:00
Nicolas Grekas
daa0251768 Merge branch '2.7' into 2.8
* 2.7:
  [DI] Fix dumping abstract with YamlDumper
2017-08-10 16:42:21 +02:00
Nicolas Grekas
c396e8cb9c [DI] Fix dumping abstract with YamlDumper 2017-08-10 16:37:13 +02:00
Nicolas Grekas
00897c0222 feature #23855 [DI] Allow dumping inline services in Yaml (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Allow dumping inline services in Yaml

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

Commits
-------

e5bbf3f [DI] Allow dumping inline services in Yaml
2017-08-10 16:19:11 +02:00
Nicolas Grekas
3d54c3b6f4 bug #23854 [DI] Fix YamlDumper not dumping abstract and autoconfigure (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Fix YamlDumper not dumping abstract and autoconfigure

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

685ff0e [DI] Fix YamlDumper not dumping abstract and autoconfigure
2017-08-10 16:18:14 +02:00
Nicolas Grekas
e5bbf3f4f3 [DI] Allow dumping inline services in Yaml 2017-08-10 13:54:24 +02:00
Nicolas Grekas
685ff0e280 [DI] Fix YamlDumper not dumping abstract and autoconfigure 2017-08-10 13:45:16 +02:00
Fabien Potencier
a1faaa1221 Merge branch '3.3' into 3.4
* 3.3:
  fixed CS
  [2.8] Modify 2.8 upgrade doc - key option is deprecated.
  [DebugBundle] Reword an outdated comment about var dumper wiring
  [DI] Fix some docblocks
  [DI] Fix some docblocks
  Fixed the exception page design in responsive mode
  [Console] Log exit codes as debug messages instead of errors
  Fixed UPGRADE-4.0 about Container::set
  Ignore memcached missing key error on dession destroy
  bumped Symfony version to 3.2.14
  updated VERSION for 3.2.13
  updated CHANGELOG for 3.2.13
2017-08-10 09:07:17 +02:00
Fabien Potencier
ac3ee2c3c2 Merge branch '2.8' into 3.3
* 2.8:
  fixed CS
  [2.8] Modify 2.8 upgrade doc - key option is deprecated.
  [DI] Fix some docblocks
2017-08-10 09:03:10 +02:00
Nicolas Grekas
fd16993a37 feature #22187 [DependencyInjection] Support local binding (GuilhemN)
This PR was squashed before being merged into the 3.4 branch (closes #22187).

Discussion
----------

[DependencyInjection] Support local binding

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | no <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/22167, #23718
| License       | MIT
| Doc PR        |

> A great idea came out on Slack about local bindings.
> We could allow injecting services based on type hints on a per service/file basis:
> ```yml
> services:
>     _defaults:
>         bind:
>             BarInterface: '@usual_bar'
>
>     Foo:
>         bind:
>             BarInterface: '@alternative_bar'
>             $quz: 'quzvalue'
> ```
>
> This way, `@usual_bar` will be injected in any parameter type hinted as `BarInterface` (in a constructor or a method signature), but only for this service/file.
> Note that bindings could be unused, giving a better solution than https://github.com/symfony/symfony/pull/22152 to https://github.com/symfony/symfony/pull/21711.
>
> As named parameters are usable in arguments, bindings could be usable in arguments too:
> ```yml
> services:
>     Foo:
>         arguments:
>             BarInterface: '@bar'
> ```

~Named parameters aren't supported yet.~

Edit:

> Note that bindings could be unused

Current behavior is throwing an exception when a binding is not used at all, in no services of a file if it was inherited from `_defaults` or in no services created from a prototype.
It will pass if the bindings are all used in at least one service.

Commits
-------

81f2652 [DependencyInjection] Support local binding
2017-08-09 11:26:28 +02:00
Guilhem Niot
81f2652371 [DependencyInjection] Support local binding 2017-08-09 11:26:25 +02:00
Nicolas Grekas
65fa8c2abf Merge branch '2.7' into 2.8
* 2.7:
  [DI] Fix some docblocks
2017-08-08 23:33:56 +02:00
Nicolas Grekas
dd8622915d [DI] Fix some docblocks 2017-08-08 20:36:00 +02:00
Nicolas Grekas
a22e839592 [DI] Fix some docblocks 2017-08-08 19:53:57 +02:00
Nicolas Grekas
4037009490 [DI] Generate one file per service factory 2017-08-06 20:25:40 +02:00
Nicolas Grekas
8be06c45f9 Merge branch '3.3' into 3.4
* 3.3:
  [Profiler] Fix request_collector check in main layout
  Github template: Remove EOM 3.2 from branch suggestion
  [Security] Fix security.interactive_login event const doc block
  Update Container.php: Deprecated -> @deprecated
  allow phpdocumentor/reflection-docblock >=3.2.1
  Avoid infinite loops when profiler data is malformed
  [FrameworkBundle] Warmup annotations for bundle-less controllers and entities
  [HttpFoundation] Generate safe fallback filename for wrongly encoded filename
2017-08-06 15:42:33 +02:00
Yurii K
259f9cc4ad Update Container.php: Deprecated -> @deprecated
Deprecated -> @deprecated
2017-08-06 02:56:19 +03:00
Christian Flothmann
baa1e7f677 minor #22913 [Yaml] Deprecate tags using colon (GuilhemN)
This PR was squashed before being merged into the 3.4 branch (closes #22913).

Discussion
----------

[Yaml] Deprecate tags using colon

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

Using a colon in a tag doesn't look like yaml and causes trouble (see https://github.com/symfony/symfony/pull/22878), so I propose to just deprecate these tags in favor of more consistent tags.

```yml
- !php/const:PHP_INT_MAX
- !php/object:O:30:"Symfony\Component\Yaml\Tests\A":1:{s:1:"a";s:3:"foo";}
```
would become
```yml
- !php/const PHP_INT_MAX
- !php/object O:30:"Symfony\Component\Yaml\Tests\A":1:{s:1:"a";s:3:"foo";}
```

Commits
-------

9815af3 [Yaml] Deprecate tags using colon
2017-08-04 15:29:48 +02:00
Guilhem Niot
9815af3810 [Yaml] Deprecate tags using colon 2017-08-04 15:29:32 +02:00
Fabien Potencier
ce1050820f minor #23766 Consistently use 7 chars of sha256 for hash-based id generation (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

Consistently use 7 chars of sha256 for hash-based id generation

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

This prevents generating over long service ids, and for filesystem-related changes, makes the Windows 258 chars limit farther.

Commits
-------

bc22cdd034 Consistently use 7 chars of sha256 for hash-based id generation
2017-08-03 14:04:31 +02:00
Nicolas Grekas
bc22cdd034 Consistently use 7 chars of sha256 for hash-based id generation 2017-08-03 13:27:37 +02:00
Nicolas Grekas
6c1a5e1560 Merge branch '3.3' into 3.4
* 3.3:
  Removed useless argument $definition
  Fix comment
  [Config] Fix checking class existence freshness
  bumped Symfony version to 3.3.7
  updated VERSION for 3.3.6
  updated CHANGELOG for 3.3.6
  Bump minimal PHP version to ^5.5.9|>=7.0.8
2017-08-03 11:34:20 +02:00
Christian Flothmann
d9bf2534ef minor #22948 [Yaml] Recommend using quotes instead of PARSE_KEYS_AS_STRINGS (GuilhemN)
This PR was squashed before being merged into the 3.4 branch (closes #22948).

Discussion
----------

[Yaml] Recommend using quotes instead of PARSE_KEYS_AS_STRINGS

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

Sorry for opening this so lately... I just realized that we could get rid of `Yaml::PARSE_KEYS_AS_STRINGS` just by recommending using quotes...

~This way we don't allow a behavior not respecting the spec and we won't need to deprecate `PARSE_KEYS_AS_STRINGS` later.~

~Is it too late for this to be merged in 3.3?~

ping @xabbuh

Commits
-------

b63c55c [Yaml] Recommend using quotes instead of PARSE_KEYS_AS_STRINGS
2017-08-03 11:28:17 +02:00
Guilhem Niot
b63c55c72c [Yaml] Recommend using quotes instead of PARSE_KEYS_AS_STRINGS 2017-08-03 11:25:34 +02:00
Nicolas Grekas
2454a4f3f9 feature #23712 [DependencyInjection] Deprecate autowiring service auto-registration (GuilhemN)
This PR was squashed before being merged into the 3.4 branch (closes #23712).

Discussion
----------

[DependencyInjection] Deprecate autowiring service auto-registration

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | no
| New feature?  | no <!-- don't forget updating src/**/CHANGELOG.md files -->
| BC breaks?    | no
| Deprecations? | yes <!-- don't forget updating UPGRADE-*.md files -->
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/23350
| License       | MIT
| Doc PR        |

Fix https://github.com/symfony/symfony/issues/23350, to make autowiring more predictable.

Commits
-------

969a207 [DependencyInjection] Deprecate autowiring service auto-registration
2017-08-03 11:15:05 +02:00
Guilhem Niot
969a20780e [DependencyInjection] Deprecate autowiring service auto-registration 2017-08-03 11:07:16 +02:00
Nicolas Grekas
5cc1648ba4 [DI] Generate shorter method names for class-based ids 2017-08-02 17:38:38 +02:00
Nicolas Grekas
2282a6f895 Bump minimal PHP version to ^5.5.9|>=7.0.8 2017-07-29 23:54:42 +02:00
Nicolas Grekas
531b294b21 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Remove unused props from the PhpDumper
  [VarDumper] Keep and reuse array stubs in memory
  [ProxyManager] Cleanup fixtures
  [Console][WebServerBundle] Use "exec" when possible
  [Debug] HTML-escape array key
  Add some phpdocs for IDE autocompletion and better SCA
  Fixed typo in docblock
2017-07-28 17:30:20 +02:00
Nicolas Grekas
3088e0a304 Merge branch '3.2' into 3.3
* 3.2:
  [DI] Remove unused props from the PhpDumper
  [ProxyManager] Cleanup fixtures
  [Debug] HTML-escape array key
  Add some phpdocs for IDE autocompletion and better SCA
  Fixed typo in docblock
2017-07-28 17:27:31 +02:00
Nicolas Grekas
90b55193d1 Merge branch '2.8' into 3.2
* 2.8:
  [DI] Remove unused props from the PhpDumper
  [ProxyManager] Cleanup fixtures
  [Debug] HTML-escape array key
  Add some phpdocs for IDE autocompletion and better SCA
  Fixed typo in docblock
2017-07-28 17:22:55 +02:00
Nicolas Grekas
4fe888906e Merge branch '2.7' into 2.8
* 2.7:
  [DI] Remove unused props from the PhpDumper
  [ProxyManager] Cleanup fixtures
  [Debug] HTML-escape array key
  Add some phpdocs for IDE autocompletion and better SCA
2017-07-28 17:21:22 +02:00
Kévin Dunglas
f1aa45c517 [DI] Remove unused props from the PhpDumper 2017-07-28 10:50:38 +02:00
Nicolas Grekas
0754617c52 [DI][ProxyManager] Pass the factory code to execute to DumperInterface::getProxyFactoryCode() 2017-07-27 19:12:50 +02:00
Nicolas Grekas
f9c4621800 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Make dumped docblocks less verbose
  [VarDumper] Dont use Stub objects for arrays
2017-07-26 10:10:47 +02:00
Nicolas Grekas
34c68f956c Merge branch '3.2' into 3.3
* 3.2:
  [DI] Make dumped docblocks less verbose
2017-07-26 09:58:57 +02:00
Nicolas Grekas
ceb4393ca5 Merge branch '2.8' into 3.2
* 2.8:
  [DI] Make dumped docblocks less verbose
2017-07-26 09:58:16 +02:00
Nicolas Grekas
57bf748d6e Merge branch '2.7' into 2.8
* 2.7:
  [DI] Make dumped docblocks less verbose
2017-07-26 09:56:01 +02:00
Nicolas Grekas
1ade5d8658 [DI] Make dumped docblocks less verbose 2017-07-26 09:27:50 +02:00
Nicolas Grekas
4a3b3bef03 Merge branch '3.3' into 3.4
* 3.3:
  [DI] use assertStringEqualsFile when possible
  [VarDumper] Adapt to php 7.2 changes
  [DI] Fix using private services in expressions
  [Form][TwigBridge] Don't render _method in form_rest() for a child form
  [Form] Static call TimezoneType::getTimezones
  Removed references for non existent validator constraints
  Suggest using quotes instead of Yaml::PARSE_KEYS_AS_STRINGS
  [DI] Fix test
  [Cache] Handle unserialization failures for Memcached
  Remove unused prop + added @deprecated
  Remove unused mocks/vars
  [DoctrineBridge][PropertyInfo] Added support for Doctrine Embeddables
  [Validator] Fix IbanValidator for ukrainian IBANs
  Router: allow HEAD method to be defined first
  [WebProfilerBundle] Display trace and context in the logger profiler
  Fixing a bug where if a core class was autowired, autowiring tried to autowire optional args as if they were required
2017-07-26 08:46:38 +02:00
Nicolas Grekas
d56947698f Merge branch '3.2' into 3.3
* 3.2:
  [DI] use assertStringEqualsFile when possible
  [VarDumper] Adapt to php 7.2 changes
  [DI] Fix using private services in expressions
  [Form][TwigBridge] Don't render _method in form_rest() for a child form
  [Form] Static call TimezoneType::getTimezones
  Removed references for non existent validator constraints
  Remove unused mocks/vars
  [DoctrineBridge][PropertyInfo] Added support for Doctrine Embeddables
  [Validator] Fix IbanValidator for ukrainian IBANs
2017-07-26 08:42:48 +02:00
Nicolas Grekas
a280e81ebb Merge branch '2.8' into 3.2
* 2.8:
  [DI] use assertStringEqualsFile when possible
  [VarDumper] Adapt to php 7.2 changes
  [Form][TwigBridge] Don't render _method in form_rest() for a child form
  [DoctrineBridge][PropertyInfo] Added support for Doctrine Embeddables
  [Validator] Fix IbanValidator for ukrainian IBANs
2017-07-26 08:34:07 +02:00
Nicolas Grekas
17670e4986 Merge branch '2.7' into 2.8
* 2.7:
  [DI] use assertStringEqualsFile when possible
  [VarDumper] Adapt to php 7.2 changes
  [Form][TwigBridge] Don't render _method in form_rest() for a child form
  [Validator] Fix IbanValidator for ukrainian IBANs
2017-07-26 08:29:15 +02:00
Nicolas Grekas
eebae7ec71 [DI] use assertStringEqualsFile when possible 2017-07-26 08:11:54 +02:00
Nicolas Grekas
f3da6cf6a2 [DI] Fix using private services in expressions 2017-07-25 13:50:49 +02:00
Nicolas Grekas
70cc4e86f4 [DI] Fix test 2017-07-23 11:15:20 +02:00
Ryan Weaver
178a0f73b7 Fixing a bug where if a core class was autowired, autowiring tried to autowire optional args as if they were required 2017-07-20 19:10:01 -04:00
Fabien Potencier
8c028bd956 Merge branch '3.3' into 3.4
* 3.3:
  [Security] added more tests
  [Security] fixed default target path when referer contains a query string
  [Security] simplified tests
  [Security] refactored tests
  [WebProfilerBundle][TwigBundle] Fix infinite js loop on exception pages
  [FrameworkBundle] fix ValidatorCacheWarmer: use serializing ArrayAdapter
  Change "this" to "that" to avoid confusion
  [VarDumper] Move locale sniffing to dump() time
  [VarDumper] Use "C" locale when using "comma" flags
  [Config] Make ClassExistenceResource throw on invalid parents
2017-07-19 11:38:19 +02:00
Fabien Potencier
2d8fb99d57 Merge branch '3.2' into 3.3
* 3.2:
  [Security] added more tests
  [Security] fixed default target path when referer contains a query string
  [Security] simplified tests
  [Security] refactored tests
  [FrameworkBundle] fix ValidatorCacheWarmer: use serializing ArrayAdapter
  Change "this" to "that" to avoid confusion
  [VarDumper] Move locale sniffing to dump() time
2017-07-19 11:37:49 +02:00
Fabien Potencier
1f8cc178c1 minor #23579 [DI] Change "this" to "that" in findAndSortTaggedServices doc to reduce confusion (simshaun)
This PR was merged into the 3.2 branch.

Discussion
----------

[DI] Change "this" to "that" in `findAndSortTaggedServices` doc to reduce confusion

Continuation of PR #23578 which I royally messed up.....

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

I know this is extremely minor, but reading the description of this method, I got confused. Wondering if it's just me.

Where it says:

> The order of additions must be respected for services having the same priority, and knowing that the \SplPriorityQueue class does not respect the FIFO method, we should not use **this** class.

Should it not say "we should not use **that** class"?

Commits
-------

04b7b04b65 Change "this" to "that" to avoid confusion
2017-07-19 05:54:37 +02:00
Shaun Simmons
04b7b04b65 Change "this" to "that" to avoid confusion 2017-07-18 17:34:47 -04:00
Nicolas Grekas
53b01903ce [Config] Make ClassExistenceResource throw on invalid parents 2017-07-18 16:40:06 +02:00
Nicolas Grekas
a1846f0637 Merge branch '3.3' into 3.4
* 3.3:
  remove useless comment
  fix merge
2017-07-18 13:59:19 +02:00
Nicolas Grekas
4917b30718 fix merge 2017-07-18 10:09:42 +02:00
Nicolas Grekas
a0795c7186 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Resolve aliases earlier
  [DI] Mark Container::$privates as internal
  [DI] Minor dumping logic simplification
  bumped Symfony version to 3.3.6
  updated VERSION for 3.3.5
  updated CHANGELOG for 3.3.5
  bumped Symfony version to 3.2.13
  updated VERSION for 3.2.12
  updated CHANGELOG for 3.2.12
  bumped Symfony version to 2.8.26
  updated VERSION for 2.8.25
  updated CHANGELOG for 2.8.25
  bumped Symfony version to 2.7.33
  updated VERSION for 2.7.32
  update CONTRIBUTORS for 2.7.32
  updated CHANGELOG for 2.7.32
2017-07-18 09:59:12 +02:00
Nicolas Grekas
72aaecc0ff Merge branch '3.2' into 3.3
* 3.2:
  [DI] Resolve aliases earlier
  [DI] Mark Container::$privates as internal
  bumped Symfony version to 3.2.13
  updated VERSION for 3.2.12
  updated CHANGELOG for 3.2.12
  bumped Symfony version to 2.8.26
  updated VERSION for 2.8.25
  updated CHANGELOG for 2.8.25
  bumped Symfony version to 2.7.33
  updated VERSION for 2.7.32
  update CONTRIBUTORS for 2.7.32
  updated CHANGELOG for 2.7.32
2017-07-18 09:56:35 +02:00
Nicolas Grekas
30b409a295 Merge branch '2.8' into 3.2
* 2.8:
  [DI] Resolve aliases earlier
  bumped Symfony version to 2.8.26
  updated VERSION for 2.8.25
  updated CHANGELOG for 2.8.25
  bumped Symfony version to 2.7.33
  updated VERSION for 2.7.32
  update CONTRIBUTORS for 2.7.32
  updated CHANGELOG for 2.7.32
2017-07-18 09:52:56 +02:00
Nicolas Grekas
f8f5c028d1 Merge branch '2.7' into 2.8
* 2.7:
  [DI] Resolve aliases earlier
  bumped Symfony version to 2.7.33
  updated VERSION for 2.7.32
  update CONTRIBUTORS for 2.7.32
  updated CHANGELOG for 2.7.32
2017-07-18 09:49:35 +02:00
Nicolas Grekas
9922827cc2 [DI] Resolve aliases earlier 2017-07-18 09:15:21 +02:00
Nicolas Grekas
2725fd6080 [DI] Mark Container::$privates as internal 2017-07-18 09:06:47 +02:00
Nicolas Grekas
37d8495a59 [DI] Minor dumping logic simplification 2017-07-17 22:48:54 +02:00
Fabien Potencier
1e88b35380 Merge branch '3.3' into 3.4
* 3.3:
  [FrameworkBundle] Set default public directory on install assets
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  disable inlining deprecated services
  [Cache] add constructor docblocks for clarity
  [WebServerBundle] allowed public/ root directory to be auto-discovered along side web/
  [WebServerBundle] remove duplicate code
  [SecurityBundle] Clarify deprecation in UserPasswordEncoderCommand::getContainer
  [Cache] add constructor docblocks for clarity
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:07:19 +02:00
Fabien Potencier
649e2cd8bb Merge branch '3.2' into 3.3
* 3.2:
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  disable inlining deprecated services
  [Cache] add constructor docblocks for clarity
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:07:10 +02:00
Fabien Potencier
d3ca5083bf Merge branch '2.8' into 3.2
* 2.8:
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  disable inlining deprecated services
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:04:01 +02:00
Fabien Potencier
f49cc11021 Merge branch '2.7' into 2.8
* 2.7:
  [Security] Fix wrong term in UserProviderInterface
  [HttpFoundation] Set meta refresh time to 0 in RedirectResponse content
  [Security] validate empty passwords again
  [DI] Remove irrelevant comment from container
  [TwigBridge] cleaner implementation of the TwigRenderer
2017-07-17 16:02:19 +02:00
Fabien Potencier
0100ca145d minor #23452 [DI] Remove irrelevant comment from container (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] Remove irrelevant comment from container

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

Spotted in #22811

Commits
-------

595a225a0f [DI] Remove irrelevant comment from container
2017-07-17 12:28:17 +02:00
Alessandro Chitolina
6ab8ca0d36
disable inlining deprecated services 2017-07-17 11:57:18 +02:00
Nicolas Grekas
b24a338f71 Merge branch '3.3' into 3.4
* 3.3:
  [Profiler] Fix data collector getCasters() call
  remove symfony/process suggestion
  [DI] Remove unused dynamic property
  [Process] Fixed issue between process builder and exec
  non-conflicting anonymous service ids across files
2017-07-15 10:52:56 +02:00
Kévin Dunglas
6de81a7756
[DI] Remove unused dynamic property 2017-07-14 23:11:01 +02:00
Christian Flothmann
8289ca6d1a non-conflicting anonymous service ids across files 2017-07-12 20:52:55 +02:00
Roland Franssen
c4b6066c9f [DI] Check privates before resolving alias in Container::initialized 2017-07-12 20:41:02 +02:00
Nicolas Grekas
8e6accc4d0 fix merge 2017-07-12 16:41:59 +02:00
Nicolas Grekas
4324804357 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Process] Fix parsing args on Windows
  [HttpKernel][VarDumper] Truncate profiler data & optim perf
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 15:09:21 +02:00
Nicolas Grekas
6b5d35f058 Merge branch '3.2' into 3.3
* 3.2:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 15:03:20 +02:00
Nicolas Grekas
e51c1a5658 Merge branch '2.8' into 3.2
* 2.8:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 15:02:55 +02:00
Nicolas Grekas
0c6096fc32 Merge branch '2.7' into 2.8
* 2.7:
  [DI] Handle root namespace in service definitions
  Use rawurlencode() to transform the Cookie into a string
  [Security] Fix authentication.failure event not dispatched on AccountStatusException
2017-07-12 14:59:33 +02:00
Roland Franssen
05170c84a2 [DI] Handle root namespace in service definitions 2017-07-12 13:53:12 +02:00
Roland Franssen
632e934cfa [DI] Allow imports in string format for YAML 2017-07-08 18:23:22 +02:00
Roland Franssen
595a225a0f [DI] Remove irrelevant comment from container 2017-07-08 10:35:50 +02:00
Nicolas Grekas
47ee1d53c1 Merge branch '3.3' into 3.4
* 3.3: (33 commits)
  Preserve HttpOnly value when deserializing a header
  [DX] [TwigBundle] Enhance the new exception page design
  Fix deprecated message
  [DI][Security] Prevent unwanted deprecation notices when using Expression Languages
  bumped Symfony version to 3.3.5
  updated VERSION for 3.3.4
  updated CHANGELOG for 3.3.4
  [VarDumper] Reduce size of serialized Data objects
  bumped Symfony version to 3.2.12
  updated VERSION for 3.2.11
  updated CHANGELOG for 3.2.11
  fixed bad merge
  Fix indent of methods
  [Cache] Handle APCu failures gracefully
  [DoctrineBridge] Use normalizedIds for resetting entity manager services
  [FrameworkBundle] Do not remove files from assets dir
  [FrameworkBundle] 3.3: Don't get() private services from debug:router
  bumped Symfony version to 3.3.4
  updated VERSION for 3.3.3
  updated CHANGELOG for 3.3.3
  ...
2017-07-06 13:23:40 +03:00
Fabien Potencier
7e93ccad3f Merge branch '3.2' into 3.3
* 3.2:
  [DI][Security] Prevent unwanted deprecation notices when using Expression Languages
  bumped Symfony version to 3.2.12
  updated VERSION for 3.2.11
  updated CHANGELOG for 3.2.11
2017-07-06 09:25:00 +03:00
Kévin Dunglas
052b8c3a04
[DI][Security] Prevent unwanted deprecation notices when using Expression Languages 2017-07-05 22:19:23 +02:00
Christian Flothmann
411d9fa7a1 Merge branch '3.3' into 3.4
* 3.3: (64 commits)
  Show exception is checked twice in ExceptionController of twig
  allow SSI fragments configuration in XML files
  Display a better error message when the toolbar cannot be displayed
  render hidden _method field in form_rest()
  Add Doctrine Cache to dev dependencies to fix failing unit tests.
  return fallback locales whenever possible
  Fix Predis client cluster with pipeline
  [Dotenv] Test load() with multiple paths
  [Console] Fix catching exception type in QuestionHelper
  Improved the exception page when there is no message
  [WebProfilerBundle] Eliminate line wrap on count columnt (routing)
  [Validator] replace hardcoded service id
  [Routing] Fix XmlFileLoader exception message
  [DI] Dedup tags when using instanceof/autoconfigure
  [Translation] Fix FileLoader::loadResource() php doc
  Sessions: configurable "use_strict_mode" option for NativeSessionStorage
  [FrameworkBundle] [Command] Clean bundle directory, fixes #23177
  fixed CS
  [WebProfilerBundle] Fix the icon for the Cache panel
  [WebServerBundle] Fix router script path and check existence
  ...
2017-06-24 11:47:31 +02:00
Fabien Potencier
035d5260b9 bug #23218 [DI] Dedup tags when using instanceof/autoconfigure (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Dedup tags when using instanceof/autoconfigure

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

This fixes uselessly duplicated tags shown when using the `debug:container` command, or in the dumped container in xml format:
<img width="554" alt="screenshot 2017-06-17 a 20 41 27" src="https://user-images.githubusercontent.com/2211145/27255375-de79fc4e-539d-11e7-98d9-c10074ddcffb.PNG">
<img width="494" alt="screenshot 2017-06-17 a 20 41 54" src="https://user-images.githubusercontent.com/2211145/27255376-de7ff5b8-539d-11e7-97ae-ccd31b1d5254.PNG">
<img width="1371" alt="screenshot 2017-06-17 a 20 42 33" src="https://user-images.githubusercontent.com/2211145/27255377-de869ba2-539d-11e7-8cd7-6005f8a499d6.PNG">

(duplicates here are explained by the twig namespaced and unnamespaced versions, and the controllers being tagged explicitly in https://github.com/symfony/symfony-demo/blob/master/app/config/services.yml#L25, while also being tagged by autoconfiguration ([which is expected](https://github.com/symfony/symfony-docs/pull/7921#discussion_r117585827)))

Commits
-------

9f877efb39 [DI] Dedup tags when using instanceof/autoconfigure
2017-06-20 07:01:46 -07:00
Maxime Steinhausser
9f877efb39 [DI] Dedup tags when using instanceof/autoconfigure 2017-06-17 21:02:43 +02:00
Fabien Potencier
5bc4ef0224 Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  SCA with Php Inspections (EA Extended): 2.7
  Remove deprecated each function
  Fixed PHPdoc return references in FormBuilderInterface
  [FrameworkBundle] Fix perf issue in CacheClearCommand::warmup()
2017-06-13 17:55:24 -07:00
Nicolas Grekas
7c3d0c7a46 [DI] Reference instead of inline for array-params 2017-06-13 13:14:06 +02:00
Nicolas Grekas
8bbfc96802 Merge branch '3.3' into 3.4
* 3.3:
  Fix the conditional definition of the SymfonyTestsListener
  [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass
  [EventDispatcher] Remove dead code in WrappedListener
  Fix non-dumped voters in security panel
  [Yaml] Remove line number in deprecation notices
  [SecurityBundle] Made 2 service aliases private
2017-06-12 18:03:21 +02:00
Nicolas Grekas
9251a2143d [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass 2017-06-12 12:11:53 +02:00
Fabien Potencier
0dbba7bf4f minor #22931 SCA with Php Inspections (EA Extended): 2.7 (kalessil)
This PR was squashed before being merged into the 2.7 branch (closes #22931).

Discussion
----------

SCA with Php Inspections (EA Extended): 2.7

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

Static Code Analysis with Php Inspections (EA Extended): dead code and control flow tweaks.

Commits
-------

598ae56cc9 SCA with Php Inspections (EA Extended): 2.7
2017-06-10 17:25:34 -07:00
Vladimir Reznichenko
598ae56cc9 SCA with Php Inspections (EA Extended): 2.7 2017-06-10 17:25:31 -07:00
Nicolas Grekas
b0ede2c9c8 Merge branch '3.3' into 3.4
* 3.3:
  [TwigBridge] Fix namespaced classes
  bumped Symfony version to 3.3.2
  updated VERSION for 3.3.1
  updated CHANGELOG for 3.3.1
  [DependencyInjection] Fix named args support in ChildDefinition
  [Cache] Fallback to positional when keyed results are broken
  [HttpFoundation][FrameworkBundle] Revert "trusted proxies" BC break
  [Cache] MemcachedAdapter not working with TagAwareAdapter
  Remove closure-proxy leftovers
  [DependencyInjection] Use more clear message when unused environment variables detected
  [Form][Profiler] Fixes form collector triggering deprecations
  mitigate BC break with empty trusted_proxies
  [Profiler] Never wrap in code excerpts
  [Form][FrameworkBundle] Remove non-existing arg for data_collector.form
  explain that a role can be an instance of Role
  [Cache] fix Redis scheme detection
  mix attr options between type-guess options and user options
2017-06-06 06:51:36 +02:00
Nicolas Grekas
7769179e0f Merge branch '3.2' into 3.3
* 3.2:
  [TwigBridge] Fix namespaced classes
  [Cache] MemcachedAdapter not working with TagAwareAdapter
  [DependencyInjection] Use more clear message when unused environment variables detected
  mix attr options between type-guess options and user options
2017-06-06 05:13:52 +02:00
Fabien Potencier
1272d2ac8a bug #22981 [DependencyInjection] Fix named args support in ChildDefinition (dunglas)
This PR was squashed before being merged into the 3.3 branch (closes #22981).

Discussion
----------

[DependencyInjection] Fix named args support in ChildDefinition

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

Following @Tobion's review of #21383.

Commits
-------

1ab3e413d4 [DependencyInjection] Fix named args support in ChildDefinition
2017-06-05 09:24:57 -07:00
Kévin Dunglas
1ab3e413d4 [DependencyInjection] Fix named args support in ChildDefinition 2017-06-05 09:24:55 -07:00
Fabien Potencier
12f5636eae bug #22976 [DependencyInjection] Use more clear message when unused environment variables detected (voronkovich)
This PR was squashed before being merged into the 3.2 branch (closes #22976).

Discussion
----------

[DependencyInjection] Use more clear message when unused environment variables detected

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

Old error message:
```
Incompatible use of dynamic environment variables "DATABASE_URL", "MAILER_URL" found in parameters.
```

New error message:
```
Environment variables "DATABASE_URL", "MAILER_URL" are never used. Please, check your container's configuration.
```

Commits
-------

6dbdb1b750 [DependencyInjection] Use more clear message when unused environment variables detected
2017-06-03 08:50:21 -07:00
Oleg Voronkovich
6dbdb1b750 [DependencyInjection] Use more clear message when unused environment variables detected 2017-06-03 08:50:11 -07:00
Fabien Potencier
f1d3200eca Merge branch '3.3' into 3.4
* 3.3:
  [Config] Always protect ClassExistenceResource against bad parents
2017-06-02 11:32:02 -07:00
Nicolas Grekas
86bf26c466 [Config] Always protect ClassExistenceResource against bad parents 2017-06-02 20:07:20 +02:00
Nicolas Grekas
c77d8067dd Merge branch '3.3' into 3.4
* 3.3:
  typo
  CS: adjust chaining indentation
2017-06-02 16:38:27 +02:00
Nicolas Grekas
349e5fe9b8 Merge branch '3.2' into 3.3
* 3.2:
  typo
  CS: adjust chaining indentation
2017-06-02 16:38:05 +02:00
Nicolas Grekas
89c3f5cccb Merge branch '2.8' into 3.2
* 2.8:
  typo
  CS: adjust chaining indentation
2017-06-02 16:37:52 +02:00
Nicolas Grekas
0057459882 Merge branch '2.7' into 2.8
* 2.7:
  CS: adjust chaining indentation
2017-06-02 16:36:56 +02:00
Nicolas Grekas
434f0b09df Merge branch '3.3' into 3.4
* 3.3:
  Fix composer deps
2017-06-02 15:01:36 +02:00
Nicolas Grekas
d89670461d Fix composer deps 2017-06-02 14:59:20 +02:00