This PR was submitted for the 5.3 branch but it was merged into the 5.2 branch instead.
Discussion
----------
Avoid broken action URL in text notification mail
| Q | A
| ------------- | ---
| Branch? | 5.3 for bug fixes <!-- 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 | Fix #... <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License | MIT
| Doc PR | symfony/symfony-docs#... <!-- required for new features -->
Some mail clients make URLs clickable automatically which leads to broken URLs due to the appended ":" (colon)
Fix this by moving the action text before the action URL.
Commits
-------
6f6e8cf184 Avoid broken action URL in text notification mail
Some mail clients make URLs clickable automatically which leads to broken URLs due to the appended ":" (colon)
Fix this by moving the action text before the action URL.
This PR was merged into the 4.4 branch.
Discussion
----------
[VarDumper] Fix tests for PHP 8.1
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets | Part of #41552 <!-- 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
-------
f2b0822401 [VarDumper] Fix tests for PHP 8.1
This PR was merged into the 4.4 branch.
Discussion
----------
Pin masterminds/html5 to the master branch for PHP 8.1
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | N/A
| License | MIT
| Doc PR | N/A
Our tests on PHP 8.1 require the changes I've made in Masterminds/html5-php#207. Unfortunately, Composer will not pick a version with those changes because of the reasons described in Masterminds/html5-php#209. This PR adds a small workaround to the PHP 8.1 job which I'll happily revert as soon as Masterminds/html5-php#209 is resolved.
Commits
-------
9c69e77805 Pin masterminds/html5 to the master branch for PHP 8.1
This PR was merged into the 4.4 branch.
Discussion
----------
[FrameworkBundle] Replace var_export with VarExporter to use array short syntax in secrets list files
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | _N/A_
| License | MIT
| Doc PR | _N/A_
I've been using secrets a lot lately. Unfortunately, command exports the `{env}.list.php` with the "old" array syntax using `array()`, and writing `null` in uppercase.
This results in tedious situations with PHP CS Fixer (for example) rewriting the whole file to restore the modern syntax, each time we add a secret.
The Sodium vault currently uses `var_export`. I suggest using Symfony VarExporter, which does the work just fine. It adds a dependency to the FrameworkBundle, but it is a cleaner way to do it rather than using [this type of hack](https://www.php.net/manual/fr/function.var-export.php#124194) IMO.
Commits
-------
7f1c76212f [FrameworkBundle] Replace var_export with VarExporter to use array short syntax
* 4.4:
Reapply the change to allow to set the composer binary path
[DependencyInjection] throw proper exception when decorating a synthetic service
[WebLink] Sync type with parent interface
[WebLink] fix types on Link::withAttribute()
[ErrorHandler][DebugClassLoader] Do not check Phake mocks classes
This PR was merged into the 4.4 branch.
Discussion
----------
[DependencyInjection] throw proper exception when decorating a synthetic service
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#40784
| License | MIT
| Doc PR | -
Commits
-------
b763a29514 [DependencyInjection] throw proper exception when decorating a synthetic service
This PR was merged into the 4.4 branch.
Discussion
----------
[ErrorHandler] [DebugClassLoader] Do not check Phake mocks classes
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | [Phake Issue #300](https://github.com/phake/phake/issues/300)
| License | MIT
| Doc PR | -
Similar issue as https://github.com/symfony/symfony/pull/38373 but with Phake mocking framework
Commits
-------
9ed93df77a [ErrorHandler][DebugClassLoader] Do not check Phake mocks classes
This PR was merged into the 4.4 branch.
Discussion
----------
[PhpUnitBridge] fix handling the COMPOSER_BINARY env var when using simple-phpunit
| Q | A
| ------------- | ---
| Branch? | 4.4 and next
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#41774
| License | MIT
Since the renaming of the simple phpunit file (from the shebang to the php file) in #31364, it looks like the change made from #36566 was lost as it seems to have been merged after.
So this PR is an attempt to "restore" that functionnality, as it was considered a bug fix on 3.4 at the time.
poke `@nicolas`-grekas
Commits
-------
9589b52a78 Reapply the change to allow to set the composer binary path
This PR was merged into the 4.4 branch.
Discussion
----------
[WebLink] fix types on Link::withAttribute()
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | Fix#40126
| License | MIT
| Doc PR | -
Related to 10e52348a2
Commits
-------
29903e2c35 [WebLink] fix types on Link::withAttribute()
This PR was merged into the 4.4 branch.
Discussion
----------
[HttpFoundation] allow savePath of NativeFileSessionHandler to be null
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#41669
| License | MIT
By introducing the great Symfony\Component\HttpFoundation\Session\Storage\Handler\SessionHandlerFactory it is possible to configure session handler via DSN. But if I want to use the NativeFileSessionHandler to use configured session.save_path of php.ini, it doesn't work as expected because the $savePath constructor param is an empty string (and not NULL) by using "file://" as DSN.
Commits
-------
f8a082daeb [HttpFoundation] allow savePath of NativeFileSessionHandler to be null
This PR was submitted for the 5.4 branch but it was merged into the 5.2 branch instead.
Discussion
----------
[Notifier] Do not use static::class for final messages
| Q | A
| ------------- | ---
| Branch? | 5.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets | https://github.com/symfony/symfony/pull/39402#discussion_r638619033
| License | MIT
| Doc PR | N/A
Micro optimization
Commits
-------
69f6409731 Do not use static::class for final messages
This PR was merged into the 5.2 branch.
Discussion
----------
[Messenger] prevent reflection usages when classes do not exist
| Q | A
| ------------- | ---
| Branch? | 5.2
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#41748
| License | MIT
| Doc PR |
Commits
-------
017b4b341c prevent reflection usages when classes do not exist
This PR was merged into the 5.2 branch.
Discussion
----------
[Messenger] Remove TLS related options when not using TLS
| Q | A
| ------------- | ---
| Branch? | 5.2
| Bug fix? | not really
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
Remove TLS related options when not using TLS to connect to a broker.
The goal is to be able to use the same configuration for both `amqp://` & `amqps://` DSN.
Currently, when using a configuration containing a `cacert` key with a non-TLS DSN will throw a `AMQPConnectionException` (Socket error: could not connect to host.)
Configuration example:
```yaml
framework:
messenger:
transports:
async:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%'
options:
cacert: '%kernel.project_dir%/amqp_cacert.pem'
```
Commits
-------
37e602dd28 Remove TLS related options when not using TLS
This PR was merged into the 5.2 branch.
Discussion
----------
[FrameworkBundle] fix Could not find service "test.service_container"
| Q | A
| ------------- | ---
| Branch? | 5.2, needs to be ported to 5.3
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#41715
| License | MIT
Partial backport of https://github.com/symfony/symfony/pull/41530
Related to https://github.com/symfony/symfony/issues/41715 and https://github.com/symfony/symfony/pull/41530
When launching phpunit, got an error:
`LogicException: Could not find service "test.service_container". Try updating the "framework.test" config to "true".`
```
There was 1 error:
1) App\Symfony\Bundle\Tests\Integration\IntegrationTest::testServiceWiringWithConfiguration
LogicException: Could not find service "test.service_container". Try updating the "framework.test" config to "true".
/Projects/app/vendor/symfony/framework-bundle/Test/KernelTestCase.php:109
/Projects/app/tests/integration/IntegrationTest.php:23
Caused by
Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: You have requested a non-existent service "test.service_container". Did you mean this: "service_container"?
/Projects/app/vendor/symfony/dependency-injection/Container.php:280
/Projects/app/vendor/symfony/dependency-injection/Container.php:228
/Projects/app/vendor/symfony/framework-bundle/Test/KernelTestCase.php:107
/Projects/app/tests/integration/IntegrationTest.php:23
```
/cc `@xabbuh` `@nicolas`-grekas
Commits
-------
0748b5247e bug #41715: [FrameworkBundle] Partial backport of PR#41530
This PR was merged into the 4.4 branch.
Discussion
----------
[Validator] Fix some typos in Greek language
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| License | MIT
Fix some typos in Greek language
Commits
-------
8df2ea12d3 Fix some typos in Greek language
This PR was submitted for the 5.4 branch but it was squashed and merged into the 4.4 branch instead.
Discussion
----------
[Process] Fix incorrect parameter type
In the affected line of code, fclose() should ONLY be passed a parameter of type resource, but fopen() can return a value of type bool (if the fopen() fails). This results in a fatal error under PHP 8: Fatal error: Uncaught TypeError: fclose(): Argument #1 ($stream) must be of type resource, bool given.
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets |
| License | MIT
| Doc PR |
Commits
-------
d1579a2922 [Process] Fix incorrect parameter type