Closed
Conversation
Contributor
alexndlm
commented
Dec 26, 2025
| Q | A |
|---|---|
| Bug fix? | no |
| New feature? | yes |
| BC breaks? | yes |
| Deprecations? | no |
| Tests pass? | yes |
| Fixed tickets |
|
Code Review in Space: https://space.prod.v1.tools.eonx.com/p/support/reviews/91/timeline |
# Conflicts: # packages/EasyActivity/src/Common/Serializer/SymfonyActivitySubjectDataSerializer.php # packages/EasyApiPlatform/composer.json # packages/EasyApiPlatform/src/Common/Filter/AdvancedSearchFilter.php # packages/EasyApiToken/src/Common/Factory/ApiTokenDecoderFactory.php # packages/EasyDecision/composer.json # packages/EasyErrorHandler/composer.json # packages/EasyEventDispatcher/composer.json # packages/EasyHttpClient/bundle/CompilerPass/AbstractEasyHttpClientCompilerPass.php # packages/EasyHttpClient/composer.json # packages/EasyLogging/composer.json # packages/EasyRandom/composer.json # packages/EasyRandom/src/Generator/RandomStringGenerator.php # packages/EasyRequestId/composer.json # packages/EasySecurity/composer.json # packages/EasyServerless/composer.json # packages/EasyServerless/laravel/SqsHandlers/SqsHandler.php # packages/EasySwoole/composer.json # packages/EasyTemplatingBlock/composer.json # packages/EasyTest/composer.json # packages/EasyUtils/src/Common/Helper/CollectorHelper.php # packages/EasyUtils/tests/Unit/AbstractUnitTestCase.php # packages/EasyWebhook/composer.json # quality/composer.lock # quality/phpstan.latest.neon # quality/rector.php
There was a problem hiding this comment.
Pull request overview
This pull request upgrades the monorepo to require PHP 8.4, introducing breaking changes. The PR adopts PHP 8.4 features including typed constants, removal of redundant parentheses around new expressions, the \array_any() function, and migrates from PHPDoc to PHP attributes for deprecations.
Changes:
- Upgraded PHP version requirement from ^8.2 to ^8.4 across all packages
- Added typed constant declarations throughout the codebase
- Replaced foreach loops with
\array_any()for cleaner condition checking - Removed unnecessary parentheses around
newexpressions - Migrated @deprecated PHPDoc to #[Deprecated] attributes
- Updated Rector, PHPStan, and ECS configurations for PHP 8.4
- Added Vote parameter to Symfony voter methods for compatibility
- Updated GitHub workflows to use PHP 8.4
- Updated dependency versions (symfony/var-exporter to 8.0.0, monorepo-builder to 12.4.5)
Reviewed changes
Copilot reviewed 260 out of 263 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| composer.json | Updated PHP requirement to ^8.4 and dependency versions |
| quality/*.php | Added typed constants and updated test files with PHP 8.4 syntax |
| quality/rector.php | Configured for PHP 8.4 features with new rule skips |
| quality/phpstan.neon | Removed obsolete PHPStan ignores for bc* functions |
| quality/ecs.php | Updated code style configuration |
| packages/*/composer.json | Updated PHP requirement to ^8.4 in all packages |
| packages/*/src/** | Applied typed constants, \array_any(), and removed new parentheses |
| packages/*/tests/** | Updated test code with PHP 8.4 syntax |
| packages/EasySecurity/src/SymfonySecurity/Voter/* | Added Vote parameter for Symfony compatibility |
| .github/workflows/*.yml | Updated CI/CD to use PHP 8.4 |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
# Conflicts: # .github/workflows/split_packages.yml # .github/workflows/split_tests.yml # composer.json # packages/EasyActivity/composer.json # packages/EasyApiPlatform/composer.json # packages/EasyApiToken/composer.json # packages/EasyAsync/composer.json # packages/EasyBankFiles/composer.json # packages/EasyBatch/composer.json # packages/EasyBugsnag/composer.json # packages/EasyDecision/composer.json # packages/EasyDoctrine/composer.json # packages/EasyEncryption/composer.json # packages/EasyErrorHandler/composer.json # packages/EasyEventDispatcher/composer.json # packages/EasyHttpClient/composer.json # packages/EasyLock/composer.json # packages/EasyLogging/composer.json # packages/EasyNotification/composer.json # packages/EasyPagination/composer.json # packages/EasyPipeline/composer.json # packages/EasyRandom/composer.json # packages/EasyRepository/composer.json # packages/EasyRequestId/composer.json # packages/EasySchedule/composer.json # packages/EasySecurity/composer.json # packages/EasyServerless/composer.json # packages/EasyServerless/src/Aws/Console/Formatter/MonologJsonOutputMessageFormatter.php # packages/EasySwoole/composer.json # packages/EasyTemplatingBlock/composer.json # packages/EasyTest/composer.json # packages/EasyUtils/composer.json # packages/EasyWebhook/composer.json # quality/composer.lock # quality/rector.php
Contributor
Author
|
Already done in other PRs |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.