PHPUnit has been successfully upgraded from version 10.x/11.x to 12.x series (currently supporting ^11.0||^12.0).
- PHPUnit: Upgraded to
^11.0||^12.0 - PHP Requirement: Updated to
>=8.3(compatible with current PHP 8.3 environments) - php-gedcom: Downgraded to
^2.2.0(PHP 8.3 compatible version) - New Dependencies Added:
orchestra/testbench: ^10.7 (required by tests but was missing)mockery/mockery: ^1.6 (required by tests but was missing)
- phpunit.xml: Updated for PHPUnit 12 compatibility
- Added XML schema reference
- Updated to use
<source>instead of deprecated coverage filters - Added new PHPUnit 12 configuration options
- tests/TestCase.php: Fixed PHP syntax (removed leading blank lines before
<?php) - composer.json: Added
autoload-devsection for test namespace autoloading
Important: This project now requires PHP 8.3 or higher.
The project has been adjusted to work with PHP 8.3 environments by using liberu-genealogy/php-gedcom v2.2.0, which is fully compatible with PHP >=8.3.
Note: The php-gedcom v4.x series requires PHP 8.4 due to the use of property hooks, a PHP 8.4 feature. To maintain broader compatibility, this project uses the v2.2.0 series.
The project is now compatible with PHP 8.3 environments using php-gedcom v2.2.0.
Tests require dev dependencies to be installed. Due to the current configuration:
- PHPUnit and test dependencies need to be installed via composer
- Tests can be run once dependencies are available
All tests should work in PHP 8.3 environments with php-gedcom v2.2.0.
If you prefer to use PHP 8.4:
- Update php-gedcom to v4.x series for latest features
- Note that this will require PHP 8.4 minimum
To fully verify the upgrade:
- Install dev dependencies:
composer install - Run tests in a PHP 8.3 environment:
vendor/bin/phpunit - Ensure all tests pass
With PHPUnit 12:
- Modern assertions and test APIs
- Better error reporting
- Improved performance
- Active maintenance and security updates
- PHP 8.3+ compatibility