PackageTrack
Sign in Get early access

phpunit/php-code-coverage

Library that provides collection, processing, and rendering functionality for PHP code coverage information.

14.3.1 964M downloads/mo #48 most downloaded on composer sebastianbergmann/php-code-coverage

What this package is like to depend on

Last release 7 days ago

16 Aug 2026

Ships fairly regularly

a new release about every 2 weeks

Rarely documented

notes for 10 of 249 stable releases

Nothing withdrawn

no release was ever pulled

14 years old

249 releases · first in 2012

37 releases in the last 12 months

see the full history below

Release timeline

248 releases · Sep 2012 to Aug 2026
2013 2015 2017 2019 2021 2023 2025
Release Pre-release

Releases

latest 60 of 249
  1. 14.3.1 16 Aug 2026
    Release notes

    Changed

    • The test size filter of the HTML report now disables the buttons for test sizes that have no coverage data
    • The test size filter of the HTML report is no longer rendered when the coverage data has no test sizes at all
    Open source →
  2. 14.3.0 07 Aug 2026
    Release notes

    Added

    • #1140: Class-oriented HTML report
    • #1141: Improve visualization of branch coverage and path coverage in the HTML report
    • #1153: Filter HTML code coverage report by test size
    • #1210: Filesystem-based targeting
    • #1231: Identify dead code using static analysis
    • Record how often a test executed a line or traversed a branch or path (the <covered> elements of the XML report now have a count attribute; drivers that do not collect hit counts report 1)

    Changed

    • #1259: Degrade gracefully when a source file cannot be parsed
    • The HTML report no longer depends on Bootstrap and jQuery; its markup, stylesheet, and JavaScript have been rewritten
    • The headline coverage figures of a directory, file, namespace, or class are now shown above its coverage table instead of in a Total row
    • The dashboard shows the bubble chart and the CRAP index table side by side, for classes as well as for methods
    • The CSS custom properties that carry the configured colors were renamed from --phpunit-* to --coverage-*; custom CSS files that use these, or that use Bootstrap's --bs-* custom properties, need to be updated
    • SebastianBergmann\CodeCoverage\Report\Html\Colors::default() now uses #eef1f5 and #22272e for the breadcrumb colors instead of var(--bs-gray-200) and var(--bs-gray-800)
    • The file listing of a directory no longer links directly to the branch and path coverage views of a file; these are reachable through the tabs on the file's own page
    • The serialization format for .cov files was bumped from version 1 to version 2; files serialized with previous versions cannot be loaded or merged any more

    Fixed

    • #1258: Coverage of less than 100% can be displayed as 100.00% due to rounding
    Open source →
  3. 14.2.4 30 Jul 2026
    Release notes
    • Source files were parsed repeatedly instead of read from the static analysis result cache, which made runs with path coverage enabled appear to hang
    Open source →
  4. 14.2.3 06 Jul 2026
    Release notes

    Fixed

    • #1240: Dark-mode HTML report: Warning and Danger backgrounds are indistinguishable for colorblind users
    • #1244: Do not build code unit map when test has no coverage targets
    Open source →
  5. 14.2.2 08 Jun 2026
    Release notes

    Fixed

    • #1230: Short-form property hook bodies wrongly classified as executable
    Open source →
  6. 14.2.1 07 Jun 2026
    Release notes

    Added

    • RawCodeCoverageData::fromLineAndBranchCoverage()
    Open source →
  7. 14.2.0 05 Jun 2026
    Release notes

    Added

    • SebastianBergmann\CodeCoverage\Driver\Granularity enumeration with Line, LineAndBranch, and LineBranchAndPath cases
    • SebastianBergmann\CodeCoverage\Driver\Selector::driver(Filter, Granularity) for selecting a driver by required granularity
    • SebastianBergmann\CodeCoverage\NoSupportedDriverAvailableException thrown when no driver supports the requested granularity

    Changed

    • #1186: Merger::merge() now accepts any kind of iterable
    • Reduced overhead in static analysis
    • The HTML report now distinguishes three rendering modes (line, line + branch, line + branch + path) so that a driver providing branch coverage without path coverage no longer forces path-coverage UI to appear with empty data
    • The Text report now gates the Branches: and Paths: lines on the presence of the corresponding data independently
    • Various internal refactorings to improve code readability

    Deprecated

    • SebastianBergmann\CodeCoverage\Driver\Selector::forLineCoverage(), use Selector::select() with Granularity::Line instead
    • SebastianBergmann\CodeCoverage\Driver\Selector::forLineAndPathCoverage(), use Selector::select() with Granularity::LineBranchAndPath instead
    • SebastianBergmann\CodeCoverage\CodeCoverage::enableBranchAndPathCoverage(), use Selector::select() with Granularity::LineBranchAndPath instead
    • SebastianBergmann\CodeCoverage\CodeCoverage::disableBranchAndPathCoverage(), use Selector::select() with Granularity::Line instead
    • SebastianBergmann\CodeCoverage\CodeCoverage::collectsBranchAndPathCoverage()
    • SebastianBergmann\CodeCoverage\BranchAndPathCoverageNotSupportedException, replaced by BranchCoverageNotSupportedException and PathCoverageNotSupportedException

    Fixed

    • #1159: Statements inside a closure passed as a call argument are incorrectly reported as not covered
    Open source →
  8. 14.1.10 01 Jun 2026
    Release notes

    Fixed

    • #1212: Filenames in HTML report are not escaped
    Open source →
  9. 14.1.9 16 May 2026
    Release notes

    Fixed

    • #1160: Ternary inside array spread: else-arm's line is falsely reported as not covered
    Open source →
  10. 14.1.8 09 May 2026

    Nothing published for this version

  11. 14.1.7 04 May 2026

    Nothing published for this version

  12. 14.1.6 24 Apr 2026

    Nothing published for this version

  13. 14.1.5 24 Apr 2026

    Nothing published for this version

  14. 14.1.4 23 Apr 2026

    Nothing published for this version

  15. 14.1.3 18 Apr 2026

    Nothing published for this version

  16. 14.1.2 15 Apr 2026

    Nothing published for this version

  17. 14.1.1 13 Apr 2026

    Nothing published for this version

  18. 14.1.0 12 Apr 2026

    Nothing published for this version

  19. 14.0.0 03 Apr 2026

    Nothing published for this version

  20. 13.0.2 01 Apr 2026

    Nothing published for this version

  21. 13.0.1 06 Feb 2026

    Nothing published for this version

  22. 13.0.0 06 Feb 2026

    Nothing published for this version

  23. 12.5.7 01 Jun 2026
    Release notes

    Fixed

    • #1212: Filenames in HTML report are not escaped
    Open source →
  24. 12.5.6 15 Apr 2026

    Nothing published for this version

  25. 12.5.5 13 Apr 2026

    Nothing published for this version

  26. 12.5.4 12 Apr 2026

    Nothing published for this version

  27. 12.5.3 06 Feb 2026

    Nothing published for this version

  28. 12.5.2 24 Dec 2025

    Nothing published for this version

  29. 12.5.1 08 Dec 2025

    Nothing published for this version

  30. 12.5.0 29 Nov 2025

    Nothing published for this version

  31. 12.4.0 24 Sep 2025

    Nothing published for this version

  32. 12.3.8 17 Sep 2025

    Nothing published for this version

  33. 12.3.7 10 Sep 2025

    Nothing published for this version

  34. 12.3.6 02 Sep 2025

    Nothing published for this version

  35. 12.3.5 01 Sep 2025

    Nothing published for this version

  36. 12.3.4 29 Aug 2025

    Nothing published for this version

  37. 12.3.3 27 Aug 2025

    Nothing published for this version

  38. 12.3.2 29 Jul 2025

    Nothing published for this version

  39. 12.3.1 18 Jun 2025

    Nothing published for this version

  40. 12.3.0 23 May 2025

    Nothing published for this version

  41. 12.2.1 04 May 2025

    Nothing published for this version

  42. 12.2.0 03 May 2025

    Nothing published for this version

  43. 12.1.2 03 Apr 2025

    Nothing published for this version

  44. 12.1.1 03 Apr 2025

    Nothing published for this version

  45. 12.1.0 17 Mar 2025

    Nothing published for this version

  46. 12.0.5 15 Mar 2025

    Nothing published for this version

  47. 12.0.4 25 Feb 2025

    Nothing published for this version

  48. 12.0.3 18 Feb 2025

    Nothing published for this version

  49. 12.0.2 08 Feb 2025

    Nothing published for this version

  50. 12.0.1 07 Feb 2025

    Nothing published for this version

  51. 12.0.0 07 Feb 2025

    Nothing published for this version

  52. 11.0.12 24 Dec 2025

    Nothing published for this version

  53. 11.0.11 27 Aug 2025

    Nothing published for this version

  54. 11.0.10 18 Jun 2025

    Nothing published for this version

  55. 11.0.9 25 Feb 2025

    Nothing published for this version

  56. 11.0.8 11 Dec 2024

    Nothing published for this version

  57. 11.0.7 09 Oct 2024

    Nothing published for this version

  58. 11.0.6 22 Aug 2024

    Nothing published for this version

  59. 11.0.5 03 Jul 2024

    Nothing published for this version

  60. 11.0.4 29 Jun 2024

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive