Repository navigation
v0.12.4 — works with PHPUnit 13.4
Works with PHPUnit 13.4
PHPUnit 13.4.0 changed the constructors of three configuration classes that phpunit-replay builds itself: XmlConfiguration\Loader, CliArguments\Builder and Configuration\Merger. Each now takes the event emitter. On 13.4 every command printed:
phpunit-replay: unexpected error (Too few arguments to function PHPUnit\TextUI\XmlConfiguration\Loader::__construct() …): degrading to a plain PHPUnit run
The suite still ran in full, so nothing was reported green that should not have been. But nothing was recorded or replayed either, which made every run a full run.
phpunit-replay now passes the emitter when the constructor asks for one, and nothing otherwise. PHPUnit 11.5, 12 and 13.0–13.4 are all supported.
If you updated to PHPUnit 13.4 and saw the "degrading to a plain PHPUnit run" line, upgrade to 0.12.4.
Known: parallel runs on PHPUnit 13.4 need a newer ParaTest
ParaTest 7.25.0 (the latest at the time of writing) installs alongside PHPUnit 13.4 but cannot drive it: it builds PhpHandler without the argument 13.4 now requires. This affects ParaTest with or without phpunit-replay. Until ParaTest ships support, a --parallel run on PHPUnit 13.4 now ends with one clear line instead of a bare fatal error:
phpunit-replay: ParaTest v7.25.0 cannot run on PHPUnit 13.4.0 (an upstream incompatibility, not a test failure). Run without --parallel, or pin phpunit/phpunit below 13.4.0 until ParaTest supports it.
Nothing is recorded or replayed from such a pass. Sequential runs work on 13.4.