Commit Graph

31399 Commits

Author SHA1 Message Date
Nicolas Grekas
e9f0e84c0e Merge branch '3.3' into 3.4
* 3.3:
  Fix kernel.project_dir extensibility
2017-05-27 12:02:34 +02:00
Fabien Potencier
4e8f403a7c fixed CS 2017-05-26 07:03:51 -07:00
Fabien Potencier
c69c539ead bug #22921 [FrameworkBundle] Only override getProjectDir if it exists in the kernel (aschempp)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle] Only override getProjectDir if it exists in the kernel

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

As discussed with @nicolas-grekas, the `getProjectDir` method does not belong to `KernelInterface` so it can't just be called. I think we should also not add the method to the kernel if it does not exist in the parent, because we would not have a useful value to return.

Commits
-------

c7ed08e2c0 Only override getProjectDir if it exists in the kernel
2017-05-26 07:03:02 -07:00
Andreas Schempp
c7ed08e2c0 Only override getProjectDir if it exists in the kernel 2017-05-26 15:28:14 +02:00
Christophe Coevoet
cf60f6d744 feature #22905 [FrameworkBundle][Validator] Move the PSR-11 factory to the component (ogizanagi)
This PR was merged into the 3.3 branch.

Discussion
----------

[FrameworkBundle][Validator] Move the PSR-11 factory to the component

| Q             | A
| ------------- | ---
| Branch?       | 3.3 <!-- see comment below -->
| 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/pull/22887#issuecomment-303765795 <!-- #-prefixed issue number(s), if any -->
| License       | MIT
| Doc PR        | N/A

Instead of the 3 following deprecations:
 * The `ConstraintValidatorFactory::$validators` and `$container` properties
   have been deprecated and will be removed in 4.0.
 * Extending `ConstraintValidatorFactory` is deprecated and won't be supported in 4.0.
* Passing an array of validators or validator aliases as the second argument of
   `ConstraintValidatorFactory::__construct()` is deprecated since 3.3 and will
   be removed in 4.0. Use the service locator instead.

I'd suggest simply deprecating the FrameworkBundle's class in favor of using a new `ContainerConstraintValidatorFactory`. To me, there is no reason anyone using the validator component without the framework bundle cannot use this PSR-11 compliant implementation, nor I see a reason to make it final.

Commits
-------

68c1917af9 [FrameworkBundle][Validator] Move the PSR-11 factory to the component
2017-05-26 12:01:03 +02:00
Maxime Steinhausser
68c1917af9 [FrameworkBundle][Validator] Move the PSR-11 factory to the component 2017-05-26 10:48:50 +02:00
Christian Flothmann
25381a2809 [Filesystem] improve error handling in lock() 2017-05-26 09:33:33 +02:00
Fabien Potencier
26afd2c1bf bug #22728 [HttpKernel] Fix kernel.project_dir extensibility (chalasr)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] Fix kernel.project_dir extensibility

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

Alternative to #22727 that makes use of the existing public api.

Commits
-------

3230fc7e70 Fix kernel.project_dir extensibility
2017-05-25 16:46:48 -07:00
Fabien Potencier
ec4689122c bug #22829 [Yaml] fix colon without space deprecation (xabbuh)
This PR was merged into the 3.2 branch.

Discussion
----------

[Yaml] fix colon without space deprecation

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

A colon after a mapping key that is not followed by a space is valid if the mapping key is quoted.

Commits
-------

57f6941e25 [Yaml] fix colon without space deprecation
2017-05-25 16:42:36 -07:00
Fabien Potencier
683b236625 minor #22885 [3.4] Allow 4.* deps (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[3.4] Allow 4.* deps

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

This is implementing option 3 as described in #22756.
See #22769 for corresponding PR on 2.8: everything goes well and this allows catching a few more potential mistakes.

Commits
-------

c3e1646af8 [3.4] Allow 4.* deps
2017-05-25 16:27:00 -07: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
Fabien Potencier
f34a2556af Merge branch '3.3' into 3.4
* 3.3:
  [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const
  [DI] Avoid private call to Container::has()
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  [Yaml] parse PHP constants in mapping keys
  don't call getTrustedHeaderName() if possible
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 16:10:58 -07:00
Fabien Potencier
bf85c7d4e2 Merge branch '3.2' into 3.3
* 3.2:
  [DI] Avoid private call to Container::has()
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 16:10:31 -07:00
Fabien Potencier
810623df5e Merge branch '2.8' into 3.2
* 2.8:
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 15:59:05 -07:00
Fabien Potencier
321e41cb6b Merge branch '2.7' into 2.8
* 2.7:
  Fixing missing abstract attribute in XmlDumper
  [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
  Fix file perms
  Fixed filename in help text for update-data.php
2017-05-25 15:57:22 -07:00
Fabien Potencier
966f3877e7 bug #22901 Fix missing abstract key in XmlDumper (weaverryan)
This PR was merged into the 2.7 branch.

Discussion
----------

Fix missing abstract key in XmlDumper

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

Unless I'm missing something, the abstract key was missing in the XmlDumper. I noticed it when using `debug:container some_abstract_service` and was seeing "no" for abstract.

When this merges to 3.3, the `services-abstract.xml` will need to change to this:

```xml
<?xml version="1.0" encoding="utf-8"?>
<container xmlns="http://symfony.com/schema/dic/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
  <services>
    <service id="service_container" class="Symfony\Component\DependencyInjection\ContainerInterface" synthetic="true"/>
    <service id="foo" class="Foo" abstract="true"/>
    <service id="Psr\Container\ContainerInterface" alias="service_container" public="false"/>
    <service id="Symfony\Component\DependencyInjection\ContainerInterface" alias="service_container" public="false"/>
  </services>
</container>
```

Commits
-------

40f60ec60d Fixing missing abstract attribute in XmlDumper
2017-05-25 15:55:11 -07:00
Fabien Potencier
c1343043af bug #22912 [DI] Avoid private call to Container::has() (ro0NL)
This PR was merged into the 3.2 branch.

Discussion
----------

[DI] Avoid private call to Container::has()

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

Fixes `User Deprecated: Checking for the existence of the "debug.file_link_formatter" private service is deprecated since Symfony 3.2 and won't be supported anymore in Symfony 4.0.`

Commits
-------

56892819e3 [DI] Avoid private call to Container::has()
2017-05-25 15:47:33 -07:00
Fabien Potencier
fa93ff1389 feature #22904 [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const

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

See https://github.com/symfony/symfony-docs/issues/7045

Commits
-------

9ba12b0d2a [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const
2017-05-25 15:25:56 -07:00
Nicolas Grekas
9ba12b0d2a [HttpFoundation] Add Request::HEADER_X_FORWARDED_AWS_ELB const 2017-05-25 15:39:26 +02:00
Nicolas Grekas
1eac1506df bug #22878 [Yaml] parse PHP constants in mapping keys (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[Yaml] parse PHP constants in mapping keys

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

Commits
-------

ae52fe6 [Yaml] parse PHP constants in mapping keys
2017-05-25 15:35:55 +02:00
Nicolas Grekas
4e95aacc17 bug #22873 [HttpKernel] don't call getTrustedHeaderName() if possible (xabbuh)
This PR was merged into the 3.3 branch.

Discussion
----------

[HttpKernel] don't call getTrustedHeaderName() if possible

| Q             | A
| ------------- | ---
| Branch?       | 3.3
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | https://travis-ci.org/symfony/symfony/jobs/235008102 (failing tests of #22863)
| License       | MIT
| Doc PR        |

Commits
-------

6350dab don't call getTrustedHeaderName() if possible
2017-05-25 15:34:36 +02:00
Nicolas Grekas
657f7ec64c minor #22911 [Form] Remove DateTimeToStringTransformer $parseUsingPipe option (ogizanagi)
This PR was merged into the 2.7 branch.

Discussion
----------

[Form] Remove DateTimeToStringTransformer $parseUsingPipe option

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

Looks like this part of the code should not have been used anymore since 2 years 😅 (6dc897931b)

Commits
-------

a841496 [Form] Remove DateTimeToStringTransformer $parseUsingPipe option
2017-05-25 15:24:59 +02:00
Roland Franssen
56892819e3 [DI] Avoid private call to Container::has() 2017-05-25 14:59:08 +02:00
Ryan Weaver
40f60ec60d Fixing missing abstract attribute in XmlDumper
Caused mis-reporting of abstract key (always no) in debug:container
2017-05-25 08:56:45 -04:00
Maxime Steinhausser
a841496238 [Form] Remove DateTimeToStringTransformer $parseUsingPipe option 2017-05-25 12:07:32 +02:00
Roland Franssen
b8c68da010 [DI] Deprecate XML services without ID 2017-05-25 11:24:58 +02:00
Nicolas Grekas
a6d173cf9d minor #22891 [travis] Fix 3/4 cross tests (nicolas-grekas)
This PR was merged into the 3.4 branch.

Discussion
----------

[travis] Fix 3/4 cross tests

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

I just realized that using 7.0 to run deps=high test prevents loading 4.0 versions of deps.

Commits
-------

6311be7 [travis] Fix 3/4 cross tests
2017-05-25 07:55:04 +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
2642e725da Merge branch '3.2' into 3.3
* 3.2:
  [CACHE] fix README
2017-05-25 07:53:23 +02:00
Nicolas Grekas
20f52f4f56 feature #22892 [ProxyManager] Add FC layer (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[ProxyManager] Add FC layer

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

This makes PRoxyDumper compatible with DumperInterface v4.0.
Technically, this is a BC break, but since I really don't expect anyone to extend ProxyDumper, I think we should do it - on 3.3 to close the gap as early as possible.

Commits
-------

4aeb6d8 [ProxyManager] Add FC layer
2017-05-25 07:52:28 +02:00
adev
3e6643bd90 [FrameworkBundle][Console] Fix the override of a command registered by the kernel
Fix #18558
2017-05-24 23:07:05 +02:00
Christian Flothmann
ae52fe6dab [Yaml] parse PHP constants in mapping keys 2017-05-24 21:40:35 +02:00
Nicolas Grekas
b0b7a36354 minor #22897 [CACHE] fix README (IndraGunawan)
This PR was merged into the 3.2 branch.

Discussion
----------

[CACHE] fix README

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

Add Resources section to Cache component readme

Commits
-------

c224ad7 [CACHE] fix README
2017-05-24 20:50:14 +02:00
Indra Gunawan
c224ad7770 [CACHE] fix README 2017-05-25 00:25:35 +07:00
Nicolas Grekas
c9da3d9233 Merge branch '3.2' into 3.3
* 3.2:
  [Cache] Fix phpunit.xml.dist
2017-05-24 18:53:35 +02:00
Nicolas Grekas
3ace3a9987 minor #22893 [Cache] Fix phpunit.xml.dist (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[Cache] Fix phpunit.xml.dist

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

Commits
-------

38a768e [Cache] Fix phpunit.xml.dist
2017-05-24 18:52:48 +02:00
Nicolas Grekas
38a768e3cc [Cache] Fix phpunit.xml.dist 2017-05-24 18:45:53 +02:00
Nicolas Grekas
6311be7157 [travis] Fix 3/4 cross tests 2017-05-24 18:15:01 +02:00
Nicolas Grekas
4aeb6d8749 [ProxyManager] Add FC layer 2017-05-24 18:13:59 +02:00
Nicolas Grekas
9a081d83c4 Merge branch '3.3' into 3.4
* 3.3:
  [DI] Check privates before aliases consistently
  [Yaml] Add missing deprecation annotation
  [DI] Check for privates before shared services
2017-05-24 16:44:14 +02:00
Nicolas Grekas
b494106e2f Merge branch '3.2' into 3.3
* 3.2:
  [DI] Check privates before aliases consistently
2017-05-24 16:39:04 +02:00
Nicolas Grekas
1d9b1af4a3 [DI] Check privates before aliases consistently 2017-05-24 16:36:51 +02:00
Nicolas Grekas
d7981e5838 Merge branch '3.2' into 3.3
* 3.2:
  [Yaml] Add missing deprecation annotation
  [DI] Check for privates before shared services
2017-05-24 16:31:45 +02:00
Fabien Potencier
69583b2403 bug #22866 [DI] Check for privates before shared services (ro0NL)
This PR was merged into the 3.2 branch.

Discussion
----------

[DI] Check for privates before shared services

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

cc @stof

Commits
-------

4f683a9a5b [DI] Check for privates before shared services
2017-05-24 16:25:02 +02:00
Nicolas Grekas
e2689d42fc Merge branch '3.3' into 3.4
* 3.3:
  [DI] prepare for signature change in 4.0
  [DI] Add missing deprecation on Extension::getClassesToCompile
  [Routing] remove an unused routing fixture
  [Yaml] fix multiline block handling
  [WebProfilerBundle] Fix sub-requests display in time profiler panel
  [FrameworkBundle] Handle project dir in cache:clear command
  [WebServerBundle] Mark ServerCommand as internal
  [DI] Fix autowire error for inlined services
  Close PHP code in phpt file
  [Profiler][VarDumper] Fix searchbar css when in toolbar
  Prevent auto-registration of UserPasswordEncoderCommand
  [Process] Fixed incorrectly escaping arguments on Windows when inheritEnvironmentVariables is set to false
  avoid double blanks while rendering form attributes
  use getProjectDir() when possible
  [PhpUnitBridge] add a changelog file
  [FrameworkBundle][Validator] Deprecate passing validator instances/aliases over using the service locator
2017-05-24 13:37:21 +02:00
Nicolas Grekas
feaf5c987e Merge branch '3.2' into 3.3
* 3.2:
  [Routing] remove an unused routing fixture
  [WebProfilerBundle] Fix sub-requests display in time profiler panel
  [PhpUnitBridge] add a changelog file
2017-05-24 13:35:23 +02:00
Nicolas Grekas
667efd251e minor #22818 [DependencyInjection] prepare for signature change in 4.0 (xabbuh)
This PR was submitted for the 3.4 branch but it was merged into the 3.3 branch instead (closes #22818).

Discussion
----------

[DependencyInjection] prepare for signature change in 4.0

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

see failing tests in #22785

Commits
-------

c4b6e20 [DI] prepare for signature change in 4.0
2017-05-24 13:33:24 +02:00
Christian Flothmann
c4b6e2014c [DI] prepare for signature change in 4.0 2017-05-24 13:31:33 +02:00
Nicolas Grekas
879c9129b7 feature #22884 [DI] Add missing deprecation on Extension::getClassesToCompile (nicolas-grekas)
This PR was merged into the 3.3 branch.

Discussion
----------

[DI] Add missing deprecation on Extension::getClassesToCompile

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

Already dropped on master

Commits
-------

95fb929 [DI] Add missing deprecation on Extension::getClassesToCompile
2017-05-24 12:51:20 +02:00
Christian Flothmann
cf458fa871 minor #22883 [Yaml] Add missing deprecation annotation (nicolas-grekas)
This PR was merged into the 3.2 branch.

Discussion
----------

[Yaml] Add missing deprecation annotation

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

Commits
-------

c67dd38 [Yaml] Add missing deprecation annotation
2017-05-24 11:51:02 +02:00