All notable changes of the PHPUnit 9.6 release series are documented in this file using the Keep a CHANGELOG principles.
9.6.21 - 2024-09-19
- #5956: Deprecation of the
E_STRICT
constant in PHP 8.4 - Removed
.phpstorm.meta.php
file as methods such asTestCase::createStub()
use generics / template types for their return types and PhpStorm, for example, uses that information
9.6.20 - 2024-07-10
- Updated dependencies (so that users that install using Composer's
--prefer-lowest
CLI option also get recent versions)
9.6.19 - 2024-04-05
- The namespaces of dependencies are now prefixed with
PHPUnitPHAR
instead of justPHPUnit
for the PHAR distribution of PHPUnit
9.6.18 - 2024-03-21
- #5763: Release nullable type changes for PHPUnit 9.6
9.6.17 - 2024-02-23
- Improve output of
--check-version
CLI option - Improve description of
--check-version
CLI option - Show help for
--manifest
,--sbom
, and--composer-lock
when the PHAR is used
- #5712: Update dependencies for PHAR distribution of PHPUnit 9.6
9.6.16 - 2024-01-19
- Make PHAR build reproducible (the only remaining differences were in the timestamps for the files in the PHAR)
- #5516: Assertions that use the
LogicalNot
constraint (assertNotEquals()
,assertStringNotContainsString()
, ...) can generate confusing failure messages - #5666:
--no-extensions
CLI option does not work - #5673: Confusing error message when migration of a configuration is requested that does not need to be migrated
9.6.15 - 2023-12-01
- #5596:
PHPUnit\Framework\TestCase
has@internal
annotation in PHAR
9.6.14 - 2023-12-01
- #5577:
--composer-lock
CLI option for PHAR binary that displays thecomposer.lock
used to build the PHAR
9.6.13 - 2023-09-19
- The child processes used for process isolation now use temporary files to communicate their result to the parent process
9.6.12 - 2023-09-12
- #5508: Generate code coverage report in PHP format as first in list to avoid serializing cache data
9.6.11 - 2023-08-19
- #5478:
assertObjectHasProperty()
andassertObjectNotHasProperty()
9.6.10 - 2023-07-10
- #5419: Allow empty
<extensions>
element in XML configuration
9.6.9 - 2023-06-11
- #5405: XML configuration migration does not migrate
whitelist/file
elements - Always use
X.Y.Z
version number (and not justX.Y
) of PHPUnit's version when checking whether a PHAR-distributed extension is compatible
9.6.8 - 2023-05-11
- #5345: No stack trace shown for previous exceptions during bootstrap
9.6.7 - 2023-04-14
- Tests that have
@doesNotPerformAssertions
do not contribute to code coverage
9.6.6 - 2023-03-27
- #5270:
GlobalState::getIniSettingsAsString()
generates code that triggers warnings
9.6.5 - 2023-03-09
- Backported the HTML and CSS improvements made to the
--testdox-html
from PHPUnit 10
- #5205: Wrong default value for optional parameter of
PHPUnit\Util\Test::parseTestMethodAnnotations()
causesReflectionException
9.6.4 - 2023-02-27
- #5186: SBOM does not validate
9.6.3 - 2023-02-04
- #5164:
markTestSkipped()
not handled correctly when called in "before first test" method
9.6.2 - 2023-02-04
- #4618: Support for generators in
assertCount()
etc. is not marked as deprecated in PHPUnit 9.6
9.6.1 - 2023-02-03
- #5073:
--no-extensions
CLI option only prevents extension PHARs from being loaded - #5160: Deprecate
assertClassHasAttribute()
,assertClassNotHasAttribute()
,assertClassHasStaticAttribute()
,assertClassNotHasStaticAttribute()
,assertObjectHasAttribute()
,assertObjectNotHasAttribute()
,classHasAttribute()
,classHasStaticAttribute()
, andobjectHasAttribute()
9.6.0 - 2023-02-03
- #5062: Deprecate
expectDeprecation()
,expectDeprecationMessage()
,expectDeprecationMessageMatches()
,expectError()
,expectErrorMessage()
,expectErrorMessageMatches()
,expectNotice()
,expectNoticeMessage()
,expectNoticeMessageMatches()
,expectWarning()
,expectWarningMessage()
, andexpectWarningMessageMatches()
- #5063: Deprecate
withConsecutive()
- #5064: Deprecate
PHPUnit\Framework\TestCase::getMockClass()
- #5132: Deprecate
Test
suffix for abstract test case classes