-
-
Notifications
You must be signed in to change notification settings - Fork 16
Support Symfony 8.0 #47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughUpdated Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| "symfony/console": "^5.3 || ^6.0 || ^7.0 || ^8.0", | ||
| "symfony/http-client": "^4.4.51 || ^5.4.49 || ^6.4.17 || ^7.2 || ^8.0", | ||
| "symfony/yaml": "^5.4.49 || ^6.4.17 || ^7.2 || ^8.0" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🌐 Web query:
Symfony 8.0 minimum PHP version requirement
💡 Result:
Symfony 8.0 requires PHP 8.4.0 or higher. [1][2]
Sources:
[1] Symfony 8.0 Release (symfony.com/releases/8.0).
[2] Symfony 8 overview (symfony.com/8).
🌐 Web query:
Symfony 8.0 PHP compatibility matrix supported versions
💡 Result:
Symfony 8.0 requires PHP 8.4.0 or higher — i.e. PHP >= 8.4 (any later PHP releases are supported so long as they meet that minimum). [1][2]
Sources:
- Symfony Releases (8.0): Symfony 8.0 — Requires PHP 8.4.0 or higher. [1]
- Symfony 8 product page / release notes — Requires PHP 8.4 or higher. [2]
Update PHP constraint to support Symfony 8.0 or remove Symfony 8.0 support.
Symfony 8.0 requires PHP 8.4 or higher, but this package declares "php": ">=8.1" (line 32). This creates a compatibility gap—users on PHP 8.1–8.3 can install the package with Symfony 8.0 but will encounter runtime failures.
To properly support Symfony 8.0, either update the PHP minimum version constraint to >=8.4:
- "php": ">=8.1",
+ "php": ">=8.4",Or remove the Symfony 8.0 constraint if you want to maintain support for PHP 8.1–8.3:
- "symfony/console": "^5.3 || ^6.0 || ^7.0 || ^8.0",
- "symfony/http-client": "^4.4.51 || ^5.4.49 || ^6.4.17 || ^7.2 || ^8.0",
- "symfony/yaml": "^5.4.49 || ^6.4.17 || ^7.2 || ^8.0"
+ "symfony/console": "^5.3 || ^6.0 || ^7.0",
+ "symfony/http-client": "^4.4.51 || ^5.4.49 || ^6.4.17 || ^7.2",
+ "symfony/yaml": "^5.4.49 || ^6.4.17 || ^7.2"Committable suggestion skipped: line range outside the PR's diff.
🤖 Prompt for AI Agents
In composer.json around lines 32 and 37-39, the package allows PHP ">=8.1" but
lists Symfony 8.0 in the symfony/* constraints (lines 37-39), creating a
compatibility gap because Symfony 8.0 requires PHP >=8.4; fix by either updating
the PHP platform constraint to ">=8.4" (adjust line 32) to legitimately support
Symfony 8.0, or remove the "|| ^8.0" alternatives from the symfony/console,
symfony/http-client and symfony/yaml constraints (lines 37-39) to keep PHP >=8.1
support without claiming Symfony 8 compatibility.
|
Hi. Have you tested this package with Symfony 8? Lines 71 to 74 in a51ff87
BTW you might prefer using the DLoad package for loading binaries. |
|
Oh, Im sorry. I missed that. I've updated the PR. (And tested it now)
I hav enot see that repo, I see you created it a few years ago. I'll give it a try. Thank you. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
bin/rr (1)
71-82: TheaddCommand()approach is correct for Symfony 8.0.The code properly handles the API transition:
Application::add()was deprecated in Symfony 7.4 and removed in Symfony 8.0, replaced byApplication::addCommand(). Themethod_exists()check correctly ensures compatibility across versions. The comment "For Symfony 7.3 and lower" is accurate.Consider refactoring to eliminate code duplication.
Both branches instantiate the same four commands. You can simplify by extracting the method selection:
$commands = [ new GetBinaryCommand(), new VersionsCommand(), new DownloadProtocBinaryCommand(), new MakeConfigCommand(), ]; $method = method_exists($app, 'addCommand') ? 'addCommand' : 'add'; foreach ($commands as $command) { $app->$method($command); }
I verified the change logs, I could not find anything that could affect us.
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.