composer-stager icon indicating copy to clipboard operation
composer-stager copied to clipboard

Evaluate the infection/infection dev dependency

Open TravisCarden opened this issue 2 years ago • 1 comments

  • Part of https://github.com/php-tuf/composer-stager/issues/78.
Dependency infection/infection
Description Mutation testing framework.
Value/justification High. This helps find gaps and inadequacies in automated tests--not merely in code coverage but in logical and implicit change vectors. It has already led to meaningful improvement in tests. It is currently running on CI, where it displays results and comments on PRs but doesn't fail builds.
Usage/popularity Very high. Currently over 10M installs and 1K dependents on Packagist.
Security policy None that I can find.
Maintainance Active. Responsive maintainers. Regular, well-documented releases adhere strictly to Semver.
Considerations Previous discussion in https://github.com/php-tuf/composer-stager/issues/56

Dependency tree

$ composer info --tree infection/infection
infection/infection 0.27.7 Infection is a Mutation Testing framework for PHP. The mutation adequacy score can be used to measure the effectiveness of a test set in terms of its ability to detect faults.
|--colinodell/json5 ^2.2
|  |--ext-json *
|  |--ext-mbstring *
|  |  `--php >=7.1
|  `--php ^7.1.3|^8.0
|--composer-runtime-api ^2.0
|--composer/xdebug-handler ^2.0 || ^3.0
|  |--composer/pcre ^1 || ^2 || ^3
|  |  `--php ^7.4 || ^8.0
|  |--php ^7.2.5 || ^8.0
|  `--psr/log ^1 || ^2 || ^3
|     `--php >=8.0.0
|--ext-dom *
|--ext-json *
|--ext-libxml *
|--ext-mbstring *
|  `--php >=7.1
|--fidry/cpu-core-counter ^0.4.0 || ^0.5.0 || ^1.0
|  `--php ^7.2 || ^8.0
|--infection/abstract-testframework-adapter ^0.5.0
|  `--php ^7.4 || ^8.0
|--infection/extension-installer ^0.1.0
|  `--composer-plugin-api ^1.1 || ^2.0
|--infection/include-interceptor ^0.2.5
|--justinrainbow/json-schema ^5.2.10
|  `--php >=5.3.3
|--nikic/php-parser ^4.15.1
|  |--ext-tokenizer *
|  `--php >=7.0
|--ondram/ci-detector ^4.1.0
|  `--php ^7.1 || ^8.0
|--php ^8.1
|--sanmai/later ^0.1.1
|  `--php >=7.4
|--sanmai/pipeline ^5.1 || ^6
|  `--php ^7.4 || ^8.0
|--sebastian/diff ^3.0.2 || ^4.0 || ^5.0
|  `--php >=7.3
|--symfony/console ^5.4 || ^6.0 || ^7.0
|  |--php >=8.1
|  |--symfony/deprecation-contracts ^2.5|^3
|  |  `--php >=8.1
|  |--symfony/polyfill-mbstring ~1.0
|  |  `--php >=7.1
|  |--symfony/service-contracts ^2.5|^3
|  |  |--php >=8.1
|  |  `--psr/container ^2.0
|  |     `--php >=7.4.0
|  `--symfony/string ^5.4|^6.0
|     |--php >=8.1
|     |--symfony/polyfill-ctype ~1.8
|     |  `--php >=7.1
|     |--symfony/polyfill-intl-grapheme ~1.0
|     |  `--php >=7.1
|     |--symfony/polyfill-intl-normalizer ~1.0
|     |  `--php >=7.1
|     `--symfony/polyfill-mbstring ~1.0
|        `--php >=7.1
|--symfony/filesystem ^5.4 || ^6.0 || ^7.0
|  |--php >=8.1
|  |--symfony/polyfill-ctype ~1.8
|  |  `--php >=7.1
|  `--symfony/polyfill-mbstring ~1.8
|     `--php >=7.1
|--symfony/finder ^5.4 || ^6.0 || ^7.0
|  `--php >=8.1
|--symfony/process ^5.4 || ^6.0 || ^7.0
|  `--php >=8.1
|--thecodingmachine/safe ^2.1.2
|  `--php ^8.0
`--webmozart/assert ^1.11
   |--ext-ctype *
   |  `--php >=7.1
   `--php ^7.2 || ^8.0

TravisCarden avatar Nov 13 '23 23:11 TravisCarden

Infection now runs on its own "Mutation" job and comments on PRs when it detects new issues. It's has proved very helpful.

TravisCarden avatar Sep 16 '24 18:09 TravisCarden