Commit Graph

1913 Commits

Author SHA1 Message Date
Nicolas Grekas
87db587fa6 Fix merge 2017-01-10 15:07:18 +01:00
Nicolas Grekas
144eb54fcd Merge branch '2.7' into 2.8
* 2.7:
  [DI] Dont share service when no id provided
  Fix Container and PhpDumper test inaccuracies
  [DI] Fix missing new line after private alias
  [ClassLoader] Throw an exception if the cache is not writeable
  Fixing regression in TwigEngine exception handling.
2017-01-10 15:03:07 +01:00
Nicolas Grekas
d18c2cadfc minor #21226 Fix Container and PhpDumper test inaccuracies (nikita2206)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix Container and PhpDumper test inaccuracies

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

Stumbled upon and fixed some minor inaccuracies in tests for DI container, they might have lead to undetected changes of `Container`'s behavior

Commits
-------

24b93cc Fix Container and PhpDumper test inaccuracies
2017-01-10 14:43:59 +01:00
Nicolas Grekas
e355739b83 minor #21225 [DI] Dont share service when no id provided (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] Dont share service when no id provided

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

Commits
-------

814f633 [DI] Dont share service when no id provided
2017-01-10 14:43:16 +01:00
Nicolas Grekas
814f63390d [DI] Dont share service when no id provided 2017-01-10 14:32:11 +01:00
Maxime Steinhausser
6b660c2114 [DI] FileLoaders: Allow to explicit type to load 2017-01-10 12:54:54 +01:00
Nikita Nefedov
24b93cc75c Fix Container and PhpDumper test inaccuracies 2017-01-10 14:19:58 +03:00
Maxime Steinhausser
f1cc090465 [DI] Fixes aliases visibility with and without defaults 2017-01-09 20:25:31 +01:00
Maxime Steinhausser
101a165d0d [DI] Fix missing new line after private alias 2017-01-09 19:49:53 +01:00
WouterJ
28a1b5ac47 Allow setting services as null 2017-01-09 13:12:14 +01:00
Fabien Potencier
2e5b69f8d8 [DependencyInjection] moved up ResolveClassPass in the container pass list 2017-01-08 10:25:16 -08:00
Nicolas Grekas
03d160fe04 Merge branch '3.2'
* 3.2:
  [TwigBundle] Disable form in tests
2017-01-08 14:47:57 +01:00
Fabien Potencier
96c9e202c3 minor #21192 [DI] Dont call get() when not required - µ-optim (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Dont call get() when not required - µ-optim

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

(could be applied on 3.2, please advise)
Helps a bit on https://rawgit.com/kocsismate/php-di-container-benchmarks/master/var/benchmark.html

note: if we want more performance, we should consider deprecating case insensitivity of service identifiers.

Commits
-------

7a42199115 [DI] Dont call get() when not required - µ-optim
2017-01-07 09:36:06 -08:00
Nicolas Grekas
7a42199115 [DI] Dont call get() when not required - µ-optim 2017-01-07 17:52:01 +01:00
Nicolas Grekas
beec1cff8f [DI] Allow definitions to inherit tags from parent context 2017-01-07 17:43:10 +01:00
Maxime Steinhausser
05f24d5a6d [DI] Add "defaults" tag to XML services configuration 2017-01-07 17:40:58 +01:00
Nicolas Grekas
7b4a18b044 [DI] Add "_defaults" key to Yaml services configuration 2017-01-07 17:40:58 +01:00
Martin Hasoň
a18c4b6ab2 [DI] Add tests for class named services 2017-01-07 16:55:01 +01:00
Nicolas Grekas
71b17c7790 [DI] Optional class for named services 2017-01-07 16:55:01 +01:00
Nicolas Grekas
ecdf857b61 [DI][EventDispatcher] Add & wire closure-proxy argument type 2017-01-06 08:57:26 +01:00
Fabien Potencier
0f50b4de80 feature #20907 [DependencyInjection] Implement lazy collection type using generators (tgalopin, nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DependencyInjection] Implement lazy collection type using generators

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

Following the RFC https://github.com/symfony/symfony/issues/20875, this PR aims to implement lazy services collections using generators internally.

For now, I suggest to support only XML and PHP definitions. Supporting YAML means adding another convention to the language and this is not the aim of this PR.

- [x] value object holding the semantic (IteratorArgument)
- [x] iterator dumping
- [x] lazyness awareness in CheckCircularReferencesPass & GraphvizDumper
- [x] rewindable iterators
- [x] `*_ON_INVALID_REFERENCE` behavior
- [x] ContainerBuilder::createService
- [x] ArgumentInterface handling in compiler passes

Commits
-------

1dbf52ad03 [DI] Add "=iterator" arguments to Yaml loader
5313943692 [DependencyInjection] Implement lazy collection type using generators
2017-01-05 19:07:12 -08:00
Nicolas Grekas
1dbf52ad03 [DI] Add "=iterator" arguments to Yaml loader 2017-01-05 21:40:35 +01:00
Titouan Galopin
5313943692 [DependencyInjection] Implement lazy collection type using generators 2017-01-05 21:34:37 +01:00
Fabien Potencier
0d1f53f48b Merge branch '3.2'
* 3.2:
  Fix serializer/translations/validator resources loading for bundles overriding getPath()
  Fix the priority order of compiler pass trait
2017-01-04 11:58:57 -08:00
Nicolas Grekas
142afa359e bug #20995 [DependencyInjection] Fix the priority order of compiler pass trait (francoispluchino)
This PR was merged into the 3.2 branch.

Discussion
----------

[DependencyInjection] Fix the priority order of compiler pass trait

| Q             | A
| ------------- | ---
| Branch?       | 3.2
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #20332, #20993
| License       | MIT
| Doc PR        | ~

A regression has appeared between the version `3.1` and `3.2` on the compilation passes using a priority option (see #20332).

Indeed, the order is no longer preserved for service definitions with the same priority. This is caused by the `SplPriorityQueue` class that does not have a FIFO implementation (see this [comment](https://github.com/symfony/symfony/issues/20332#issuecomment-268096527)).

The PR #20993 fixes the problem but only for Forms, not for all compiler passes using the `PriorityTaggedServiceTrait` trait since `3.2`.

Commits
-------

aac9a7e Fix the priority order of compiler pass trait
2017-01-03 18:12:19 +01:00
Fabien Potencier
f71c699289 Merge branch '3.2'
* 3.2:
  updated LICENSE year
  updated LICENSE year
  updated LICENSE year
  Fixed `@return self` with `$this`
  [Yaml] add missing indicator character
2017-01-02 12:33:09 -08:00
Fabien Potencier
3f4e6cce8c Merge branch '3.1' into 3.2
* 3.1:
  updated LICENSE year
  updated LICENSE year
  Fixed `@return self` with `$this`
2017-01-02 12:32:22 -08:00
Fabien Potencier
d05e9e03cb Merge branch '2.8' into 3.1
* 2.8:
  updated LICENSE year
  updated LICENSE year
  Fixed `@return self` with `$this`
2017-01-02 12:31:54 -08:00
Fabien Potencier
ed70281d49 Merge branch '2.7' into 2.8
* 2.7:
  updated LICENSE year
  Fixed `@return self` with `$this`
2017-01-02 12:30:24 -08:00
Fabien Potencier
9879c8193f updated LICENSE year 2017-01-02 12:30:00 -08:00
Nicolas Grekas
3e7ff2194e Merge branch '3.2'
* 3.2:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Fixed @return when returning this or static #bis
  fixed @return when returning this or static
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  fix merge
  [cache] Bump RedisAdapter timeout to 5s
  fixed @return when returning this or static
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
  remove is_writable check on filesystem cache
2017-01-02 15:58:37 +01:00
Nicolas Grekas
8df0540c9f Merge branch '3.1' into 3.2
* 3.1:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Fixed @return when returning this or static #bis
  fixed @return when returning this or static
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  fix merge
  [cache] Bump RedisAdapter timeout to 5s
  fixed @return when returning this or static
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
  remove is_writable check on filesystem cache
2017-01-02 15:57:35 +01:00
Nicolas Grekas
0dbc5cec7f Merge branch '2.8' into 3.1
* 2.8:
  do not depend on a fixed date in layout tests
  [Console] Escape default value when dumping help
  [Console] OS X Can't call cli_set_process_title php without superuser
  Fixed @return when returning this or static #bis
  Polish translation improvement in Validator component
  [Console] Descriptors should use Helper::strlen
  [Config] Improve PHPdoc / IDE autocomplete
  [Debug] Wrap call to ->log in a try catch block
  [Debug] UndefinedMethodFatalErrorHandler - Handle anonymous classes
  [SecurityBundle] Made collection of user provider unique when injecting them to the RemberMeService
2017-01-02 15:50:07 +01:00
Nicolas Grekas
ffc07c318f Merge branch '3.2'
* 3.2:
  respect skipped and incomplete tests
  [DI] Minor fixes in FactoryReturnTypePass
  [TwigBridge] Fix upgrade/changelog notes
  [Debug] Fixed cast of stream
  [Console] minor addition to #20817 for branch 3.2
2017-01-02 15:31:48 +01:00
Nicolas Grekas
c231f811b5 [DI] Minor fixes in FactoryReturnTypePass 2017-01-02 15:07:02 +01:00
Fabien Potencier
61a67ecc5a bug #21072 [DI] Fix method autowiring in ResolveDefinitionTemplatesPass (dunglas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Fix method autowiring in ResolveDefinitionTemplatesPass

| 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

cc @nicolas-grekas

Commits
-------

57661e4 [DI] Fix method autowiring in ResolveDefinitionTemplatesPass
2016-12-30 07:43:06 +01:00
Maxime Steinhausser
20d8c74bfe Fixed @return when returning this or static #bis 2016-12-29 22:47:05 +01:00
Fabien Potencier
0f6e4ab687 Merge branch '2.8' into 3.1
* 2.8:
  fixed @return when returning this or static
2016-12-29 22:40:29 +01:00
Denis Brumann
b4201810b9
Conditionally add options to unserialize in PHP 7.0+. 2016-12-29 19:41:55 +01:00
Christian Flothmann
d8d44170f0 [DI] register alias after defining the class 2016-12-29 16:20:01 +01:00
Roland Franssen
142416b7d4 [DI] Auto register extension configuration classes as a resource 2016-12-29 09:41:04 +00:00
Kévin Dunglas
57661e40fe
[DI] Fix method autowiring in ResolveDefinitionTemplatesPass 2016-12-28 11:50:08 +01:00
Fabien Potencier
7808b675fc fixed @return when returning this or static 2016-12-27 11:52:11 +01:00
Fabien Potencier
d0e8476afc Merge branch '3.2'
* 3.2:
  [FrameworkBundle] Ignore AnnotationException exceptions in the AnnotationsCacheWarmer
  fixed @return when returning this or static
  override property constraints in child class
  removed unneeded comment
  [Console] improved code coverage of Command class
  [FrameworkBundle] Make TemplateController working without the Templating component
  [FrameworkBundle] Allow multiple transactions with the same name
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:45:09 +01:00
Fabien Potencier
f4a635957e Merge branch '3.1' into 3.2
* 3.1:
  fixed @return when returning this or static
  override property constraints in child class
  removed unneeded comment
  [Console] improved code coverage of Command class
  [FrameworkBundle] Make TemplateController working without the Templating component
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:44:30 +01:00
Fabien Potencier
4c453f617d Merge branch '2.8' into 3.1
* 2.8:
  fixed @return when returning this or static
  override property constraints in child class
  removed unneeded comment
  [Console] improved code coverage of Command class
  [FrameworkBundle] Make TemplateController working without the Templating component
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:43:25 +01:00
Fabien Potencier
9a64d83436 Merge branch '2.7' into 2.8
* 2.7:
  fixed @return when returning this or static
  override property constraints in child class
  [Console] improved code coverage of Command class
  Only count on arrays or countables to avoid warnings in PHP 7.2
2016-12-27 11:39:57 +01:00
Fabien Potencier
3c0693de23 fixed @return when returning this or static 2016-12-27 08:23:47 +01:00
Nicolas Grekas
243d160615 [DI] Prepare dropping "strict" handling in loaders 2016-12-26 17:39:10 +01:00
François Pluchino
aac9a7edfd Fix the priority order of compiler pass trait 2016-12-20 14:31:21 +01:00
Fabien Potencier
4838d5d691 minor #20985 [DI] update changelog and upgrade files (xabbuh, javiereguiluz)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] update changelog and upgrade files

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

Commits
-------

ad7afe0 Added a needed blank line
d2b4996 [DI] update changelog and upgrade files
2016-12-19 17:58:44 +01:00
Fabien Potencier
6126018b9f Merge branch '3.2'
* 3.2:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 17:13:57 +01:00
Fabien Potencier
0a9e391f36 fixed obsolete getMock() usage 2016-12-19 17:09:34 +01:00
Fabien Potencier
3f96468942 Merge branch '3.1' into 3.2
* 3.1:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 17:07:36 +01:00
Fabien Potencier
7ae26ed5f1 Merge branch '2.8' into 3.1
* 2.8:
  fixed obsolete getMock() usage
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
  do not remove the Twig ExceptionController service
  removed obsolete condition
  do not try to register incomplete definitions
2016-12-19 16:53:49 +01:00
Fabien Potencier
84e75a78b3 Merge branch '2.7' into 2.8
* 2.7:
  fixed obsolete getMock() usage
  [WebProfilerBundle] Display multiple HTTP headers in WDT
2016-12-19 16:38:44 +01:00
Fabien Potencier
71d059cad1 fixed obsolete getMock() usage 2016-12-19 16:22:46 +01:00
Christian Flothmann
d2b499636c [DI] update changelog and upgrade files 2016-12-19 10:30:32 +01:00
Roland Franssen
da50fdb8e2 [DI] Deprecate dumping an uncompiled container 2016-12-19 09:23:24 +01:00
Nicolas Grekas
d6141930e8 minor #20968 [DI] Fix DefinitionDecorator existency for composer authoritative+IDEs (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Fix DefinitionDecorator existency for composer authoritative+IDEs

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

So that the class is defined for naive parser (e.g. IDEs & composer class map generator).
Fixes autoloading in authoritative mode.

Commits
-------

9c3f755 [DI] Fix DefinitionDecorator existency for composer authoritative+IDEs
2016-12-17 11:48:33 +01:00
Nicolas Grekas
c885d23a39 Merge branch '3.2'
* 3.2:
  [Security] Fix test
  [Validator] phpize default option values
  test for the Validator component to be present
  [Serializer] Fix MaxDepth annotation exceptions
  [DependencyInjection] Fix on-invalid attribute type in xsd
  [FrameworkBundle] Fix PHP form templates on translatable attributes
  [VarDumper] Fix dumping by-ref variadics
  [Validator] add Indonesian translation
  fixed CS
  [config] Fix issue when key removed and left value only
  [HttpFoundation] Fix cookie to string conversion for raw cookies
  Fix misresolved parameters in debug:config on 3.2
  [Console] fixed BC issue with static closures
  [TwigBundle] Config is now a hard dependency
  [FrameworkBundle] framework.annotations default should be true only if doctrine/annotations is installed
  [Security] AbstractVoter method supportsAttribute gives false positive if attribute is zero (0)
2016-12-17 11:47:22 +01:00
Nicolas Grekas
b9a74f35ba Merge branch '3.1' into 3.2
* 3.1:
  [Security] Fix test
  [Validator] phpize default option values
  test for the Validator component to be present
  [Serializer] Fix MaxDepth annotation exceptions
  [DependencyInjection] Fix on-invalid attribute type in xsd
  [FrameworkBundle] Fix PHP form templates on translatable attributes
  [VarDumper] Fix dumping by-ref variadics
  [Validator] add Indonesian translation
  fixed CS
  [config] Fix issue when key removed and left value only
  [HttpFoundation] Fix cookie to string conversion for raw cookies
  [Console] fixed BC issue with static closures
  [Security] AbstractVoter method supportsAttribute gives false positive if attribute is zero (0)
2016-12-17 11:46:44 +01:00
Nicolas Grekas
f4b3b87ef7 Merge branch '2.8' into 3.1
* 2.8:
  [Security] Fix test
  [Validator] phpize default option values
  test for the Validator component to be present
  [DependencyInjection] Fix on-invalid attribute type in xsd
  [FrameworkBundle] Fix PHP form templates on translatable attributes
  [VarDumper] Fix dumping by-ref variadics
  [Validator] add Indonesian translation
  fixed CS
  [config] Fix issue when key removed and left value only
  [Console] fixed BC issue with static closures
  [Security] AbstractVoter method supportsAttribute gives false positive if attribute is zero (0)
2016-12-17 11:46:00 +01:00
Nicolas Grekas
55da229acb Merge branch '2.7' into 2.8
* 2.7:
  [Validator] phpize default option values
  test for the Validator component to be present
  [DependencyInjection] Fix on-invalid attribute type in xsd
  [FrameworkBundle] Fix PHP form templates on translatable attributes
  [VarDumper] Fix dumping by-ref variadics
2016-12-17 11:44:20 +01:00
Nicolas Grekas
9c3f755994 [DI] Fix DefinitionDecorator existency for composer authoritative+IDEs 2016-12-17 11:29:12 +01:00
Nicolas Grekas
14c65e3814 [DI] Fix DefinitionDecorator deprecation layer 2016-12-17 10:57:51 +01:00
Fabien Potencier
4a597bdb37 feature #20618 [DI] Make ContainerBuilder::resolveEnvPlaceholders() able to inline the values of referenced env vars. (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Make ContainerBuilder::resolveEnvPlaceholders() able to inline the values of referenced env vars.

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

Being able to resolve environment variables at compile time as a replacement for `SYMFONY__` special env vars, unlocking their deprecation (see #20100).

Commits
-------

713b081 [DI] Make ContainerBuilder::resolveEnvPlaceholders() able to inline the values of referenced env vars.
2016-12-17 09:53:28 +01:00
Maxime Steinhausser
e66d3da91a [DependencyInjection] Fix on-invalid attribute type in xsd 2016-12-15 15:48:03 +01:00
Fabien Potencier
69dcf41a3c feature #20167 [DependencyInjection] Make method (setter) autowiring configurable (dunglas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DependencyInjection] Make method (setter) autowiring configurable

| Q | A |
| --- | --- |
| Branch? | master |
| Bug fix? | no |
| New feature? | yes |
| BC breaks? | no |
| Deprecations? | maybe? |
| Tests pass? | yes |
| Fixed tickets | #19631 |
| License | MIT |
| Doc PR | symfony/symfony-docs#7041 |

Follow up of #19631. Implements https://github.com/symfony/symfony/pull/19631#issuecomment-240646169:

Edit: the last supported format:

``` yaml
services:
    foo:
        class: Foo
        autowire: ['__construct', 'set*'] # Autowire constructor and all setters
        autowire: true # Converted by loaders in `autowire: ['__construct']` for BC
        autowire: ['foo', 'bar'] # Autowire only `foo` and `bar` methods
```

Outdated:

``` yaml
autowire: true # constructor autowiring
autowire: [__construct, setFoo, setBar] # autowire whitelisted methods only
autowire: '*' # autowire constructor + every setters (following existing rules for setters autowiring)
```
- [x] Allow to specify the list of methods in the XML loader
- [x] Add tests for the YAML loader

Commits
-------

6dd53c7 [DependencyInjection] Introduce method injection for autowiring
2016-12-13 16:48:43 +01:00
Christian Flothmann
184f7ff125 replace DefinitionDecorator with ChildDefinition
The DefinitionDecorator class does not deal with decorated services. It
reflects a parent-child-relationship between definitions instead. To
avoid confusion, this commit deprecates the existing DefinitionDecorator
class and introduces a new ChildDefinition class as replacement.
2016-12-13 12:26:14 +01:00
Fabien Potencier
902d9edacd feature #20651 [DependencyInjection] Added Yaml syntax shortcut for name-only tags (wouterj)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DependencyInjection] Added Yaml syntax shortcut for name-only tags

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

This PR adds a little shorcut for tags without any attributes. There are increasingly more name-only tags in Symfony and having to do `{ name: twig.extension }` for these seems way too verbose to me.

**Before**
```yaml
services:
    app.twig_extension:
        class: AppBundle\Twig\AppExtension
        tags:
            - { name: twig.extension }
```

**After**
```yaml
services:
    app.twig_extension:
        class: AppBundle\Twig\AppExtension
        tags: [twig.extension]
        # or
        #    - twig.extension
```

This of course means we introduce a new format to achieve the same goal. I believe this isn't a big problem as the decision is distinctive and simple: If you configure tag attributes, use the long format, otherwise use the short format.

Backwards compatibility
---

In this PR, an exception was removed to allow this new shortcut format. The BC promise doesn't cover exceptions and I think removing the exception here should cause anything to break:

 * Applications shouldn't rely on exceptions
 * If code was triggering this exception before, it would not cause any behaviour change after this PR: The service just retrieves an unused tag, which is simply ignored by the container.

Commits
-------

7fa8c8a Added Yaml syntax shortcut for name-only tags
2016-12-13 10:04:41 +01:00
Fabien Potencier
22586ca996 feature #20648 [DependencyInjection] Added a shortcut method for autowired definitions (wouterj)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DependencyInjection] Added a shortcut method for autowired definitions

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

This is a simple proposal to make adding autowired definitions to the `ContainerBuilder` a little easier. Registering autowired services in PHP code was quite verbose at the moment, while the whole point of autowiring is quick service registration.

**Before**
```php
$container->register('app.twig_extension', AppExtension::class)
    ->setAutowired(true)
    ->addTag('twig.extension')
;
```

**After**
```php
$container->autowire('app.twig_extension', AppExtension::class)
    ->addTag('twig.extension')
;
```

With https://github.com/symfony/symfony/pull/20264, this will be even nicer:
```php
$container->autowire(AppExtension::class)
    ->addTag('twig.extension')
;
```

Commits
-------

6ef4ce8 Added a shortcut method for autowired definitions
2016-12-13 10:00:08 +01:00
Nicolas Grekas
713b0813bc [DI] Make ContainerBuilder::resolveEnvPlaceholders() able to inline the values of referenced env vars. 2016-12-09 11:57:39 +01:00
Nicolas Grekas
726ad262ef Merge branch '3.2'
* 3.2: (51 commits)
  [FrameworkBundle] [Workflow] Fix service marking store configuration
  Fix merge
  [Validator] add class name to the cache key
  [Serializer] Remove AbstractObjectNormalizer::isAttributeToNormalize
  Throw less misleading exception when property access not found
  [Twig] Fix deprecations with Twig 1.29
  [FrameworkBundle] Fix validation cache warmer with failing or missing classes
  Fixed typo
  [FrameworkBundle] Removed the kernel.debug parameter from the cache pool namespace seed
  Fix email address
  fix the docblock in regard to the role argument
  [Bridge\Twig] Trigger deprecation when using FormExtension::$renderer
  Don't use the "app" global variable in the profiler
  [VarDumper] fix tests when xdebug is enabled
  Fix merge
  FIXED NON EXISTING TYPE DECLARATION
  [Form] Add failing test for data collector bug
  [Cache] Fix dumping SplDoublyLinkedList iter mode
  [Form] Fix FormDataCollector
  Ignore missing 'debug.file_link_formatter' service in Debug and Twig bundles
  ...
2016-12-08 16:31:48 +01:00
Nicolas Grekas
8e6023b882 bug #20688 [FrameworkBundle] Resolve env params in debug:config command (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[FrameworkBundle] Resolve env params in debug:config command

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

Displays e.g. `url: '%env(DATABASE_URL)%'`
instead of `url: env_DATABASE_URL_b188317b1d181eca5f0be35aefdae9c4`
when doing `bin/console debug:config doctrine`

Commits
-------

695d100 [FrameworkBundle] Resolve env params in debug:config command
2016-12-08 16:27:33 +01:00
Nicolas Grekas
a28c522790 Merge branch '3.1' into 3.2
* 3.1: (28 commits)
  Fix merge
  [Validator] add class name to the cache key
  [Serializer] Remove AbstractObjectNormalizer::isAttributeToNormalize
  Throw less misleading exception when property access not found
  [Twig] Fix deprecations with Twig 1.29
  Fixed typo
  [FrameworkBundle] Removed the kernel.debug parameter from the cache pool namespace seed
  Fix email address
  fix the docblock in regard to the role argument
  Don't use the "app" global variable in the profiler
  [VarDumper] fix tests when xdebug is enabled
  Fix merge
  FIXED NON EXISTING TYPE DECLARATION
  [Cache] Fix dumping SplDoublyLinkedList iter mode
  [Console] fixed PHP7 Errors when not using Dispatcher
  Regression test for missing controller arguments (3.1)
  Regression test for missing controller arguments
  fix a test checking for a value
  [Form][DX] FileType "multiple" fixes
  fixed CS
  ...
2016-12-08 16:18:22 +01:00
Nicolas Grekas
73099f3555 Merge branch '2.8' into 3.1
* 2.8:
  [Twig] Fix deprecations with Twig 1.29
  Fixed typo
  Fix email address
  fix the docblock in regard to the role argument
  [VarDumper] fix tests when xdebug is enabled
  Fix merge
  [Cache] Fix dumping SplDoublyLinkedList iter mode
  [Console] fixed PHP7 Errors when not using Dispatcher
  Regression test for missing controller arguments
  fix a test checking for a value
  [Form][DX] FileType "multiple" fixes
  fixed CS
  [TwigBundle] Fix twig loader registered twice
  [WebProfilerBundle] Fix dump block is unfairly restrained
  [Console] Fix wrong handling of multiline arg/opt descriptions
  [DependencyInjection] PhpDumper.php: hasReference() should not search references in lazy service arguments.
  [Form] fixed "empty_value" option deprecation
  Cast result to int before adding to it
2016-12-08 15:58:14 +01:00
Nicolas Grekas
7f633d143c Merge branch '2.7' into 2.8
* 2.7:
  [Twig] Fix deprecations with Twig 1.29
  fix the docblock in regard to the role argument
  Cast result to int before adding to it
2016-12-08 15:41:31 +01:00
Nicolas Grekas
28a0be8a4f bug #20539 Cast result to int before adding to it (alcaeus)
This PR was merged into the 2.7 branch.

Discussion
----------

Cast result to int before adding to it

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

This fixes the occasional warning about non-numeric values when using PHP 7.1.

Commits
-------

70c42f2 Cast result to int before adding to it
2016-12-08 15:35:57 +01:00
Fabien Potencier
1188b4d6f4 Merge branch '2.7' into 2.8
* 2.7:
  Regression test for missing controller arguments
  fix a test checking for a value
  [Form][DX] FileType "multiple" fixes
  fixed CS
  [TwigBundle] Fix twig loader registered twice
  [Console] Fix wrong handling of multiline arg/opt descriptions
  [DependencyInjection] PhpDumper.php: hasReference() should not search references in lazy service arguments.
  [Form] fixed "empty_value" option deprecation
2016-12-05 09:41:28 +01:00
Christian Flothmann
aea0478451 fix a test checking for a value 2016-12-03 14:58:39 +01:00
Fabien Potencier
5f62f01943 fixed CS 2016-12-03 11:50:08 +01:00
Kévin Dunglas
6dd53c7209
[DependencyInjection] Introduce method injection for autowiring 2016-12-02 09:49:57 +01:00
Nicolas Grekas
695d10071b [FrameworkBundle] Resolve env params in debug:config command 2016-11-30 16:21:24 +01:00
Antanas Arvasevicius
595a9781e2 [DependencyInjection] PhpDumper.php: hasReference() should not search references in lazy service arguments. 2016-11-28 16:07:09 +02:00
WouterJ
7fa8c8a704 Added Yaml syntax shortcut for name-only tags 2016-11-27 12:17:06 +01:00
Wouter J
6ef4ce8329 Added a shortcut method for autowired definitions 2016-11-26 18:01:32 +01:00
Andreas Braun
70c42f2676
Cast result to int before adding to it
This fixes the occasional warning about non-numeric values when using PHP 7.1
2016-11-25 15:42:00 +01:00
Nicolas Grekas
13265aece3 Merge branch '3.2'
* 3.2:
  [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name
  [FrameworkBundle] Improve performance of ControllerNameParser
  Update documentation link to the component
  [HttpFoundation] Add links to RFC-7231
  [DI] Initialize properties before method calls
  [Bridge/Doctrine] Use cache.prefix.seed parameter for generating cache namespace
  Tag missing internals
  Add missing example for 'path' argument in debug:config
  [WebProfilerBundle] Dont use request attributes in RouterController
  Fix complete config tests
2016-11-25 13:33:00 +01:00
Nicolas Grekas
5461c1ed53 Merge branch '3.1' into 3.2
* 3.1:
  [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name
  [FrameworkBundle] Improve performance of ControllerNameParser
  Update documentation link to the component
  [HttpFoundation] Add links to RFC-7231
  [DI] Initialize properties before method calls
  Tag missing internals
  [WebProfilerBundle] Dont use request attributes in RouterController
  Fix complete config tests
2016-11-25 13:32:42 +01:00
Nicolas Grekas
966d45f889 Merge branch '2.8' into 3.1
* 2.8:
  [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name
  [FrameworkBundle] Improve performance of ControllerNameParser
  Update documentation link to the component
  [HttpFoundation] Add links to RFC-7231
  [DI] Initialize properties before method calls
  Tag missing internals
  [WebProfilerBundle] Dont use request attributes in RouterController
  Fix complete config tests
2016-11-25 13:27:14 +01:00
Nicolas Grekas
4d04c40ae3 Merge branch '2.7' into 2.8
* 2.7:
  [Routing] Fail properly when a route parameter name cannot be used as a PCRE subpattern name
  [FrameworkBundle] Improve performance of ControllerNameParser
  Update documentation link to the component
  [HttpFoundation] Add links to RFC-7231
  [DI] Initialize properties before method calls
  Tag missing internals
  [WebProfilerBundle] Dont use request attributes in RouterController
  Fix complete config tests
2016-11-25 13:26:42 +01:00
Nicolas Grekas
e62a390ff5 bug #20566 [DI] Initialize properties before method calls (ro0NL)
This PR was squashed before being merged into the 2.7 branch (closes #20566).

Discussion
----------

[DI] Initialize properties before method calls

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes-ish
| New feature?  | no
| BC breaks?    | not sure
| Deprecations? | no
| Tests pass?   | not yet (only dumps seem to fail)
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Given

```yml
services:
    handler:
        class: AppBundle\Handler
        properties:
            debug: '%kernel.debug%'
        calls:
            - [handle]
```

I totally expected `Handler::$debug` to be set before `Handler::handle` is called. It was not..  and it's really annoying :)

Commits
-------

0af433b [DI] Initialize properties before method calls
2016-11-25 10:44:34 +01:00
Roland Franssen
0af433b01f [DI] Initialize properties before method calls 2016-11-25 10:44:31 +01:00
Nicolas Grekas
9361c5eacf Merge branch '3.2'
* 3.2:
  Fix merge
  [DI] Fixed custom services definition BC break introduced in ec7e70fb…
  [HttpKernel] Deprecate checking for cacheable HTTP methods in Request::isMethodSafe()
  [Process] Fix kill process on reached timeout using getIterator()
  [DI] Aliases should preserve the aliased invalid behavior
2016-11-24 11:43:03 +01:00
Nicolas Grekas
e67e47dd7b Merge branch '3.1' into 3.2
* 3.1:
  [DI] Fixed custom services definition BC break introduced in ec7e70fb…
  [Process] Fix kill process on reached timeout using getIterator()
  [DI] Aliases should preserve the aliased invalid behavior
2016-11-24 11:40:28 +01:00
Nicolas Grekas
3918fff3d9 Merge branch '2.8' into 3.1
* 2.8:
  [DI] Fixed custom services definition BC break introduced in ec7e70fb…
  [DI] Aliases should preserve the aliased invalid behavior
2016-11-24 11:40:06 +01:00
Nicolas Grekas
b928133bbe Merge branch '2.7' into 2.8
* 2.7:
  [DI] Fixed custom services definition BC break introduced in ec7e70fb…
  [DI] Aliases should preserve the aliased invalid behavior
2016-11-24 11:38:47 +01:00
Nicolas Grekas
3eb8a342f5 bug #20609 [DI] Fixed custom services definition BC break introduced in ec7e70fb… (kiler129)
This PR was squashed before being merged into the 2.7 branch (closes #20609).

Discussion
----------

[DI] Fixed custom services definition BC break introduced in ec7e70fb…

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no, fixes previous BC
| Deprecations? | no
| Tests pass?   | yes (verified on Win only)
| Fixed tickets | #20608
| License       | MIT
| Doc PR        | -

Commits
-------

7a5e11e [DI] Fixed custom services definition BC break introduced in ec7e70fb…
2016-11-24 11:37:50 +01:00
kiler129
7a5e11eb12 [DI] Fixed custom services definition BC break introduced in ec7e70fb… 2016-11-24 11:34:23 +01:00
Fabien Potencier
af9c279e23 bug #20598 [DI] Aliases should preserve the aliased invalid behavior (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI] Aliases should preserve the aliased invalid behavior

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

Commits
-------

7752308 [DI] Aliases should preserve the aliased invalid behavior
2016-11-23 17:13:15 -08:00
Fabien Potencier
df7f83ca6d Merge branch '3.2'
* 3.2: (24 commits)
  [Filesystem] Remove extra argv in dumpFile() tests
  [DI] minor FileLoaders tests update
  [FrameworkBundle] Add framework.cache.prefix_seed for predictible cache key prefixes
  [SecurityBundle] Remove FirewallContext mandatory FirewallConfig argument deprecation
  [HttpKernel] Revert BC breaking change of Request::isMethodSafe()
  [DI] Allow null as default env value
  [WebProfilerBundle] Fix deprecated uses of profiler_dump
  [SecurityBundle] Fix FirewallConfig nullable arguments
  [FrameworkBundle] Avoid warming up the validator cache for non-existent classes
  [DOMCrawler] Bug fixed
  [FrameworkBundle] Mark cache.default_*_provider services private
  [Process] Do feat test before enabling TTY mode
  bumped Symfony version to 3.1.8
  updated VERSION for 3.1.7
  updated CHANGELOG for 3.1.7
  bumped Symfony version to 2.8.15
  updated VERSION for 2.8.14
  updated CHANGELOG for 2.8.14
  bumped Symfony version to 2.7.22
  updated VERSION for 2.7.21
  ...
2016-11-23 16:46:49 -08:00
Fabien Potencier
02b1e75757 Merge branch '3.1' into 3.2
* 3.1:
  [Filesystem] Remove extra argv in dumpFile() tests
  [DI] minor FileLoaders tests update
  [HttpKernel] Revert BC breaking change of Request::isMethodSafe()
  [DOMCrawler] Bug fixed
  [FrameworkBundle] Mark cache.default_*_provider services private
  [Process] Do feat test before enabling TTY mode
  bumped Symfony version to 3.1.8
  updated VERSION for 3.1.7
  updated CHANGELOG for 3.1.7
  bumped Symfony version to 2.8.15
  updated VERSION for 2.8.14
  updated CHANGELOG for 2.8.14
  bumped Symfony version to 2.7.22
  updated VERSION for 2.7.21
  update CONTRIBUTORS for 2.7.21
  updated CHANGELOG for 2.7.21
  Fix annotation type for $context
  [Doctrine][Form] support large integers
2016-11-23 16:46:43 -08:00
Fabien Potencier
08c869e8fe Merge branch '2.8' into 3.1
* 2.8:
  [DI] minor FileLoaders tests update
  [HttpKernel] Revert BC breaking change of Request::isMethodSafe()
  [DOMCrawler] Bug fixed
  [Process] Do feat test before enabling TTY mode
  bumped Symfony version to 2.8.15
  updated VERSION for 2.8.14
  updated CHANGELOG for 2.8.14
  bumped Symfony version to 2.7.22
  updated VERSION for 2.7.21
  update CONTRIBUTORS for 2.7.21
  updated CHANGELOG for 2.7.21
  Fix annotation type for $context
  [Doctrine][Form] support large integers
2016-11-23 16:46:24 -08:00
Fabien Potencier
5912413a39 Merge branch '2.7' into 2.8
* 2.7:
  [DI] minor FileLoaders tests update
  [HttpKernel] Revert BC breaking change of Request::isMethodSafe()
  [DOMCrawler] Bug fixed
  [Process] Do feat test before enabling TTY mode
  bumped Symfony version to 2.7.22
  updated VERSION for 2.7.21
  update CONTRIBUTORS for 2.7.21
  updated CHANGELOG for 2.7.21
  [Doctrine][Form] support large integers
2016-11-23 16:43:03 -08:00
Maxime Steinhausser
412fbe613f [DI] minor FileLoaders tests update 2016-11-23 22:37:45 +01:00
Samuel ROZE
519a47179a [DI] Allow null as default env value 2016-11-23 14:12:24 +01:00
Nicolas Grekas
7752308c96 [DI] Aliases should preserve the aliased invalid behavior 2016-11-22 19:19:49 +01:00
Fabien Potencier
a4edafbd7d updated version to 3.3 2016-11-19 12:35:20 -08:00
Nicolas Grekas
39c830997e Merge branch '3.1'
* 3.1:
  [YAML] Fix processing timestamp with timezone
  [ci] Testing with UTC hides bugs
  [DI] Fix error when trying to resolve a DefinitionDecorator
  [DoctrineBridge] Fix deprecation message/documentation of implementing UserProviderInterface using the entity provider
  Fix time-sensitive tests that use data providers
  [Validator] improve and added more Indonesian translation.
2016-11-18 16:17:59 -05:00
Nicolas Grekas
2e6618b144 Merge branch '2.8' into 3.1
* 2.8:
  [ci] Testing with UTC hides bugs
  [DI] Fix error when trying to resolve a DefinitionDecorator
  [DoctrineBridge] Fix deprecation message/documentation of implementing UserProviderInterface using the entity provider
  [Validator] improve and added more Indonesian translation.
2016-11-18 16:15:08 -05:00
Nicolas Grekas
546ec682bf Merge branch '2.7' into 2.8
* 2.7:
  [ci] Testing with UTC hides bugs
  [DI] Fix error when trying to resolve a DefinitionDecorator
  [Validator] improve and added more Indonesian translation.
2016-11-18 16:10:01 -05:00
Nicolas Grekas
8e0da2f39e [DI] Fix error when trying to resolve a DefinitionDecorator 2016-11-17 06:21:23 -05:00
Nicolas Grekas
e449af0e15 Revert "feature #18728 deprecate get() for uncompiled container builders (xabbuh)"
This reverts commit 27f4680294, reversing
changes made to e4177a0744.
2016-11-16 15:37:53 -05:00
Nicolas Grekas
7625166b4e [DI] Fix accepting null as default env param value 2016-11-15 07:20:37 -05:00
Nicolas Grekas
93c25f8872 [DI] Force env params to be string|null 2016-11-08 15:49:28 +01:00
Nicolas Grekas
90ba197cef [DI][Serializer] Add missing deprecations 2016-11-04 22:11:55 +01:00
Fabien Potencier
79259aad3f minor #20410 [DI] Add missing deprecation in ContainerBuilder::addCompilerPass (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Add missing deprecation in ContainerBuilder::addCompilerPass

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

ping @Ener-Getick

Commits
-------

c0e880e [DI] Add missing deprecation in ContainerBuilder::addCompilerPass
2016-11-04 08:02:22 -07:00
Nicolas Grekas
c0e880e277 [DI] Add missing deprecation in ContainerBuilder::addCompilerPass 2016-11-04 14:53:25 +01:00
Fabien Potencier
9e2ad932e9 feature #20232 [DependencyInjection] fixed ini file values conversion (fabpot)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DependencyInjection] fixed ini file values conversion

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

When using the ini format to load parameters in the Container, the parameter values were converted by PHP directly (`'true'` => `1` for instance). But when using the YAML or XML format, the conversions are much broader and more precise (`'true'` => `true` for instance). This PR fixed fixes this discrepancy by using the same rules as XML (we could use `INI_SCANNER_TYPED` for recent versions of PHP but the rules are not exactly the same, so I prefer consistency here).

One might argue that this is a new feature and that this should be merged into master, which I can accept as well. In master, the `XmlUtils::phpize()` method should be deprecated and replaced by a more generic phpize class.

ping @symfony/deciders

Commits
-------

4ccfce6 [DependencyInjection] fixed ini file values conversion
2016-11-03 16:44:20 -07:00
Fabien Potencier
4ccfce6106 [DependencyInjection] fixed ini file values conversion 2016-11-03 16:43:19 -07:00
Nicolas Grekas
7e766dae4a erge branch '3.1'
* 3.1:
  Remove trailing space
  CS fixes
  Remove trailing space
  CS: apply rules
  [Yaml] Clean some messages + add test case
  [Console] simplified code
  [Form] Fix UrlType transforms valid protocols
  [SecurityBundle] Changed encoder configuration example to bcrypt
2016-11-03 09:11:03 +01:00
Nicolas Grekas
63a626e4c8 Merge branch '2.8' into 3.1
* 2.8:
  CS fixes
  Remove trailing space
  CS: apply rules
  [Yaml] Clean some messages + add test case
  [Console] simplified code
  [Form] Fix UrlType transforms valid protocols
  [SecurityBundle] Changed encoder configuration example to bcrypt
2016-11-03 09:04:31 +01:00
Nicolas Grekas
37956db606 Merge branch '2.7' into 2.8
* 2.7:
  CS fixes
  Remove trailing space
  CS: apply rules
  [Yaml] Clean some messages + add test case
  [Form] Fix UrlType transforms valid protocols
  [SecurityBundle] Changed encoder configuration example to bcrypt
2016-11-03 08:52:58 +01:00
Nicolas Grekas
0aca495522 minor #20364 CS: apply rules (keradus)
This PR was squashed before being merged into the 2.7 branch (closes #20364).

Discussion
----------

CS: apply rules

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

Commits
-------

22d4e15 CS: apply rules
2016-11-03 08:44:55 +01:00
Dariusz Ruminski
22d4e15634 CS: apply rules 2016-11-03 08:44:53 +01:00
Nicolas Grekas
bf91eda705 Revert "feature #17608 [DependencyInjection] Autowiring: add setter injection support (dunglas)"
This reverts commit 7eab6b9204, reversing
changes made to 35f201f9d6.
2016-11-02 10:26:25 +01:00
Nicolas Grekas
87ef7235be Merge branch '3.1'
* 3.1:
  [PhpUnitBridge] Fix undefined variable
  Compatibility with Twig 1.27
  Remove extra line in doc-block comment
  [VarDumper] Fix dumping Twig source in stack traces
  Enhance GAE compat by removing some realpath()
  [DependencyInjection] Remove old code in XML loader
  bumped Symfony version to 3.1.7
  updated VERSION for 3.1.6
  updated CHANGELOG for 3.1.6
  bumped Symfony version to 2.8.14
  updated VERSION for 2.8.13
  updated CHANGELOG for 2.8.13
  bumped Symfony version to 2.7.21
  updated VERSION for 2.7.20
  update CONTRIBUTORS for 2.7.20
  updated CHANGELOG for 2.7.20
  [SecurityBundle] Fix twig-bridge lowest dep
2016-10-28 10:25:06 +02:00
Martin Hasoň
d090159fb2 [DependencyInjection] Remove old code in XML loader 2016-10-27 10:29:18 +02:00
Fabien Potencier
14acca7e23 Merge branch '3.1'
* 3.1:
  Fix edge case with StreamedResponse where headers are sent twice
  removed usage of Twig_Compiler::addIndentation
  A decorated service should not keep the autowiring types
  merge tags instead of completely replacing them
2016-10-24 08:52:51 -07:00
Fabien Potencier
dd73a100c3 Merge branch '2.8' into 3.1
* 2.8:
  Fix edge case with StreamedResponse where headers are sent twice
  removed usage of Twig_Compiler::addIndentation
  A decorated service should not keep the autowiring types
  merge tags instead of completely replacing them
2016-10-24 08:52:44 -07:00
Fabien Potencier
2011f447df Merge branch '2.7' into 2.8
* 2.7:
  Fix edge case with StreamedResponse where headers are sent twice
  removed usage of Twig_Compiler::addIndentation
  merge tags instead of completely replacing them
2016-10-24 08:52:36 -07:00
Fabien Potencier
ae68e66d7e bug #20267 [DependencyInjection] A decorated service should not keep the autowiring types (chalasr)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] A decorated service should not keep the autowiring types

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

When decorating a service which is not abstract and has `autowiring_types`, the decorator should be the one used for autowiring methods of autowired services, so we should explicitly empty them on the decorated definition after merged them into the child. See  https://github.com/symfony/symfony/pull/20260#issuecomment-255364862 for a use case where we are forced to manually empty the decorated service's `autowiring_types`.

Commits
-------

5951378 A decorated service should not keep the autowiring types
2016-10-23 08:08:37 -07:00
Robin Chalas
5951378727
A decorated service should not keep the autowiring types 2016-10-23 11:04:13 +02:00
Christian Flothmann
c333eb70b6 merge tags instead of completely replacing them 2016-10-23 08:52:28 +02:00
Fabien Potencier
728034c44d Merge branch '3.1'
* 3.1:
  [TwigBundle] fixed usage of getSource in tests
  Trim constant values in XmlFileLoader
  move test to the HttpKernel component
  [TwigBridge] fixed Twig_Source required argument
  [HttpKernel] Fix a regression in the RequestDataCollector
  [HttpKernel] Refactor a RequestDataCollector test case to use a data provider
2016-10-22 18:13:47 -07:00
Fabien Potencier
d1e0ba973c Merge branch '2.8' into 3.1
* 2.8:
  [TwigBundle] fixed usage of getSource in tests
  Trim constant values in XmlFileLoader
  move test to the HttpKernel component
  [TwigBridge] fixed Twig_Source required argument
2016-10-22 18:13:38 -07:00
Fabien Potencier
5dfaf584fb Merge branch '2.7' into 2.8
* 2.7:
  [TwigBundle] fixed usage of getSource in tests
  Trim constant values in XmlFileLoader
  move test to the HttpKernel component
  [TwigBridge] fixed Twig_Source required argument
2016-10-22 18:13:14 -07:00
Lars Strojny
f09e6218f8 Trim constant values in XmlFileLoader 2016-10-22 07:36:57 -07:00
Fabien Potencier
2a14cf224d bug #20263 [DependencyInjection] Fix FactoryReturnTypePass position in PassConfig (hason)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DependencyInjection] Fix FactoryReturnTypePass position in PassConfig

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

Commits
-------

dfb5cc3 [DependencyInjection] Fix FactoryReturnTypePass position in PassConfig
2016-10-21 14:26:55 -07:00
Nicolas Grekas
22f00a20ba Merge branch '3.1'
* 3.1:
  [2.8][PhpUnitBridge] Drop ErrorAssert in favor of @expectedDeprecation
  [3.1][PhpUnitBridge] Drop ErrorAssert in favor of @expectedDeprecation
2016-10-21 23:10:51 +02:00
Nicolas Grekas
5d5f704563 [2.8][PhpUnitBridge] Drop ErrorAssert in favor of @expectedDeprecation 2016-10-21 22:59:10 +02:00
Nicolas Grekas
5735255467 [3.1][PhpUnitBridge] Drop ErrorAssert in favor of @expectedDeprecation 2016-10-21 22:36:24 +02:00
Nicolas Grekas
c344203013 [PhpUnitBridge] Drop ErrorAssert in favor of @expectedDeprecation 2016-10-21 22:33:10 +02:00
Martin Hasoň
dfb5cc3922 [DependencyInjection] Fix FactoryReturnTypePass position in PassConfig 2016-10-21 13:59:37 +02:00
Fabien Potencier
de4a650d8c Merge branch '3.1'
* 3.1:
  [TwigBridge] removed deprecations added in Twig 1.27
  PHP CS Fixer: use php_unit_dedicate_assert
  3.0 Upgrade Guide: Added details describing how to pass data to a form through the options resolver
  fixed Filesystem:makePathRelative and added 2 more testcases
  no 304 response if method is not cacheable
  move tags from decorated to decorating service
2016-10-17 21:30:21 -07:00
Fabien Potencier
f07bf03667 Merge branch '2.8' into 3.1
* 2.8:
  [TwigBridge] removed deprecations added in Twig 1.27
  PHP CS Fixer: use php_unit_dedicate_assert
  3.0 Upgrade Guide: Added details describing how to pass data to a form through the options resolver
  fixed Filesystem:makePathRelative and added 2 more testcases
  no 304 response if method is not cacheable
  move tags from decorated to decorating service
2016-10-17 21:30:12 -07:00
Fabien Potencier
ee8203a599 Merge branch '2.7' into 2.8
* 2.7:
  [TwigBridge] removed deprecations added in Twig 1.27
  PHP CS Fixer: use php_unit_dedicate_assert
  fixed Filesystem:makePathRelative and added 2 more testcases
  no 304 response if method is not cacheable
  move tags from decorated to decorating service
2016-10-17 21:28:30 -07:00
Michael Devery
b53e0de8f0 Fix/broken merging of parameter bag env placeholders 2016-10-14 11:11:06 +02:00
Nicolas Grekas
f065095db7 Merge branch '3.1'
* 3.1:
  [travis] Test on PHP 7.1
  simplified code
  Remove unused variable
  3.0 Upgrade Guide: Added Table of Contents
  [HttpFoundation] add missing upgrade entry
  [FrameworkBundle] Convert null prefix to an empty string in translation:update command
  Improved the deprecation messages for service aliases
  [Serializer] minor: Remove an extra space in a YamlFileLoader error
  [HttpKernel] Clean ArgumentMetadataFactory::getType()
  [PropertyInfo] Fix edge cases in ReflectionExtractor
2016-10-13 08:29:04 +02:00
Christian Flothmann
7def83c0b1 move tags from decorated to decorating service 2016-10-11 23:07:33 +02:00
Michael Devery
124f30d4c6 [DependencyInjection] Fix duplication of placeholders 2016-10-11 08:16:23 -07:00
Fabien Potencier
eee1a446cd feature #20113 Use the method map as authoritative list of factories for dumped containers (stof)
This PR was merged into the 3.2-dev branch.

Discussion
----------

Use the method map as authoritative list of factories for dumped containers

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | only for weird broken cases
| Deprecations? | yes (but only for people doing weird things)
| Tests pass?   | yes
| Fixed tickets | #11761, #19690
| License       | MIT
| Doc PR        | n/a

The initial implementation of the method factory discovery was based on a naming convention for factory methods. However, this naming convention allowed to generate the same name for multiple ids. In the meantime, a method map was introduced to solve this issue (and others).
When accessing a service with a different id than the official one (thanks to ambiguities), this breaks the sharing of the service, as it creates a new instance each time and replaces the existing shared instance. This was also inconsistent between a dumped container (affected by this) and a non-dumped container (reporting a service not found error for the other id).

The method map is now the authoritative way to discover available service factories. When the dumped container was generated with a method map (which is the case when using the dumper shipped in the component), the logic based on defined methods is not executed anymore. This forbids using another id than the real one to access the service (preventing to trigger the broken behavior). So this breaks BC for people being lucky (i.e. they were using the broken id only once and *before* any usage of the official id) and fixes a WTF bug for all others.
When using a dumper which does not fill the method map, the old logic is still applied, but deprecation warnings are triggered on access to dumped services. Currently, this will trigger a deprecation warning for each new service instantiation. I have not found an easy way to trigger it only once (except adding a private property to remember we already triggered it, but is it worth it ?), but only people writing a project container by hand or writing their own dumper would ever see such deprecation anyway (as the core dumper generates the method map).

Additionally, this makes ``getServiceIds`` faster by avoiding doing a regex match for each method in the class.

Commits
-------

03b9108 Use the method map as authoritative list of factories for dumped containers
2016-10-08 11:47:22 -07:00
Javier Eguiluz
b1b21bf43d Improved the deprecation messages for service aliases 2016-10-07 15:26:02 -07:00
Nicolas Grekas
117bd4c305 Merge branch '3.1'
* 3.1:
  Minor fixes & cleanups
  [DependencyInjection] Add missing PHPDoc type
  Correct a typo in the ReflectionExtractor's description
  [HttpFoundation] JSONP callback validation
  [Console] Improved the explanation of the hasOption() method
  Uniformize exception vars according to our CS
  add missing use statement
  bug #18042 [Security] $attributes can be anything, but RoleVoter assumes strings
2016-10-06 10:59:27 +02:00
Fabien Potencier
d9dfed2976 Merge branch '2.8' into 3.1
* 2.8:
  [DependencyInjection] Add missing PHPDoc type
  Correct a typo in the ReflectionExtractor's description
  [HttpFoundation] JSONP callback validation
  [Console] Improved the explanation of the hasOption() method
  Uniformize exception vars according to our CS
  add missing use statement
  bug #18042 [Security] $attributes can be anything, but RoleVoter assumes strings
2016-10-05 18:44:51 -07:00
Kévin Dunglas
4cae9c0947
[DependencyInjection] Add missing PHPDoc type 2016-10-05 22:47:52 +02:00
Christophe Coevoet
03b91089e0 Use the method map as authoritative list of factories for dumped containers
The initial implementation of the method factory discovery was based on a
naming convention for factory methods. However, this naming convention allowed
to generate the same name for multiple ids. In the meantime, a method map was
introduced to solve this issue (and others).
When accessing a service with a different id than the official one (thanks to
ambiguities), this breaks the sharing of the service, as it creates a new
instance each time and replaces the existing shared instance. This was also
inconsistent between a dumped container (affected by this) and a non-dumped
container (reporting a service not found error for the other id).

The method map is now the authoritative way to discover available service
factories. When the dumped container was generated with a method map (which
is the case when using the dumper shipped in the component), the logic based
on defined methods is not executed anymore. This forbids using another id than
the real one to access the service (preventing to trigger the broken behavior).
When using a dumper which does not fill the method map, the old logic is still
applied, but deprecation warnings are triggered on access to dumped services.
2016-10-05 19:22:04 +02:00
Fabien Potencier
2318b60984 Merge branch '3.1'
* 3.1:
  expectedException expects FQCN
  Fixed expectedException annotations
  [Cache] Fix password used to make the redis connection.
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
  Fixed issue with legacy find() method not working as expected
2016-09-24 08:57:00 -07:00
Fabien Potencier
90f6b30f81 Merge branch '2.8' into 3.1
* 2.8:
  expectedException expects FQCN
  Fixed expectedException annotations
  Security and validators messages translation to Latvian
  [Form] FormView->isRendered() remove dead code and simplify the flow
2016-09-24 08:56:48 -07:00
Roland Franssen
526b852d2c expectedException expects FQCN 2016-09-24 09:47:20 +00:00
Nicolas Grekas
663bd74d9f [DI] Fix expectedException annotation 2016-09-21 08:09:36 +02:00
Paráda József
b016c6029b [DependencyInjection] Env parameterbag fix: use the correct exception class. 2016-09-20 14:34:27 -07:00
Fabien Potencier
36c399f632 feature #19191 [DependencyInjection] Automatically detect the definitions class when possible (Ener-Getick)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DependencyInjection] Automatically detect the definitions class when possible

| Q             | A
| ------------- | ---
| Branch?       | "master"
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://github.com/symfony/symfony/issues/19161
| License       | MIT
| Doc PR        |

> Thanks to the features of php 7.0 we can now guess the class of a service created with a factory:
> ```php
> function myFactory(): MyServiceClass
> {
> }
> ```
>
> So I propose to create a new pass to automatically update the services definition when possible. This is particularly useful for autowiring (this way you don't have to copy-paste the class name of the service, especially when this is from a third party library).
>
> What do you think ?

Commits
-------

63afe3c [DependencyInjection] Automatically detect the definitions class when possible
2016-09-19 12:25:58 -07:00
Fabien Potencier
1bcade56e6 feature #19681 [DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)% (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)%

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |  #10138, #7555, #16403, #18155
| License       | MIT
| Doc PR        | https://github.com/symfony/symfony-docs/pull/6918

This is an alternative approach to #18155 for injecting env vars into container configurations.

With this PR, anywhere parameters are allowed, one can use `%env(ENV_VAR)%` to inject a dynamic env var. Additionally, if one sets a value to such parameters in e.g. the `parameter.yml` file (`env(ENV_VAR): foo`), this value will be used as a default value when the env var is not defined. If no default value is specified, an `EnvVarNotFoundException` will be thrown at runtime.

Unlike previous attempts that also used parameters (#16403), the implementation is compatible with DI extensions: before being dumped, env vars are resolved to uniquely identifiable string placeholders that can get through DI extensions manipulations. When dumped, these unique placeholders are replaced by dynamic calls to a getEnv method..

ping @magnusnordlander @dzuelke @fabpot

Commits
-------

bac2132 [DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)% syntax
2016-09-15 10:44:52 -07:00
Fabien Potencier
0e63f4796d feature #19584 [DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter (wouterj)
This PR was squashed before being merged into the 3.2-dev branch (closes #19584).

Discussion
----------

[DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter

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

A common problem under beginners is to think that the dot notation is used to access nested arrays saved in parameters (*common here means someone asks help for this problem at least once a week on IRC*). Adding a little extra detail to the exception message and a working alternative should help pointing these people in the right direction before spending time debugging this.

It's quite late in the night over here, so the wording of the exception message probably isn't great. I'm happy to accept better suggestions 😃

Commits
-------

df70f06 [DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter
2016-09-14 14:30:35 -07:00
WouterJ
df70f0622f [DependencyInjection] Improve ParameterNotFoundException when accessing a nested parameter 2016-09-14 14:25:50 -07:00
Fabien Potencier
c69b89a26b feature #19892 [DI] Add corresponding service id in some exception messages (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Add corresponding service id in some exception messages

| Q             | A
| ------------- | ---
| Branch?       | master
| New feature?  | yes
| Tests pass?   | yes
| License       | MIT

This already helped me figure out where was my mistake :)

Commits
-------

d739f8d [DI] Add corresponding service id in some exception messages
2016-09-14 12:02:36 -07:00
Nicolas Grekas
f5c1b1c077 Merge branch '3.1'
* 3.1:
  [travis/appveyor] Wire simple-phpunit
  [Console] fixed PHP7 Errors are now handled and converted to Exceptions
  Fix #19721
  Fix translation:update command count
  bumped Symfony version to 2.8.12
  updated VERSION for 2.8.11
  updated CHANGELOG for 2.8.11
  bumped Symfony version to 2.7.19
  updated VERSION for 2.7.18
  update CONTRIBUTORS for 2.7.18
  updated CHANGELOG for 2.7.18
  [Security] Optimize RoleHierarchy's buildRoleMap method
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  [Security] Added note inside phpdoc.
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-12 21:03:45 +02:00
Nicolas Grekas
bac2132aeb [DI] Allow injecting ENV parameters at runtime using %env(MY_ENV_VAR)% syntax 2016-09-10 12:12:34 +02:00
Nicolas Grekas
d739f8d71d [DI] Add corresponding service id in some exception messages 2016-09-09 12:12:11 +02:00
Fabien Potencier
86f8d74ba1 Merge branch '2.8' into 3.1
* 2.8:
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  [Security] Added note inside phpdoc.
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-06 16:30:54 -07:00
Fabien Potencier
9e9b41d0ea Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Fix Incorrect line break in exception message (500 debug page)
  Minor cleanups and improvements
  [form] lazy trans `post_max_size_message`.
  [DI] Fix setting synthetic services on ContainerBuilder
  [ClassLoader] Fix ClassCollectionLoader inlining with declare(strict_types=1)
2016-09-06 16:19:39 -07:00
Javier Eguiluz
e4193c746c Minor cleanups and improvements 2016-09-06 09:06:41 -07:00
Nicolas Grekas
42244f2a2e [DI] Fix setting synthetic services on ContainerBuilder 2016-09-06 16:19:03 +02:00
Nicolas Grekas
a2a442b554 Merge branch '3.1'
* 3.1:
  [FrameworkBundle] Check for class existence before is_subclass_of
  Update GroupSequence.php
  Code enhancement and cleanup
  [Form] Fix transformer tests after the ICU update
  [DI] Add anti-regression test
  Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
  bumped Symfony version to 3.1.5
  updated VERSION for 3.1.4
  updated CHANGELOG for 3.1.4
  bumped Symfony version to 2.8.11
  updated VERSION for 2.8.10
  updated CHANGELOG for 2.8.10
  [BrowserKit] Fix cookie expiration on 32 bit systems
  bumped Symfony version to 2.7.18
  updated VERSION for 2.7.17
  update CONTRIBUTORS for 2.7.17
  updated CHANGELOG for 2.7.17
  Update misleading comment about RFC4627
2016-09-06 13:07:23 +02:00
Nicolas Grekas
c5aa4f0a7e Merge branch '2.8' into 3.1
* 2.8:
  [FrameworkBundle] Check for class existence before is_subclass_of
  Update GroupSequence.php
  Code enhancement and cleanup
  [Form] Fix transformer tests after the ICU update
  [DI] Add anti-regression test
  Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
  bumped Symfony version to 2.8.11
  updated VERSION for 2.8.10
  updated CHANGELOG for 2.8.10
  [BrowserKit] Fix cookie expiration on 32 bit systems
  bumped Symfony version to 2.7.18
  updated VERSION for 2.7.17
  update CONTRIBUTORS for 2.7.17
  updated CHANGELOG for 2.7.17
  Update misleading comment about RFC4627
2016-09-06 13:02:40 +02:00
Nicolas Grekas
ccf63e6b8d Merge branch '2.7' into 2.8
* 2.7:
  [FrameworkBundle] Check for class existence before is_subclass_of
  Update GroupSequence.php
  Code enhancement and cleanup
  [DI] Add anti-regression test
  Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
  [BrowserKit] Fix cookie expiration on 32 bit systems
  bumped Symfony version to 2.7.18
  updated VERSION for 2.7.17
  update CONTRIBUTORS for 2.7.17
  updated CHANGELOG for 2.7.17
  Update misleading comment about RFC4627
2016-09-06 12:55:00 +02:00
Nicolas Grekas
0f6bc0b00a bug #19848 Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)" (nicolas-grekas)
This PR was merged into the 2.7 branch.

Discussion
----------

Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| Tests pass?   | yes
| Fixed tickets | #19689 #19840 #19825 #19857
| License       | MIT
| Doc PR        | -

This reverts commit c89f80a9cd, reversing
changes made to 386e5e78b4.

See discussion in #19847

I'll try adding test cases soon that ensure that:

- [x] *when not leaving scope* synthetic services always throw and ignore the `ContainerInterface::NULL_ON_INVALID_REFERENCE` flag (on 3.x also)
- [x] *when leaving scope* synthetic services always return null and ignore the `ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE`  (until 2.8 since scopes are gone in 3.x)

Commits
-------

8cb28bf [DI] Add anti-regression test
ac742df Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
2016-09-06 12:51:08 +02:00
Yonel Ceruto
325da3c0d8 Code enhancement and cleanup 2016-09-06 09:26:07 +02:00
Nicolas Grekas
8cb28bf751 [DI] Add anti-regression test 2016-09-05 09:18:55 +02:00
Nicolas Grekas
ac742dfc48 Revert "minor #19689 [DI] Cleanup array_key_exists (ro0NL)"
This reverts commit c89f80a9cd, reversing
changes made to 386e5e78b4.
2016-09-04 19:06:49 +02:00
Fabien Potencier
15cb83bfa0 bug #19708 [DI] Dont use Container::get() when fetching private services internally (nicolas-grekas)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DI] Dont use Container::get() when fetching private services internally

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #19683, #19682, #19680
| License       | MIT

As spotted by @wouterj, we forgot to remove the deprecation notice when doing internal calls to get private services.

Yet, we don't need to get through this `get()` method, because we can already resolve many things at compile time for private services. This will provide another small performance optim, and fix the issue.

Commits
-------

a9c79fb [DI] Dont use Container::get() when fetching private services internally
2016-09-01 10:39:44 -07:00
Nicolas Grekas
a9c79fb64e [DI] Dont use Container::get() when fetching private services internally 2016-08-26 17:24:58 +02:00
Fabien Potencier
7381d8e11f minor #19638 [DependencyInjection] Factorize listing of setters (dunglas)
This PR was squashed before being merged into the 3.2-dev branch (closes #19638).

Discussion
----------

[DependencyInjection] Factorize listing of setters

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

Add a new method to list setters of a class.

Commits
-------

163fbf4 [DependencyInjection] Factorize listing of setters
2016-08-23 09:55:49 -07:00
Kévin Dunglas
163fbf461f [DependencyInjection] Factorize listing of setters 2016-08-23 09:55:48 -07:00
Nicolas Grekas
ab93dd8241 Merge branch '3.1'
* 3.1:
  [ClassLoader] Fix tests
  [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
  [DependencyInjection] PhpDumper::isFrozen inconsistency
  [DI] Cleanup array_key_exists
  include dynamic services in list of alternatives
  [Debug] Swap dumper services at bootstrap
2016-08-23 15:40:05 +02:00
Nicolas Grekas
e0acca67e0 Merge branch '2.8' into 3.1
* 2.8:
  [ClassLoader] Fix tests
  [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
  [DependencyInjection] PhpDumper::isFrozen inconsistency
  [DI] Cleanup array_key_exists
  include dynamic services in list of alternatives
  [Debug] Swap dumper services at bootstrap
2016-08-23 15:39:15 +02:00
Nicolas Grekas
69fbdc93cf Merge branch '2.7' into 2.8
* 2.7:
  [ClassLoader] Fix tests
  [Debug][HttpKernel][VarDumper] Prepare for committed 7.2 changes
  [DependencyInjection] PhpDumper::isFrozen inconsistency
  [DI] Cleanup array_key_exists
  include dynamic services in list of alternatives
  [Debug] Swap dumper services at bootstrap
2016-08-23 15:37:31 +02:00
Nicolas Grekas
3596cb26ad bug #19685 [DI][2.7] Include dynamic services in alternatives (ro0NL)
This PR was merged into the 2.7 branch.

Discussion
----------

[DI][2.7] Include dynamic services in alternatives

| Q             | A
| ------------- | ---
| Branch?       | 2.7
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | comma-separated list of tickets fixed by the PR, if any
| License       | MIT
| Doc PR        | reference to the documentation PR, if any

Commits
-------

428b5cc include dynamic services in list of alternatives
2016-08-23 09:00:45 +02:00
Taras Girnyk
7c0a62c6a7 [DependencyInjection] PhpDumper::isFrozen inconsistency 2016-08-22 09:38:12 -07:00
Roland Franssen
3306c70a34 [DI] Cleanup array_key_exists 2016-08-22 08:32:51 -07:00
Nicolas Grekas
703db1e3b5 Merge branch '3.1'
* 3.1:
  [travis] Use 7.0 until 7.1 is fixed
  [DIC] Fix service autowiring inheritance
  [Serializer] Fix denormalization of arrays
  [SecurityBundle] Add missing deprecation notice for form_login.intention
  Verify explicitly that the request IP is a valid IPv4 address
  [WebProfilerBundle] replaces tabs characters by spaces.
2016-08-22 14:11:39 +02:00
Nicolas Grekas
298a680ea0 Merge branch '2.8' into 3.1
* 2.8:
  [travis] Use 7.0 until 7.1 is fixed
  [DIC] Fix service autowiring inheritance
  [SecurityBundle] Add missing deprecation notice for form_login.intention
  Verify explicitly that the request IP is a valid IPv4 address
2016-08-22 14:11:19 +02:00
Roland Franssen
428b5cc6a8 include dynamic services in list of alternatives 2016-08-20 13:46:51 +00:00
Robin Chalas
fb95bdc965 [DIC] Fix service autowiring inheritance
Update Changelog
2016-08-19 17:56:42 +02:00
Nicolas Grekas
77e0161870 Merge branch '3.1'
* 3.1:
  [Routing] Add missing options in docblock
  [VarDumper] Fix dumping continuations
  [PropertyInfo] Fix an error in PropertyInfoCacheExtractor
  [HttpFoundation] fixed Request::getContent() reusage bug
  [Form] Skip CSRF validation on form when POST max size is exceeded
  Use try-finally where it possible
  [DependencyInjection] ContainerBuilder: Remove obsolete definitions
  Enhance the phpDoc return types so IDEs can handle the configuration tree.
  fixes
  Remove 3.0 from branch suggestions for fixes in PR template
  [Process] Strengthen Windows pipe files opening (again...)
  [Cache] Handle unserialize() failures gracefully
  Fix #19531 [Form] DateType fails parsing when midnight is not a valid time
2016-08-16 18:09:30 +02:00
Fabien Potencier
e34426e105 minor #19617 Use try-finally where it possible (Koc)
This PR was merged into the 3.1 branch.

Discussion
----------

Use try-finally where it possible

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

Just a minior refactoring for using PHP 5.5 feature.

Commits
-------

747ddf6 Use try-finally where it possible
2016-08-16 07:44:38 -07:00
Konstantin.Myakshin
747ddf6b0b Use try-finally where it possible 2016-08-15 16:15:28 +03:00
Maxime Steinhausser
daa7d005ef [DependencyInjection] ContainerBuilder: Remove obsolete definitions 2016-08-14 11:06:18 +02:00
Nicolas Grekas
6f390d45e3 Merge branch '2.8' into 3.1
* 2.8:
  Relax 1 test failing with latest PHP versions
  bumped Symfony version to 2.8.10
  Remove usage of __CLASS__ outside of a class
  [HttpKernel] Fix variable conflicting name
  [Process] Fix double-fread() when reading unix pipes
  [Process] Fix AbstractPipes::write() for a situation seen on HHVM (at least)
  [Validator] Fix dockblock typehint in XmlFileLoader
  bumped Symfony version to 2.8.10
  updated VERSION for 2.8.9
  updated CHANGELOG for 2.8.9
  bumped Symfony version to 2.7.17
  updated VERSION for 2.7.16
  update CONTRIBUTORS for 2.7.16
  updated CHANGELOG for 2.7.16
  Minor fixes
  [Console] Overcomplete argument exception message tweak.
  fixed bad auto merge
  Console table cleanup
  undefined offset fix (#19406)
  [EventDispatcher] Removed unused variable

Conflicts:
	CHANGELOG-2.7.md
	CHANGELOG-3.0.md
	src/Symfony/Bridge/Swiftmailer/DataCollector/MessageDataCollector.php
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
	src/Symfony/Component/Console/Tests/Helper/LegacyDialogHelperTest.php
	src/Symfony/Component/Console/Tests/Helper/TableTest.php
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/legacy-container9.php
	src/Symfony/Component/EventDispatcher/Tests/AbstractEventDispatcherTest.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
	src/Symfony/Component/HttpKernel/Kernel.php
2016-08-05 10:37:39 +02:00
Ener-Getick
63afe3cd26
[DependencyInjection] Automatically detect the definitions class when possible 2016-07-31 12:30:18 +02:00
Fabien Potencier
851a0a11d0 Merge branch '3.1'
* 3.1:
  Minor fixes
  [Cache] Fix abstract AdapterTestCase cache property
  [Console] Overcomplete argument exception message tweak.
  fixed bad auto merge
  Console table cleanup
  undefined offset fix (#19406)
  [EventDispatcher] Removed unused variable
2016-07-30 03:26:43 -04:00
Fabien Potencier
273eb480f8 Merge branch '3.0' into 3.1
* 3.0:
  Minor fixes
  [Console] Overcomplete argument exception message tweak.
  fixed bad auto merge
  Console table cleanup
  undefined offset fix (#19406)
  [EventDispatcher] Removed unused variable
2016-07-30 03:24:41 -04:00
Fabien Potencier
ca71e7489f Merge branch '2.8' into 3.0
* 2.8:
  Minor fixes
  [Console] Overcomplete argument exception message tweak.
  fixed bad auto merge
  Console table cleanup
  undefined offset fix (#19406)
  [EventDispatcher] Removed unused variable
2016-07-30 03:22:48 -04:00
Fabien Potencier
ec1808f0cb Merge branch '2.7' into 2.8
* 2.7:
  Minor fixes
  [Console] Overcomplete argument exception message tweak.
2016-07-30 03:20:35 -04:00
Vyacheslav Pavlov
774c984863 Minor fixes 2016-07-30 03:17:26 -04:00
Nicolas Grekas
b6bbe43b4b Merge branch '3.1'
* 3.1:
  [TwigBundle] Removed redundant return statement.
  enable property info
  [Cache] Fix default lifetime being ignored
  [DependencyInjection] Fixed deprecated default message template with XML
  Reference the actual location of the documentation
  [TwigBridge] Removed extra arguments in 2 places.
  [Cache] Fix incorrect timestamps generated by FilesystemAdapter
  [Process] Fix write access check for pipes on Windows
  [HttpKernel] Use flock() for HttpCache's lock files

Conflicts:
	src/Symfony/Component/Cache/Adapter/FilesystemAdapter.php
2016-07-28 13:15:50 +02:00
Nicolas Grekas
75ebbf826c Merge branch '3.0' into 3.1
* 3.0:
  [TwigBundle] Removed redundant return statement.
  [DependencyInjection] Fixed deprecated default message template with XML
  [TwigBridge] Removed extra arguments in 2 places.
  [Process] Fix write access check for pipes on Windows
  [HttpKernel] Use flock() for HttpCache's lock files
2016-07-28 13:13:48 +02:00
Nicolas Grekas
1d5f391c89 Merge branch '2.8' into 3.0
* 2.8:
  [TwigBundle] Removed redundant return statement.
  [DependencyInjection] Fixed deprecated default message template with XML
  [TwigBridge] Removed extra arguments in 2 places.
  [Process] Fix write access check for pipes on Windows
  [HttpKernel] Use flock() for HttpCache's lock files
2016-07-28 13:13:34 +02:00
Jérémy Romey
165529bb55 [DependencyInjection] Fixed deprecated default message template with XML 2016-07-26 18:50:32 +02:00
Nicolas Grekas
194dcf3b5d Merge branch '3.1'
* 3.1:
  [Console] Application update PHPDoc of add and register methods
  [Config] Extra tests for Config component
  Fixed bugs in names of classes and methods.
  [DoctrineBridge] Fixed php doc
  [FrameworkBundle] Fixed parameters number mismatch declaration
  [BrowserKit] Added test for followRedirect method (POST method)
  Fix the money form type render with Bootstrap3
  [BrowserKit] Uppercase the "GET" method in redirects
  [DomCrawler] Inherit the namespace cache in subcrawlers
  [WebProfilerBundle] Fixed  JSDoc parameter definition
  [HttpFoundation] HttpCache refresh stale responses containing an ETag

Conflicts:
	src/Symfony/Component/Console/Application.php
2016-07-26 10:08:27 +02:00
Nicolas Grekas
54043a084f Merge branch '3.0' into 3.1
* 3.0:
  [Console] Application update PHPDoc of add and register methods
  [Config] Extra tests for Config component
  Fixed bugs in names of classes and methods.
  [DoctrineBridge] Fixed php doc
  [FrameworkBundle] Fixed parameters number mismatch declaration
  [BrowserKit] Added test for followRedirect method (POST method)
  Fix the money form type render with Bootstrap3
  [BrowserKit] Uppercase the "GET" method in redirects
  [DomCrawler] Inherit the namespace cache in subcrawlers
  [WebProfilerBundle] Fixed  JSDoc parameter definition
  [HttpFoundation] HttpCache refresh stale responses containing an ETag
2016-07-26 10:04:17 +02:00
Nicolas Grekas
667ad70127 Merge branch '2.8' into 3.0
* 2.8:
  [Console] Application update PHPDoc of add and register methods
  [Config] Extra tests for Config component
  Fixed bugs in names of classes and methods.
  [DoctrineBridge] Fixed php doc
  [FrameworkBundle] Fixed parameters number mismatch declaration
  [BrowserKit] Added test for followRedirect method (POST method)
  Fix the money form type render with Bootstrap3
  [BrowserKit] Uppercase the "GET" method in redirects
  [DomCrawler] Inherit the namespace cache in subcrawlers
  [WebProfilerBundle] Fixed  JSDoc parameter definition
  [HttpFoundation] HttpCache refresh stale responses containing an ETag

Conflicts:
	src/Symfony/Component/Finder/Tests/Shell/CommandTest.php
2016-07-26 10:03:56 +02:00
Nicolas Grekas
af47008bc9 Merge branch '2.7' into 2.8
* 2.7:
  [Console] Application update PHPDoc of add and register methods
  [Config] Extra tests for Config component
  Fixed bugs in names of classes and methods.
  [DoctrineBridge] Fixed php doc
  [FrameworkBundle] Fixed parameters number mismatch declaration
  [BrowserKit] Added test for followRedirect method (POST method)
  Fix the money form type render with Bootstrap3
  [BrowserKit] Uppercase the "GET" method in redirects
  [WebProfilerBundle] Fixed  JSDoc parameter definition
  [HttpFoundation] HttpCache refresh stale responses containing an ETag

Conflicts:
	src/Symfony/Component/BrowserKit/Tests/ClientTest.php
	src/Symfony/Component/Security/Acl/Resources/bin/generateSql.php
2016-07-26 10:02:44 +02:00
Vyacheslav Pavlov
c41aa03c48 Fixed bugs in names of classes and methods. 2016-07-26 06:40:54 +02:00
Nicolas Grekas
6d24c55a26 Merge branch '3.0' into 3.1
* 3.0:
  Fix merge
2016-07-20 08:44:26 +03:00
Nicolas Grekas
a84ea7ab70 Merge branch '2.8' into 3.0
* 2.8:
  Fix merge

Conflicts:
	src/Symfony/Component/DependencyInjection/composer.json
2016-07-20 08:43:46 +03:00
Nicolas Grekas
579801157a Fix merge 2016-07-20 08:41:28 +03:00
Fabien Potencier
a5a03aab9e Merge branch '3.1'
* 3.1:
  fixed bad merge
  Fix PHP 7.1 related failures
  [VarDumper] Fix for 7.1
  fixed CS
  Added class existence check if is_subclass_of() fails in compiler passes
  Fix the DBAL session handler version check for Postgresql
2016-07-19 12:47:02 +02:00
Fabien Potencier
ad7db01e1c Merge branch '3.0' into 3.1
* 3.0:
  Fix PHP 7.1 related failures
  [VarDumper] Fix for 7.1
  fixed CS
  Added class existence check if is_subclass_of() fails in compiler passes
  Fix the DBAL session handler version check for Postgresql
2016-07-19 12:45:57 +02:00
Fabien Potencier
89bb250b5c Merge branch '2.8' into 3.0
* 2.8:
  Fix PHP 7.1 related failures
  [VarDumper] Fix for 7.1
  fixed CS
  Added class existence check if is_subclass_of() fails in compiler passes
  Fix the DBAL session handler version check for Postgresql
2016-07-19 12:44:15 +02:00
Fabien Potencier
15ab32bf9b Merge branch '2.7' into 2.8
* 2.7:
  Fix PHP 7.1 related failures
  [VarDumper] Fix for 7.1
2016-07-19 12:40:24 +02:00
Nicolas Grekas
07467ed3a3 Fix PHP 7.1 related failures 2016-07-19 10:44:18 +02:00
Nicolas Grekas
cbd1915a2e Merge branch '3.1'
* 3.1:
  [VarDumper] Fix dumping jsons casted as arrays
  PassConfig::getMergePass is not an array
  Revert "bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)"
  [Serializer] Include the format in the cache key
  Fix the retrieval of the last username when using forwarding
  [Yaml] Fix PHPDoc of the Yaml class
  [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods
  Update getAbsoluteUri() for query string uris

Conflicts:
	src/Symfony/Component/DependencyInjection/Compiler/PassConfig.php
	src/Symfony/Component/HttpFoundation/Tests/RequestTest.php
2016-07-17 16:08:33 +02:00
Nicolas Grekas
17de127281 Merge branch '3.0' into 3.1
* 3.0:
  [VarDumper] Fix dumping jsons casted as arrays
  PassConfig::getMergePass is not an array
  Revert "bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)"
  Fix the retrieval of the last username when using forwarding
  [Yaml] Fix PHPDoc of the Yaml class
  [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods
  Update getAbsoluteUri() for query string uris

Conflicts:
	src/Symfony/Component/Yaml/Yaml.php
2016-07-17 16:02:08 +02:00
Nicolas Grekas
8a2d5cd1df Merge branch '2.8' into 3.0
* 2.8:
  [VarDumper] Fix dumping jsons casted as arrays
  PassConfig::getMergePass is not an array
  Revert "bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)"
  Fix the retrieval of the last username when using forwarding
  [Yaml] Fix PHPDoc of the Yaml class
  [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods
  Update getAbsoluteUri() for query string uris
2016-07-17 15:54:30 +02:00
Nicolas Grekas
7a57903fd8 Merge branch '2.7' into 2.8
* 2.7:
  [VarDumper] Fix dumping jsons casted as arrays
  PassConfig::getMergePass is not an array
  Revert "bug #19114 [HttpKernel] Dont close the reponse stream in debug (nicolas-grekas)"
  Fix the retrieval of the last username when using forwarding
  [Yaml] Fix PHPDoc of the Yaml class
  [HttpFoundation] Add OPTIONS and TRACE to the list of safe methods
  Update getAbsoluteUri() for query string uris
2016-07-17 11:06:15 +02:00
Andreas Schempp
edbefacdd1 PassConfig::getMergePass is not an array 2016-07-14 11:24:45 +02:00
Nicolas Grekas
0c147fa3fd Merge branch '3.1'
* 3.1: (22 commits)
  [travis] Fix deps=low/high builds
  [Form] Fix depreciation triggers
  fixed CS
  skip test with current phpunit bridge
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  [Console] Fix for block() padding formatting after #19189
  [Security][Guard] check if session exist before using it
  bumped Symfony version to 3.1.3
  updated VERSION for 3.1.2
  updated CHANGELOG for 3.1.2
  bumped Symfony version to 3.0.9
  updated VERSION for 3.0.8
  updated CHANGELOG for 3.0.8
  bumped Symfony version to 2.8.9
  updated VERSION for 2.8.8
  updated CHANGELOG for 2.8.8
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  ...

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
2016-07-01 18:08:10 +02:00
Nicolas Grekas
3726aa15dd Merge branch '3.0' into 3.1
* 3.0:
  [travis] Fix deps=low/high builds
  fixed CS
  skip test with current phpunit bridge
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  [Console] Fix for block() padding formatting after #19189
  [Security][Guard] check if session exist before using it
  bumped Symfony version to 3.0.9
  updated VERSION for 3.0.8
  updated CHANGELOG for 3.0.8
  bumped Symfony version to 2.8.9
  updated VERSION for 2.8.8
  updated CHANGELOG for 2.8.8
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  Fix some lowest deps
  Fixed typos in the expectedException annotations

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Security/Guard/Authenticator/AbstractFormLoginAuthenticator.php
2016-07-01 18:00:00 +02:00
Nicolas Grekas
58c8b71320 Merge branch '2.8' into 3.0
* 2.8:
  [travis] Fix deps=low/high builds
  fixed CS
  skip test with current phpunit bridge
  Fix for #19183 to add support for new PHP MongoDB extension in sessions.
  [Console] Fix for block() padding formatting after #19189
  [Security][Guard] check if session exist before using it
  bumped Symfony version to 2.8.9
  updated VERSION for 2.8.8
  updated CHANGELOG for 2.8.8
  bumped Symfony version to 2.7.16
  updated VERSION for 2.7.15
  update CONTRIBUTORS for 2.7.15
  updated CHANGELOG for 2.7.15
  Fix some lowest deps
  Fixed typos in the expectedException annotations

Conflicts:
	CHANGELOG-2.7.md
	CHANGELOG-3.0.md
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Yaml/Tests/ParserTest.php
2016-07-01 17:14:41 +02:00
Kévin Dunglas
a0d7cbe34e
[DependencyInjection] Autowiring: add setter injection support 2016-07-01 10:58:32 +02:00
Remi Collet
7696c95b17 skip test with current phpunit bridge 2016-07-01 08:55:04 +02:00
Fabien Potencier
ed6267d562 feature #19146 [DependencyInjection] deprecate access to private shared services. (hhamon)
This PR was merged into the 3.2-dev branch.

Discussion
----------

[DependencyInjection] deprecate access to private shared services.

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

Commits
-------

4ed70c4 [DependencyInjection] deprecate access to private shared services. Fixes issue #19117.
2016-06-29 07:51:25 +02:00
Fabien Potencier
90d42eb0a9 feature #19190 [DependencyInjection] Add support for short services configurators syntax (voronkovich)
This PR was squashed before being merged into the 3.2-dev branch (closes #19190).

Discussion
----------

[DependencyInjection] Add support for short services configurators syntax

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

This PR adds support for short services configurators syntax in YAML files:
```yaml
services:
    app.some_service:
        class: ...
        # Common syntax
        configurator: [ '@app.configurator', 'configure' ]
        # Short syntax
        configurator: 'app.configurator:configure'

Commits
-------

da2757f [DependencyInjection] Add support for short services configurators syntax
2016-06-29 07:46:37 +02:00
Oleg Voronkovich
da2757f355 [DependencyInjection] Add support for short services configurators syntax 2016-06-29 07:46:34 +02:00
Fabien Potencier
8356d15dfa fixed CS 2016-06-29 07:43:32 +02:00
Fabien Potencier
c53cb57b9d Merge branch '3.1'
* 3.1:
  fixed CS
  fixed CS
  fixed CS
  fixed form tests
  [Console] Fix formatting of SymfonyStyle::comment()
  [Form] fix post max size translation type extension for >= 2.8
  [Security] Allow LDAP loadUser override
  removed dots at the end of @param and @return
  fixed typo
2016-06-29 07:43:10 +02:00
Fabien Potencier
a434e7b419 fixed CS 2016-06-29 07:42:25 +02:00
Fabien Potencier
6bed60b467 Merge branch '3.0' into 3.1
* 3.0:
  fixed CS
  fixed CS
  fixed form tests
  [Console] Fix formatting of SymfonyStyle::comment()
  [Form] fix post max size translation type extension for >= 2.8
  removed dots at the end of @param and @return
  fixed typo
2016-06-29 07:41:56 +02:00
Fabien Potencier
8db8f90edc fixed CS 2016-06-29 07:40:45 +02:00
Fabien Potencier
b1a4d56965 Merge branch '2.8' into 3.0
* 2.8:
  fixed CS
  fixed form tests
  [Console] Fix formatting of SymfonyStyle::comment()
  [Form] fix post max size translation type extension for >= 2.8
  removed dots at the end of @param and @return
  fixed typo
2016-06-29 07:40:00 +02:00
Fabien Potencier
62714464e3 fixed CS 2016-06-29 07:31:50 +02:00
Fabien Potencier
bd1e3e3093 Merge branch '2.7' into 2.8
* 2.7:
  removed dots at the end of @param and @return
  fixed typo
2016-06-29 07:29:29 +02:00
Fabien Potencier
3c47306719 Merge branch '3.1'
* 3.1:
  [CS] Respect PSR2 4.2
  [Form] fix `empty_data` option in expanded `ChoiceType`
  [Console] removed unneeded private methods
  updated Http-Kernel dependency
  [Security] [Guard] Improve comment with working example
  sync min email validator version
  [TwigBridge] Fix inconsistency in LintCommand help
  explicitly forbid e-mail validator 2.0 or higher
  Fixed SymfonyQuestionHelper multi-choice with defaults
  [DoctrineBridge] Don't use object IDs in DoctrineChoiceLoader when passing a value closure
  Differentiate between the first time a progress bar is displayed and subsequent times
  finished previous commit
  No more exception for malformed input name
  fix post_max_size_message translation
  [Process] Fix pipes cleaning on Windows
  Avoid phpunit 5.4 warnings on getMock
  [Form] Add exception to FormRenderer about non-unique block names
  [FrameworkBundle] templating can be fully disabled
  [Form] Consider a violation even if the form is not submitted
2016-06-28 18:31:08 +02:00
Fabien Potencier
45ce2c87f4 Merge branch '3.0' into 3.1
* 3.0:
  [CS] Respect PSR2 4.2
  [Form] fix `empty_data` option in expanded `ChoiceType`
  [Console] removed unneeded private methods
  [Security] [Guard] Improve comment with working example
  sync min email validator version
  [TwigBridge] Fix inconsistency in LintCommand help
  explicitly forbid e-mail validator 2.0 or higher
  Fixed SymfonyQuestionHelper multi-choice with defaults
  [DoctrineBridge] Don't use object IDs in DoctrineChoiceLoader when passing a value closure
  Differentiate between the first time a progress bar is displayed and subsequent times
  finished previous commit
  No more exception for malformed input name
  fix post_max_size_message translation
  [Process] Fix pipes cleaning on Windows
  Avoid phpunit 5.4 warnings on getMock
  [Form] Add exception to FormRenderer about non-unique block names
  [Form] Consider a violation even if the form is not submitted
2016-06-28 18:26:56 +02:00
Fabien Potencier
ba841600a0 Merge branch '2.8' into 3.0
* 2.8:
  [CS] Respect PSR2 4.2
  [Form] fix `empty_data` option in expanded `ChoiceType`
  [Console] removed unneeded private methods
  [Security] [Guard] Improve comment with working example
  sync min email validator version
  [TwigBridge] Fix inconsistency in LintCommand help
  explicitly forbid e-mail validator 2.0 or higher
  Fixed SymfonyQuestionHelper multi-choice with defaults
  [DoctrineBridge] Don't use object IDs in DoctrineChoiceLoader when passing a value closure
  Differentiate between the first time a progress bar is displayed and subsequent times
  finished previous commit
  No more exception for malformed input name
  fix post_max_size_message translation
  [Process] Fix pipes cleaning on Windows
  Avoid phpunit 5.4 warnings on getMock
  [Form] Add exception to FormRenderer about non-unique block names
  [Form] Consider a violation even if the form is not submitted
2016-06-28 18:26:27 +02:00
Fabien Potencier
6b81f2ce43 Merge branch '2.7' into 2.8
* 2.7:
  [CS] Respect PSR2 4.2
  [Form] fix `empty_data` option in expanded `ChoiceType`
  [Console] removed unneeded private methods
  sync min email validator version
  [TwigBridge] Fix inconsistency in LintCommand help
  explicitly forbid e-mail validator 2.0 or higher
  Fixed SymfonyQuestionHelper multi-choice with defaults
  [DoctrineBridge] Don't use object IDs in DoctrineChoiceLoader when passing a value closure
  Differentiate between the first time a progress bar is displayed and subsequent times
  finished previous commit
  No more exception for malformed input name
  fix post_max_size_message translation
  [Process] Fix pipes cleaning on Windows
  Avoid phpunit 5.4 warnings on getMock
  [Form] Add exception to FormRenderer about non-unique block names
  [Form] Consider a violation even if the form is not submitted
2016-06-28 18:24:07 +02:00
Hugo Hamon
4ed70c4a4e [DependencyInjection] deprecate access to private shared services. Fixes issue #19117. 2016-06-28 09:16:13 +02:00