This PR was merged into the 2.6 branch.
Discussion
----------
[2.6][EventDispatcher] make listeners removable from an executed listener
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #13972
| License | MIT
| Doc PR |
Commits
-------
f36803e [EventDispatcher] make listeners removable from an executed listener
This PR was squashed before being merged into the 2.7 branch (closes#14366).
Discussion
----------
[HttpFoundation] remove getExtension method
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
Since the minimum PHP version in 2.7 is 5.3.9 we can delete the `getExtension` method and use the real `\SplFileInfo::getExtension()`
Commits
-------
55ecf3b [HttpFoundation] remove getExtension method
This PR was merged into the 2.7 branch.
Discussion
----------
[Debug] Map PHP errors to LogLevel::CRITICAL
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | -
| License | MIT
| Doc PR | -
See https://github.com/Seldaek/monolog#log-levels for reference.
This is #14294 on 2.7 (not 2.6)
Commits
-------
1dcfbdd [Debug] Map PHP errors to LogLevel::CRITICAL
This PR was squashed before being merged into the 2.3 branch (closes#14325).
Discussion
----------
[Routing][DependencyInjection] Support .yaml extension in YAML loaders
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14319
| License | MIT
| Doc PR | -
YAML [FAQ](http://www.yaml.org/faq.html) states that .yaml file extension should be used whenever possible. I tweaked YamlFileLoader supports() method in Symfony Routing component to accept both .yml and .yaml and added some asserts in tests for that behavior.
This PR replaces #14319 as it was based on 2.7. BTW Is there a way to "rebase" PR branch without redoing all the work?
Commits
-------
dd5a811 [Routing][DependencyInjection] Support .yaml extension in YAML loaders
This PR was merged into the 2.3 branch.
Discussion
----------
[Translation][fixed test] refresh cache when resources are no longer fresh.
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Fixed tickets | #14279
| Tests pass? | yes
| License | MIT
Commits
-------
04b8e4e [Translation][fixed test] refresh cache when resources are no longer fresh.
This PR was merged into the 2.6 branch.
Discussion
----------
[WebProfilerBundle] Fix resiliency to exceptions thrown by the url generator
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14111, #14337, #14342 in conjunction with #14345
| License | MIT
| Doc PR | -
Commits
-------
92e33e4 [WebProfilerBundle] Fix resiliency to exceptions thrown by the url generator
This PR was merged into the 2.7 branch.
Discussion
----------
[Finder] Removed duplicated toRegex() code
This patch removes duplicated `toRegex()` code by using the already existing `Glob` class. As this class wasn't unit-tested to begin with, this duplication also makes sure this class is tested properly.
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14075
| License | MIT
Commits
-------
6150c3a Removed duplicated toRegex() code
This PR was merged into the 2.6 branch.
Discussion
----------
[FrameworkBundle] improve usage of Table helper
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets |
| License | MIT
| Doc PR |
Use the `Table` helper if present in favor of the deprecated
`TableHelper` class.
Commits
-------
71d84e6 [FrameworkBundle] improve usage of Table helper
This PR was squashed before being merged into the 2.3 branch (closes#14231).
Discussion
----------
[DependencyInjection] Show better error when the Yaml component is not installed
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
As the Yaml component is a suggested dependency, if someone try to use the `YamlFileLoader` or the `YamlDumper` without the component will get an ugly message:
```
PHP Fatal error: Class 'Symfony\Component\Yaml\Dumper' not found in xxxx
```
With this PR the error will be an exception with the message: `Unable to dump the container as the Symfony Yaml Component is not installed.` for `YamlDumper` and `Unable to load YAML files service definitions as the Symfony Yaml Component is not installed.'` for `YamlFileLoader`
Commits
-------
870a299 [DependencyInjection] Show better error when the Yaml component is not installed
This PR was squashed before being merged into the 2.3 branch (closes#14206).
Discussion
----------
[2.3] SCA for Components - reference mismatches
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Static Code Analysis with Php Inspections (EA Extended), no functional changes:
- worked out some of reference mismatches
Commits
-------
f732659 [2.3] SCA for Components - reference mismatches
This PR was squashed before being merged into the 2.3 branch (closes#14097).
Discussion
----------
[2.3] Static Code Analysis for Components
| Q | A
| ------------- | ---
| Bug fix? | no
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | n/a
| License | MIT
| Doc PR | n/a
Static Code Analysis with Php Inspections (EA Extended), no functional changes:
- array_keys/array_values usage as foreach array
- foreach value by reference - added unsets to keep scope clear
- strstr usage as strpos fixed
- array_push miss-use resolved
Commits
-------
78cc93c [2.3] Static Code Analysis for Components
This PR was merged into the 2.7 branch.
Discussion
----------
[Translation] Revert inlining fallback catalogues as it might cause inconsistent results when a cache is used
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14315
| License | MIT
| Doc PR | n/a
The results from `getCatalogue()` are inconsistent when we're in production *and* a cache comes into play.
This is due to the changes in 6eb5e7395c, where the fallback catalogues will be *merged* into the primary catalogue when it is written to the cache.
Strictly speaking, this is a BC break because it behaved differently before.
I am not sure what the relevance of this might be in practice.
However, it may cause headaches because
* The result changes only in the second+ try (when the cache is warm); a priori you cannot tell whether you're going to see this
* The catalogue is clearly not what the loader provided
* You have no chance of telling whether the message was originally available in the catalogue or not
* Generally, for every message you retrieve from the catalogue, you have no way of telling which locale it actually comes from (it need not be from the catalogue's locale, and the catalogue does not provide fallback catalogues either)
Regarding the last point, you usually don't care when using the `Translator`. Its purpose is to get the "best" translation available. However, when you bother to explicitly retrieve the catalogue, chances are your intentions are different.
Commits
-------
12a183a Revert inlining the fallback messages in production that was added in 6eb5e7395c
This PR was squashed before being merged into the 2.6 branch (closes#14129).
Discussion
----------
[FrameworkBundle] Fixed server:start --router relative path issue #14124
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #14124
| License | MIT
| Doc PR | -
This ensures that a relative path can be used to specify the router script, and that if the router script cannot be found an error is reported and the command fails.
The file path for the router script is now determined and checked prior to the child process being forked, which seems cleaner. The same change could be made in ServerRunCommand.php, or possibly in the ServerCommand base class; to keep the scope small, though, this wasn't done as part of this bug fix.
Commits
-------
0c1b9ba [FrameworkBundle] Fixed server:start --router relative path issue #14124