This PR was merged into the 3.4 branch.
Discussion
----------
[Debug] Skip a test that was meant for HHVM
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | #36872
| License | MIT
| Doc PR | N/A
This PR skips a test that fails on php 8. If I read the test correctly, it is meant to run on HHVM, so I assumed it's save to skip it if we're on PHP.
Commits
-------
bf62a4d622 [Debug] Skip a test that was meant for HHVM.
This PR was merged into the 3.4 branch.
Discussion
----------
[PhpUnitBridge] Adjust output parsing of CoverageListenerTrait for PHPUnit 9.3
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | #37637, #37564
| License | MIT
| Doc PR | N/A
This PR makes `CoverageListenerTrait` pass with PHPUnit 9.3. It contains a backport of #38054.
The problem that is addressed here is that a one of the fixture classes is now included in the output despite having a coverage of zero. The test now accepts both cases:
* The class is omitted from the output
* The class appears with 0.00% coverage.
Commits
-------
a3831dc0f2 [PhpUnitBridge] Adjust output parsing for PHPUnit 9.3.
99c98bd716 [PhpUnitBridge] CoverageListenerTrait update for PHPUnit 8.5/9.x
This PR was merged into the 3.4 branch.
Discussion
----------
[Intl] Skip test cases that produce a TypeError on php 8
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | #36872
| License | MIT
| Doc PR | N/A
On php 8, `NumberFormatter::setAttribute()` will throw a type error if the provided value is not of type `int|float`. This is why I'm skipping the corresponding tests for now. Alternatively, we could check for the PHP version in Symfony's implementation of that class and throw the `TypeError` as well, if we're on php 8. But since this is a breaking change, I'm was unsure if I sould go that way.
Commits
-------
7f1055b97c [Intl] Skip test cases that produce a TypeError on php 8.
This PR was merged into the 3.4 branch.
Discussion
----------
make return type correct
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | no
| License | MIT
| Doc PR | no
Since the real return type is `\ArrayIterator` AND array of `FormView` I've decided to change it. Also the other reason is that phpstan iks kind of failing because of this and I need to `assert` things in children of this class.
Commits
-------
32b5b9e1d7 make return type correct
This PR was merged into the 3.4 branch.
Discussion
----------
[Serializer] Fix variadic support when using type hints
| Q | A
| ------------- | ---
| Branch? | 3.4 <!-- see below -->
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | n/a <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License | MIT
| Doc PR | n/a
Commits
-------
3fffa96928 [Serializer] Fix variadic support when using type hints
This PR was merged into the 3.4 branch.
Discussion
----------
stop using the deprecated at() PHPUnit matcher
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37780
| License | MIT
| Doc PR |
Commits
-------
850389731c stop using the deprecated at() PHPUnit matcher
This PR was merged into the 3.4 branch.
Discussion
----------
add validator translation 99 for Italian language
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | none
| License | MIT
| Doc PR | not needed
This is a followup to PR #37730 for Italian language.
Commits
-------
ad4923f706 add validator translation 99 for Italian language
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
[Yaml] Fix for #36624; Allow PHP constant as first key in block
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#36624
| License | MIT
| Doc PR |
When using a PHP constant in the first key of a mapping the parser would throw an exception. However if you used a PHP constant in any other key but the first it was allowed. This fix allows PHP constant as the first key.
I've included a test for this parser error along with the fix.
Commits
-------
46f635c492 [Yaml] Fix for #36624; Allow PHP constant as first key in block
This PR was merged into the 3.4 branch.
Discussion
----------
[Form] fix mapping errors from unmapped forms
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#10519
| License | MIT
| Doc PR |
Commits
-------
235920a388 fix mapping errors from unmapped forms
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
Add Tagalog translations for validator messages 94, 95, 96 and 99
| Q | A
| ------------- | ---
| Branch? | 3.4 <!-- see below -->
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License | MIT
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.
Additionally (see https://symfony.com/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- Bug fixes must be submitted against the lowest maintained branch where they apply
(lowest branches are regularly merged to upper ones so they get the fixes too.)
- Features and deprecations must be submitted against branch master.
-->
I had a little pocket of free time and decided to add a few translations. I wasn't 100% sure about the most natural way to translate 97 and 98, hence why I left them out for now. I'll add them afterwards when I get more time to think about them.
Commits
-------
9d126e085e Add Tagalog translations for validator messages 94, 95, 96 and 99
This PR was merged into the 3.4 branch.
Discussion
----------
PHPUnit's assertContains() performs strict comparisons
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Part of #37564
| License | MIT
| Doc PR | N/A
In PHPUnit 9.3, `assertContains()` performs a strict comparison which causes a few test failures in our test suite. This PR should fix them.
Commits
-------
9f4dec59a4 PHPUnit's assertContains() performs strict comparisons now.
This PR was merged into the 3.4 branch.
Discussion
----------
[ClassLoader][Routing] Fix namespace parsing on php 8
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | N/A
| License | MIT
| Doc PR | N/A
The way namespace declarations are parsed has changed in php 8 (see php/php-src#5827). This PR should fix the corresponding issues in the ClassLoader and Routing components.
Note that Doctrine Annotations suffers from the same issue (doctrine/annotations#339). I had to run the Routing tests locally with doctrine/annotations#344 applied.
Commits
-------
3d293b298f [ClassLoader][Routing] Fix namespace parsing on php 8.
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
[Validator] Add missing translations for german and vietnamese
| Q | A
| ------------- | ---
| Branch? | 3.4 <!-- see below -->
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| License | MIT
<!--
Replace this notice by a short README for your feature/bugfix. This will help people
understand your PR and can be used as a start for the documentation.
Additionally (see https://symfony.com/releases):
- Always add tests and ensure they pass.
- Never break backward compatibility (see https://symfony.com/bc).
- Bug fixes must be submitted against the lowest maintained branch where they apply
(lowest branches are regularly merged to upper ones so they get the fixes too.)
- Features and deprecations must be submitted against branch master.
-->
Commits
-------
f4bd34a1a8 [Validator] Add missing translations for german and vietnamese
This PR was merged into the 3.4 branch.
Discussion
----------
[Console] Make sure we pass a numeric array of arguments to call_user_func_array()
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | N/A
| License | MIT
| Doc PR | N/A
On php 8, the unit tests fail with the following error:
```
ArgumentCountError: array_merge() does not accept unknown named parameters
```
This PR should fix the issue.
Commits
-------
67102c32e6 [Console] Make sure we pass a numeric array of arguments to call_user_func_array().
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
Modernized deprecated PHPUnit assertion calls
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Part of #37564
| License | MIT
| Doc PR | N/A
Some assertions have been renamed in PHPUnit 9. PhpUnitBridge should already have polyfills in place for those methods, so it should be save to use them.
Commits
-------
ab417f7040 Modernized deprecated PHPUnit assertion calls
This PR was merged into the 3.4 branch.
Discussion
----------
[Console] The message of "class not found" errors has changed in php 8
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | N/A
| License | MIT
| Doc PR | N/A
The error message that php emits if an unknown class is accessed has changed in php 8. Two tests were failing because of this. But since those tests weren't really about missing classes, I tried to find a more resilient way to implement them.
Commits
-------
8bd861bbc6 [Console] The message of "class not found" errors has changed in php 8.
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
[Serializer] Fix that it will never reach DOMNode
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| License | MIT
| Doc PR |
When providing the DOMNode object, the is_object check will return true. This way it will never reach the DOMNode check.
So i moved this check to above the is_object check.
Commits
-------
38787ac785 [Serializer] Fix that it will never reach DOMNode
This PR was merged into the 3.4 branch.
Discussion
----------
[Cache] fix saving no-expiry items with ArrayAdapter
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37667
| License | MIT
| Doc PR |
0 is a special value that means "infinity".
Commits
-------
bdec105a72 [Cache] Fix#37667
This PR was merged into the 3.4 branch.
Discussion
----------
[DoctrineBridge] Bump doctrine/data-fixtures
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | N/A
| License | MIT
| Doc PR | N/A
Discovered while working on #37639: DoctrineBridge is locked to an old an unmaintained branch of `doctrine/data-fixtures`. This is going to be a problem as soon as we want to support `doctrine/persistence` 2.
Commits
-------
4b611015d5 [DoctrineBridge] Bump doctrine/data-fixtures.
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
[FrameworkBundle] set default session.handler alias if handler_id is not provided
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37245
| License | MIT
| Doc PR |
Without a configured [`handler_id`](https://symfony.com/doc/current/session.html#configuration), the `session.handler` alias is not created, and somes services depend on this alias specialy.
Related to the reported issue above (affected version 4.4.9), the `ServiceHandlerInterface` is an alias of `session.handler`, when execute :
- `bin/console debug:container session.handler` : The alias is not defined, so the `ContainerDebugCommand` look for a service containing the `session.handler` as part of his name (ContainerDebugCommand::findServiceIdsContaining() is called and returns by default `session.handler.native_file`)
- `bin/console debug:container SessionHandlerInterface` : The service is defined as an alias of `session.handler`, when calling `ContainerBuilder::getDefinition('session.handler')` the exception occured as the alias is not defined.
# Implemented solution
Create a default `session.handler` when the param `handler_id` is not provided (I choosed `session.handler.native_file` rather than `NullSessionHandler`).
# Affected versions
From [`3.4`](https://github.com/symfony/framework-bundle/blob/3.4/DependencyInjection/FrameworkExtension.php#L879) to [`5.1`](https://github.com/symfony/framework-bundle/blob/5.1/DependencyInjection/FrameworkExtension.php#L955)
Commits
-------
46c8c3791b [FrameworkBundle] set default session.handler alias if handler_id is not provided
This PR was merged into the 3.4 branch.
Discussion
----------
Fix checks for phpunit releases on Composer 2
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37601
| License | MIT
| Doc PR | n/a
`simple-phpunit` has a core assumption that any version of PHPUnit without a stable release will only have one dev version returned by Composer. Per https://github.com/symfony/symfony/issues/37601, it's possible for Composer 2 to list **more than one dev version**. This breaks that assumption and therefore prevents the installation of 9.3.* ([which is needed for testing on PHP 8](https://github.com/sebastianbergmann/phpunit/pull/4374#issuecomment-657029594)).
The fix implemented here is to remove any versions containing `dev-` or `-dev` from the list of possible versions to see if any stable versions remain.
Commits
-------
2bb3f08fba Fix checks for phpunit releases on Composer 2 (resolves#37601)
This PR was merged into the 3.4 branch.
Discussion
----------
[Cache] Use the default expiry when saving (not when creating) items
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#37263
| License | MIT
| Doc PR |
This PR is for align expiration handling in ChainAdapter with ChainCache as proposed in #37263.
Commits
-------
49e9f3229c [Cache] Use the default expiry when saving (not when creating) items
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
[Form] Fix ChoiceType translation domain
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | yes
| New feature? | no
| Deprecations? |no
| Tickets | Fix #...
| License | MIT
| Doc PR | symfony/symfony-docs#...
When using
```
->add('foo', ChoiceType::class, [
'label' => 'label',
'translation_domain' => false,
'choices' => [
'choice.no' => false,
'choice.yes' => true,
],
'choice_translation_domain' => 'messages',
'expanded' => true,
'required' => false,
'placeholder' => false,
]);
```
I discovered that the choices was not translated.
Seems like it's because the subForm is using the `translation_domain` instead of the `choice_translation_domain`.
Commits
-------
2effda79ea [Form] Fix ChoiceType translation domain
This PR was merged into the 3.4 branch.
Discussion
----------
[Form] sync translations from master
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets |
| License | MIT
| Doc PR |
Commits
-------
acea9be6d3 sync translations from master
This PR was squashed before being merged into the 3.4 branch.
Discussion
----------
Add Tagalog translations for new form messages
| Q | A
| ------------- | ---
| Branch? | 3.4
| Bug fix? | no
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets |
| License | MIT
| Doc PR |
This PR adds Tagalog translations for the new form messages @xabbuh added in https://github.com/symfony/symfony/pull/37552.
~~As I'm not aware of any Filipinos that regularly review Symfony pull requests, I'm going to ask my mother to proof-read this first before I remove the "WIP" label from the title. :)~~
Commits
-------
1809b7c5eb Add Tagalog translations for new form messages