Commit Graph

547 Commits

Author SHA1 Message Date
Robin Chalas
77927f4b33 [DI] Prevent AutowirePass from triggering irrelevant deprecations 2017-04-05 16:41:09 +02:00
Nicolas Grekas
27470de62a [DI] Add "factory" support to named args and autowiring 2017-04-04 16:31:36 +02:00
Nicolas Grekas
146f07471e [DI] Reduce complexity of autowiring 2017-04-04 10:21:54 +02:00
Nicolas Grekas
22bb403c20 Merge branch '3.2'
* 3.2:
  [DI] Autowiring and factories are incompatible with each others
  [DI] Don't use auto-registered services to populate type-candidates
  Lighten tests output by removing composer suggestions
  support nullable array or collection
  Complete the injection of the expression in all syntax errors
  CS: Remove invisible chars
  Disable resource tracking if the config component is missing
  [EventDispatcher] Remove unneded count()
  Fix tests expecting a valid date
  Avoid forcing to define the choices_as_values option when using choice_loader
  add expression text to SyntaxError
  [Console] Fix table cell styling
  [Console] Revised exception rendering
  Fix @param in PHPDoc
  [WebProfilerBundle] Normalize whitespace in exceptions passed in headers
  Disable color support detection for tests
  [Form] Improve the exceptions when trying to get the data in a PRE_SET_DATA listener and the data has not already been set
2017-04-04 09:47:41 +02:00
Nicolas Grekas
ccbbff2328 Merge branch '2.8' into 3.2
* 2.8:
  [DI] Autowiring and factories are incompatible with each others
  [DI] Don't use auto-registered services to populate type-candidates
  Lighten tests output by removing composer suggestions
  support nullable array or collection
  Complete the injection of the expression in all syntax errors
  CS: Remove invisible chars
  Disable resource tracking if the config component is missing
  [EventDispatcher] Remove unneded count()
  Fix tests expecting a valid date
  Avoid forcing to define the choices_as_values option when using choice_loader
  add expression text to SyntaxError
  [Console] Fix table cell styling
  [Console] Revised exception rendering
  [WebProfilerBundle] Normalize whitespace in exceptions passed in headers
  Disable color support detection for tests
  [Form] Improve the exceptions when trying to get the data in a PRE_SET_DATA listener and the data has not already been set
2017-04-04 09:26:27 +02:00
Fabien Potencier
bad24d3935 bug #22258 [DI] Autowiring and factories are incompatible with each others (nicolas-grekas)
This PR was merged into the 2.8 branch.

Discussion
----------

[DI] Autowiring and factories are incompatible with each others

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

Commits
-------

9b601633a7 [DI] Autowiring and factories are incompatible with each others
2017-04-03 15:14:48 -07:00
Nicolas Grekas
9b601633a7 [DI] Autowiring and factories are incompatible with each others 2017-04-03 20:09:33 +02:00
Nicolas Grekas
992c677534 [DI] Don't use auto-registered services to populate type-candidates 2017-04-03 20:02:13 +02:00
Nicolas Grekas
4da8884ca4 [DI] Throw on "configured-keys <> getSubscribedServices()" mismatch 2017-03-28 08:17:58 +02:00
Fabien Potencier
6cc9dc7586 feature #22060 [DI] Add "by-id" autowiring: a side-effect free variant of it based on the class<>id convention (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Add "by-id" autowiring: a side-effect free variant of it based on the class<>id convention

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

This PR adds a new autowiring mode, based only on the class <> id convention.
This way of autowiring is free from any conflicting behavior, which is what I was looking for to begin with.

The expected DX is a bit more involving than the current way we do autowiring. But it's worth it to me, because it's plain predictable - a lot less "magic" imho.

So in this mode, for each `App\Foo` type hint, a reference to an "App\Foo" service will be created. If no such service exists, an exception will be thrown. To me, this opens a nice DX: when type hinting interfaces (which is the best practice), this will tell you when you need to create the explicit interface <> id mapping that is missing - thus encourage things to be made explicit, but only when required, and gradually, in a way that will favor discoverability by devs.

Of course, this is opt-in, and BC. You'd need to do eg in yaml: `autowire: by_id`.
For consistency, the current mode (`autowire: true`) can be configured using `autowire: by_type`.

Commits
-------

c298f2a90c [DI] Add "by-id" autowiring: a side-effect free variant of it based on the class<>id convention
2017-03-25 13:18:59 -07:00
Nicolas Grekas
23fa3a09bf Revert "feature #20973 [DI] Add getter injection (nicolas-grekas)"
This reverts commit 2183f98f54, reversing
changes made to b465634a55.
2017-03-25 15:07:47 +01:00
Nicolas Grekas
c298f2a90c [DI] Add "by-id" autowiring: a side-effect free variant of it based on the class<>id convention 2017-03-24 15:54:23 +01:00
Nicolas Grekas
d7557cf975 [DI] Add hints to exceptions thrown by AutowiringPass 2017-03-24 10:50:03 +01:00
Nicolas Grekas
9b7df39865 [DI] Add and wire ServiceSubscriberInterface 2017-03-22 20:26:09 +01:00
Fabien Potencier
b0482963f1 Merge branch '3.2'
* 3.2:
  Fixes a typo in the form collector styles
  [WebProfilerBundle] Fix content-security-policy compatibility
  [WebProfilerBundle] Drop dead code
  [HttpKernel] Fixed bug with purging of HTTPS URLs
  fix some risky tests
  [DI] [YamlFileLoader] change error message of a non existing file
  [WebProfilerBundle] Handle Content-Security-Policy-Report-Only header correctly
  [Security] Added option to return true in the method isRememberMeRequested
2017-03-21 14:44:47 -07:00
Fabien Potencier
8cd835e658 Merge branch '2.8' into 3.2
* 2.8:
  Fixes a typo in the form collector styles
  [HttpKernel] Fixed bug with purging of HTTPS URLs
  fix some risky tests
  [DI] [YamlFileLoader] change error message of a non existing file
  [Security] Added option to return true in the method isRememberMeRequested
2017-03-21 14:44:32 -07:00
Fabien Potencier
295a8e0a82 Merge branch '2.7' into 2.8
* 2.7:
  [HttpKernel] Fixed bug with purging of HTTPS URLs
  fix some risky tests
  [DI] [YamlFileLoader] change error message of a non existing file
  [Security] Added option to return true in the method isRememberMeRequested
2017-03-21 14:39:01 -07:00
Nicolas Grekas
3e297ba3e4 [DI] Add logging and better failure recovery to AutowirePass 2017-03-21 19:30:57 +01:00
Christian Flothmann
abf1787dcc fix some risky tests 2017-03-20 16:03:41 +01:00
Nicolas Grekas
a6bfe1c6c5 [DI] Remove skipping magic for autowired methods 2017-03-18 00:31:45 +01:00
Nicolas Grekas
fa451b2935 fix typo 2017-03-05 23:31:39 +01:00
Nicolas Grekas
1d9663326e [DI] Allow creating ServiceLocator-based services in extensions 2017-03-05 14:36:05 +01:00
Kévin Dunglas
8f0b629726
[DependencyInjection] Add a missing test for @required autowiring 2017-03-01 22:48:20 +01:00
Fabien Potencier
3fa8a0571d feature #21763 [DI] Replace wildcard-based methods autowiring by @required annotation (nicolas-grekas)
This PR was squashed before being merged into the 3.3-dev branch (closes #21763).

Discussion
----------

[DI] Replace wildcard-based methods autowiring by `@required` annotation

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no (affects things that are only on master)
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

While playing a bit with new features in master around DI configuration, several people around me got bitten by wildcard-based autowiring. The typical example is adding `autowire: [set*]` in `_defaults`: use that on `resource: ../src/Command/` PSR4-based loading and boom, `setApplication` and `setHelperSet` will now be wrongly called. You could tell me "of course, don't to that" - but being bitten so early on a master-only feature makes me really unconfident that this will be easy enough for people after the release.

If wildcard-based autowiring is removed, then I don't see anymore the need for allowing arrays as in `autowire: [setFoo,getBar]`. Moreover, this array syntax has a core DX issue: it's a dead end as far as the learning curve is concerned. You learn it, then when becoming a more advanced dev, someone teaches you that you'd better use another syntax: explicit wiring.

And in fact, we don't need it at all, because something else already exists: just declare a method call, but don't define its arguments. If `autowire: true` is set, then the AutowiringPass already fills in the holes. There is only one tweak required to make this work: don't autowire optional arguments for method calls - or that'd be a BC break. To my PoV that's even better: this makes autowiring fit a "do the minimum to make it work" strategy. A really good one to me.

But there is still an issue: wildcard-based autowiring fits a need. Namely, it allows one to define a convention (eg. `'set*'`), and have all such methods that follow the convention be autowired. To me, this looks like doing it reverse (the DI config should adapt to the code, not reverse). So, to fill this need, let the declaration be in the source: just use an annotation!

This PR adds support for the `@required` annotation, borrowed from the Spring framework:
https://www.tutorialspoint.com/spring/spring_required_annotation.htm

Using the annotation is totally optional of course. If you do, *and if autowiring is on*, then it'll be autowired. If you don't, nothing changes: do manual wiring.

Even when not using autowiring, the annotation is still a nice hint for the consumer of your classes: it tells the reader that this method needs to be called for correct instantiation - thus lowering one drawback of setter injection (discoverability).

The implementation of the annotation parsing is done using a few regexp (no dep on any complex parser) - and works with inheritance, by leveraging the `@inheritdoc` tag (the default behavior being to *not* inherit anything from parent methods).

All in all, looking at the diff stats, it makes everything simpler. Good sign, isn't it?

Commits
-------

f286fcc25f [DI] Replace wildcard-based methods autowiring by `@required` annotation
9081699980 Revert "minor #21315 [DI][FrameworkBundle] Show autowired methods in descriptors (ogizanagi)"
2017-03-01 12:47:24 -08:00
Nicolas Grekas
34e5cc7698 [DI] Simplify AutowirePass and other master-only cleanups 2017-02-28 12:39:23 +01:00
Nicolas Grekas
f286fcc25f [DI] Replace wildcard-based methods autowiring by @required annotation 2017-02-28 10:00:46 +01:00
Fabien Potencier
e37bff942a bug #21602 [DI] Always consider abstract getters as autowiring candidates (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Always consider abstract getters as autowiring candidates

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes (a missing part of getter autowiring really)
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

When a definition is set to be autowired with no method explicitly configured, we already wire the constructor.
We should also autowire abstract getters - with the same reasoning that makes us autowire the constructor: without concrete getters, the class is unusable. This just makes it usable again.

Commits
-------

8f246bde1d [DI] Always consider abstract getters as autowiring candidates
2017-02-27 14:16:56 -08:00
Nicolas Grekas
18e7681fc5 [DI] Fix ordering of tags inheritance 2017-02-23 23:13:03 +01:00
Peter Rehm
9eeec8d776 Refactored other PHPUnit method calls to work with namespaced PHPUnit 6 2017-02-21 11:04:38 +01:00
Peter Rehm
b84eb86655 Updated to PHPUnit namespaces 2017-02-20 14:56:45 +01:00
Nicolas Grekas
56642c4b3d Merge branch '3.2'
* 3.2:
  Updated PHPUnit namespaces
  Add missing conflict rules for phpunit
2017-02-20 14:49:17 +01:00
Peter Rehm
c2e80e3b8b Updated PHPUnit namespaces 2017-02-20 14:34:33 +01:00
Nicolas Grekas
2f20a6ceea Merge branch '3.2'
* 3.2:
  Updated PHPUnit namespaces
2017-02-20 13:38:57 +01:00
Nicolas Grekas
95f30de91d Merge branch '2.8' into 3.2
* 2.8:
  Updated PHPUnit namespaces
2017-02-20 13:38:41 +01:00
Nicolas Grekas
f2754ebe53 minor #21663 Updated PHPUnit namespaces (peterrehm)
This PR was squashed before being merged into the 2.8 branch (closes #21663).

Discussion
----------

Updated PHPUnit namespaces

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

Follow Up of #21564

Commits
-------

205ced4 Updated PHPUnit namespaces
2017-02-20 13:35:45 +01:00
Peter Rehm
205ced409b Updated PHPUnit namespaces 2017-02-20 13:35:43 +01:00
Fabien Potencier
a399e7594b Merge branch '3.2'
* 3.2:
  [DependencyInjection] Fix using autowiring types when there are more than 2 services
  [DependencyInjection] Fix autowiring collisions detection
  [DI] Bug in autowiring collisions detection
2017-02-19 14:20:06 -08:00
Fabien Potencier
043c9ad7ef Merge branch '2.8' into 3.2
* 2.8:
  [DependencyInjection] Fix using autowiring types when there are more than 2 services
  [DependencyInjection] Fix autowiring collisions detection
  [DI] Bug in autowiring collisions detection
2017-02-19 14:13:25 -08:00
Fabien Potencier
3f5c0b1976 bug #21670 [DependencyInjection] Fix autowiring types when there are more than 2 services colliding (GuilhemN)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] Fix autowiring types when there are more than 2 services colliding

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

There is a bug in the `AutowirePass`, when using more than 2 services colliding and you want to use the autowiring types: it may not work depending on their order because `notGuessableTypes` is not reset.

Commits
-------

5981278537 [DependencyInjection] Fix using autowiring types when there are more than 2 services
2017-02-19 09:43:44 -08:00
Fabien Potencier
3cfd04bd18 bug #21665 [DependencyInjection] Fix autowiring collisions detection (nicolas-grekas, GuilhemN)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] Fix autowiring collisions detection

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

Fixes https://github.com/symfony/symfony/pull/21658 by implementing the second proposal of https://github.com/symfony/symfony/pull/21658#issuecomment-280858452:
> Another idea: store the types used previously and check that new services registered don't implement them.

Commits
-------

bb70472dce [DependencyInjection] Fix autowiring collisions detection
6f578ee514 [DI] Bug in autowiring collisions detection
2017-02-19 08:09:57 -08:00
Guilhem Niot
5981278537
[DependencyInjection] Fix using autowiring types when there are more than 2 services 2017-02-19 12:40:30 +01:00
Nicolas Grekas
7a618fbd5f Merge branch '3.2'
* 3.2:
  Fix typo in process error message
  Update to PHPUnit namespaces
  Minor typo fix messsagesData -> messagesData
  remove translation data collector when not usable
2017-02-18 18:35:19 +01:00
Nicolas Grekas
66cad2e4c5 Merge branch '2.8' into 3.2
* 2.8:
  Update to PHPUnit namespaces
  Minor typo fix messsagesData -> messagesData
  remove translation data collector when not usable
2017-02-18 18:28:00 +01:00
Nicolas Grekas
33bae93a44 Merge branch '2.7' into 2.8
* 2.7:
  Update to PHPUnit namespaces
  remove translation data collector when not usable
2017-02-18 18:06:33 +01:00
Peter Rehm
ddd2dff9b2 Update to PHPUnit namespaces 2017-02-18 08:02:39 -08:00
Nicolas Grekas
6f578ee514 [DI] Bug in autowiring collisions detection 2017-02-18 12:32:57 +01:00
Kévin Dunglas
773eca7794 [DependencyInjection] Tests + refacto for "instanceof" definitions 2017-02-17 19:36:36 +01:00
Fabien Potencier
d7aec48fa8 Merge branch '3.2'
* 3.2:
  Revert "bug #21436 [DependencyInjection] check for circular refs caused by method calls (xabbuh)"
  Static code analysis with Php Inspections (EA Extended)
  [VarDumper] Added missing persistent stream cast
  remove unused translation file
  reverted usage of isNan
2017-02-16 14:50:29 -08:00
Fabien Potencier
ea12123bcf Merge branch '2.8' into 3.2
* 2.8:
  Revert "bug #21436 [DependencyInjection] check for circular refs caused by method calls (xabbuh)"
  Static code analysis with Php Inspections (EA Extended)
  [VarDumper] Added missing persistent stream cast
2017-02-16 14:46:52 -08:00
Fabien Potencier
f53672f82b Merge branch '2.7' into 2.8
* 2.7:
  Revert "bug #21436 [DependencyInjection] check for circular refs caused by method calls (xabbuh)"
  Static code analysis with Php Inspections (EA Extended)
  [VarDumper] Added missing persistent stream cast
2017-02-16 14:43:37 -08:00
Fabien Potencier
68d6415955 Revert "bug #21436 [DependencyInjection] check for circular refs caused by method calls (xabbuh)"
This reverts commit 3441b1586f, reversing
changes made to d1f4cb27fd.
2017-02-16 14:39:07 -08:00
Fabien Potencier
6580a49706 Merge branch '3.2'
* 3.2:
  Permit empty suffix on Windows
  fixed CS
  [FrameworkBundle] Remove unused import
  [Console][Table] fixed render when using multiple rowspans.
  add docblocks for Twig url and path function to improve ide completion
  check for circular refs caused by method calls
  [Serializer] fix upper camel case conversion (see #21399)
  [DI] Auto register extension configuration classes as a resource
  [Console] Updated phpdoc on return types
2017-02-16 06:15:30 -08:00
Fabien Potencier
b3ba37d862 Merge branch '2.8' into 3.2
* 2.8:
  Permit empty suffix on Windows
  [Console][Table] fixed render when using multiple rowspans.
  add docblocks for Twig url and path function to improve ide completion
  check for circular refs caused by method calls
  [Serializer] fix upper camel case conversion (see #21399)
  [DI] Auto register extension configuration classes as a resource
  [Console] Updated phpdoc on return types
2017-02-16 06:07:22 -08:00
Fabien Potencier
e103e1d1db Merge branch '2.7' into 2.8
* 2.7:
  Permit empty suffix on Windows
  [Console][Table] fixed render when using multiple rowspans.
  add docblocks for Twig url and path function to improve ide completion
  check for circular refs caused by method calls
  [Serializer] fix upper camel case conversion (see #21399)
  [DI] Auto register extension configuration classes as a resource
  [Console] Updated phpdoc on return types
2017-02-16 06:06:24 -08:00
Fabien Potencier
3441b1586f bug #21436 [DependencyInjection] check for circular refs caused by method calls (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] check for circular refs caused by method calls

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

Before we check for circular references, dependencies coming from method calls are not part of the dependency graph. That why the pass is not able to detect circular references like the one described in #19362 during compilation of the container.

If we add another check after all the optimisation passes have been processed, we should be able to detect these circular references too.

Commits
-------

fe4f7eccf7 check for circular refs caused by method calls
2017-02-16 05:23:11 -08:00
Nicolas Grekas
db995dfaf8 Merge branch '3.2'
* 3.2: (27 commits)
  Improve tracking of environment variables in the case of private services
  [DI] Align AutowirePass with 2.8
  property constraints can be added in child classes
  added test for staticClassLoader in LazyLoadingMetadatafactory
  fixed PHPUnit setUp and tearDown method visibility
  spelling fixes
  Readd Symfony version status in the toolbar
  [Security] LdapUserProvider should not throw an exception if the UID key does not exist in an LDAP entry
  make sure that null can be the invalid value
  [VarDumper] Improve dump of AMQP* Object
  Fix annotations cache folder path
  [FrameworkBundle] Wire ArrayCache for annotation reader at bootstrap
  Ignore missing 'debug.file_link_formatter' service in Debug bundle
  [VarDumper] Fixed dumping of terminated generator
  bumped Symfony version to 3.2.4
  updated VERSION for 3.2.3
  updated CHANGELOG for 3.2.3
  bumped Symfony version to 2.8.18
  updated VERSION for 2.8.17
  updated CHANGELOG for 2.8.17
  ...
2017-02-14 17:35:24 +01:00
Nicolas Grekas
8f246bde1d [DI] Always consider abstract getters as autowiring candidates 2017-02-14 16:19:09 +01:00
Titouan Galopin
f380ba3770 Improve tracking of environment variables in the case of private services 2017-02-14 12:44:34 +01:00
Kévin Dunglas
2ce36a6074
[DependencyInjection] Add a new pass to check arguments validity 2017-02-13 10:03:44 +01:00
Kévin Dunglas
6e501296f9
[DependencyInjection] Add support for named arguments 2017-02-13 10:03:43 +01:00
Nicolas Grekas
ad5b5b5d93 [DI] Refacto / cleanup / minor fixes 2017-02-08 13:32:07 +01:00
Kévin Dunglas
c48c36be8f [DI] Add support for getter autowiring 2017-02-02 20:37:38 +01:00
Nicolas Grekas
37e44939ef [DI][Config] Add & use ReflectionClassResource 2017-02-02 14:15:15 +01:00
Nicolas Grekas
b11d391cb7 [DI] Deprecate autowiring-types in favor of aliases 2017-02-01 19:42:39 +01:00
Fabien Potencier
2183f98f54 feature #20973 [DI] Add getter injection (nicolas-grekas)
This PR was merged into the 3.3-dev branch.

Discussion
----------

[DI] Add getter injection

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

Getter overriding by the container will allow a new kind of dependency injection which enables easier laziness and more immutable classes, by not requiring any corresponding setter. See linked issue for more.

This is WIP:
- [x] wire the concept
- [x] dump anonymous classes with PhpDumper
- [x] generate at runtime in ContainerBuilder::createService
- [x] tests
- [x] make it work on PHP 5

Commits
-------

cb498580d1 [DI] Add getter injection
2017-01-30 11:43:35 -08:00
Maxime Steinhausser
bb870304f0 [DI][DX] Do not map id to class for global classes 2017-01-29 23:41:20 +01:00
Christian Flothmann
fe4f7eccf7 check for circular refs caused by method calls 2017-01-28 09:01:30 +01:00
Nicolas Grekas
cb498580d1 [DI] Add getter injection 2017-01-28 08:49:57 +01:00
Fabien Potencier
9f3072c416 Merge branch '3.2'
* 3.2:
  fixed typo
  fixed composer.json
  [HttpKernel] Fix Bundle name regression
  always check for all fields to be mapped
  clarify exception when no args are configured
  [PropertyAccess] Handle interfaces in the invalid argument exception
  [DI] Fix defaults overriding empty strings in AutowirePass
  [Debug] Workaround "null" $context
  [Debug] Remove $context arg from handleError(), preparing for PHP 7.2
  [FrameworkBundle] Dont wire "annotations.cached_reader" before removing passes
  [Routing] Fix BC break in AnnotationClassLoader defaults attributes handling
  Fix tests with ICU 57.1
  Fix the condition checking the minimum ICU version
2017-01-27 18:39:08 -08:00
Fabien Potencier
09d5f4eb72 Merge branch '3.1' into 3.2
* 3.1:
  fixed typo
  fixed composer.json
  always check for all fields to be mapped
  clarify exception when no args are configured
  [PropertyAccess] Handle interfaces in the invalid argument exception
  [DI] Fix defaults overriding empty strings in AutowirePass
  [Debug] Workaround "null" $context
  [Debug] Remove $context arg from handleError(), preparing for PHP 7.2
  [Routing] Fix BC break in AnnotationClassLoader defaults attributes handling
  Fix tests with ICU 57.1
  Fix the condition checking the minimum ICU version
2017-01-27 18:37:08 -08:00
Fabien Potencier
e8895ad102 Merge branch '2.8' into 3.1
* 2.8:
  always check for all fields to be mapped
  clarify exception when no args are configured
  [PropertyAccess] Handle interfaces in the invalid argument exception
  [DI] Fix defaults overriding empty strings in AutowirePass
  [Debug] Workaround "null" $context
  [Debug] Remove $context arg from handleError(), preparing for PHP 7.2
  [Routing] Fix BC break in AnnotationClassLoader defaults attributes handling
  Fix tests with ICU 57.1
  Fix the condition checking the minimum ICU version
2017-01-27 16:04:57 -08:00
Nicolas Grekas
29c2fd5f74 [DI] Generalize constructor autowiring to partial method calls 2017-01-25 14:16:38 +01:00
Nicolas Grekas
89e27240ab [DI] Fix defaults overriding empty strings in AutowirePass 2017-01-25 13:37:59 +01:00
Maxime Steinhausser
e6d85700d5 [DependencyInjection] Use current class as default class for factory declarations 2017-01-24 00:01:39 +01:00
Nicolas Grekas
61475b5596 Merge branch '3.2'
* 3.2:
  fix getMock usage
  fix merge
  [DependencyInjection] Fixed variadic method parameter in autowired classes
  update German translation
  [Validator] Improved error message for missing upload_tmp_dir
2017-01-23 09:28:52 +01:00
Nicolas Grekas
ba41e706ad Merge branch '3.1' into 3.2
* 3.1:
  fix getMock usage
  [DependencyInjection] Fixed variadic method parameter in autowired classes
  update German translation
  [Validator] Improved error message for missing upload_tmp_dir
2017-01-23 09:25:37 +01:00
matze
a7f63de414 [DependencyInjection] Fixed variadic method parameter in autowired classes 2017-01-22 12:28:21 -08:00
Robin Chalas
04da7c30d9
[DI] Do not inline values of lazy arguments 2017-01-17 22:10:00 +01:00
Kévin Dunglas
be3d11faa9
[DependencyInjection] Always autowire the constructor 2017-01-16 16:26:58 +01:00
Nicolas Grekas
d08f1101df [DI] Deprecate case insentivity of service identifiers 2017-01-11 16:25:44 +01:00
Nicolas Grekas
16d33e1fff Merge branch '3.2'
* 3.2:
  [DI] Add missing legacy group on testLegacy
  Minor tweaks
  Fix merge
  [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:32:56 +01:00
Nicolas Grekas
783abab7ae Merge branch '3.1' into 3.2
* 3.1:
  Fix merge
  [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:14:38 +01:00
Nicolas Grekas
15ff7f9195 Merge branch '2.8' into 3.1
* 2.8:
  Fix merge
  [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:09:41 +01:00
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
Fabien Potencier
2e5b69f8d8 [DependencyInjection] moved up ResolveClassPass in the container pass list 2017-01-08 10:25:16 -08:00
Nicolas Grekas
71b17c7790 [DI] Optional class for named services 2017-01-07 16:55:01 +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
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
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
François Pluchino
aac9a7edfd Fix the priority order of compiler pass trait 2016-12-20 14:31:21 +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
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
Kévin Dunglas
6dd53c7209
[DependencyInjection] Introduce method injection for autowiring 2016-12-02 09:49:57 +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
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
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
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
Christian Flothmann
7def83c0b1 move tags from decorated to decorating service 2016-10-11 23:07:33 +02: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
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
Robin Chalas
fb95bdc965 [DIC] Fix service autowiring inheritance
Update Changelog
2016-08-19 17:56:42 +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
Kévin Dunglas
a0d7cbe34e
[DependencyInjection] Autowiring: add setter injection support 2016-07-01 10:58:32 +02:00
Ener-Getick
d17c1a9734 [DependencyInjection] Sort the CompilerPass by priority 2016-06-21 21:44:32 +02:00
Fabien Potencier
0691506b1b Merge branch '3.1'
* 3.1:
  fixed CS
  fixed CS
  fixed CS
  fixed CS
  tweaked default CS fixer config
  [HttpKernel] Dont close the output stream in debug
  move HttpKernel component to require section
  Fixed oci and sqlsrv merge queries when emulation is disabled - fixes #17284
  [Session] fix PDO transaction aborted under PostgreSQL
  [Console] Use InputInterface inherited doc as possible
  Mention generating absolute urls in UPGRADE files and CHANGELOG
  parse embedded mappings only if value is a string
  add docblock type elements to support newly added IteratorAggregate::getIterator PhpStorm support
  FormBuilderInterface: fix getForm() return type.
  [YAML] Fixed parsing problem with nested DateTime lists
  Fixed typo in PHPDoc
2016-06-21 08:41:01 +02:00
Fabien Potencier
a39afd001f fixed CS 2016-06-21 08:06:14 +02:00
Christian Flothmann
6f72657554 [DependencyInjection] fix the sorting by priority 2016-06-14 12:15:55 +02:00
Fabien Potencier
f8dc4593a3 feature #18482 Created a trait to sort tagged services (iltar)
This PR was squashed before being merged into the 3.2-dev branch (closes #18482).

Discussion
----------

Created a trait to sort tagged services

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

When writing the `ControllerArgumentValueResolverPass`, I needed a sorting on `priority`. I ended up copying a method from another class. I noticed this was done more often and 99% of the code was the same. I've moved the most common notation into the trait and "used" the trait in the priority aware passes. This increases horizontal re-use and means people can also use this in their bundles.

The cases that were slightly different, are still working completely. I had to fix some tests because they returned an invalid value from the mocked find method.

Commits
-------

778a70b Created a trait to sort tagged services
2016-06-14 08:28:41 +02:00
Iltar van der Berg
778a70ba98 Created a trait to sort tagged services 2016-06-14 08:28:39 +02:00
Fabien Potencier
27f4680294 feature #18728 deprecate get() for uncompiled container builders (xabbuh)
This PR was squashed before being merged into the 3.2-dev branch (closes #18728).

Discussion
----------

deprecate get() for uncompiled container builders

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

Commits
-------

f2e35cb deprecate get() for uncompiled container builders
2016-06-08 13:34:19 +02:00
Christian Flothmann
f2e35cbb9e deprecate get() for uncompiled container builders 2016-06-08 13:34:16 +02:00
Fabien Potencier
90dcd92691 Merge branch '2.8' into 3.0
* 2.8:
  [Yaml] fix exception contexts
  People - person singularization
  [Yaml] properly handle unindented collections
  [Serializer] Add test for ignored attributes during denormalization
  chomp newlines only at the end of YAML documents
  Fixed server status command when port has been omitted
  Update UPGRADE FROM 2.x to 3.0
  fix removed commands wording in upgrade file
  Catch \Throwable
  Catch \Throwable
  Use levenshtein level for better Bundle matching
  [WebProfilerBundle] Fix CORS ajax security issues
  [DX][DI] Make Autowiring exceptions more future friendly
2016-05-24 12:03:10 +02:00
Mathieu Lemoine
834f550263 [DX][DI] Make Autowiring exceptions more future friendly 2016-05-13 15:42:47 -04:00
Mathieu Lemoine
6894e03e16 Make failed autowiring error messages more explicit 2016-05-12 14:18:46 -04:00
Nicolas Grekas
c86a1a145a Merge branch '3.0'
* 3.0: (31 commits)
  Drop hirak/prestissimo
  [MonologBridge] Uninstallable together with symfony/http-kernel in 3.0.6
  bumped Symfony version to 3.0.7
  updated VERSION for 3.0.6
  updated CHANGELOG for 3.0.6
  bumped Symfony version to 2.8.7
  updated VERSION for 2.8.6
  updated CHANGELOG for 2.8.6
  bumped Symfony version to 2.7.14
  updated VERSION for 2.7.13
  updated CHANGELOG for 2.7.13
  bumped Symfony version to 2.3.42
  [Debug] Fix fatal error handlers on PHP 7
  updated VERSION for 2.3.41
  update CONTRIBUTORS for 2.3.41
  updated CHANGELOG for 2.3.41
  fixed bad merge
  Fixed issue with blank password with Ldap
  limited the maximum length of a submitted username
  [2.3][Component/Security] Fixed phpdoc in AnonymousToken constructor for user param
  ...

Conflicts:
	src/Symfony/Component/DependencyInjection/Compiler/AutowirePass.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/AutowirePassTest.php
	src/Symfony/Component/HttpKernel/Kernel.php
2016-05-12 10:59:27 -05:00
Fabien Potencier
2100ecdcc2 Merge branch '2.8' into 3.0
* 2.8:
  [EventDispatcher] check for method to exist
  [DependencyInjection] Fixed the priority of service decoration on service with parent
  Make failed autowiring error messages more explicit
2016-05-03 20:59:52 +02:00
Fabien Potencier
2452e354df minor #18691 [DX][DI] Make failed autowiring error messages more explicit (lemoinem)
This PR was merged into the 2.8 branch.

Discussion
----------

[DX][DI] Make failed autowiring error messages more explicit

| Q             | A
| ------------- | ---
| Branch?       | 2.8
| Bug fix?      | no (better DX integration)
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #18658
| License       | MIT
| Doc PR        | N/A

This is the PR improving the auto wiring error messages.
Two errors messages have augmented:

If a type-hint does not match any existing type and a service for this type cannot be automatically created, the error message now says so, instead of simply saying the type cannot be autowired.

If a type-hint matches multiple services and none of them provides an  autowiringType for it, the error message now says so and list the candidate services, instead of simply saying the type cannot be autowired.

Commits
-------

2ac81f9 Make failed autowiring error messages more explicit
2016-05-03 14:27:17 +02:00
Martin Hasoň
d1ad43c174 [DependencyInjection] Fixed the priority of service decoration on service with parent 2016-05-03 11:49:32 +02:00
Mathieu Lemoine
2ac81f954b Make failed autowiring error messages more explicit 2016-05-02 11:29:33 -04:00
Nicolas Grekas
b44abe3361 Merge branch '3.0'
* 3.0:
  use stable 1.0.x Composer versions
  Fix typo in VarDumper README
  [DI] Fix AutowirePass fatal error with classes that have non-existing parents
  [DependencyInjection] Tests for AutowirePass with missing parent class
  [WebProfilerBunde] Give an absolute url in case the request occured from another domain

Conflicts:
	src/Symfony/Component/DependencyInjection/Compiler/AutowirePass.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/AutowirePassTest.php
2016-04-25 13:21:08 +02:00
Nicolas Grekas
fc50ad909b Merge branch '2.8' into 3.0
* 2.8:
  use stable 1.0.x Composer versions
  Fix typo in VarDumper README
  [DI] Fix AutowirePass fatal error with classes that have non-existing parents
  [DependencyInjection] Tests for AutowirePass with missing parent class
  [WebProfilerBunde] Give an absolute url in case the request occured from another domain
2016-04-25 13:17:47 +02:00
Nicolas Grekas
202cc7724e [DI] Fix AutowirePass fatal error with classes that have non-existing parents 2016-04-20 16:12:37 +02:00
Martin Hasoň
1735b85c04 [DependencyInjection] Tests for AutowirePass with missing parent class 2016-04-20 14:07:35 +02:00
Nicolas Grekas
41526342ea [FrameworkBundle] Add default pool & system adapter 2016-04-07 14:29:40 +02:00
Fabien Potencier
c130bd634c feature #18144 [DI] Only rebuild autowiring cache when actually needed (weaverryan)
This PR was squashed before being merged into the 3.1-dev branch (closes #18144).

Discussion
----------

[DI] Only rebuild autowiring cache when actually needed

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

With autowiring, the container is currently rebuilt when an autowired class is modified in any way. That makes it unusable for large systems. However, this doesn't need to be true: we only need to rebuild the cache if a construct argument changes. This adds that change, and it's quite simple

This idea can/should also be adapted easily to the `@Route` cache (I don't believe it has something "smart" like this).

Thanks!

Commits
-------

3e97626 [DI] Only rebuild autowiring cache when actually needed
2016-04-03 09:35:23 +02:00
Ryan Weaver
3e976267c0 [DI] Only rebuild autowiring cache when actually needed 2016-04-03 09:35:21 +02:00
Nicolas Grekas
6ed73d56d9 Merge branch '3.0'
* 3.0:
  [Process] Fix stream_select priority when writing to stdin
  bumped Symfony version to 3.0.5
  updated VERSION for 3.0.4
  updated CHANGELOG for 3.0.4
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [Form] remove useless code in ChoiceType
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Process/Pipes/AbstractPipes.php
2016-03-31 10:13:34 +02:00
Nicolas Grekas
c3f0bfe36b Merge branch '2.8' into 3.0
* 2.8:
  [Process] Fix stream_select priority when writing to stdin
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [Form] remove useless code in ChoiceType
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
	src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
2016-03-31 10:11:51 +02:00
Nicolas Grekas
f7010ce180 Merge branch '2.7' into 2.8
* 2.7:
  [Process] Fix stream_select priority when writing to stdin
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [Form] remove useless code in ChoiceType
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/Form/Extension/Core/DataTransformer/NumberToLocalizedStringTransformer.php
2016-03-31 10:07:27 +02:00
Nicolas Grekas
2f2ce3e637 Merge branch '2.3' into 2.7
* 2.3:
  [Form] NumberToLocalizedStringTransformer should return floats when possible
  [DependencyInjection] Enabled alias for service_container

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ReplaceAliasByActualDefinitionPassTest.php
2016-03-31 10:05:11 +02:00
Fabien Potencier
39b164219b bug #17926 [DependencyInjection] Enable alias for service_container (hason)
This PR was merged into the 2.3 branch.

Discussion
----------

[DependencyInjection] Enable alias for service_container

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

Commits
-------

6161438 [DependencyInjection] Enabled alias for service_container
2016-03-30 12:50:22 +02:00
Ryan Weaver
2aea337f42 Fixing a bug where an odd number of type collisions would incorrectly autowire (instead of an error) 2016-03-06 17:03:14 -05:00
Fabien Potencier
fce909a1ef Merge branch '3.0'
* 3.0:
  fixed issue with PHP 5.3
  The WebProcessor now forwards the client IP
  minor changes
  [#17878] Fixing a bug where scalar values caused invalid ordering
  [#17724] Fixing autowiring bug where if some args are set, new ones are put in the wrong spot
  bumped Symfony version to 2.3.39
  updated VERSION for 2.3.38
  update CONTRIBUTORS for 2.3.38
  updated CHANGELOG for 2.3.38
2016-03-01 12:09:33 +01:00
Fabien Potencier
6c0b229054 Merge branch '2.8' into 3.0
* 2.8:
  fixed issue with PHP 5.3
  The WebProcessor now forwards the client IP
  minor changes
  [#17878] Fixing a bug where scalar values caused invalid ordering
  [#17724] Fixing autowiring bug where if some args are set, new ones are put in the wrong spot
  bumped Symfony version to 2.3.39
  updated VERSION for 2.3.38
  update CONTRIBUTORS for 2.3.38
  updated CHANGELOG for 2.3.38
2016-03-01 12:09:28 +01:00
Ryan Weaver
260731b806 minor changes 2016-02-28 19:33:45 -05:00
Ryan Weaver
865f2029fd [#17878] Fixing a bug where scalar values caused invalid ordering 2016-02-28 19:31:09 -05:00
Ryan Weaver
cf692a6bd8 [#17724] Fixing autowiring bug where if some args are set, new ones are put in the wrong spot 2016-02-28 19:31:09 -05:00
Fabien Potencier
db16d521ce Merge branch '3.0'
* 3.0:
  removed legacy test
2016-02-28 17:50:15 +01:00
Fabien Potencier
487f06891f removed legacy test 2016-02-28 17:50:08 +01:00
Fabien Potencier
c88b958546 Merge branch '3.0'
* 3.0:
  fixed tests
2016-02-28 17:35:43 +01:00
Fabien Potencier
13f6de3506 Merge branch '2.8' into 3.0
* 2.8:
  fixed tests
2016-02-28 17:35:35 +01:00
Fabien Potencier
4b3a534f3e Merge branch '2.7' into 2.8
* 2.7:
  fixed tests
2016-02-28 17:34:46 +01:00
Fabien Potencier
2fc80cce12 fixed tests 2016-02-28 17:34:40 +01:00
Fabien Potencier
a99d713b21 Merge branch '3.0'
* 3.0:
  #17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
  #17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
  Fix bug when using an private aliased factory service
  [Form] fix tests added by #17798 by removing `choices_as_values`
  [Form] fix FQCN in tests added by #17798
  [DependencyInjection] Remove unused parameter of private property
  bug #17798 [Form] allow `choice_label` option to be `false`
  [Form] fix tests added by #17760 with FQCN
  ChoiceFormField of type "select" could be "disabled"
  Update contributing docs
  [Console] Fix escaping of trailing backslashes
  Fix constraint validator alias being required
  [DependencyInjection] Simplified code in AutowirePass
  [ci] clone with depth=1 to kill push-forced PRs
  Add check on If-Range header
2016-02-28 17:28:07 +01:00
Fabien Potencier
b9cd91d342 Merge branch '2.8' into 3.0
* 2.8:
  #17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
  Fix bug when using an private aliased factory service
  ChoiceFormField of type "select" could be "disabled"
  Update contributing docs
  [Console] Fix escaping of trailing backslashes
  Fix constraint validator alias being required
  [ci] clone with depth=1 to kill push-forced PRs
  Add check on If-Range header
2016-02-28 17:24:34 +01:00
Fabien Potencier
caf2871b87 Merge branch '2.7' into 2.8
* 2.7:
  #17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
  Fix bug when using an private aliased factory service
  ChoiceFormField of type "select" could be "disabled"
  Update contributing docs
  [Console] Fix escaping of trailing backslashes
  Fix constraint validator alias being required
  [ci] clone with depth=1 to kill push-forced PRs
  Add check on If-Range header
2016-02-28 17:20:50 +01:00
Fabien Potencier
51a71ab74a Merge branch '2.3' into 2.7
* 2.3:
  #17676 - making the proxy instantiation compatible with ProxyManager 2.x by detecting proxy features
  Fix bug when using an private aliased factory service
  ChoiceFormField of type "select" could be "disabled"
  Update contributing docs
  [Console] Fix escaping of trailing backslashes
  Fix constraint validator alias being required
  [ci] clone with depth=1 to kill push-forced PRs
  Add check on If-Range header
2016-02-28 17:19:47 +01:00
WouterJ
de406c0e38 Fix bug when using an private aliased factory service 2016-02-28 16:06:53 +01:00
Fabien Potencier
1d711899b6 Merge branch '2.8' into 3.0
* 2.8:
  [Form] fix FQCN in tests added by #17798
  bug #17798 [Form] allow `choice_label` option to be `false`
  [DependencyInjection] Simplified code in AutowirePass
2016-02-28 16:05:39 +01:00
Fabien Potencier
cc9f6b0a95 minor #17900 [DependencyInjection] Simplified code in AutowirePass (hason)
This PR was merged into the 2.8 branch.

Discussion
----------

[DependencyInjection] Simplified code in AutowirePass

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

Commits
-------

ce0357e [DependencyInjection] Simplified code in AutowirePass
2016-02-26 07:30:51 +01:00
Fabien Potencier
8fc9dd94af Merge branch '3.0'
* 3.0:
  [WIP] [3.0] [Form] fix tests added by #17760 by removing
  removed obsolete code
  [HttpFoundation] Remove @throws from ParameterBag::get() PHPDoc. This was for the now removed deep flag.
  [Form] refactor `RadioListMapper::mapDataToForm()`
  [Form] fix choice value "false" in ChoiceType
2016-02-26 06:59:04 +01:00
Fabien Potencier
6f5322ed8a removed obsolete code 2016-02-26 06:37:50 +01:00
Fabien Potencier
597d06cd69 Merge branch '3.0'
* 3.0:
  [3.0] [Tests] minor fix following #17787
  [2.8] [Form] minor fix some tests with placeholder in AbstractLayout
  [DependencyInjection] fix tests
  Validate XLIFF translation files
  [DependencyInjection] replace alias in factories
  replace alias in factory services
2016-02-26 05:26:33 +01:00
Fabien Potencier
fda1d6de91 Merge branch '2.8' into 3.0
* 2.8:
  [2.8] [Form] minor fix some tests with placeholder in AbstractLayout
  [DependencyInjection] fix tests
  Validate XLIFF translation files
  [DependencyInjection] replace alias in factories
  replace alias in factory services
2016-02-26 05:25:31 +01:00
Martin Hasoň
6161438f57 [DependencyInjection] Enabled alias for service_container 2016-02-25 23:33:26 +01:00
Christian Flothmann
20d4c5842a Merge branch '2.7' into 2.8
* 2.7:
  [DependencyInjection] fix tests
2016-02-24 19:55:13 +01:00
Christian Flothmann
0de21071c3 [DependencyInjection] fix tests 2016-02-23 20:37:29 +01:00
Fabien Potencier
4cbb3fdb64 Merge branch '2.7' into 2.8
* 2.7:
  Validate XLIFF translation files
  [DependencyInjection] replace alias in factories
  replace alias in factory services
2016-02-23 19:27:29 +01:00
Fabien Potencier
6190058d5b bug #17866 [DependencyInjection] replace alias in factories (xabbuh)
This PR was merged into the 2.7 branch.

Discussion
----------

[DependencyInjection] replace alias in factories

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

Commits
-------

b43b79b [DependencyInjection] replace alias in factories
2016-02-23 19:20:19 +01:00
Fabien Potencier
6bb1c6d737 Merge branch '2.3' into 2.7
* 2.3:
  Validate XLIFF translation files
  replace alias in factory services
2016-02-23 19:18:09 +01:00
Martin Hasoň
ce0357e2a5 [DependencyInjection] Simplified code in AutowirePass 2016-02-23 13:01:22 +01:00
Christian Flothmann
b43b79bd71 [DependencyInjection] replace alias in factories 2016-02-22 18:00:41 +01:00
Ryan Weaver
6fe97f9b7c [DependencyInjection] Improving autowiring error messages to say *why* something cannot be autowired 2016-02-21 20:22:58 -05:00
Christian Flothmann
56f87982d8 replace alias in factory services 2016-02-20 20:14:11 +01:00
Nicolas Grekas
1bd125ec4a Merge branch '3.0'
* 3.0: (105 commits)
  [Console] remove readline support
  bumped Symfony version to 3.0.3
  updated VERSION for 3.0.2
  updated CHANGELOG for 3.0.2
  [Routing] added a suggestion to add the HttpFoundation component.
  [FrameworkBundle] fix assets and templating tests
  [ClassLoader] fix ApcClassLoader tests on HHVM
  [travis] Add some comments
  changed operator from and to &&
  [DependencyInjection] Remove unused parameter
  [Process] Fix transient tests for incremental outputs
  [Console] Add missing `@require` annotation in test
  Fix merge
  [appveyor] Fix failure reporting
  [#17634] move DebugBundle license file
  Limit Ldap component version for the 3.0 branch
  backport GlobTest from 2.7 branch
  Move licenses according to new best practices
  [FrameworkBundle] Remove unused code in test
  [2.3] Fixed an undefined variable in Glob::toRegex
  ...

Conflicts:
	.travis.yml
	composer.json
	src/Symfony/Bridge/Doctrine/Tests/Validator/Constraints/UniqueEntityValidatorTest.php
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Configuration.php
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/php/assets.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/xml/assets.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Fixtures/yml/assets.yml
	src/Symfony/Bundle/WebProfilerBundle/Resources/views/Profiler/toolbar_item.html.twig
	src/Symfony/Component/Console/CHANGELOG.md
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/PropertyInfo/Tests/PropertyInfoExtractorTest.php
	src/Symfony/Component/Yaml/Tests/ParserTest.php
2016-02-04 13:57:09 +01:00
Fabien Potencier
b6767c23dd Merge branch '2.8' into 3.0
* 2.8:
  [2.7] Fix tests
  pass triggerDeprecationError arg to parent class
  remove default null value for asset version
  remove duplicated value
  [Ldap] Remove unused private property
  Update UPGRADE-3.0 with correct Voter details
  Change few occurences of a public setUp() method to protected
  [DependencyInjection] simplify the BC layer
  Change couple of occurences of a public setUp() method to protected
2016-01-30 17:03:33 +01:00
Fabien Potencier
8a95ec5303 Merge branch '2.7' into 2.8
* 2.7:
  [2.7] Fix tests
  pass triggerDeprecationError arg to parent class
  remove default null value for asset version
  remove duplicated value
  [DependencyInjection] simplify the BC layer
  Change couple of occurences of a public setUp() method to protected
2016-01-30 16:58:35 +01:00
Jakub Zalas
5fe7359659 Change couple of occurences of a public setUp() method to protected 2016-01-27 11:47:13 +00:00
Christian Flothmann
5b30cb7371 [DependencyInjection] fix merge
Remove code from bugfix that deals with features removed in Symfony 3.0.
2016-01-27 12:37:34 +01:00
Christian Flothmann
f204104c3b Merge branch '2.8' into 3.0
* 2.8:
  fixed CS
  [BrowserKit] Corrected HTTP_HOST logic #15398
  Fixed HTTP Digest auth not being passed user checker
  resolve aliases in factories
  resolve aliases in factory services
  Remove invalid CSS white-space value
  Fix FileSystem tests on Windows
  [Form] ArrayChoiceList can now deal with a null in choices
2016-01-27 12:34:55 +01:00
Christian Flothmann
c8d28b1fa6 Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  [BrowserKit] Corrected HTTP_HOST logic #15398
  resolve aliases in factories
  resolve aliases in factory services
  Remove invalid CSS white-space value
  Fix FileSystem tests on Windows
  [Form] ArrayChoiceList can now deal with a null in choices
2016-01-27 12:34:40 +01:00
Christian Flothmann
3a027badb7 Merge branch '2.3' into 2.7
* 2.3:
  fixed CS
  [BrowserKit] Corrected HTTP_HOST logic #15398
  resolve aliases in factory services
  Remove invalid CSS white-space value
  Fix FileSystem tests on Windows
2016-01-27 12:27:15 +01:00
Christian Flothmann
fde10e799a resolve aliases in factories 2016-01-27 10:00:40 +01:00
Christian Flothmann
7702189cb4 resolve aliases in factory services 2016-01-27 08:57:17 +01:00
Fabien Potencier
e9e4869c98 feature #17132 [DependencyInjection] Properly ignore invalid reference arguments in collection arguments (ogizanagi)
This PR was merged into the 3.1-dev branch.

Discussion
----------

[DependencyInjection] Properly ignore invalid reference arguments in collection arguments

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

With this new feature, the following configuration:

```xml
<service id="baz" class="Baz"/>

<service id="foo" class="Foo">
    <argument type="collection">
        <argument type="service" id="bar" on-invalid="ignore" />
        <argument type="service" id="baz" />
        <argument type="service" id="moo" on-invalid="null" />
    </argument>

    <argument type="service" id="bar" on-invalid="ignore" />
    <argument type="service" id="baz" />
    <argument type="service" id="moo" on-invalid="null" />

    <call method="foo">
        <argument type="service" id="bar" on-invalid="ignore" />
    </call>
    <call method="fooCollection">
        <argument type="collection">
            <argument type="service" id="bar" on-invalid="ignore" />
            <argument type="service" id="baz" />
            <argument type="service" id="moo" on-invalid="null" />
        </argument>
    </call>
</service>
```

will result into the following `Definition`:

```php
Definition {#64 ▼
  -class: "Foo"
  // […]
  -calls: array:1 [▼
    0 => array:2 [▼
      0 => "fooCollection"
      1 => array:1 [▼
        0 => array:2 [▼
          0 => Reference {#59 ▼
            -id: "baz"
            -invalidBehavior: 1
          }
          1 => null
        ]
      ]
    ]
  ]
  // […]
  #arguments: array:4 [▼
    0 => array:2 [▼
      0 => Reference {#63 ▼
        -id: "baz"
        -invalidBehavior: 1
      }
      1 => null
    ]
    1 => null
    2 => Reference {#56 ▼
      -id: "baz"
      -invalidBehavior: 1
    }
    3 => null
  ]
}
```

Invalid references are ignored instead of replaced by `null` when they are part of a collection argument.
If the collection argument is part of a method call and contains an invalid reference, the method call is kept, but the invalid reference removed.

The behavior stays the same as before for non-collection arguments.

🎄

Commits
-------

cfc4879 [DependencyInjection] Properly ignore invalid reference arguments in collection arguments
2016-01-25 12:14:38 +01:00
Konstantin.Myakshin
b8028f6053 Remove unused imports 2016-01-21 00:01:55 +02:00
Maxime Steinhausser
cfc4879508 [DependencyInjection] Properly ignore invalid reference arguments in collection arguments 2015-12-28 14:56:54 +01:00
Nicolas Grekas
d1fa59d486 Merge branch '2.8' into 3.0
* 2.8:
  Fix merge
  [SecurityBundle] Removing test insulations for a huge perf win
  [Validator] Use the new interface in the README
  [Validator] Add missing pt_BR translation
  Fix doctrine bridge tests on older PHP versions
  [Filesystem] fix tests on 2.3
  [Filesystem] Recursivly widen non-executable directories
  [DependencyInjection] fixed definition loosing property shared when decorated by a parent definition
  [Form] fix #15544 when a collection type attribute "required" is false, "prototype" should too
  updated validators.bg.xlf
  [Security] Enable bcrypt validation and result length tests on all PHP versions
  [Security] Verify if a password encoded with bcrypt is no longer than 72 characters
  [Console] Avoid extra blank lines when rendering exceptions
  [Console][Table] fixed render row with multiple cells.
  [Yaml] do not remove "comments" in scalar blocks

Conflicts:
	src/Symfony/Component/Console/Tests/Fixtures/application_renderexception2.txt
	src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
2015-12-22 11:39:06 +01:00
Christian Wahler
d3a4a770a6 [DependencyInjection] fixed definition loosing property shared when decorated by a parent definition 2015-12-18 18:02:00 +01:00
Fabien Potencier
a23444ac1a Merge branch '2.8'
* 2.8:
  [Yaml] look for colon in parsed inline string
  [DI][autowiring] throw exception when many services use the same class.
2015-11-30 09:18:52 +01:00
Abdellatif Ait boudad
a21a0166c6 [DI][autowiring] throw exception when many services use the same class. 2015-11-24 08:45:36 +00:00
Nicolas Grekas
b1ad6232b7 Merge branch '2.8'
* 2.8:
  [Bridge\PhpUnit] Add extra clock-mocked namespaces in phpunit.xml.dist
  [DependencyInjection] Autowing: exclude abstract definitons
  [DependencyInjection] Autowiring: support parent/decorators
  [FrameworkBundle] Autowiring support for debug:container
  Fixing bad type-hint auto-wiring bug
  [Yaml] deprecate unquoted indicator characters
  added a micro kernel
  Re-adding the ability to add a resource to the RouteCollectionBuilder
  [DependencyInjection] Add autowiring support to dumpers
  ldap_set_option should be called with a valid link identifier
  [FrameworkBundle][Form] Better exception message for private form tagged services

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/FormPass.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.xml
	src/Symfony/Component/DependencyInjection/Compiler/ResolveDefinitionTemplatesPass.php
	src/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php
2015-11-09 11:46:27 +01:00
Kévin Dunglas
faefc6074f [DependencyInjection] Autowing: exclude abstract definitons 2015-11-06 14:16:58 +01:00
Kévin Dunglas
71d502a174 [DependencyInjection] Autowiring: support parent/decorators 2015-11-06 14:09:32 +01:00
Ryan Weaver
b7b182ea9e Fixing bad type-hint auto-wiring bug 2015-11-05 14:26:31 +01:00
Nicolas Grekas
2e11b8b2cb Merge branch '2.8'
* 2.8:
  Fix merge
  [tests] Use @requires annotation when possible
  [tests] Use @requires annotation when possible
  [PhpUnitBridge] Add SkippedTestsListener to collect and replay skipped tests
  [ci] Enable collecting and replaying skipped tests
  [tests] Use @requires annotation when possible
  [Process] Workaround buggy PHP warning
  [FrameworkBundle] Replace PhpFileCache by FilesystemCache
  [FrameworkBundle] composer suggest fix
  [Console] Add additional ways to detect OS400 platform
  [Yaml] Allow tabs before comments at the end of a line
  Added more tests for PropertyAccess

Conflicts:
	.travis.yml
	src/Symfony/Bridge/Doctrine/composer.json
	src/Symfony/Bridge/Monolog/composer.json
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Bridge/Swiftmailer/composer.json
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/DebugBundle/composer.json
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Bundle/TwigBundle/composer.json
	src/Symfony/Bundle/WebProfilerBundle/composer.json
	src/Symfony/Component/Asset/composer.json
	src/Symfony/Component/BrowserKit/composer.json
	src/Symfony/Component/ClassLoader/Tests/ApcClassLoaderTest.php
	src/Symfony/Component/ClassLoader/composer.json
	src/Symfony/Component/Config/composer.json
	src/Symfony/Component/Console/Tests/Helper/LegacyProgressHelperTest.php
	src/Symfony/Component/Console/Tests/Helper/LegacyTableHelperTest.php
	src/Symfony/Component/Console/composer.json
	src/Symfony/Component/CssSelector/composer.json
	src/Symfony/Component/Debug/composer.json
	src/Symfony/Component/DependencyInjection/composer.json
	src/Symfony/Component/DomCrawler/composer.json
	src/Symfony/Component/EventDispatcher/composer.json
	src/Symfony/Component/ExpressionLanguage/composer.json
	src/Symfony/Component/Filesystem/composer.json
	src/Symfony/Component/Finder/composer.json
	src/Symfony/Component/Form/Tests/Extension/Csrf/CsrfProvider/LegacyDefaultCsrfProviderTest.php
	src/Symfony/Component/Form/composer.json
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/PhpBridgeSessionStorageTest.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Proxy/AbstractProxyTest.php
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/HttpKernel/Tests/Profiler/MongoDbProfilerStorageTest.php
	src/Symfony/Component/HttpKernel/Tests/Profiler/SqliteProfilerStorageTest.php
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Intl/Tests/Data/Bundle/Writer/PhpBundleWriterTest.php
	src/Symfony/Component/Intl/Tests/DateFormatter/AbstractIntlDateFormatterTest.php
	src/Symfony/Component/Intl/composer.json
	src/Symfony/Component/Ldap/composer.json
	src/Symfony/Component/Locale/composer.json
	src/Symfony/Component/Locale/phpunit.xml.dist
	src/Symfony/Component/OptionsResolver/composer.json
	src/Symfony/Component/Process/composer.json
	src/Symfony/Component/PropertyAccess/composer.json
	src/Symfony/Component/PropertyInfo/composer.json
	src/Symfony/Component/Routing/composer.json
	src/Symfony/Component/Security/Core/composer.json
	src/Symfony/Component/Security/Csrf/composer.json
	src/Symfony/Component/Security/Guard/composer.json
	src/Symfony/Component/Security/Http/composer.json
	src/Symfony/Component/Security/composer.json
	src/Symfony/Component/Serializer/composer.json
	src/Symfony/Component/Stopwatch/composer.json
	src/Symfony/Component/Templating/composer.json
	src/Symfony/Component/Translation/composer.json
	src/Symfony/Component/Validator/Tests/Mapping/Cache/LegacyApcCacheTest.php
	src/Symfony/Component/Validator/composer.json
	src/Symfony/Component/VarDumper/composer.json
	src/Symfony/Component/Yaml/composer.json
2015-10-10 12:22:50 +02:00
Nicolas Grekas
3ecf2062b8 Merge branch '2.7' into 2.8
* 2.7:
  [tests] Use @requires annotation when possible
  [tests] Use @requires annotation when possible
  [ci] Enable collecting and replaying skipped tests
  [Process] Workaround buggy PHP warning
  [Console] Add additional ways to detect OS400 platform
  [Yaml] Allow tabs before comments at the end of a line
  Added more tests for PropertyAccess

Conflicts:
	.travis.yml
	src/Symfony/Bridge/Doctrine/composer.json
	src/Symfony/Bridge/Monolog/composer.json
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Bridge/Swiftmailer/composer.json
	src/Symfony/Bridge/Twig/composer.json
	src/Symfony/Bundle/DebugBundle/composer.json
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Bundle/TwigBundle/composer.json
	src/Symfony/Bundle/WebProfilerBundle/composer.json
	src/Symfony/Component/Asset/composer.json
	src/Symfony/Component/BrowserKit/composer.json
	src/Symfony/Component/ClassLoader/composer.json
	src/Symfony/Component/Config/composer.json
	src/Symfony/Component/Console/composer.json
	src/Symfony/Component/CssSelector/composer.json
	src/Symfony/Component/Debug/composer.json
	src/Symfony/Component/DependencyInjection/composer.json
	src/Symfony/Component/DomCrawler/composer.json
	src/Symfony/Component/EventDispatcher/composer.json
	src/Symfony/Component/ExpressionLanguage/composer.json
	src/Symfony/Component/Filesystem/composer.json
	src/Symfony/Component/Finder/composer.json
	src/Symfony/Component/Form/composer.json
	src/Symfony/Component/HttpFoundation/composer.json
	src/Symfony/Component/HttpKernel/composer.json
	src/Symfony/Component/Intl/composer.json
	src/Symfony/Component/Locale/composer.json
	src/Symfony/Component/OptionsResolver/composer.json
	src/Symfony/Component/Process/composer.json
	src/Symfony/Component/PropertyAccess/composer.json
	src/Symfony/Component/Routing/composer.json
	src/Symfony/Component/Security/Acl/composer.json
	src/Symfony/Component/Security/Core/composer.json
	src/Symfony/Component/Security/Csrf/composer.json
	src/Symfony/Component/Security/Http/composer.json
	src/Symfony/Component/Security/composer.json
	src/Symfony/Component/Serializer/composer.json
	src/Symfony/Component/Stopwatch/composer.json
	src/Symfony/Component/Templating/composer.json
	src/Symfony/Component/Translation/Tests/Dumper/IcuResFileDumperTest.php
	src/Symfony/Component/Translation/composer.json
	src/Symfony/Component/Validator/composer.json
	src/Symfony/Component/VarDumper/composer.json
	src/Symfony/Component/Yaml/composer.json
2015-10-10 11:36:22 +02:00
Nicolas Grekas
b028aeaa04 [tests] Use @requires annotation when possible 2015-10-10 11:00:45 +02:00
Fabien Potencier
2b296028ac Merge branch '2.8'
* 2.8: (21 commits)
  [Security][bugfix] "Remember me" cookie cleared on logout with custom "secure"/"httponly" config options [1]
  [ci] Use current PHP_BINARY when running ./phpunit
  Fixed typos
  [UPGRADE-3.0] fix bullet indentation
  Throw exception if tempnam returns false in ProcessPipes
  [DomCrawler] Deprecated using /_root/ in XPath expressions
  Pass missing request template variables
  Simplify AbstractVoter
  [Form] add missing deprecation triggers
  Throw exception if tempnam returns false
  Fix PropertyAccessor modifying array in object when array key does not exist
  [DependencyInjection] Add autowiring capabilities
  Fixing typo in variable name
  Add a few additional tests for the Crawler
  [Form] remove obsolete deprecation comments
  Updated the style of the event commands
  [Debug] Deprecate providing $fileLinkFormat as second argument
  [Form] minor CS fix
  Updated PHPDoc of the AbstractVoter class
  [Security] InMemoryUserProvider now concerns whether user's password is changed when refreshing
  ...
2015-10-05 17:24:55 +02:00
Kévin Dunglas
aee57315c5 [DependencyInjection] Add autowiring capabilities 2015-10-03 08:39:08 +02:00
Fabien Potencier
8d7b498665 Merge branch '2.8'
* 2.8: (28 commits)
  Detect Mintty for color support on Windows
  Detect Mintty for color support on Windows
  [WebProfilerBundle] Fix search button click listener
  [Form][Type Date/Time] added choice_translation_domain option.
  Massively simplifying the BC and deprecated-throwing code thanks to suggestions by stof in #15870
  Making all "debug" messages use the debug router
  Making GuardTokenInterface extend TokenInterface
  Updating behavior to not continue after an authenticator has set the response
  Add a group for tests of the finder against the FTP server
  Fix trigger_error calls
  Fix legacy security tests
  tweaking message related to configuration edge case that we want to be helpful with
  Minor tweaks - lowering the required security-http requirement and nulling out a test field
  Fix license headers
  Fix license headers
  Fix license headers
  Ensure the ClockMock is loaded before using it in the testsuite
  Allow serializer 3.0 in the PropertyInfo component
  Add the replace rules for the security-guard component
  Forbid serializing a Crawler
  ...
2015-09-27 12:13:28 +02:00
Christophe Coevoet
e610b416c9 Merge branch '2.7' into 2.8
* 2.7:
  Fix license headers
  Ensure the ClockMock is loaded before using it in the testsuite
  Fix with_minutes option in time widget
  Fixed properties not explicitily declared
2015-09-26 21:48:07 +02:00
Gábor Egyed
db8239ffab Fix license headers 2015-09-26 14:15:17 +02:00
Gábor Egyed
b03bcb34ec Fix license headers 2015-09-26 13:59:49 +02:00
Fabien Potencier
967c0e439a Merge branch '2.8'
* 2.8: (23 commits)
  [Validator] added BIC (SWIFT-BIC) validation constraint
  [TwigBridge] Foundation form layout integration
  [Security] Deprecated supportsAttribute and supportsClass methods
  bumped Symfony version to 2.7.6
  updated VERSION for 2.7.5
  updated CHANGELOG for 2.7.5
  bumped Symfony version to 2.3.34
  updated VERSION for 2.3.33
  update CONTRIBUTORS for 2.3.33
  updated CHANGELOG for 2.3.33
  [Console] Fix transient HHVM test
  [OptionsResolver] Fix catched exception along the dependency tree mistakenly detects cyclic dependencies
  fixed tests
  [DI] Support deprecated definitions in decorators
  [DI] Allow to change the deprecation message in Definition
  [DI] Trigger a deprecated error on the container builder
  [DI] Dump the deprecated status
  [DI] Supports the deprecated tag in loaders
  [DI] Add a deprecated status to definitions
  Fixing test locations
  ...
2015-09-26 09:20:46 +02:00
Baptiste Clavié
83f4e9cf45 [DI] Support deprecated definitions in decorators 2015-09-24 10:53:13 +02:00
Nicolas Grekas
8ad2c38a9f Merge branch '2.8'
* 2.8:
  [Finder] Fix recursive filter iterator
  [Translator][FileDumper] deprecated format method in favor of formatCatalogue.
  bug #15811 use of twig deprecated sameas test
  Improve the structure of the Finder testsuite
  Remove minimum width for web profiler content view
  [VarDumper] Fix HtmlDumper constructor calling CliDumper's
  [Finder] Handle filtering of recursive iterators and use it to skip looping over excluded directories
  Validate the extended type for lazy-loaded type extensions
  Exclude files based on path before applying the sorting
  fixed composer.json
  [Console] fix phpdoc of DialogHelper
  [Translation][Dumper] added XLIFF 2.0 support.
  [XLIFF 2.0] added support for target attributes.
  apply some fixes.
  update changelog.
  [Translation][Loader] added XLIFF 2.0 support.
  Allowed extensions to inline compiler passes

Conflicts:
	UPGRADE-2.8.md
	src/Symfony/Component/Console/Helper/DialogHelper.php
	src/Symfony/Component/Form/composer.json
2015-09-18 12:59:20 +02:00
Nicolas Grekas
4d275b42da Merge branch '2.7' into 2.8
* 2.7:
  [Finder] Fix recursive filter iterator
  Improve the structure of the Finder testsuite
  [VarDumper] Fix HtmlDumper constructor calling CliDumper's
  [Finder] Handle filtering of recursive iterators and use it to skip looping over excluded directories
  Exclude files based on path before applying the sorting
  fixed composer.json
  [Console] fix phpdoc of DialogHelper
  Allowed extensions to inline compiler passes
2015-09-18 09:20:16 +02:00
Fabien Potencier
1abfaba2a5 feature #13761 Automatically process extensions when they implement CompilerPassInterface (WouterJ)
This PR was merged into the 2.7 branch.

Discussion
----------

Automatically process extensions when they implement CompilerPassInterface

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | todo (if people are in favor of this PR)

Compiler passes are very powerfull, but also quite strange to work with. Especially when you just need a very simple compiler pass (like https://github.com/symfony-cmf/RoutingBundle/blob/master/DependencyInjection/Compiler/SetRouterPass.php). For 3 lines of code, you need to tweak your bundle class and create a new class.

When using the DI component standalone, compiler passes are even harder to work with, as DI extensions can't register them. I believe that's why libraries like Behat make their extensions compiler passes by default.

I think it would be very easy to just implement an interface and have a `compile` method for the simple compiler pass stuff. If a bundle needs multiple compiler passes or need compiler passes to be executed at other times in the compile process, a bundle can use the normal compiler passes. But if it's just one simple thing, like replacing a definition or getting services with a specific tag, I think this method will be very usefull.

Commits
-------

6c50013 Allowed extensions to inline compiler passes
2015-09-15 10:30:42 +02:00
Nicolas Grekas
4a3e2f49cb [DI] Remove deprecated scope concept 2015-09-04 22:04:06 +02:00
Fabien Potencier
dcc80c7b8a Merge branch '2.8'
* 2.8:
  fixes CS
  fixed CS
  [DependencyInjection] Add missing file headers
  fixed typo
  made Symfony compatible with both Twig 1.x and 2.x
  [FrameworkBundle] Fix precedence of xdebug.file_link_format
2015-08-24 09:21:16 +02:00
Fabien Potencier
07174c30de Merge branch '2.7' into 2.8
* 2.7:
  fixed CS
  [DependencyInjection] Add missing file headers
  fixed typo
  made Symfony compatible with both Twig 1.x and 2.x
  [FrameworkBundle] Fix precedence of xdebug.file_link_format
2015-08-24 08:37:50 +02:00
Kévin Dunglas
6ad4877cde [DependencyInjection] Add missing file headers 2015-08-24 04:28:49 +02:00
Nicolas Grekas
352d8954e9 Merge branch '2.8'
* 2.8:
  [travis] Build standalone phpunit without symfony/yaml
  Clean wrong whitespaces
  [travis] Build phpunit with local components
  [Console] Handle false return value from readline
  do not remove space between attributes
  [HttpFoundation] fixed the check of 'proxy-revalidate' in Response::mustRevalidate()
  Allow to define Enum nodes with 1 single element
  Fix "[Form] Add flexibility for EntityType"
  Remove the duplicated rendering of deprecation messages in the profiler
  Fix the retrieval of the default value for variadic arguments
  Annotated routes with a variadic parameter
  [Locale] Fix Intl requirement
  Fixing DbalSessionHandler to work with a Oracle "limitation" or bug?
  Update EngineInterface.php
  [Form] Add flexibility for EntityType
  [Console] Fix Symfony coding standards violations
  [Console] Use readline for user input when available
  Better Iban Validation
  Added a way to define the priority of service decoration
  let Travis builds fail when PHP 7 jobs fail

Conflicts:
	.travis.yml
	UPGRADE-2.8.md
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Bundle/TwigBundle/composer.json
	src/Symfony/Component/Locale/composer.json
2015-08-06 10:40:33 +02:00
Diego Saint Esteben
75c98cba03 Added a way to define the priority of service decoration 2015-07-31 13:03:15 -03:00
Nicolas Grekas
d994a748dc Merge branch '2.8'
* 2.8: (65 commits)
  [VarDumper] Fix tests for HHVM
  Update DateTimeToArrayTransformer.php
  Mock microtime() and time() in transient tests
  Azerbaijani language pluralization rule
  Move HHVM tests out of the allowed failures
  Fix merge
  [2.6] Towards 100% HHVM compat
  [Security/Http] Fix test
  [Stopwatch] Fix test
  Minor fixes
  [Validator] Added missing error codes and turned codes into UUIDs
  Towards 100% HHVM compat
  Warmup twig templates in non-standard paths (closes #12507)
  [Bridge/PhpUnit] Enforce a consistent locale
  Fix param order of assertEquals (expected, actual) in test for Finder\Glob
  Fix choice translation domain for expanded choice widget
  unify default AccessDeniedExeption message
  trigger event with right user (add test)
  [Security] Initialize SwitchUserEvent::targetUser on attemptExitUser
  fixed CS
  ...

Conflicts:
	UPGRADE-2.8.md
	src/Symfony/Bridge/ProxyManager/composer.json
	src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/JsonDescriptor.php
	src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/MarkdownDescriptor.php
	src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/TextDescriptor.php
	src/Symfony/Bundle/FrameworkBundle/Console/Descriptor/XmlDescriptor.php
	src/Symfony/Bundle/FrameworkBundle/Controller/Controller.php
	src/Symfony/Bundle/FrameworkBundle/Resources/config/old_assets.xml
	src/Symfony/Bundle/FrameworkBundle/Resources/config/test.xml
	src/Symfony/Bundle/FrameworkBundle/Resources/config/validator.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_public.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_services.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tag1.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/builder_1_tags.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_1.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/definition_2.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_1.xml
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.json
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.md
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.txt
	src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Descriptor/legacy_synchronized_service_definition_2.xml
	src/Symfony/Bundle/SecurityBundle/Tests/Functional/Bundle/CsrfFormLoginBundle/Form/UserLoginFormType.php
	src/Symfony/Bundle/SecurityBundle/Tests/Functional/app/CsrfFormLogin/config.yml
	src/Symfony/Bundle/SecurityBundle/composer.json
	src/Symfony/Component/Debug/ErrorHandler.php
	src/Symfony/Component/DependencyInjection/Compiler/CheckDefinitionValidityPass.php
	src/Symfony/Component/DependencyInjection/Compiler/InlineServiceDefinitionsPass.php
	src/Symfony/Component/DependencyInjection/Definition.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/DependencyInjection/Dumper/XmlDumper.php
	src/Symfony/Component/DependencyInjection/Loader/XmlFileLoader.php
	src/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php
	src/Symfony/Component/DependencyInjection/Tests/ContainerTest.php
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/containers/legacy-container9.php
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/graphviz/legacy-services9.dot
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/legacy-services6.xml
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/xml/legacy-services9.xml
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/legacy-services6.yml
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/yaml/legacy-services9.yml
	src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php
	src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
	src/Symfony/Component/Form/ResolvedFormType.php
	src/Symfony/Component/Form/Tests/CompoundFormTest.php
	src/Symfony/Component/Process/Tests/AbstractProcessTest.php
	src/Symfony/Component/VarDumper/Tests/CliDumperTest.php
	src/Symfony/Component/VarDumper/Tests/HtmlDumperTest.php
2015-07-01 22:40:29 +02:00
Abdellatif Ait boudad
05f3c3db7b Merge remote-tracking branch 'origin/2.7' into 2.8
Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveDefinitionTemplatesPassTest.php
2015-07-01 14:16:54 +00:00
Abdellatif Ait boudad
d1de40e036 Merge remote-tracking branch 'origin/2.6' into 2.7
Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/TranslationUpdateCommand.php
	src/Symfony/Component/Validator/Constraints/EmailValidator.php
2015-06-25 12:52:11 +00:00
Nicolas Grekas
e5763cea54 [DependencyInjection] Allow anonymous DefinitionDecorator resolving 2015-06-25 13:06:10 +02:00
Diego Saint Esteben
6c4a676d09 Add "shared" flag and deprecate scopes concept 2015-06-24 12:32:32 -03:00
Nicolas Grekas
9eea9eb848 [PhpUnitBridge] Enforce @-silencing of deprecation notices according to new policy 2015-06-18 21:21:56 +02:00
Martin Hasoň
0b8b58c586 [DependencyInjection] Fixed decoration of service for service with parent 2015-05-18 11:41:40 +02:00
Diego Saint Esteben
76ff5a96da Removed deprecations in DependencyInjection component 2015-05-16 15:12:51 +02:00
WouterJ
6c50013b12 Allowed extensions to inline compiler passes 2015-04-03 16:26:51 +02:00
Christian Flothmann
504e338c0b make it possible to dump inlined services to XML 2015-03-23 20:17:28 +01:00
Fabien Potencier
95b6c56496 Merge branch '2.6' into 2.7
* 2.6:
  [Process] Fix outdated Process->start() docblock
  prevent inlining service configurators
  [DomCrawler] Improve namespace discovery performance

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php
2015-03-23 09:18:05 +01:00
Fabien Potencier
99330cbebc bug #14013 [DependencyInjection] prevent inlining service configurators (xabbuh)
This PR was merged into the 2.6 branch.

Discussion
----------

[DependencyInjection] prevent inlining service configurators

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

Currently, only the `PhpDumper` is able to dump inlined service
configurators. Since Symfony applications dump the compiled container
in XML, inlined configurators will break this process.

We did something similar before with service factories in #13914.

Commits
-------

34619fe prevent inlining service configurators
2015-03-23 09:10:51 +01:00
Christian Flothmann
34619fedff prevent inlining service configurators
Currently, only the `PhpDumper` is able to dump inlined service
configurators. Since Symfony applications dump the compiled container
in XML, inlined configurators will break this process.
2015-03-22 22:40:28 +01:00
Fabien Potencier
6b02541880 Merge branch '2.6' into 2.7
* 2.6:
  Fix small coding style
  [2.3] Static Code Analysis for Components
  [Form] fixed phpdoc
  CS: Convert double quotes to single quotes
  Fixed MongoODM entity loader. Improved loading behavior of entities and documents by reusing entity loader.
  [Validator] added Japanese translation for unmatched charset (id: 80)
  [WebProfilerBundle] fixed undefined buttons.
  [WebProfilerBundle] Fix javascript toolbar on IE8
  [DependencyInjection] Highest precedence for user parameters
  bumped Symfony version to 2.6.6
  [Translation][MoFileLoader] fixed load empty translation.
  updated VERSION for 2.6.5
  updated CHANGELOG for 2.6.5
  bumped Symfony version to 2.3.27
  updated VERSION for 2.3.26
  update CONTRIBUTORS for 2.3.26
  updated CHANGELOG for 2.3.26
  [HttpKernel] UriSigner::buildUrl - default params for http_build_query

Conflicts:
	src/Symfony/Bridge/Propel1/Tests/DataCollector/PropelDataCollectorTest.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Security/Http/Firewall/AbstractPreAuthenticatedListener.php
	src/Symfony/Component/Validator/Resources/translations/validators.ja.xlf
2015-03-22 17:57:18 +01:00
Fabien Potencier
618b7dcfb8 Merge branch '2.3' into 2.6
* 2.3:
  Fix small coding style
  [2.3] Static Code Analysis for Components
  [Form] fixed phpdoc
  CS: Convert double quotes to single quotes
  Fixed MongoODM entity loader. Improved loading behavior of entities and documents by reusing entity loader.
  [Validator] added Japanese translation for unmatched charset (id: 80)
  [DependencyInjection] Highest precedence for user parameters
  [Translation][MoFileLoader] fixed load empty translation.
  bumped Symfony version to 2.3.27
  updated VERSION for 2.3.26
  update CONTRIBUTORS for 2.3.26
  updated CHANGELOG for 2.3.26

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Command/AssetsInstallCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
	src/Symfony/Bundle/TwigBundle/Command/LintCommand.php
	src/Symfony/Component/Config/Definition/ReferenceDumper.php
	src/Symfony/Component/Debug/ExceptionHandler.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
	src/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php
	src/Symfony/Component/Filesystem/Filesystem.php
	src/Symfony/Component/HttpKernel/DataCollector/DataCollector.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
	src/Symfony/Component/Translation/PluralizationRules.php
	src/Symfony/Component/Validator/Constraints/IssnValidator.php
	src/Symfony/Component/Validator/Resources/translations/validators.ja.xlf
	src/Symfony/Component/Yaml/Tests/InlineTest.php
2015-03-22 17:55:57 +01:00
Grégoire Pineau
ce2764d416 [DependencyInjection] Highest precedence for user parameters
If `router.request_context.host` is defined in `parameters.yml` and if this
key is used in `globals` section of twig bundle then the value registered in the
DIC/parameters is the default value (`localhost`).

It occurs because generall the framework bundle is defined before the twig
bundle. So after the first loop, the (user) value registered in the
`ContainerBuilder` is overridden by the default value of the framework bundle.
And so, when it comes the time to process twig bundle, the last one gets the
default value, and not the user value.

This patch force the merge of default value, but give an highest precedence of
user parameters for each extensions.
2015-03-18 10:30:04 +01:00
Fabien Potencier
59ca5b3af9 Merge branch '2.6' into 2.7
* 2.6:
  Marked the ResolveParameterPlaceHoldersPassTest as legacy
  [ExpressionLanguage] fixed issues when parsing postfix expressions
  remove unused code
  do not inline service factories
  resolve class parameters in service factories
  [Serializer] Fix object normalization exceptions

Conflicts:
	src/Symfony/Component/DependencyInjection/Tests/Fixtures/php/services9_compiled.php
	src/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php
	src/Symfony/Component/Serializer/Normalizer/PropertyNormalizer.php
	src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
2015-03-17 13:50:07 +01:00
sarah khalil
67ca1f4df3 Marked the ResolveParameterPlaceHoldersPassTest as legacy 2015-03-17 13:42:58 +01:00
Fabien Potencier
9b736c8829 bug #13914 [DependencyInjection] do not inline service factories (xabbuh)
This PR was merged into the 2.6 branch.

Discussion
----------

[DependencyInjection] do not inline service factories

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

The `XmlDumper`, which is used in the full-stack framework to dump the
used container, is not capable to dump inlined factories.

Commits
-------

663ae9f do not inline service factories
2015-03-17 07:43:12 +01:00
Christian Flothmann
663ae9f5aa do not inline service factories
The `XmlDumper`, which is used in the full-stack framework to dump the
used container, is not capable to dump inlined factories.
2015-03-16 15:30:23 +01:00
Christian Flothmann
8bda37c390 resolve class parameters in service factories 2015-03-16 14:48:05 +01:00
Fabien Potencier
17ad6fd90c Merge branch '2.6' into 2.7
* 2.6:
  `ResolveParameterPlaceHoldersPass` unit tests
  Fixing wrong variable name from #13519
  [translation][initialize cache] Remove dead code.

Conflicts:
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
2015-03-15 20:44:07 +01:00
Fabien Potencier
be053446bd Merge branch '2.3' into 2.6
* 2.3:
  `ResolveParameterPlaceHoldersPass` unit tests
  Fixing wrong variable name from #13519
2015-03-15 20:43:27 +01:00
Christian Flothmann
b8d42b368b ResolveParameterPlaceHoldersPass unit tests 2015-03-15 17:33:36 +01:00
Nicolas Grekas
eb728c5e4c [2.7] add @group legacy 2015-03-13 18:50:01 +01:00
Daniel Wehner
d7432c0241 Add an auto_alias compiler pass 2015-02-12 18:47:12 +01:00
Fabien Potencier
ba9392ce4f Merge branch '2.6' into 2.7
* 2.6:
  Minor plural/singular change
  print error message if server couldn't be started
  [HttpFoundation] [Request] fix baseUrl parsing to fix wrong path_info
  [Twig][Bridge][TranslationDefaultDomain] add support of named arguments.
  [Form] Improved exception message if the data class is not found
  Fixes ArgvInput's argument getter with empty tokens
  execute cheaper checks before more expensive ones
  [DependencyInjection] Fix missing ExpressionLanguageProviders on extension bild
  [FrameworkBundle] FormDataCollector should be loaded only if form config is enabled
2015-01-20 02:40:35 +01:00
Hugo Hamon
fbcc574c8c [FrameworkBundle] remove usage of deprecated Definition::setFactoryClass(), Definition::setFactoryService() and Definition::setFactoryMethod() methods. 2015-01-16 19:49:13 +01:00
Szijarto Tamas
b248368d63 [DependencyInjection] Fix missing ExpressionLanguageProviders on extension bild
| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | ~
| License       | MIT
| Doc PR        | ~
2015-01-10 10:50:24 +01:00
Nicolas Grekas
2856caed2f [2.6] cleanup deprecated uses 2015-01-05 09:56:52 +01:00
Fabien Potencier
72c169e8a1 Merge branch '2.5' into 2.6
* 2.5:
  [2.3] CS And DocBlock Fixes
  [2.3] CS Fixes
  [FrameworkBundle] Fixed Translation loader and update translation command.
  [Console] remove « use » statement for PHP built-in exception classes.
  [SecurityBundle] adds unit tests suite for SecurityDataCollector class.

Conflicts:
	src/Symfony/Bundle/SecurityBundle/DataCollector/SecurityDataCollector.php
	src/Symfony/Bundle/SecurityBundle/Tests/DataCollector/SecurityDataCollectorTest.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/DependencyInjection/Dumper/YamlDumper.php
	src/Symfony/Component/Form/Form.php
	src/Symfony/Component/HttpKernel/HttpCache/HttpCache.php
	src/Symfony/Component/OptionsResolver/Options.php
	src/Symfony/Component/OptionsResolver/OptionsResolver.php
	src/Symfony/Component/Process/ProcessPipes.php
	src/Symfony/Component/Stopwatch/Stopwatch.php
	src/Symfony/Component/Translation/Loader/XliffFileLoader.php
	src/Symfony/Component/Validator/Tests/Constraints/AbstractComparisonValidatorTestCase.php
2014-12-22 17:44:09 +01:00
Fabien Potencier
f26c062c00 Merge branch '2.3' into 2.5
* 2.3:
  [2.3] CS And DocBlock Fixes
  [2.3] CS Fixes

Conflicts:
	src/Symfony/Bridge/Doctrine/Security/RememberMe/DoctrineTokenProvider.php
	src/Symfony/Bundle/FrameworkBundle/Command/ContainerDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Command/RouterDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/EventListener/TestSessionListener.php
	src/Symfony/Component/Config/Definition/ReferenceDumper.php
	src/Symfony/Component/Console/Application.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/Filesystem/Tests/FilesystemTest.php
	src/Symfony/Component/Form/Extension/Csrf/EventListener/CsrfValidationListener.php
	src/Symfony/Component/Form/FormError.php
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/Response.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
	src/Symfony/Component/Process/ProcessUtils.php
	src/Symfony/Component/PropertyAccess/PropertyAccessor.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorInterface.php
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
	src/Symfony/Component/Validator/Constraints/CardSchemeValidator.php
	src/Symfony/Component/Validator/Constraints/GroupSequence.php
	src/Symfony/Component/Validator/Mapping/ClassMetadata.php
	src/Symfony/Component/Validator/Mapping/ClassMetadataFactory.php
	src/Symfony/Component/Validator/Mapping/MemberMetadata.php
	src/Symfony/Component/Validator/Tests/Fixtures/StubGlobalExecutionContext.php
2014-12-22 17:29:52 +01:00
Graham Campbell
83c15db887 [2.3] CS And DocBlock Fixes 2014-12-22 16:58:09 +01:00
Fabien Potencier
c4a80412b8 Merge branch '2.5' into 2.6
* 2.5:
  CS fixes
  [2.3] More cs fixes
  Removed unused imports
  CS fixes
  bumped Symfony version to 2.5.9
  updated VERSION for 2.5.8
  update CONTRIBUTORS for 2.5.8
  updated CHANGELOG for 2.5.8
  bumped Symfony version to 2.3.24
  updated VERSION for 2.3.23
  update CONTRIBUTORS for 2.3.23
  updated CHANGELOG for 2.3.23

Conflicts:
	src/Symfony/Component/Console/Helper/ProgressBar.php
	src/Symfony/Component/Debug/ErrorHandler.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Security/Http/HttpUtils.php
	src/Symfony/Component/Validator/Mapping/Factory/LazyLoadingMetadataFactory.php
2014-12-05 13:00:15 +01:00
Fabien Potencier
9aff1ec93c Merge branch '2.3' into 2.5
* 2.3:
  [2.3] More cs fixes
  Removed unused imports
  CS fixes
  bumped Symfony version to 2.3.24
  updated VERSION for 2.3.23
  update CONTRIBUTORS for 2.3.23
  updated CHANGELOG for 2.3.23

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/EventListener/SessionListener.php
	src/Symfony/Bundle/SecurityBundle/DependencyInjection/MainConfiguration.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/HttpKernel/Tests/Bundle/BundleTest.php
	src/Symfony/Component/Routing/Matcher/Dumper/PhpMatcherDumper.php
2014-12-04 09:55:19 +01:00
Graham Campbell
0e4f0e7c9e Removed unused imports 2014-12-03 20:18:13 +00:00
Graham Campbell
0fc3369b35 CS fixes 2014-12-03 20:10:26 +00:00
Fabien Potencier
83ee704816 Merge branch '2.5' into 2.6
* 2.5:
  Configure firewall's kernel exception listener with configured entry point or a default entry point
  PSR-2 fixes
  [DependencyInjection] make paths relative to __DIR__ in the generated container
  Fixed the syntax of a composer.json file
  Fixed the symfony/config version constraint
  Tweaked the password-compat version constraint
  Docblock fixes
  Remove dialog usage
  define constant only if it wasn't defined before
  Fix incorrect spanish translation
  Fixed typos

Conflicts:
	src/Symfony/Bundle/TwigBundle/Controller/ExceptionController.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/OptionsResolver/Options.php
	src/Symfony/Component/OptionsResolver/OptionsResolverInterface.php
	src/Symfony/Component/Process/ProcessPipes.php
	src/Symfony/Component/Security/Http/Tests/Firewall/RememberMeListenerTest.php
	src/Symfony/Component/Serializer/Normalizer/DenormalizableInterface.php
	src/Symfony/Component/Validator/ConstraintViolation.php
	src/Symfony/Component/Yaml/Inline.php
	src/Symfony/Component/Yaml/Parser.php
2014-12-02 21:19:20 +01:00
Fabien Potencier
ab1e9f3f81 Merge branch '2.3' into 2.5
* 2.3:
  Configure firewall's kernel exception listener with configured entry point or a default entry point
  PSR-2 fixes
  [DependencyInjection] make paths relative to __DIR__ in the generated container
  Fixed the syntax of a composer.json file
  Fixed the symfony/config version constraint
  Tweaked the password-compat version constraint
  Docblock fixes
  define constant only if it wasn't defined before
  Fix incorrect spanish translation
  Fixed typos

Conflicts:
	composer.json
	src/Symfony/Bridge/Twig/TwigEngine.php
	src/Symfony/Bundle/FrameworkBundle/Controller/Controller.php
	src/Symfony/Bundle/FrameworkBundle/Templating/Loader/FilesystemLoader.php
	src/Symfony/Bundle/FrameworkBundle/composer.json
	src/Symfony/Component/Console/Descriptor/MarkdownDescriptor.php
	src/Symfony/Component/Console/Helper/TableHelper.php
	src/Symfony/Component/Console/Tests/Helper/HelperSetTest.php
	src/Symfony/Component/Debug/ErrorHandler.php
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/Finder/Tests/Iterator/RecursiveDirectoryIteratorTest.php
	src/Symfony/Component/Form/Tests/Extension/Core/DataMapper/PropertyPathMapperTest.php
	src/Symfony/Component/HttpFoundation/Response.php
	src/Symfony/Component/HttpFoundation/StreamedResponse.php
	src/Symfony/Component/HttpKernel/Controller/ControllerResolver.php
	src/Symfony/Component/HttpKernel/Controller/ControllerResolverInterface.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
	src/Symfony/Component/HttpKernel/Fragment/RoutableFragmentRenderer.php
	src/Symfony/Component/HttpKernel/Tests/DataCollector/RequestDataCollectorTest.php
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/Process/Process.php
	src/Symfony/Component/Process/Tests/AbstractProcessTest.php
	src/Symfony/Component/PropertyAccess/PropertyAccessorBuilder.php
	src/Symfony/Component/Routing/Tests/Fixtures/validpattern.php
	src/Symfony/Component/Security/Http/RememberMe/TokenBasedRememberMeServices.php
	src/Symfony/Component/Security/composer.json
	src/Symfony/Component/Serializer/Encoder/XmlEncoder.php
	src/Symfony/Component/Serializer/Normalizer/GetSetMethodNormalizer.php
	src/Symfony/Component/Stopwatch/StopwatchEvent.php
	src/Symfony/Component/Stopwatch/StopwatchPeriod.php
	src/Symfony/Component/Templating/PhpEngine.php
	src/Symfony/Component/Templating/TemplateReference.php
	src/Symfony/Component/Templating/TemplateReferenceInterface.php
	src/Symfony/Component/Translation/TranslatorInterface.php
	src/Symfony/Component/Validator/ConstraintViolation.php
	src/Symfony/Component/Validator/ExecutionContextInterface.php
	src/Symfony/Component/Validator/Mapping/ClassMetadata.php
	src/Symfony/Component/Validator/MetadataFactoryInterface.php
2014-12-02 21:15:53 +01:00
Graham Campbell
eda746bad5 PSR-2 fixes 2014-12-02 19:42:47 +00:00
Fabien Potencier
e7067cb771 Merge branch '2.5' into 2.6
* 2.5:
  Update filesystem readme.md to include exists method
  Add machine readable events
  [HttpKernel][2.6] Adding support for invokable controllers in the RequestDataCollector
  fixed typo
  [Translations] Added missing Hebrew language trans-unit sources
  [DependencyInjection] inlined factory not referenced
  Fixed case for empty folder
  Fixed whitespace control for password form widget
  [Routing] correctly initialize condition as string
2014-11-16 18:28:09 +01:00
Fabien Potencier
679911ca82 Merge branch '2.3' into 2.5
* 2.3:
  Update filesystem readme.md to include exists method
  Add machine readable events
  fixed typo
  [Translations] Added missing Hebrew language trans-unit sources
  [DependencyInjection] inlined factory not referenced
  Fixed case for empty folder
2014-11-16 18:28:00 +01:00
Warnar Boekkooi
7816a98204 [DependencyInjection] inlined factory not referenced 2014-11-12 08:52:52 +01:00
Fabien Potencier
842cba1d0c Merge branch '2.5'
* 2.5:
  Remove aligned '=>' and '='
  Break infinite loop while resolving aliases
  [Security][listener] change priority of switchuser
  Improved the phpdoc for security token classes
  bumped Symfony version to 2.5.7
  updated VERSION for 2.5.6
  updated CHANGELOG for 2.5.6
  bumped Symfony version to 2.3.22
  updated VERSION for 2.3.21
  update CONTRIBUTORS for 2.3.21
  updated CHANGELOG for 2.3.21

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
	src/Symfony/Bundle/SecurityBundle/DependencyInjection/Security/Factory/AbstractFactory.php
	src/Symfony/Bundle/TwigBundle/Controller/ExceptionController.php
	src/Symfony/Component/Debug/ErrorHandler.php
	src/Symfony/Component/Debug/ExceptionHandler.php
	src/Symfony/Component/Form/Extension/Core/Type/BaseType.php
	src/Symfony/Component/Form/Extension/Core/Type/ChoiceType.php
	src/Symfony/Component/Form/Extension/Core/Type/DateTimeType.php
	src/Symfony/Component/Form/Extension/Core/Type/DateType.php
	src/Symfony/Component/Form/Extension/Core/Type/TimeType.php
	src/Symfony/Component/Form/Extension/Validator/Type/FormTypeValidatorExtension.php
	src/Symfony/Component/HttpFoundation/Request.php
	src/Symfony/Component/HttpFoundation/Session/Storage/Handler/MongoDbSessionHandler.php
	src/Symfony/Component/HttpFoundation/Session/Storage/Handler/PdoSessionHandler.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/Security/Core/SecurityContextInterface.php
	src/Symfony/Component/Security/Http/Authentication/DefaultAuthenticationFailureHandler.php
	src/Symfony/Component/Security/Http/Authentication/DefaultAuthenticationSuccessHandler.php
	src/Symfony/Component/Security/Http/Firewall/AnonymousAuthenticationListener.php
	src/Symfony/Component/Serializer/Serializer.php
	src/Symfony/Component/Validator/Constraints/File.php
2014-10-26 08:46:28 +01:00
Fabien Potencier
b5b12a54f7 Merge branch '2.3' into 2.5
* 2.3:
  Remove aligned '=>' and '='
  Break infinite loop while resolving aliases
  [Security][listener] change priority of switchuser
  Improved the phpdoc for security token classes
  bumped Symfony version to 2.3.22
  updated VERSION for 2.3.21
  update CONTRIBUTORS for 2.3.21
  updated CHANGELOG for 2.3.21

Conflicts:
	src/Symfony/Bridge/Propel1/Form/ChoiceList/ModelChoiceList.php
	src/Symfony/Bridge/Propel1/Form/Type/ModelType.php
	src/Symfony/Bridge/Propel1/Logger/PropelLogger.php
	src/Symfony/Bridge/Propel1/Tests/Fixtures/ItemQuery.php
	src/Symfony/Bundle/FrameworkBundle/Command/RouterDebugCommand.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/ConfigurationTest.php
	src/Symfony/Bundle/FrameworkBundle/Translation/Translator.php
	src/Symfony/Bundle/SecurityBundle/DependencyInjection/SecurityExtension.php
	src/Symfony/Bundle/SecurityBundle/Tests/Functional/Bundle/FormLoginBundle/Controller/LocalizedController.php
	src/Symfony/Bundle/SecurityBundle/Tests/Functional/Bundle/FormLoginBundle/Controller/LoginController.php
	src/Symfony/Component/Console/Descriptor/JsonDescriptor.php
	src/Symfony/Component/Console/Formatter/OutputFormatterStyle.php
	src/Symfony/Component/Console/Helper/ProgressHelper.php
	src/Symfony/Component/Debug/ErrorHandler.php
	src/Symfony/Component/DependencyInjection/Container.php
	src/Symfony/Component/Finder/Shell/Command.php
	src/Symfony/Component/Form/Extension/Core/DataTransformer/NumberToLocalizedStringTransformer.php
	src/Symfony/Component/Form/Extension/Core/Type/CollectionType.php
	src/Symfony/Component/Form/Extension/Core/Type/FormType.php
	src/Symfony/Component/Form/Extension/Core/Type/IntegerType.php
	src/Symfony/Component/Form/Extension/Core/Type/NumberType.php
	src/Symfony/Component/Form/Extension/Csrf/Type/FormTypeCsrfExtension.php
	src/Symfony/Component/HttpFoundation/File/UploadedFile.php
	src/Symfony/Component/HttpKernel/DataCollector/LoggerDataCollector.php
	src/Symfony/Component/HttpKernel/Debug/TraceableEventDispatcher.php
	src/Symfony/Component/HttpKernel/EventListener/ExceptionListener.php
	src/Symfony/Component/HttpKernel/Kernel.php
	src/Symfony/Component/HttpKernel/Tests/EventListener/TestSessionListenerTest.php
	src/Symfony/Component/HttpKernel/Tests/HttpCache/TestMultipleHttpKernel.php
	src/Symfony/Component/Intl/NumberFormatter/NumberFormatter.php
	src/Symfony/Component/Routing/Loader/AnnotationClassLoader.php
	src/Symfony/Component/Routing/Route.php
	src/Symfony/Component/Routing/Tests/Loader/AnnotationClassLoaderTest.php
	src/Symfony/Component/Security/Tests/Core/Validator/Constraints/UserPasswordValidatorTest.php
	src/Symfony/Component/Templating/PhpEngine.php
	src/Symfony/Component/Validator/Constraints/ImageValidator.php
	src/Symfony/Component/Validator/Constraints/TypeValidator.php
2014-10-26 08:41:27 +01:00
Karoly Negyesi
acbde502bf Break infinite loop while resolving aliases 2014-10-26 08:26:27 +01:00
Rouven Weßling
bd8531d2d8 added a new Syntax to define factories as callables. 2014-09-24 08:27:41 +02:00
Fabien Potencier
6ff62cc675 Merge branch '2.4' into 2.5
* 2.4:
  fix typos
  [HttpKernel] add use statement for phpdoc
  Disabled the PHPUnit self-update on Travis
  [ClassLoader] simplified phpdoc
  [ClassLoader] Add a __call() method to XcacheClassLoader
  fix some minor typos in tests
  [Yaml] fixed mapping keys containing a quoted #
  Added fixture to test parsing of hash keys ending with a space and #
  [Filesystem Component] mkdir race condition fix #11626
  [Validator] reverted permissions change on translation files
  Fixed Factory services not within the ServiceReferenceGraph.
  [CssSelector] Fix URL to SimonSapin/cssselect repo
  [Validator] Fixed wrong translation keys/messages for Collection constraint. The error messages for a missing field and an unexpected field did not match the Contraint class
  [YAML] resolve variables in inlined YAML
  Disallow abstract definitions from doctrine event listener registration

Conflicts:
	src/Symfony/Component/Process/Tests/SigchildDisabledProcessTest.php
	src/Symfony/Component/Yaml/Inline.php
2014-08-31 05:22:04 +02:00
Fabien Potencier
e99dfdf87a Merge branch '2.3' into 2.4
* 2.3:
  [HttpKernel] add use statement for phpdoc
  Disabled the PHPUnit self-update on Travis
  [ClassLoader] simplified phpdoc
  [ClassLoader] Add a __call() method to XcacheClassLoader
  fix some minor typos in tests
  [Yaml] fixed mapping keys containing a quoted #
  Added fixture to test parsing of hash keys ending with a space and #
  [Filesystem Component] mkdir race condition fix #11626
  [Validator] reverted permissions change on translation files
  Fixed Factory services not within the ServiceReferenceGraph.
  [CssSelector] Fix URL to SimonSapin/cssselect repo
  [Validator] Fixed wrong translation keys/messages for Collection constraint. The error messages for a missing field and an unexpected field did not match the Contraint class
  [YAML] resolve variables in inlined YAML
  Disallow abstract definitions from doctrine event listener registration

Conflicts:
	src/Symfony/Bridge/Doctrine/DependencyInjection/CompilerPass/RegisterEventListenersAndSubscribersPass.php
	src/Symfony/Bridge/Doctrine/Tests/DependencyInjection/CompilerPass/RegisterEventListenersAndSubscribersPassTest.php
	src/Symfony/Bundle/FrameworkBundle/EventListener/SessionListener.php
	src/Symfony/Component/Filesystem/Filesystem.php
2014-08-31 05:18:18 +02:00
Warnar Boekkooi
e992f8e3d1 Fixed Factory services not within the ServiceReferenceGraph. 2014-08-27 10:32:18 +02:00
Romain Neutron
140f807346 [DependencyInjection] Update dumpers and loaders, add unit tests 2014-04-01 14:25:44 +02:00
Fabien Potencier
26b5cf3e4e Merge branch '2.3' into 2.4
* 2.3:
  [Security] made code easier to understand, added some missing unit tests
  [DependencyInjection] fixed InlineServiceDefinitionsPass to not inline a service if it's part of the current definition (to avoid an infinite loop)
  [DomCrawler] Fixed creating form objects from form nodes.
  disabled php.ini changes when using HHVM in .travis.yml
  [Process] fixed HHVM support
  Add support for HHVM in the getting of the PHP executable
  [Security] fixed error 500 instead of 403 if previous exception is provided to AccessDeniedException
2013-12-29 15:43:38 +01:00
Fabien Potencier
d6502952b4 [DependencyInjection] fixed InlineServiceDefinitionsPass to not inline a service if it's part of the current definition (to avoid an infinite loop) 2013-12-29 15:15:37 +01:00
Fabien Potencier
d10dec9bf3 Merge branch '2.3'
* 2.3:
  fixed Client when using the terminable event
  Fix problem with Windows file links (backslash in JavaScript string)
  [Security] fixed wrong phpdoc
  [DependencyInjection] Prevented inlining of lazy loaded private service definitions.
  [Routing] removed extra argument
  [HttpFoundation] Header `HTTP_X_FORWARDED_PROTO` can contain various values Some proxies use `ssl` instead of `https`, as well as Lighttpd mod_proxy allows value chaining (`https, http`, where `https` is always first when request is encrypted).
  Added doc comments

Conflicts:
	src/Symfony/Component/Routing/Router.php
	src/Symfony/Component/Security/Http/Firewall.php
2013-09-29 21:43:28 +02:00
Jakub Zalas
bb0125b2f9 [DependencyInjection] Prevented inlining of lazy loaded private service definitions. 2013-09-26 23:39:53 +01:00
Lukas Kahwe Smith
639b0fa967 Allow null values as tag attributes 2013-09-16 10:01:04 +02:00
Fabien Potencier
5cad478c64 [DependencyInjection] added tags validation when compiling a container 2013-09-12 12:52:36 +02:00
bronze1man
970ce2c413 [DependencyInjection] fixed #8570 2013-07-25 13:55:15 +08:00
Fabien Potencier
e81f7925eb Merge branch '2.1' into 2.2
* 2.1:
  [HttpFoundation][BrowserKit] fixed path when converting a cookie to a string
  [BrowserKit] removed dead code
  [HttpFoundation] fixed empty domain= in Cookie::__toString()
  fixed detection of secure cookies received over https
  [Translation] removed an uneeded class property
  [Translation] removed unneeded getter/setter
  [Translator] added additional conversion for encodings other than utf-8
  fix a DI circular reference recognition bug
  [HttpFoundation] fixed the creation of sub-requests under some circumstances for IIS
2013-04-20 21:05:29 +02:00
Tóth Gábor
8a434edd2c fix a DI circular reference recognition bug 2013-04-18 15:53:00 +02:00
Gordon Franke
37af92d979 add test for compiler replace alias with invalid alias 2013-01-16 09:59:03 +01:00
Fabien Potencier
aba96c7cae Merge branch '2.1'
* 2.1:
  [Console] Fix style escaping parsing
  [Console] Make style formatter matching less greedy to avoid having to escape when not needed
  [Bundle] [FrameworkBundle] fixed indentation in esi.xml services file.
  [Component] [Security] fixed PSR-2 coding violation in ClassUtilsTest class.
  [Form] Fixed EntityChoiceList when loading objects with negative integer IDs
  [TwigBundle] There is no CSS visibility of display, should be visible instead
  [Form] corrected source node for a Danish translation
  [DependencyInjection] fixed a bug where the strict flag on references were lost (closes #6607)
  [HttpFoundation] Check if required shell functions for `FileBinaryMimeTypeGuesser` are not disabled
  [CssSelector] added css selector with empty string
  [HttpFoundation] Docblock for Request::isXmlHttpRequest() now points to Wikipedia
  [DependencyInjection] refactored code to avoid logic duplication
  [Form] Deleted references in FormBuilder::getFormConfig() to improve performance
  [HttpFoundation] Update docblock for non-working method

Conflicts:
	src/Symfony/Bundle/TwigBundle/Resources/views/Exception/trace.html.twig
	src/Symfony/Bundle/TwigBundle/Resources/views/Exception/traces.html.twig
2013-01-08 19:17:41 +01:00
Fabien Potencier
8321127cda Merge branch '2.0' into 2.1
* 2.0:
  [Bundle] [FrameworkBundle] fixed indentation in esi.xml services file.
  [TwigBundle] There is no CSS visibility of display, should be visible instead
  [DependencyInjection] fixed a bug where the strict flag on references were lost (closes #6607)
  [HttpFoundation] Check if required shell functions for `FileBinaryMimeTypeGuesser` are not disabled
  [CssSelector] added css selector with empty string
  [HttpFoundation] Docblock for Request::isXmlHttpRequest() now points to Wikipedia
  [DependencyInjection] refactored code to avoid logic duplication

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Resources/config/esi.xml
	src/Symfony/Component/DependencyInjection/Dumper/PhpDumper.php
	src/Symfony/Component/HttpFoundation/File/MimeType/FileBinaryMimeTypeGuesser.php
2013-01-08 19:16:44 +01:00
Bernhard Schussek
184c8e586f Fixed @expectedException definitions to reference absolute exception paths 2013-01-05 18:52:40 +01:00
Fabien Potencier
6cd1fd4738 [DependencyInjection] removed hard dependency on the Config component
The Config component is a hard dependency for the loaders (but loaders
themselves are optional); all other classes should not have a hard dep
on Config. The introduction of a new flag allows to remove this
dependency.

This commit also fixes skipped test dependencies.
2012-12-28 11:06:10 +01:00
Fabien Potencier
cd24e6ea8f Revert "raised the minimum version of PHP to 5.3.4 (closes #3856)"
This reverts commit 2dcc44897e.
2012-07-15 12:13:51 +02:00
Fabien Potencier
2dcc44897e raised the minimum version of PHP to 5.3.4 (closes #3856)
We've raised the minimum version of PHP because of a PHP
bug before 5.3.4:

https://bugs.php.net/bug.php?id=52083
https://bugs.php.net/bug.php?id=50027
2012-07-13 21:22:46 +02:00
Fabien Potencier
4c7261e3b1 merged 2.0 2012-05-11 18:14:47 +02:00
Eriksen Costa
013f998bb8 updated license blocks 2012-03-31 18:00:32 -03:00
Fabien Potencier
fea6b79acd moved component and bridge unit tests to the src/ directory
This is the first step to make each Symfony Component and Bridge self-contained.
2012-03-29 08:37:22 +02:00