This PR was merged into the 5.3-dev branch.
Discussion
----------
[Console] Added Invalid constant into Command Class
| Q | A
| ------------- | ---
| Branch? | 5.x
| 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 5.x.
-->
Regarding into this [link](https://www.gnu.org/software/bash/manual/html_node/Exit-Status.html#:~:text=A%20non%2Dzero%20exit%20status,N%20as%20the%20exit%20status), we have 3 exits status standard :
- 0 is for success
- 1 is for error
- 2 is for _indicate incorrect usage, generally invalid options or missing arguments_
I think if we use a constant into Command class, we need to implement invalid exit status too.
Commits
-------
449147bc17 Added Invalid constant into Command Class
* 5.2:
Fix test.
[PhpUnitBridge] Fix qualification of deprecations triggered by the debug class loader
Improve return phpdoc for Normalizer
Use a partial buffer in SymfonyStyle
Fix console closing tag
Fix typo in comment
[VarDumper] fix casting resources turned into objects on PHP 8
Removing AnonymousPassport
* 5.1:
Fix test.
[PhpUnitBridge] Fix qualification of deprecations triggered by the debug class loader
Improve return phpdoc for Normalizer
Use a partial buffer in SymfonyStyle
Fix console closing tag
Fix typo in comment
[VarDumper] fix casting resources turned into objects on PHP 8
* 4.4:
[PhpUnitBridge] Fix qualification of deprecations triggered by the debug class loader
Improve return phpdoc for Normalizer
Use a partial buffer in SymfonyStyle
Fix console closing tag
Fix typo in comment
[VarDumper] fix casting resources turned into objects on PHP 8
This PR was merged into the 4.4 branch.
Discussion
----------
[PhpUnitBridge] Fix qualification of deprecations triggered by the debug class loader
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | https://github.com/symfony/symfony/issues/36036
| License | MIT
| Doc PR | -
I tested it successfully against the two examples stof gave in the issue. However, I don't see how to write a working real test for this.
The solution I found is to add the missing checked file in the original files stack so when the type of the deprecation is computed instead of having "self" -> "self", we have "vendor" -> "self".
Commits
-------
dff539434e [PhpUnitBridge] Fix qualification of deprecations triggered by the debug class loader
This PR was merged into the 4.4 branch.
Discussion
----------
[Console] Use a partial buffer in SymfonyStyle
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix#39156
| License | MIT
| Doc PR | -
Symfony style needs to buffer output in order to get the last 2 chars in order to prepend Block.
By using a `BufferedOutput` symfony bufferize everything while it not needed.
This PR adds a new `TrimmedBufferOutput` that keep only the N last chars.
Commits
-------
18fca2984d Use a partial buffer in SymfonyStyle
This PR was merged into the 4.4 branch.
Discussion
----------
Improve return value for phpdoc of Normalizer
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | Phpdoc
| New feature? | no
| Deprecations? | no
| License | MIT
The inheritdoc return type is too large.
The return type type can be more precise for lot of Normalizer.
Commits
-------
f2713d6580 Improve return phpdoc for Normalizer
This PR was merged into the 4.4 branch.
Discussion
----------
[Console] Fix console closing tag
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
When using SymfonyStyle, in some cases, closing a tag, is called twice.
In the following code `<question>do you want <comment>something</>?</>` the first `</>` close both the `comment` and the `question` tags.
![Screenshot from 2020-11-25 01-21-06](https://user-images.githubusercontent.com/578547/100166475-191d9d80-2ebd-11eb-991a-6541210c479b.png)
The reason is, part of the content is sent in 2 Outputs (see #39160 for another issue), and both outputs share the same `$styleStack`.
This PR updates the `OutputFormatter::__clone` method to prevent sharing the same state.
Commits
-------
2834c279d7 Fix console closing tag
This PR was submitted for the 5.x branch but it was merged into the 4.4 branch instead.
Discussion
----------
Fix typo in comment
| Q | A
| ------------- | ---
| Branch? | 5.x <!-- 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 | - <!-- prefix each issue number with "Fix #", no need to create an issue if none exist, explain below instead -->
| License | MIT
| Doc PR | - <!-- required for new features -->
<!--
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 5.x.
-->
fixed spelling below.
* possibe -> possible
Commits
-------
ca93ae5b1a Fix typo in comment
This PR was merged into the 5.2 branch.
Discussion
----------
[Security] Removing Unused AnonymousPassport
| Q | A
| ------------- | ---
| Branch? | 5.2
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | none
| License | MIT
| Doc PR | not needed
This is not used - it's leftover from the security component authenticator changes. I double-checked with @wouterj.
Cheers!
Commits
-------
79571e0e77 Removing AnonymousPassport
* 5.2:
Bump Symfony version to 5.2.0
Update VERSION for 5.2.0-RC2
Update CHANGELOG for 5.2.0-RC2
Display debug info
[HttpFoundation] Typo on deprecation package name
[DoctrineBridge] drop binary variants of UID types
[HttpClient] don't fallback to HTTP/1.1 when HTTP/2 streams break
Default to user provider, if available, in password upgrader
fix lexing nested sequences/mappings
This PR was merged into the 5.1 branch.
Discussion
----------
[Cache] Fix CI because of Couchbase version
| Q | A
| ------------- | ---
| Branch? | 5.1
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
It looks likes the version 3.0 of the couchbase extension does not exposes the `\CouchbaseCluster` class anymore.
I didn't find documentaiton about the BC break, but their documentation changes
version 2.6 => https://docs.couchbase.com/php-sdk/2.6/managing-connections.html
version 3.0 => https://docs.couchbase.com/php-sdk/current/howtos/managing-connections.html
It wasn't reported before, because `shivammathur/setup-php` added the extension 3days ago https://github.com/shivammathur/setup-php/pull/337
Sounds like the adapter were never tested, because the extension where missing and phpunit skipped the tests.
Commits
-------
fcbf0bf76e Display debug info
This PR was merged into the 5.2 branch.
Discussion
----------
[HttpFoundation] Typo on deprecation package name
| Q | A
| ------------- | ---
| Branch? | 5.2
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets |
| License | MIT
| Doc PR |
Commits
-------
4c6f4c7b9c [HttpFoundation] Typo on deprecation package name
This PR was merged into the 5.3-dev branch.
Discussion
----------
[Messenger] Allow InMemoryTransport to serialize message
| Q | A
| ------------- | ---
| Branch? | 5.x
| Bug fix? | no
| New feature? | yes
| Deprecations? | no
| Tickets | Fix#38893
| License | MIT
| Doc PR | wip
This introduce a query parameter in dsn to enable serialization as @Nyholm has suggested in #38893
`in-memory://?serialize=true`
Commits
-------
46a8007afc [Messenger] Allow InMemoryTransport to serialize message
This PR was merged into the 5.2 branch.
Discussion
----------
[DoctrineBridge] drop binary variants of UID types
| Q | A
| ------------- | ---
| Branch? | 5.2
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | #39112
| License | MIT
| Doc PR | -
#39112 made me realize that when the DB engine doesn't have a native UUID/GUID type, there's no benefit to representing ULIDs as UUIDs.
This PR proposes to use the native GUID type for both UUIDs and ULIDs only when the DB engine provides such a type, and to use `BINARY(16)` when the DB engine doesn't have a native GUID type.
This leaves us in a situation where, whether the DB engine supports GUID natively or not, UUID and ULID are always stored in the most compact format.
This makes the "binary" variants useless.
MySQL 8 has [functions](https://mysqlserverteam.com/mysql-8-0-uuid-support/) to deal with binary GUID, and so does [SQLite](https://sqlite.org/src/file/ext/misc/uuid.c).
Commits
-------
bdfc20520e [DoctrineBridge] drop binary variants of UID types
This PR was merged into the 4.4 branch.
Discussion
----------
[HttpClient] don't fallback to HTTP/1.1 when HTTP/2 streams break
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | Fix https://github.com/composer/composer/issues/9481
| License | MIT
| Doc PR | -
With this change, I don't reproduce the failures that I describe in https://github.com/composer/composer/issues/9481 when running the script in #38690
Apparently curl has an issue when both h1.1 and h2 connections are open to the same host.
Instead of switching to HTTP/1.1 when retrying requests that failed because of an HTTP/2 stream error, I propose to close the http/2 connection when issuing a retry.
With this change, running the mirroring script of packagist works like a charm.
No need to investigate your mirrors @Seldaek, this was definitely a data corruption issue.
Commits
-------
0c92bc5a83 [HttpClient] don't fallback to HTTP/1.1 when HTTP/2 streams break
This PR was merged into the 5.2 branch.
Discussion
----------
[Security] Update password upgrader listener to work with the new UserBadge
| Q | A
| ------------- | ---
| Branch? | 5.2
| Bug fix? | yes
| New feature? | yes
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
While working on a new amazing `make:auth` maker, @jrushlow discovered that we forgot to update the `PasswordUpgradeBadge` with the 5.2 `UserBadge` changes (ref https://github.com/symfony/symfony/pull/37846).
This PR fixes it, by making the password upgrader optional and falling back to the user provider instead. Without these changes, each authenticator still needs to know the user repository/user provider in order to pass it to `PasswordUpgradeBadge`.
I'm sorry for catching this soo late in the release cycle. There is a BC break involved here, but it's (a) very unlikely to impact application code and (b) in an experimental class.
Commits
-------
e39e844606 Default to user provider, if available, in password upgrader
* 5.2:
do not depend on the actual time to fix a transient test
Run Redis Sentinel tests in GithubAction
Minor : Removed typo (extra "the" term)
Check if method inheritEnvironmentVariables exists
[PhpUnitBridge] Fix test fixture file name
* 5.1:
do not depend on the actual time to fix a transient test
Run Redis Sentinel tests in GithubAction
Minor : Removed typo (extra "the" term)
Check if method inheritEnvironmentVariables exists
[PhpUnitBridge] Fix test fixture file name
* 4.4:
do not depend on the actual time to fix a transient test
Run Redis Sentinel tests in GithubAction
Minor : Removed typo (extra "the" term)
Check if method inheritEnvironmentVariables exists
[PhpUnitBridge] Fix test fixture file name
This PR was merged into the 4.4 branch.
Discussion
----------
[HttpKernel] do not depend on the actual time to fix a transient test
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | no
| New feature? | no
| Deprecations? | no
| Tickets |
| License | MIT
| Doc PR |
Commits
-------
b7e5c7d67d do not depend on the actual time to fix a transient test
This PR was merged into the 4.4 branch.
Discussion
----------
[Cache] Run Redis Sentinel tests in GithubAction
| Q | A
| ------------- | ---
| Branch? | 4.4
| Bug fix? | yes
| New feature? | no
| Deprecations? | no
| Tickets | -
| License | MIT
| Doc PR | -
Add support for Sentinel tests in GHA
Commits
-------
bd84394dc5 Run Redis Sentinel tests in GithubAction