Skip to content

Conversation

@koriym
Copy link

@koriym koriym commented Nov 11, 2025

Updates the project to require PHP 8.2+ and PHPUnit 11.

Changes

PHP 8.2+

  • Update minimum PHP requirement to 8.2
  • Fix PHP 8.4 deprecation warnings with explicit nullable types (null|Type)
  • Modernize codebase with Rector (constructor property promotion, short array syntax, typed properties)

PHPUnit 11

  • Update test syntax and phpunit.xml.dist to PHPUnit 11 schema

CI

  • Add GitHub Actions workflow testing PHP 8.2, 8.3, 8.4, 8.5
  • Replace Travis CI

Breaking Change

Minimum PHP version is now 8.2.

- Fix PHP 8.4 deprecation warnings by explicitly marking nullable parameters with null| union type
- Update PHPUnit tests: replace assertInternalType() with assertIsArray(), use expectException() instead of @ExpectedException annotation
- Migrate phpunit.xml.dist to PHPUnit 11 schema (update filter/source, coverage, and logging configuration)
- Remove deprecated @Covers annotations from test methods
- Apply Rector refactoring: constructor property promotion, short array syntax, typed properties
- Update dependencies: require PHP ^8.2, PHPUnit ^11.5
- Test on PHP 8.2, 8.3, and 8.4
- Run PHPUnit tests on each version
- Cache Composer dependencies for faster builds
- Support manual workflow dispatch
@koriym koriym changed the title Modernize to PHP 8.2+ and PHPUnit 11 Update to PHP 8.2 and PHPUnit 11 Nov 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant