You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

366 lines
16 KiB

3 years ago
  1. # ChangeLog
  2. All notable changes are documented in this file using the [Keep a CHANGELOG](http://keepachangelog.com/) principles.
  3. ## [9.2.6] - 2021-03-28
  4. ### Fixed
  5. * [#846](https://github.com/sebastianbergmann/php-code-coverage/issues/846): Method name should not appear in the method signature attribute of Cobertura XML
  6. ## [9.2.5] - 2020-11-28
  7. ### Fixed
  8. * [#831](https://github.com/sebastianbergmann/php-code-coverage/issues/831): Files that do not contain a newline are not handled correctly
  9. ## [9.2.4] - 2020-11-27
  10. ### Added
  11. * [#834](https://github.com/sebastianbergmann/php-code-coverage/issues/834): Support `XDEBUG_MODE` environment variable
  12. ## [9.2.3] - 2020-10-30
  13. ### Changed
  14. * Bumped required version of `nikic/php-parser`
  15. ## [9.2.2] - 2020-10-28
  16. ### Fixed
  17. * [#820](https://github.com/sebastianbergmann/php-code-coverage/issues/820): Hidden dependency on PHPUnit
  18. ## [9.2.1] - 2020-10-26
  19. ### Fixed
  20. * `SebastianBergmann\CodeCoverage\Exception` now correctly extends `\Throwable`
  21. ## [9.2.0] - 2020-10-02
  22. ### Added
  23. * [#812](https://github.com/sebastianbergmann/php-code-coverage/pull/812): Support for Cobertura XML report format
  24. ### Changed
  25. * Reduced the number of I/O operations performed by the static analysis cache
  26. ## [9.1.11] - 2020-09-19
  27. ### Fixed
  28. * [#811](https://github.com/sebastianbergmann/php-code-coverage/issues/811): `T_FN` constant is used on PHP 7.3 where it is not available
  29. ## [9.1.10] - 2020-09-18
  30. ### Added
  31. * `SebastianBergmann\CodeCoverage\Driver\Selector::forLineCoverage()` and `SebastianBergmann\CodeCoverage\Driver\Selector::forLineAndPathCoverage()` have been added
  32. ### Fixed
  33. * [#810](https://github.com/sebastianbergmann/php-code-coverage/issues/810): `SebastianBergmann\CodeCoverage\Driver\Driver::forLineCoverage()` and `SebastianBergmann\CodeCoverage\Driver\Driver::forLineAndPathCoverage()` are marked as internal
  34. ### Removed
  35. * `SebastianBergmann\CodeCoverage\Driver\Driver::forLineCoverage()` and `SebastianBergmann\CodeCoverage\Driver\Driver::forLineAndPathCoverage()` are now deprecated
  36. ## [9.1.9] - 2020-09-15
  37. ### Fixed
  38. * [#808](https://github.com/sebastianbergmann/php-code-coverage/issues/808): `PHP Warning: Use of undefined constant T_MATCH`
  39. ## [9.1.8] - 2020-09-07
  40. ### Changed
  41. * [#800](https://github.com/sebastianbergmann/php-code-coverage/pull/800): All files on the inclusion list are no longer loaded when `SebastianBergmann\CodeCoverage::start()` is called for the first time and `processUncoveredFiles` is set to `true`
  42. ### Fixed
  43. * [#799](https://github.com/sebastianbergmann/php-code-coverage/issues/799): Uncovered new line at end of file
  44. ## [9.1.7] - 2020-09-03
  45. ### Fixed
  46. * Fixed regressions introduced in versions 9.1.5 and 9.1.6
  47. ## [9.1.6] - 2020-08-31
  48. ### Fixed
  49. * [#799](https://github.com/sebastianbergmann/php-code-coverage/issues/799): Uncovered new line at end of file
  50. * [#803](https://github.com/sebastianbergmann/php-code-coverage/issues/803): HTML report does not sort directories and files anymore
  51. ## [9.1.5] - 2020-08-27
  52. ### Changed
  53. * [#800](https://github.com/sebastianbergmann/php-code-coverage/pull/800): All files on the inclusion list are no longer loaded when `SebastianBergmann\CodeCoverage::start()` is called for the first time and `processUncoveredFiles` is set to `true`
  54. ### Fixed
  55. * [#797](https://github.com/sebastianbergmann/php-code-coverage/pull/797): Class name is wrongly removed from namespace name
  56. ## [9.1.4] - 2020-08-13
  57. ### Fixed
  58. * [#793](https://github.com/sebastianbergmann/php-code-coverage/issues/793): Lines with `::class` constant are not covered
  59. ## [9.1.3] - 2020-08-10
  60. ### Changed
  61. * Changed PHP-Parser usage to parse sourcecode according to the PHP version we are currently running on instead of using emulative lexing
  62. ## [9.1.2] - 2020-08-10
  63. ### Fixed
  64. * [#791](https://github.com/sebastianbergmann/php-code-coverage/pull/791): Cache Warmer does not warm all caches
  65. ## [9.1.1] - 2020-08-10
  66. ### Added
  67. * Added `SebastianBergmann\CodeCoverage::cacheDirectory()` method for querying where the cache writes its files
  68. ## [9.1.0] - 2020-08-10
  69. ### Added
  70. * Implemented a persistent cache for information gathered using PHP-Parser based static analysis (hereinafter referred to as "cache")
  71. * Added `SebastianBergmann\CodeCoverage::cacheStaticAnalysis(string $cacheDirectory)` method for enabling the cache; it will write its files to `$directory`
  72. * Added `SebastianBergmann\CodeCoverage::doNotCacheStaticAnalysis` method for disabling the cache
  73. * Added `SebastianBergmann\CodeCoverage::cachesStaticAnalysis()` method for querying whether the cache is enabled
  74. * Added `SebastianBergmann\CodeCoverage\StaticAnalysis\CacheWarmer::warmCache()` method for warming the cache
  75. ## [9.0.0] - 2020-08-07
  76. ### Added
  77. * [#761](https://github.com/sebastianbergmann/php-code-coverage/pull/761): Support for Branch Coverage and Path Coverage
  78. * Added `SebastianBergmann\CodeCoverage\Driver\Driver::forLineCoverage()` for selecting the best available driver for line coverage
  79. * Added `SebastianBergmann\CodeCoverage\Driver\Driver::forLineAndPathCoverage()` for selecting the best available driver for path coverage
  80. * This component is now supported on PHP 8
  81. * This component now supports Xdebug 3
  82. ### Changed
  83. * [#746](https://github.com/sebastianbergmann/php-code-coverage/pull/746): Remove some ancient workarounds for very old Xdebug versions
  84. * [#747](https://github.com/sebastianbergmann/php-code-coverage/pull/747): Use native filtering in PCOV and Xdebug drivers
  85. * [#748](https://github.com/sebastianbergmann/php-code-coverage/pull/748): Store raw code coverage in value objects instead of arrays
  86. * [#749](https://github.com/sebastianbergmann/php-code-coverage/pull/749): Store processed code coverage in value objects instead of arrays
  87. * [#752](https://github.com/sebastianbergmann/php-code-coverage/pull/752): Rework how code coverage settings are propagated to the driver
  88. * [#754](https://github.com/sebastianbergmann/php-code-coverage/pull/754): Implement collection of raw branch and path coverage
  89. * [#755](https://github.com/sebastianbergmann/php-code-coverage/pull/755): Implement processing of raw branch and path coverage
  90. * [#756](https://github.com/sebastianbergmann/php-code-coverage/pull/756): Improve handling of uncovered files
  91. * `SebastianBergmann\CodeCoverage\Filter::addDirectoryToWhitelist()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::includeDirectory()`
  92. * `SebastianBergmann\CodeCoverage\Filter::addFilesToWhitelist()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::includeFiles()`
  93. * `SebastianBergmann\CodeCoverage\Filter::addFileToWhitelist()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::includeFile()`
  94. * `SebastianBergmann\CodeCoverage\Filter::removeDirectoryFromWhitelist()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::excludeDirectory()`
  95. * `SebastianBergmann\CodeCoverage\Filter::removeFileFromWhitelist()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::excludeFile()`
  96. * `SebastianBergmann\CodeCoverage\Filter::isFiltered()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::isExcluded()`
  97. * `SebastianBergmann\CodeCoverage\Filter::getWhitelist()` has been renamed to `SebastianBergmann\CodeCoverage\Filter::files()`
  98. * The arguments for `CodeCoverage::__construct()` are no longer optional
  99. ### Fixed
  100. * [#700](https://github.com/sebastianbergmann/php-code-coverage/pull/700): Throw an exception if code coverage fails to write to disk
  101. ### Removed
  102. * `SebastianBergmann\CodeCoverage\CodeCoverage::setCacheTokens()` and `SebastianBergmann\CodeCoverage\CodeCoverage::getCacheTokens()` have been removed
  103. * `SebastianBergmann\CodeCoverage\CodeCoverage::setCheckForUnintentionallyCoveredCode()` has been removed, please use `SebastianBergmann\CodeCoverage\CodeCoverage::enableCheckForUnintentionallyCoveredCode()` or `SebastianBergmann\CodeCoverage\CodeCoverage::disableCheckForUnintentionallyCoveredCode()` instead
  104. * `SebastianBergmann\CodeCoverage\CodeCoverage::setSubclassesExcludedFromUnintentionallyCoveredCodeCheck()` has been removed, please use `SebastianBergmann\CodeCoverage\CodeCoverage::excludeSubclassesOfThisClassFromUnintentionallyCoveredCodeCheck()` instead
  105. * `SebastianBergmann\CodeCoverage\CodeCoverage::setAddUncoveredFilesFromWhitelist()` has been removed, please use `SebastianBergmann\CodeCoverage\CodeCoverage::includeUncoveredFiles()` or `SebastianBergmann\CodeCoverage\CodeCoverage::excludeUncoveredFiles()` instead
  106. * `SebastianBergmann\CodeCoverage\CodeCoverage::setProcessUncoveredFiles()` has been removed, please use `SebastianBergmann\CodeCoverage\CodeCoverage::processUncoveredFiles()` or `SebastianBergmann\CodeCoverage\CodeCoverage::doNotProcessUncoveredFiles()` instead
  107. * `SebastianBergmann\CodeCoverage\CodeCoverage::setIgnoreDeprecatedCode()` has been removed, please use `SebastianBergmann\CodeCoverage\CodeCoverage::ignoreDeprecatedCode()` or `SebastianBergmann\CodeCoverage\CodeCoverage::doNotIgnoreDeprecatedCode()` instead
  108. * `SebastianBergmann\CodeCoverage\CodeCoverage::setDisableIgnoredLines()` has been removed, please use `SebastianBergmann\CodeCoverage\CodeCoverage::enableAnnotationsForIgnoringCode()` or `SebastianBergmann\CodeCoverage\CodeCoverage::disableAnnotationsForIgnoringCode()` instead
  109. * `SebastianBergmann\CodeCoverage\CodeCoverage::setCheckForMissingCoversAnnotation()` has been removed
  110. * `SebastianBergmann\CodeCoverage\CodeCoverage::setCheckForUnexecutedCoveredCode()` has been removed
  111. * `SebastianBergmann\CodeCoverage\CodeCoverage::setForceCoversAnnotation()` has been removed
  112. * `SebastianBergmann\CodeCoverage\Filter::hasWhitelist()` has been removed, please use `SebastianBergmann\CodeCoverage\Filter::isEmpty()` instead
  113. * `SebastianBergmann\CodeCoverage\Filter::getWhitelistedFiles()` has been removed
  114. * `SebastianBergmann\CodeCoverage\Filter::setWhitelistedFiles()` has been removed
  115. ## [8.0.2] - 2020-05-23
  116. ### Fixed
  117. * [#750](https://github.com/sebastianbergmann/php-code-coverage/pull/750): Inconsistent handling of namespaces
  118. * [#751](https://github.com/sebastianbergmann/php-code-coverage/pull/751): Dead code is not highlighted correctly
  119. * [#753](https://github.com/sebastianbergmann/php-code-coverage/issues/753): Do not use `$_SERVER['REQUEST_TIME']` because the test(ed) code might unset it
  120. ## [8.0.1] - 2020-02-19
  121. ### Fixed
  122. * [#731](https://github.com/sebastianbergmann/php-code-coverage/pull/731): Confusing footer in the HTML report
  123. ## [8.0.0] - 2020-02-07
  124. ### Fixed
  125. * [#721](https://github.com/sebastianbergmann/php-code-coverage/pull/721): Workaround for PHP bug [#79191](https://bugs.php.net/bug.php?id=79191)
  126. ### Removed
  127. * This component is no longer supported on PHP 7.2
  128. ## [7.0.10] - 2019-11-20
  129. ### Fixed
  130. * [#710](https://github.com/sebastianbergmann/php-code-coverage/pull/710): Code Coverage does not work in PhpStorm
  131. ## [7.0.9] - 2019-11-20
  132. ### Changed
  133. * [#709](https://github.com/sebastianbergmann/php-code-coverage/pull/709): Prioritize PCOV over Xdebug
  134. ## [7.0.8] - 2019-09-17
  135. ### Changed
  136. * Update HTML report Bootstrap 4.3.1, jQuery 3.4.1, and popper.js 1.15.0
  137. ## [7.0.7] - 2019-07-25
  138. ### Changed
  139. * Bumped required version of php-token-stream
  140. ## [7.0.6] - 2019-07-08
  141. ### Changed
  142. * Bumped required version of php-token-stream
  143. ## [7.0.5] - 2019-06-06
  144. ### Fixed
  145. * [#681](https://github.com/sebastianbergmann/php-code-coverage/pull/681): `use function` statements are not ignored
  146. ## [7.0.4] - 2019-05-29
  147. ### Fixed
  148. * [#682](https://github.com/sebastianbergmann/php-code-coverage/pull/682): Code that is not executed is reported as being executed when using PCOV
  149. ## [7.0.3] - 2019-02-26
  150. ### Fixed
  151. * [#671](https://github.com/sebastianbergmann/php-code-coverage/issues/671): `TypeError` when directory name is a number
  152. ## [7.0.2] - 2019-02-15
  153. ### Changed
  154. * Updated HTML report to Bootstrap 4.3.0
  155. ### Fixed
  156. * [#667](https://github.com/sebastianbergmann/php-code-coverage/pull/667): `TypeError` in PHP reporter
  157. ## [7.0.1] - 2019-02-01
  158. ### Fixed
  159. * [#664](https://github.com/sebastianbergmann/php-code-coverage/issues/664): `TypeError` when whitelisted file does not exist
  160. ## [7.0.0] - 2019-02-01
  161. ### Added
  162. * [#663](https://github.com/sebastianbergmann/php-code-coverage/pull/663): Support for PCOV
  163. ### Fixed
  164. * [#654](https://github.com/sebastianbergmann/php-code-coverage/issues/654): HTML report fails to load assets
  165. * [#655](https://github.com/sebastianbergmann/php-code-coverage/issues/655): Popin pops in outside of screen
  166. ### Removed
  167. * This component is no longer supported on PHP 7.1
  168. ## [6.1.4] - 2018-10-31
  169. ### Fixed
  170. * [#650](https://github.com/sebastianbergmann/php-code-coverage/issues/650): Wasted screen space in HTML code coverage report
  171. ## [6.1.3] - 2018-10-23
  172. ### Changed
  173. * Use `^3.1` of `sebastian/environment` again due to [regression](https://github.com/sebastianbergmann/environment/issues/31)
  174. ## [6.1.2] - 2018-10-23
  175. ### Fixed
  176. * [#645](https://github.com/sebastianbergmann/php-code-coverage/pull/645): Crash that can occur when php-token-stream parses invalid files
  177. ## [6.1.1] - 2018-10-18
  178. ### Changed
  179. * This component now allows `^4` of `sebastian/environment`
  180. ## [6.1.0] - 2018-10-16
  181. ### Changed
  182. * Class names are now abbreviated (unqualified name shown, fully qualified name shown on hover) in the file view of the HTML report
  183. * Update HTML report to Bootstrap 4
  184. [9.2.6]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.2.5...9.2.6
  185. [9.2.5]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.2.4...9.2.5
  186. [9.2.4]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.2.3...9.2.4
  187. [9.2.3]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.2.2...9.2.3
  188. [9.2.2]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.2.1...9.2.2
  189. [9.2.1]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.2.0...9.2.1
  190. [9.2.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.11...9.2.0
  191. [9.1.11]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.10...9.1.11
  192. [9.1.10]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.9...9.1.10
  193. [9.1.9]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.8...9.1.9
  194. [9.1.8]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.7...9.1.8
  195. [9.1.7]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.6...9.1.7
  196. [9.1.6]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.5...9.1.6
  197. [9.1.5]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.4...9.1.5
  198. [9.1.4]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.3...9.1.4
  199. [9.1.3]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.2...9.1.3
  200. [9.1.2]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.1...9.1.2
  201. [9.1.1]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.1.0...9.1.1
  202. [9.1.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/9.0.0...9.1.0
  203. [9.0.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/8.0...9.0.0
  204. [8.0.2]: https://github.com/sebastianbergmann/php-code-coverage/compare/8.0.1...8.0.2
  205. [8.0.1]: https://github.com/sebastianbergmann/php-code-coverage/compare/8.0.0...8.0.1
  206. [8.0.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.10...8.0.0
  207. [7.0.10]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.9...7.0.10
  208. [7.0.9]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.8...7.0.9
  209. [7.0.8]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.7...7.0.8
  210. [7.0.7]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.6...7.0.7
  211. [7.0.6]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.5...7.0.6
  212. [7.0.5]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.4...7.0.5
  213. [7.0.4]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.3...7.0.4
  214. [7.0.3]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.2...7.0.3
  215. [7.0.2]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.1...7.0.2
  216. [7.0.1]: https://github.com/sebastianbergmann/php-code-coverage/compare/7.0.0...7.0.1
  217. [7.0.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/6.1.4...7.0.0
  218. [6.1.4]: https://github.com/sebastianbergmann/php-code-coverage/compare/6.1.3...6.1.4
  219. [6.1.3]: https://github.com/sebastianbergmann/php-code-coverage/compare/6.1.2...6.1.3
  220. [6.1.2]: https://github.com/sebastianbergmann/php-code-coverage/compare/6.1.1...6.1.2
  221. [6.1.1]: https://github.com/sebastianbergmann/php-code-coverage/compare/6.1.0...6.1.1
  222. [6.1.0]: https://github.com/sebastianbergmann/php-code-coverage/compare/6.0...6.1.0