1.10.16
Bleeding edge 🔪
- Report dead types even in multi-exception catch (#2399), thanks @JanTvrdik!
error_logerrors withmessage_type=2(#2428), #9380, thanks @staabm!
If you want to see the shape of things to come and adopt bleeding edge features early, you can include this config file in your project's phpstan.neon:
includes:
- vendor/phpstan/phpstan/conf/bleedingEdge.neon
Of course, there are no backwards compatibility guarantees when you include this file. The behaviour and reported errors can change in minor versions with this file included. Learn more
Improvements 🔧
CallableTypeandClosureType::describe()- use phpdoc-parser Printer for better precision (phpstan/phpstan-src@30f60c1), #9268OffsetAccessType::describe()uses toPhpDocNode and phpdoc-parser printer (phpstan/phpstan-src@347fdbf)- Smarter
extract()with constant arrays (#2417), #9331, thanks @MartinMystikJonas! - Detect more issues in enum declarations (#2371), #9184, thanks @kubk!
- Correct magic signature methods when typehints are missing (#2409), thanks @staabm!
Bugfixes 🐛
- Fix
SplDoublyLinkedList::offsetGetreturn type (#2373), #9274, thanks @takaram! - Delegate
get_called_class()tostatic::class(phpstan/phpstan-src@188acf4), #7574, #5252, #4061 - Fix enum type subtracting (#2415), thanks @schlndh!
- Fix loose comparison against enum (#2410), thanks @schlndh!
Internals 🔍
- NodeScopeResolver: refactor matching throw points computation (#2399), thanks @JanTvrdik!
- ConstantArrayType -
toPhpDocNodewithout keys if they are not necessary (phpstan/phpstan-src@413079d) - Test
@varin and out of function (phpstan/phpstan-src@4e19347), #9331