Infection v0.14.0 Release Notes

  • Full Changelog

    โž• Added:

    • [Mutator] Mutate mb_str_split to str_split #787
    • [Mutator] Spread operator in Array Expression - leave only the first element #784
    • [Mutator] Leave only one element in the non empty returned array #735
    • ๐Ÿ‘‰ Use xdebug-filter to reduce the time needed to collect coverage #781
    • โž• Add Symfony PHPUnitBridge #755
    • ๐Ÿ‘‰ Use codingmachine/safe #745
    • ๐Ÿ‘ Allow installation only with the most recent versions for dev dependencies #744
    • โž• Add PCOV to TravisCI #741
    • Ensure the dev tools are up to date #725

    ๐Ÿ”„ Changed:

    • โฌ†๏ธ Bump requirements up to PHP 7.2 #700
    • Do not round down values in MetricsCalculator #701
    • Dramatically reduce memory usage by using classes instead of object-like arrays #710
    • Rework infection command #767
    • โœ‚ Remove the self-update command #688
    • ๐Ÿšš Move coverage data to the mutation #733
    • Deactivate stderr redirection in phpunit.xml #791
    • โž• Add missed profile and mutator keys to the validation schema.json #782
    • ๐Ÿšš Move e2e tests to the correct place. #780
    • โœ‚ Remove Travis' phpunit binaries since they conflicts with vendor's phpunit #773
    • Consume directly the InfectionContainer instead of a generic PSR-11 #761
    • โฌ†๏ธ Bump the versions used where appropriate #743
    • โšก๏ธ Update used memory detection for PHPUnit 8 #739
    • โšก๏ธ Update E2E tests to use PHPUnit 8 #738
    • โšก๏ธ Update xdebug-handler to 1.3.3, remove workarounds #737
    • โฌ†๏ธ Upgrade to PHPUnit 8.2.3 #713
    • Error out when 0 lines of code were covered #602
    • โž• Add ignore property for each Mutator in JSON schema. #699
    • PhpProcess: Reset $_ENV if it is in use #693
    • โšก๏ธ Update alt text of slack badge #707

    ๐Ÿ›  Fixed:

    • โœ… Multiple extra test framework options escape in the wrong way #615
    • "Return value of MutatorConfig::getMutatorSettings() must be of the type array, object returned" with mutator that has settings #666
    • Deal with object settings #772
    • ๐ŸŽ‰ initialTestsPhpOptions does not get picked from infection.json[.dist] #672
    • ๐Ÿšš Sort & Remove duplicates entries in .gitignore #724
    • ๐Ÿ”ง ArrayItemRemoval configuration doesn't support the "ignore" property #698
    • โšก๏ธ Error about missing phar pubkey file on self-update #684
    • Target MSI on Travis with empty --filter #631
    • Zero percent code coverage is not an issue for Infection #488
    • Infection config generator fails to handle multiple ignored directories #580
    • ๐Ÿ›  Fix Infection config builder: make sure it always creates an array for excluded dirs but not object #714