2.1.41 #14304
ondrejmirtes
started this conversation in
General
2.1.41
#14304
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Just three weeks after PHPStan 2.1.40, this release fixes whopping 87 issues! 🎉
Major new features 🚀
ternary.resultUnused,property.onlyRead,return.voidImprovements 🔧
reportIgnoresWithoutCommentsto report ignores without comments (#5032), Option to disable phpstan-ignore-line and phpstan-ignore-next-line #11340, thanks @calebdw!@phpstan-ignorewithout comments in parentheses@phpstan-ignore-lineand@phpstan-ignore-next-linecompletely@phpstan-impurewhere applicable (#5031), Error tip for@phpstan-impure#14183Bugfixes 🐛
__construct()is in an interface #12830, Should this 'Parameter of method SubClass::__construct() is not contravariant with parameter of method ParentClass::__construct()' error be unignorable? #12272, thanks @VincentLanglet!objectafter aninstanceofcheck #13713, thanks @VincentLanglet!intval#14136, thanks @VincentLanglet!$this(Type~Subtracted)does not work on conditional return type asType~Subtracted(#5104),$this(Type~Subtracted)does not work on conditional return type asType~Subtracted#12244, thanks @staabm and @VincentLanglet!if ($index < count($array))(#5090), Nonexistent offset detection on lists (if ($index < count($array))) #13770, thanks @VincentLanglet and @staabm!@param- Call to method Xxx::xxx() with true will always evaluate to true. #10337, thanks @staabm and @VincentLanglet!count() -1#14215, thanks @VincentLanglet!in_array(...)check with impure second argument (#5141), false positive onin_array(...)check with impure second argument #13799, thanks @VincentLanglet and @staabm!array_spliceresets int keys of the input array (#5139),array_spliceresets int keys of the input array #14037, thanks @staabm and @VincentLanglet!iterableis equal toarray|Traversable(#5144),iterableis equal toarray|Traversable#13247, thanks @staabm and @VincentLanglet!chop()function as an alias ofrtrim()(#5157), thanks @zonuexe!@phpstan-assert-*annotations to First-class callables (Closures) and string callables (#5201), Propagate @phpstan-assert-* annotations to First-class callables (Closures) and string callables #14249, thanks @staabm!array{a: string, b: int, c: int}but returnsnon-empty-array<'a'|'b'|'c', int|string>(#5193), should return array{a: string, b: int, c: int} but returns non-empty-array<'a'|'b'|'c', int|string> #12665, PHPStan thinks my array keys might be overwritten? #14080, Incorrect "Call to sprintf contains ... placeholders, ... value given." when format string is read from array which had its keys dynamically assigned #8774, Array shape is oversimplified when defined with a variable key #9907, array shape is not honored when combined with string literals #11006, thanks @VincentLanglet!match (count(...)) { ...}(#5228), false positive “Match expression does not handle remaining value: int<...>” formatch (count(...)) { ...}#12790Function signature fixes 🤖
@var PDOStatement<int,string>contains unresolvable type #14206, PDOStatement can return objects but phpstan thinks its an array #9120, thanks @VincentLanglet!Performance 🏎️
TypeCombinator::intersect()calls inMutatingScope-> specifyExpressionType()(#5048), thanks @staabm!$scope->getType()calls (#5051), thanks @staabm!UnionType->describe()(#5062), thanks @staabm!Internals 🔍
replaceClass=true(phpstan/phpstan-src@27d2abd)This discussion was created from the release 2.1.41.
Beta Was this translation helpful? Give feedback.
All reactions