Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.8.2
->1.8.3
1.4.2
->1.4.3
Release Notes
phpstan/phpstan
v1.8.3
Compare Source
This release fixes 76 issues! :tada:
Improvements 🔧
non-falsy-string
(truthy-string
) type (#1542, #1660, #1661, #1662), #5317, #5370, #7199, thanks @staabm!checkImplicitMixed
(#1645), thanks @MartinMystikJonas!substr()
(#1532), #7663, thanks @staabm!ltrim()
return type extension to supportclass-string
(#1597), #7483, thanks @staabm!@psalm-readonly-allow-private-mutation
as alias of@readonly
(#1609), #7774, thanks @zonuexe!gettype()
inference in TypeSpecifier (#1611), #6901, thanks @staabm!expr & number
for positive numbers (#1629), thanks @thg2k!ctype_digit
(#1635), thanks @fluffycondor!array_flip()
for constant arrays (phpstan/phpstan-src@a6cec39)array_filter()
for constant arrays (phpstan/phpstan-src@771b860)array_intersect_key()
for constant arrays (phpstan/phpstan-src@a96cdf2)Bugfixes 🐛
ConstantArrayType
callables with union values (#1529), #2343, thanks @herndlm!eval()
(phpstan/phpstan-src@058d739), #7647pg_*
functions with multiple variants from signature map on PHP 8.1 (phpstan/phpstan-src@8128a63), #7138in_array
non-empty-array type specification (#1545), #7684, thanks @herndlm!ConstantArrayType::unsetOffset
(#1537), #5223, thanks @herndlm!treatPhpDocTypesAsCertain: false
(#1560), #7622, thanks @rvanvelzen!class-string
s fromGenericClassStringType
(#1590), #7698, thanks @staabm!Array_
expr type resolving with unpacked array items (#1586), #7724, thanks @herndlm!Array_
expr type resolving with unpacked constant array items (#1619), #7776, thanks @herndlm!json_decode()
without arguments (phpstan/phpstan-src@bf6d4c0), #7762ConstantStringType::describe()
(#1612), thanks @rvanvelzen!non-empty-array
(phpstan/phpstan-src@32353a9)$data[$key]
after specifying$key
(phpstan/phpstan-src@46a8f32), #6008MixedType
explicitness inMethodParameterComparisonHelper::isTypeCompatible
(#1491), #7415, thanks @herndlm!ConstantArrayType
(phpstan/phpstan-src@6173110), #6013, #2851, #6008sscanf()
(#1593), thanks @staabm!sscanf()
inference with regex format patterns (#1576), #7563, #7764, thanks @staabm!MixedType
(#1656), thanks @staabm!PHPStan\dumpType
pure (#1665), #7803, thanks @rvanvelzen!Function signature fixes 🤖
Imagick::queryFontMetrics
more specific return type (#1530), thanks @MartkCz!Imagick::roundCornersImage
correct naming and optional params (#1531), thanks @MartkCz!str_split
returns an empty array since PHP 8.2 (#1544), thanks @herndlm!XmlReader::next|read()
has side-effects (#1551), #5920, thanks @staabm!getName()
returns anon-empty-string
(#1599), #7056, thanks @staabm!ord()
signature (#1620), thanks @thg2k!port
component of 'parse_url()
(#1622), thanks @thg2k!Internals 🔍
non-empty-array
removal inarray_push
/array_unshift
(#1552), thanks @herndlm!VirtualNode::getType()
returning an incorrect value for ClassConstantsNode and MethodReturnStatementsNode (#1568), thanks @Muqsit!SimpleXMLElement::asXML
(#1606), thanks @herndlm!MutatingScope::filterBySpecifiedTypes
(#1536), thanks @herndlm!IntegerRangeType
constructor private (#1624), #7803, thanks @herndlm!jean85/pretty-package-versions
dependency (#1607), thanks @herndlm!brianium/paratest
^6.5 to fix PHP 8.2 deprecation notices (#1631), thanks @herndlm!TypeUtils::containsCallable()
(#1667), thanks @herndlm!phpstan/phpstan-strict-rules
v1.4.3
Compare Source
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.