* 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
* 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
* 2.7:
use stable 1.0.x Composer versions
Fix typo in VarDumper README
[WebProfilerBunde] Give an absolute url in case the request occured from another domain
This PR was merged into the 2.3 branch.
Discussion
----------
use stable 1.0.x Composer versions
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
This will make our tests pass on AppVeyor again where we always used the latest Composer snapshot (this is 1.1.x-dev now which the `hirak/prestissimo` plugin is not compatible yet, but I opened hirak/prestissimo#79 to make that happen).
Commits
-------
10e2dfb use stable 1.0.x Composer versions
This PR was submitted for the master branch but it was merged into the 2.7 branch instead (closes#18616).
Discussion
----------
Fix typo in VarDumper README
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Commits
-------
36e65fc Fix typo in VarDumper README
This PR was merged into the 2.7 branch.
Discussion
----------
[2.7][WebProfilerBunde] Give an absolute url in case the request occured from another domain
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
This is related to #18413:
Using two symfony application ProjectA and MicroServiceB, if ProjectA issues XHR to MicroServiceB and both have the WebProfilerBundle enabled, then Ajax requests will be monitored in ProjectA. But - at the moment - it will try to look for profiles under ProjectA domain whereas data are stored on MicroServiceB domain.
This PR fixes this issue
Commits
-------
1a5d4ad [WebProfilerBunde] Give an absolute url in case the request occured from another domain
This PR was merged into the 2.8 branch.
Discussion
----------
[DI] Fix AutowirePass fatal error with classes that have non-existing parents
| Q | A
| ------------- | ---
| Branch? | 2.8
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18188
| License | MIT
| Doc PR | -
Commits
-------
202cc77 [DI] Fix AutowirePass fatal error with classes that have non-existing parents
1735b85 [DependencyInjection] Tests for AutowirePass with missing parent class
* 3.0:
[PropertyAccess] ->getValue() should be read-only
[VarDumper] Fix dumping type hints for non-existing parent classes
[Config] Fix XmlUtilsTest namespace
[Console] [TableHelper] make it work with SymfonyStyle.
Remove dead code
[FrameworkBundle] Better output for user in ContainerDebugCommand
[Routing] add query param if value is different from default
* 2.8:
[PropertyAccess] ->getValue() should be read-only
[VarDumper] Fix dumping type hints for non-existing parent classes
[Config] Fix XmlUtilsTest namespace
[Console] [TableHelper] make it work with SymfonyStyle.
Remove dead code
[Routing] add query param if value is different from default
Conflicts:
src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
* 2.7:
[PropertyAccess] ->getValue() should be read-only
[VarDumper] Fix dumping type hints for non-existing parent classes
[Config] Fix XmlUtilsTest namespace
[Console] [TableHelper] make it work with SymfonyStyle.
Remove dead code
[Routing] add query param if value is different from default
Conflicts:
src/Symfony/Component/VarDumper/Tests/Caster/ReflectionCasterTest.php
* 2.3:
[PropertyAccess] ->getValue() should be read-only
[Config] Fix XmlUtilsTest namespace
[Routing] add query param if value is different from default
Conflicts:
src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
This PR was merged into the 3.0 branch.
Discussion
----------
[FrameworkBundle] Better output for user in ContainerDebugCommand
| Q | A
| ------------- | ---
| Branch? | 3.0
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Right now, the message `To search for a specific service, re-run this command with a search term. (e.g. debug:container log)` is displayed to the user whenever the command is being run. (Except when the search term is given).
But if a user runs e.g. `debug:container --parameters`. This message is out of scope since the user is looking for information about parameters, not services.
This PR will update the command to give better output to the user.
`debug:container`
Will keep current behaviour
`debug:container --parameters`
Will hint how to search for specific parameter
`debug:container --tags`
Will hint how to search for specific tag
Commits
-------
313d8b1 [FrameworkBundle] Better output for user in ContainerDebugCommand
This PR was merged into the 2.3 branch.
Discussion
----------
[PropertyAccess] ->getValue() should be read-only
| Q | A
| ------------- | ---
| Branch? | 2.3
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #18601
| License | MIT
| Doc PR | -
Commits
-------
fa68529 [PropertyAccess] ->getValue() should be read-only
* 3.0:
[DI] Fix internal caching in AutowirePass
[PropertyInfo] Remove useless return statement
[Console] use ANSI escape sequences in ProgressBar overwrite method
[HttpKernel] Fix wrong number of arguments in call of ExceptionListener::logException()
Replace iconv_*() uses by mb_*(), add mbstring polyfill when required
[DependencyInjection] Remove YAML check in CrossCheckTest
[Process] Consistently use getProcess() in tests
[LDAP] Free the search result after a search to free memory
[DependencyInjection] fix phpDoc
Conflicts:
src/Symfony/Component/Ldap/LdapClient.php
This PR was merged into the 2.7 branch.
Discussion
----------
[Console] [TableHelper] make it work with SymfonyStyle.
| Q | A
| ------------- | ---
| Branch? | 2.7
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | no
| Fixed tickets | #18573
| License | MIT
| Doc PR | ~
Commits
-------
43cc93c [Console] [TableHelper] make it work with SymfonyStyle.
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Serializer] fix parent class of AbstractNormalizer
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | https://github.com/symfony/symfony/pull/17545#discussion_r58012336
| License | MIT
| Doc PR |
We must maintain the parent class to not break BC.
Commits
-------
45b9ed9 fix parent class of AbstractNormalizer
This PR was merged into the 3.1-dev branch.
Discussion
----------
[Serializer] Integrate the PropertyInfo Component (recursive denormalization and hardening)
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #16143, #17193, #14844
| License | MIT
| Doc PR | todo
Integrates the PropertyInfo Component in order to:
* denormalize a graph of objects recursively (see tests)
* harden the hydratation logic
The hardening part is interesting. Considering the following example:
```php
class Foo
{
public function setDate(\DateTimeInterface $date)
{
}
}
// initialize $normalizer
$normalizer->denormalize(['date' => 1234], Foo::class);
```
Previously, a PHP error was thrown because the type passed to the setter (an int) doesn't match the one checked with the typehint. With the PropertyInfo integration, an `UnexpectedValueExcption` is throw instead.
It's especially interesting for web APIs dealing with JSON documents. For instance in API Platform, previously a 500 error was thrown, but thanks to this fix a 400 HTTP code with a descriptive error message will be returned. (/cc @csarrazi @mRoca @blazarecki, it's an alternative to https://github.com/dunglas/php-to-json-schema for protecting an API).
/cc @mihai-stancu
Commits
-------
5194482 [Serializer] Integrate the PropertyInfo Component
6b464b0 Recursive denormalize using PropertyInfo
This PR was merged into the 3.1-dev branch.
Discussion
----------
[FrameworkBundle] Fallback to default cache system in production for serializer
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
In the same idea as https://github.com/symfony/symfony/pull/18544, this PR proposes a default fallback to filesystem cache for the serializer if the APC cache is not enabled in production. In other words, if the following part of `config_prod.yml` file is not uncommented, the filesystem will be used:
``` yaml
#framework:
# serializer:
# cache: serializer.mapping.cache.doctrine.apc
```
Commits
-------
4f0b8be [FrameworkBundle] Fallback to default cache system in production for serializer
This PR was merged into the 3.1-dev branch.
Discussion
----------
[FrameworkBundle] update argument value resolver pass tests
| Q | A
| ------------- | ---
| Branch? | master
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Make sure to have at least one assertion per test.
Commits
-------
b8afa30 update argument value resolver pass tests
This PR was merged into the 3.1-dev branch.
Discussion
----------
[FrameworkBundle][Serializer] Fix APC cache service name
| Q | A
| ------------- | ---
| Branch? | master or 3.0 (not sure)
| Bug fix? | no
| New feature? | yes
| BC breaks? | no
| Deprecations? | yes
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
In the commit 008055659c, we introduced in the standard edition the usage of `serializer.mapping.cache.doctrine.apc` instead of `serializer.mapping.cache.apc` in `config_prod.yml` comments.
Earlier, we introduced the validator equivalent modification (`validator.mapping.cache.doctrine.apc` instead of `validator.mapping.cache.apc`) but while we adapted the validator configuration in the FrameworkBundle in https://github.com/symfony/symfony/pull/16822, we did not adapt the FrameworkBundle configuration for the serializer.
I tested the current master of symfony-standard and it's indeed failing:
```
[Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException]
The service "serializer" has a dependency on a non-existent service "serializer.mapping.cache.doctrine.apc".
```
This PR renames the serializer APCu cache service name to fix this issue. However, I'm not sure when the validator cache service modification was merged and released so I'm not sure how this PR should handle this. Is this a bug? Or is this a new feature and we should trigger a depreciation but keep the service `serializer.mapping.cache.apc` usable?
Commits
-------
88ef89c [FrameworkBundle][Serializer] Fix APC cache service name and deprecate old name
This PR was merged into the 2.7 branch.
Discussion
----------
[Serializer] Remove dead code
| 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 | none
The deleted lines are the exact equivalent of L249-251. It looks like this is due from a bad merged when the (de)normalization cache has been removed.
Commits
-------
31c530a Remove dead code