Commit Graph

83 Commits

Author SHA1 Message Date
Nicolas Grekas
3a9653df72 Merge branch '3.4'
* 3.4:
  [Console] Add protected static $defaultName to set the default name of a Command
  removed sf2 references
  [Console] Allow commands to provide a default name for compile time registration
  [DI] Case sensitive parameter names
2017-08-25 12:57:40 +02:00
Roland Franssen
8a1d16839e [DI] Case sensitive parameter names 2017-08-14 17:16:04 +02:00
Nicolas Grekas
24fc394ad3 Merge branch '3.4'
* 3.4:
  [Yaml] Recommend using quotes instead of PARSE_KEYS_AS_STRINGS
  [DependencyInjection] Deprecate autowiring service auto-registration
  Removed useless argument $definition
  [DI] Generate shorter method names for class-based ids
  Fix comment
  [Config] Fix checking class existence freshness
  bumped Symfony version to 3.3.7
  updated VERSION for 3.3.6
  updated CHANGELOG for 3.3.6
  Autoconfigure instances of ArgumentValueResolverInterface
  Deprecate Filesystem/LockHandler
  improve sql explain table display
  Bump minimal PHP version to ^5.5.9|>=7.0.8
2017-08-03 11:50:20 +02:00
Nicolas Grekas
2454a4f3f9 feature #23712 [DependencyInjection] Deprecate autowiring service auto-registration (GuilhemN)
This PR was squashed before being merged into the 3.4 branch (closes #23712).

Discussion
----------

[DependencyInjection] Deprecate autowiring service auto-registration

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

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

Commits
-------

969a207 [DependencyInjection] Deprecate autowiring service auto-registration
2017-08-03 11:15:05 +02:00
Guilhem Niot
969a20780e [DependencyInjection] Deprecate autowiring service auto-registration 2017-08-03 11:07:16 +02:00
Roland Franssen
9f969529f0 [DI] Removed deprecated setting private/pre-defined services 2017-07-17 13:19:27 +02:00
Nicolas Grekas
4bd7b921f4 [DI] Remove remaining deprecated features 2017-07-12 12:42:06 +02:00
Roland Franssen
63e26fcba6 [DI] Remove deprecated case insensitive service ids 2017-07-11 16:00:59 +02:00
Nicolas Grekas
86cae494b6 Merge branch '3.4'
* 3.4:
  Fix optional cache warmers are always instantiated whereas they should be lazy-loaded
  add some \ on PHP_VERSION_ID for 2.8
  [Di] Remove closure-proxy arguments
  [PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string
2017-06-02 12:06:41 +02:00
Nicolas Grekas
068f8d1341 Merge branch '3.3' into 3.4
* 3.3:
  Fix optional cache warmers are always instantiated whereas they should be lazy-loaded
  add some \ on PHP_VERSION_ID for 2.8
  [Di] Remove closure-proxy arguments
  [PropertyInfo][DoctrineBridge] The bigint Doctrine's type must be converted to string
2017-06-02 11:54:06 +02:00
Nicolas Grekas
57daadbf67 [Di] Remove closure-proxy arguments 2017-06-01 22:59:07 +02:00
Nicolas Grekas
1ecfa82ff0 Merge branch '3.4'
* 3.4:
  [DI] Deprecate XML services without ID
  [3.4] Allow 4.* deps
  Fix kernel.project_dir extensibility
2017-05-27 12:06:16 +02:00
Fabien Potencier
3c9a591c06 feature #22903 [DI] Deprecate XML services without ID (ro0NL)
This PR was merged into the 3.4 branch.

Discussion
----------

[DI] Deprecate XML services without ID

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

On slack someone had a issue with class named services;

> So, probably should have done this sooner, I stepped through with a debugger and it looks like \Symfony\Component\DependencyInjection\Loader\XmlFileLoader::processAnonymousServices assigns a sha256 to services that don't have any IDs
> When my manually wired service is registered, it has an ID that looks like 1_344b468f6069ffe8c32092409d99c59abc218f41071ce4c4230c198876129bc0, so it doesn't override the auto-loaded one
> I swear I read that IDs default to the class name now...

The fix was easy; doing `<service id="ClassName"/>` instead of `<service class="ClassName"/>`. However the thing is... i made the exact same mistake trying to reproduce 😅

I think given the recent developments (dropping type based autowiring and class named services) it makes sense to force XML service to specify an ID attribute (the top level ones). This would be consistent with YAML and PHP as well.

Fixing deprecations is also easy, just change `class` attribute to `id` like i've done for the frameworkbundle in this PR.

Any thoughts?

Commits
-------

b8c68da010 [DI] Deprecate XML services without ID
2017-05-25 16:22:40 -07:00
Roland Franssen
b8c68da010 [DI] Deprecate XML services without ID 2017-05-25 11:24:58 +02:00
Nicolas Grekas
ff54ce529b Merge branch '3.4'
* 3.4:
  [CACHE] fix README
  [Cache] Fix phpunit.xml.dist
  [travis] Fix 3/4 cross tests
  [ProxyManager] Add FC layer
2017-05-25 07:56:23 +02:00
Nicolas Grekas
e5a0062a18 Merge branch '3.3' into 3.4
* 3.3:
  [CACHE] fix README
  [Cache] Fix phpunit.xml.dist
  [ProxyManager] Add FC layer
2017-05-25 07:53:40 +02:00
Nicolas Grekas
4aeb6d8749 [ProxyManager] Add FC layer 2017-05-24 18:13:59 +02:00
Christian Flothmann
3a129494b1 [ProxyManagerBridge] remove deprecated features 2017-05-24 14:25:37 +02:00
Nicolas Grekas
d6bdd23e3d Merge branch '3.4'
* 3.4:
  [DI] Deprecate Container::initialized() for privates
2017-05-22 13:40:59 +02:00
Roland Franssen
e0eb247229 [DI] Deprecate Container::initialized() for privates 2017-05-22 13:20:30 +02:00
Nicolas Grekas
88cddb8a31 feature #22773 [DependencyInjection] remove deprecated autowiring_types feature (hhamon)
This PR was merged into the 4.0-dev branch.

Discussion
----------

[DependencyInjection] remove deprecated autowiring_types feature

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

Commits
-------

6fdcb84 [DependencyInjection] remove deprecated autowiring_types feature
2017-05-22 11:50:05 +02:00
Hugo Hamon
6fdcb8496b [DependencyInjection] remove deprecated autowiring_types feature 2017-05-22 11:28:45 +02:00
Roland Franssen
fdb8c58e15 [DI] Remove deprecated generating a dumped container without populating the method map 2017-05-22 09:52:16 +02:00
Roland Franssen
c1c525cdfe [DI] Remove deprecated dumping an uncompiled container 2017-05-22 09:11:02 +02:00
Nicolas Grekas
619f01c193 feature #22763 [DI] Remove deprecated isFrozen() (ro0NL)
This PR was squashed before being merged into the 4.0-dev branch (closes #22763).

Discussion
----------

[DI] Remove deprecated isFrozen()

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

See #19673

Test failure seems unrelated.

Commits
-------

04b39a3 [DI] Remove deprecated isFrozen()
2017-05-21 21:26:24 +02:00
Roland Franssen
04b39a3a20 [DI] Remove deprecated isFrozen() 2017-05-21 21:26:22 +02:00
Nicolas Grekas
023cf9e014 Merge branch '3.2' into 3.3
* 3.2:
  do not mock a deprecated interface
  [DI] Added missing deprecation in changelog
  [Ldap] add a changelog file
2017-05-21 10:56:50 +02:00
Roland Franssen
b3d58c54a4 [DI] Added missing deprecation in changelog 2017-05-20 22:16:10 +02:00
Ryan Weaver
037a782b91 Making tags under _defaults always apply and removing inherit_tags entirely
Now that inherit_tags has been removed, 3.3 has the same functionality as 3.2: tags
are *never* cascaded from parent to child (but you tags do inherit from defaults
to a service and instanceof to a service).
2017-05-01 09:36:02 -04:00
Robin Chalas
92994f3f94 Add a note about the ServiceLocator class in the changelog 2017-04-13 11:59:51 +02:00
Nicolas Grekas
0ed087d972 [DI] Replace autowiring BC break by regular deprecation 2017-04-11 23:14:08 +02:00
Nicolas Grekas
cc5e582dcf [BC BREAK][DI] Always autowire "by id" instead of using reflection against all existing services 2017-04-05 23:48:42 +02:00
Nicolas Grekas
e8723df28a [DI/Yaml] Remove @experimental flag from "instanceof" and "prototype" 2017-04-05 12:13:51 +02: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
9b7df39865 [DI] Add and wire ServiceSubscriberInterface 2017-03-22 20:26:09 +01:00
Nicolas Grekas
5d230b5871 [DI] Introduce "container.service_locator" tag, replaces ServiceLocatorArgument 2017-03-17 17:49:32 +01:00
Guilhem Niot
9b7138545e
[DependencyInjection] Support anonymous services in Yaml 2017-03-14 21:40:20 +01:00
Nicolas Grekas
1d9663326e [DI] Allow creating ServiceLocator-based services in extensions 2017-03-05 14:36:05 +01:00
Robin Chalas
46dc47af11 [DI] Remove experimental status from service-locator argument type 2017-02-26 11:25:49 +01:00
Nicolas Grekas
2fb601983f [DependencyInjection] Add "instanceof" section for local interface-defined configs 2017-02-17 19:36:34 +01:00
Pierre du Plessis
519180ef56 Use glob pattern to load config file 2017-02-14 07:56:25 +02:00
Robin Chalas
e7935c0adb
[DI] Replace container injection by explicit service locators
[SecurityBundle] Avoid container injection in FirewallMap
2017-02-13 11:05:06 +01:00
Nicolas Grekas
03470b788e [DI] Add "psr4" service attribute for PSR4-based discovery and registration 2017-02-12 23:09:17 +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
Robin Chalas
6b556b8b9b [DI] Add ContainerBuilder::fileExists()
Update TwigExtension
2017-02-02 11:26:40 +01:00
Nicolas Grekas
b11d391cb7 [DI] Deprecate autowiring-types in favor of aliases 2017-02-01 19:42:39 +01:00
Nicolas Grekas
cb498580d1 [DI] Add getter injection 2017-01-28 08:49:57 +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
d08f1101df [DI] Deprecate case insentivity of service identifiers 2017-01-11 16:25:44 +01:00