All notable changes of the PHPUnit 12.3 release series are documented in this file using the Keep a CHANGELOG principles.
12.3.15 - 2025-09-28
- #6368:
failOnPhpunitWarning="false"has no effect
12.3.14 - 2025-09-24
- No changes;
phpunit.pharrebuilt with updated dependencies
12.3.13 - 2025-09-23
- No changes;
phpunit.pharrebuilt with updated dependencies
12.3.12 - 2025-09-21
- No changes;
phpunit.pharrebuilt with updated dependencies
12.3.11 - 2025-09-14
- #6366: Exclude
__sleep()and__wakeup()from test double code generation on PHP >= 8.5
12.3.10 - 2025-09-11
- #6353: Disable performance optimization for tests requiring Xdebug
- #6357: Also collect
E_DEPRECATEDissues when building the test suite
12.3.9 - 2025-09-11
- Do not use
__sleep()method (which will be deprecated in PHP 8.5)
12.3.8 - 2025-09-03
- #6340: Implicitly enabled display of deprecation details is not disabled when it should be
12.3.7 - 2025-08-28
#[IgnorePhpunitDeprecations]is now considered for test runner deprecations (where applicable)
12.3.6 - 2025-08-20
- Do not configure
report_memleakssetting (which will be deprecated in PHP 8.5) for PHPT processes
12.3.5 - 2025-08-16
- #6319: Detect premature end of PHPUnit's main PHP process
- #6321: Allow
error_reporting=E_ALLfor--check-php-configuration
- #5863: TestDox printer does not show previous exception
- #6102:
expectUserDeprecationMessage*()fails when test is run in separate process
12.3.4 - 2025-08-12
- #6308: Improve output of
--check-php-configuration - The version number for the test result cache file has been incremented to reflect that its structure for PHPUnit 12.3 is not compatible with its structure for PHPUnit 8.5 and PHPUnit 9.6
- #6197:
ini_set('error_log')sets filepath outsideopen_basedir - #6279: Deprecation triggered in data provider method affects all test methods using that data provider method
- #6281: Exceptions raised in after-test method are not reported for skipped tests
12.3.3 - 2025-08-11
- #6304: PHPUnit 11.5.29 hangs when a test runner deprecation is triggered and process isolation is used (this reverts "
#[IgnorePhpunitDeprecations]is now considered for test runner deprecations" from PHPUnit 12.3.1)
12.3.2 - 2025-08-10
- #6300: Emit warning when the name of a data provider method begins with
test - Do not use
SplObjectStoragemethods that will be deprecated in PHP 8.5
12.3.1 - 2025-08-09
- #6297:
--check-php-configurationCLI option for checking whether PHP is configured for testing
#[IgnorePhpunitDeprecations]is now considered for test runner deprecations (where applicable)
- #6160: Baseline file in a subdirectory contains absolute paths
- #6294: Silent failure of PHP fatal errors
- Errors due to invalid data provided using
#[TestWith]or#[TestWithJson]attributes are now properly reported - The
DataProviderMethodFinishedevent is now also emitted when the provided data set has an invalid key
12.3.0 - 2025-08-01
- #3795: Bootstrap scripts specific to test suites
- #6268:
#[IgnorePHPUnitWarnings]attribute for ignoring PHPUnit warnings #[TestDoxFormatter]and#[TestDoxFormatterExternal]attributes for configuring a custom TestDox formatter for tests that use data from data providersTestRunner\ChildProcessErroredeventConfiguration::includeTestSuites()andConfiguration::excludeTestSuites()