Repository navigation
Issue/596 Move symfony/console, var-dumper and var-exporter to the 6.4 LTS line - #603
Conversation
…o the 6.4 LTS line PHP 8.1 is the minimum, so the 6.4 LTS line can be used. Symfony 6.4 types getHelper() as HelperInterface, which has no ask(), so CliCommand::confirm() says that the question helper is a QuestionHelper. symfony/var-dumper stays: nothing in the framework imports it, but applications may call its dump() and dd().
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Closes #596. Part of #595. The changelog entry is written in a final pull request, after the sub-issues.
What changed
composer.jsonrequiressymfony/console,symfony/var-dumperandsymfony/var-exporterat^6.4instead of^5.4(^5.2for var-exporter). The update also dropssymfony/polyfill-php73, which is no longer needed.CliCommand::confirm()says that thequestionhelper is aQuestionHelper. Symfony 6.4 typesgetHelper()as the generalHelperInterface, which has noask(), so PHPStan could no longer see the method. Nothing changes at runtime.Why
The minimum PHP version is 8.1 since #600, and Symfony 6.4 needs PHP 8.1. The other Symfony components in the dependency tree (
event-dispatcher,filesystem,finder,process,yamland others) are already on 6.4, while these three stayed on the 5.4 line only because of our constraints.It also unblocks
psr/log3 (#599):symfony/console5.4 declares a conflict with it.Breaking changes
CliCommandalready declaredconfigure(): voidandexecute(): int, and no other Symfony method is overridden. An application with its own subclass of a Symfony class could be affected by Symfony 6's stricter return types.Testing
CliCommand::confirm()and the full console boot and run, and they pass on Symfony 6.4.masterbefore the update.composer auditreports no security advisories.Notes for reviewers
symfony/var-dumperis required but nothing in the framework imports it. It stays, now on 6.4, because applications may call its globaldump()anddd(). Removing it would be a breaking change and belongs to a separate decision.symfony/processandsymfony/yamlto^5.4and still allows PHP 8.0. It needs its own update for PHP 8.1.Summary by CodeRabbit
Chores
Bug Fixes