#### 4.2.2

* Propagate --ext and --override parameters to included test suites (#6536)
* Fixed false negative message about stecman/symfony-console-completion package (#6541)

#### 4.2.1

* Execute setupBeforeClass/tearDownAfterClass only once (#6481)
* Handle action with intersection return type correctly in dry-run command

#### 4.2.0

* Improved multi-application experience, allow filtering suites by name (#6435) by @calvinalkan
* Configuration override is passed to included suites (#5978) by @calvinalkan
* Made dry-run command work with module methods having return types (#6470)
* Support for expectError/Warning/Notice/Deprecation methods in unit tests (Requires PHPUnit 8.4+)
* Implemented new setting `convert_deprecations_to_exceptions` (#6469)
* Action file generator: Do not return when return type is never (#6462)
* Backported test.useless event from Codeception 5.0 (#6459)

#### 4.1.31

* RunBefore extension prints error output and stops execution if command failed
* Action file generator: Fixed handling of intersection types
* Action file generator: Fixed handling of self and parent types

#### 4.1.30

* Fix handling of previous exception in ExtensionException
* Improved parser fix for PHP keywords as named parameters
* Add link to https://helpukrainewin.org

#### 4.1.29

* Fixed duplicate test runs when codeception.yml and codeception.dist.yml are present in multi-app setup by @calvinalkan
* Action generator handles mixed type correctly
* Parser fix to allow named parameters named class and namespace

#### 4.1.28

* Strictly compare test hashes to avoid skipping tests #6320 by @michel-cetina
* Fixed deprecation message in codecept build #6311 by @barmax

#### 4.1.27

* Renamed editorUrl setting to editor_url for consistency
* Fixed wildcard matching of group files (#6302) by @DavertMik

#### 4.1.26

* Added editorUrl setting to codeception.yml (#6261) by @ThomasLandauer
* Reverted optional value to fail-fast option because it was breaking change (#6290)
* Fixed E_DEPRECATED warnings in Example class on PHP 8.1 (#6298) by @fabacino

#### 4.1.25

* Updated dependencies (#6296) by @TavoNiievez

#### 4.1.24

* Fixed running tests from group files in included configs (#6292) by @DavertMik

#### 4.1.23

* Compatibility with PHP 8.1 (#6252)
* Added optional value to fail-fast option (#6275) by #Verest
* Code coverage covers .php files only (#6265)
* Functions are autoloaded by composer (#6263) by @StuTheWebGuy
* Fixed broken URL in bootstrap deprecation message by @p810
* `codecept init api` adds AsJson decorators to suite configuration (See https://github.com/Codeception/module-rest/releases/tag/1.4.1)
* Dockerfile upgraded to use xdebug 3.0.4 (#6250) by @PavelBulat

#### 4.1.22

* Security fix: Disable deserialization of RunProcess class (#6241)
* Reduce memory consumption of very large tests (#6230) by @esnelubov
* Support guzzlehttp/psr7 v2 by @W0rma
* Fix W3C warning in reports generated by Recorder extension (#6224) by RickR2H

#### 4.1.21

* Fix `dry-run` compatibility with symfony/console 5.3
* Coverage: Don't attempt to set cookie domain when it is "localhost" (#6210) by @marcovtwout
* Coverage: Don't attempt to read cookies while an alert is open (#6211) by @marcovtwout

#### 4.1.20

* Fix compatibility with PHP 7.0 (#6154)

#### 4.1.19

* Action file generator supports PHP 8 union types
* Action file generator generates typehints for method parameters
* Removed dead code related to DataProviderTestSuite
* Removed documentation related to Cept format
* Deprecated generate:cept command
* Documentation improvements

#### 4.1.18

* Fix cleanup of included test directories #6117 by @rolandsaven
* Clean command will not delete .gitkeep files in _output directory #6118
* Add line break between opening tag and namespace in generated Cest and Test files #6072

#### 4.1.17

* Fix `codecept run suite` when suite name matches directory (bug introduced in 4.1.16)
* `codecept run tests` is equivalent to `codecept run`
* `codecept run :filter` works without specifying suite #6105
* `codecept run tests:filter` works too

#### 4.1.16

* Detect the suite from a test path relative to the current working dir (#6051)
* GroupManager: Fixed bug introduced in 4.1.15
* Show location of warning in error message (#6090)

#### 4.1.15

* GroupManager: Show which group contains a missing file #5938
* Ignore . namespace in generators when someone pass path as a class name, e.g. ./foo #5818
* Removed "Running with seed" from CLI report (#6088) by @eXorus
* Suggest most similar module in missing module exception #6079 by @c33s

#### 4.1.14

* Improved compatibility logic for Symfony EventDispatcher

#### 4.1.13

* Gherkin: Fixed loading methods from namespaced helper classes #6057

#### 4.1.12

* Dependency Injection: Fix PHP types being treated as classes #6031 by @cs278

#### 4.1.11

* Another patch for class constant default values #6027 by @mwi-gofore

#### 4.1.10

* Use fully qualified name for class constant defaults #6016 by @lastzero
* add ServerConstAdapter for phpdotenv v5 #6015 by #retnek

#### 4.1.9

* Support PHP 8 #5999
* Generate correct default values in Actions files #5999
* Use sendGet in Api template #5998 by @ThomasLandauer

#### 4.1.8

* Support Covertura code coverage format #5994 by @zachkknowbe4
* Compatibility with vlucas/phpdotenv v5 #5975 by @johanzandstra
* Support absolute output dir path on Windows #5966 by @Naktibalda
* Fix --no-redirect option for run command #5967 by @convenient
* Code coverage: Don't make request to c3.php if remote=false #5991 by @dereuromark
* Gherkin: Fail on ambiguous step definition #5866 by @matthiasnoback
* Removed complicated merge logic for environment configurations #5948 by @Sasti
* Logger extension: add .log to suite log files #5982 by @varp

#### 4.1.7

* Compatibility with PhpCodeCoverage 9 and PHPUnit 9.3
* Show snapshot diff on fail #5930 by @fkupper
* Ability to store non-json snapshots #5945 by @fkupperr
* Fixed step decorators in generated configuration file #5936 by @rene-hermenau
* Fixed single line style dataprovider #5944 by @edno

#### 4.1.6

* Compatibility with PHPUnit 9.2

#### 4.1.5

* Fixed docker images
* Fix indentation in generated Actor class, by @cebe
* Added addToAssertionCount method to AssertionCounter trait, #5918 by @Archanium

#### 4.1.4

* Build: Fix bug with void type not being picked up correctly #5880 by @Jamesking56
* Test --report flag (the bugfix in phpunit-wrapper library)

#### 4.1.3

* Build: Use non-deprecated method to get return type hint on PHP 7.1+ #5876
* Build: Ensure that the return keyword is not used when method returns void type #5878 by @Jamesking56

#### 4.1.2

* Fixed --no-redirect option does not exist error #5857 by @liamjtoohey
* Init command: Check the composer option config.vendor_dir when updating composer #5871 by @gabriel-lima96
* Build: Add return type hint to the generated actions above PHP 7.0 #5862 by @pezia
* Prevent merged config array ballooning in memory #5871 by @AndrewFeeney
* Do not truncate arguments for --html options #5870 by @adaniloff

#### 4.1.1

* --no-artifacts flag for run command #5646 by @Mitrichius
* Fix recorder filename with special chars #5846 by @gimler

#### 4.1.0

* Support for PHPUnit 9

#### 4.0.3

* Fixed command autocompletion #5806 by @svycka

#### 4.0.2

* Fixed errors in bootstrap scripts #5806

#### 4.0.1

* Fixed error reporting error in upgrade4 script
* Symfony 5 compatibility: Improved detection of event-dispatcher version

#### 4.0.0

* Extracted modules from Codeception core to separate repository
* Separated building of phar files and documentation from Codeception core.
* Implemented upgrade script
* Support for Symfony 5
* Support for phpdotenv v4 by @sunspikes
* New Feature: Ability to stash/unstash commands in interactive mode by @pohnean
* [Fixtures] Cleanup by name @soupli
* GroupManager throws exception if path used in group configuration does not exist.
* GroupManager supports absolute and backtracking (..) paths in group files.
