-
-
Couldn't load subscription status.
- Fork 8
Upgrade to PHP 8.5 and latest dependencies #90
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
- Remove PHP 8.2 support, add PHP 8.5 support - Update azjezz/psl to support both ^3.0 and ^4.0 - Add phpunit/phpunit ~12.3 - Update vimeo/psalm to ~6.13 - Add php-cs-fixer/shim ~3.88 - Add infection/infection ^0.31.7 - Remove .phive and tools directories - Update GitHub workflow files to use PHP 8.3, 8.4, 8.5 - Update composer scripts to use ./vendor/bin instead of tools/ - Convert all @dataProvider docblock annotations to PHP attributes - Make all data provider methods static (required for PHPUnit 12) - Update psalm.xml with findUnusedCode=false and ensureOverrideAttribute=false Changes made by GitHub Copilot CLI.
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.
Pull Request Overview
This PR upgrades the project to support PHP 8.5 and modernizes its test infrastructure by migrating from PHPUnit docblock annotations to PHP attributes and updating dependencies to their latest versions.
Key changes:
- Remove PHP 8.2 support and add PHP 8.5 support across the codebase
- Convert all
@dataProviderdocblock annotations to#[DataProvider()]PHP attributes - Make all data provider methods static (required for PHPUnit 12)
Reviewed Changes
Copilot reviewed 39 out of 42 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| composer.json | Updates PHP version constraints, dependencies, and composer scripts to use vendor/bin |
| psalm.xml | Adds configuration flags for findUnusedCode and ensureOverrideAttribute |
| .phive/phars.xml | Removes phive configuration file |
| .github/workflows/*.yaml | Updates CI workflows to test PHP 8.3, 8.4, 8.5 instead of 8.2, 8.3, 8.4 |
| tests/**/*Test.php | Converts @dataProvider annotations to #[DataProvider] attributes and makes provider methods static |
| src/Xml/Xslt/Configurator/security_preferences.php | Adds explicit use statements for XSL constants and updates docblock references |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
9b83e10 to
a1e7997
Compare
f4b2246 to
58900e9
Compare
58900e9 to
31f79f0
Compare
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.
Pull Request Overview
Copilot reviewed 68 out of 71 changed files in this pull request and generated 2 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| if (PHP_VERSION_ID >= 80300 && PHP_VERSION_ID < 80400) { | ||
| static::markTestSkipped('This test turns into a warning on PHP 8.3.'); |
Copilot
AI
Oct 15, 2025
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.
The PHP version check specifically targets PHP 8.3, but the PR removes PHP 8.2 support and now supports 8.3-8.5. This version-specific skip may need to be reconsidered or documented why it's still needed for PHP 8.3 specifically.
| if (PHP_VERSION_ID >= 80300 && PHP_VERSION_ID < 80400) { | |
| static::markTestSkipped('This test turns into a warning on PHP 8.3.'); | |
| if (PHP_VERSION_ID >= 80300 && PHP_VERSION_ID < 80600) { | |
| static::markTestSkipped('This test turns into a warning on PHP 8.3, 8.4, and 8.5.'); |
|
|
||
| disallow_libxml_false_returns( | ||
| $reader->setSchema($schemaFile), | ||
| @$reader->setSchema($schemaFile), |
Copilot
AI
Oct 15, 2025
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.
Using the @ error suppression operator can hide important errors and make debugging difficult. Consider using proper error handling instead of suppressing errors.
| @$reader->setSchema($schemaFile), | |
| $reader->setSchema($schemaFile), |
Changes made by GitHub Copilot CLI.
Summary