Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Development and Release Process
PHPUnit follows Semantic Versioning 2.0.0.
Classes annotated with
@internal are not considered part of PHPUnit's public API and are therefore not subject to the rules of Semantic Versioning.
A new stable release is released every two months:
- A new major version is released on the first Friday of February.
- A new minor version is released on the first Friday of April, June, August, October, and December.
Major Version of PHPUnit
The support for major version
X ends when major version
(X+1) is released.
Minor Version of PHPUnit
The support for minor version
X.Y ends when minor version
X.(Y+1) is released.
Version of PHP
A new major version drops support for versions of PHP that are no longer actively supported by the PHP project.
Git branches for versions of PHPUnit that are no longer maintained are deleted.
Deprecation and Removal of Features
Features are removed in three stages:
Stage 1: Soft Deprecation
In the first stage, a feature is documented as being deprecated. The deprecation will be documented, if applicable and possible, in the
ChangeLog, using a
@deprecated annotation in code, and in the documentation.
Stage 2: Deprecation
In the second stage, if applicable and possible, the code will be changed to emit a warning when the deprecated feature is used. As this warning constitutes a change in behaviour, it can only be introduced in a new major version.
Stage 3: Removal
In the third stage, the code will be changed to remove the deprecated feature. As this removal constitutes a change in behaviour, it can only be performed in a new major version.