chore(deps): update dependency phpstan/phpstan to ~1.9.0 #25
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.0
->~1.9.0
Release Notes
phpstan/phpstan
v1.9.4
Compare Source
Improvements 🔧
checkArgumentTypes=true
(#2106), thanks @staabm!TypeCombinator::intersect()
(#2112), thanks @staabm!InitializerExprTypeResolver
(#2114), thanks @staabm!TypeCombinator::removeFalsey()
(#2003), thanks @axlon!usePathConstantsAsConstantString
(#2050), thanks @MartinMystikJonas!Bugfixes 🐛
unset
(#2107), #7805, thanks @rajyan!array_search()
with constant array type haystack (#1806), #3789, thanks @takaram!parse_str()
might return nested arrays by-ref (#1994), #8356, thanks @staabm!for
loop (phpstan/phpstan-src@a8975b1), #8520Internals 🔍
getConstantStrings()
on Type (#1979), thanks @staabm!v1.9.3
Compare Source
Bleeding edge 🔪
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
: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 🔧
DateTimeZone::__construct
throw type extension (#2034)deprecationRulesInstalled
configuration (#2062), thanks @villfa!treatPhpDocTypesAsCertain
(#2065), thanks @VincentLanglet!Scope::getType()
. Cheap checks first. (#2071), thanks @staabm!Bugfixes 🐛
@param-out
on methods (#2028), #8421, thanks @staabm!mixed
on annotation assignment (#2017), thanks @herndlm!$nativeExpressionTypes
in MutatingScope (#2021), thanks @herndlm!.php
(phpstan/phpstan-src@bff85e2), #8480Function signature fixes 🤖
Internals 🔍
NodeScopeResolverTest
cases (#1992), thanks @herndlm!UnionTypeHelper
(#1988), thanks @herndlm!$expressionTypes
and$nativeExpressionTypes
in Scope creation methods (#2022), thanks @herndlm!getLevelValue()
(phpstan/phpstan-src@4f7e20b)TypeTraverser
inArrayChunkFunctionReturnTypeExtension
(#2082), thanks @herndlm!TypeTraverser
inArraySliceFunctionReturnTypeExtension
(#2085), thanks @herndlm!TypeTraverser
inArrayReverseFunctionReturnTypeExtension
(#2084), thanks @herndlm!TypeTraverser
inStrSplitFunctionReturnTypeExtension
(#2087), thanks @herndlm!v1.9.2
Compare Source
Bugfixes 🐛
NeverType
(#1968), #8277, thanks @herndlm!Function signature fixes 🤖
json_encode()
always produce anon-empty-string
, when successful (#1980), thanks @Slamdunk!sodium_crypto_generichash*
always produce anon-empty-string
(#1981), thanks @Slamdunk!sodium_crypto_sign*
always producenon-empty-string
(#1985), thanks @Slamdunk!Internals 🔍
Type::isVoid()
(#1982), thanks @herndlm!v1.9.1
Compare Source
Improvements 🔧
AccessoryArrayListType
is part of BC promise (#1967), thanks @enumag!object
tostring
result in an error (#1948), thanks @rvanvelzen!checkBenevolentUnionTypes
config (#1940), thanks @VincentLanglet!Bugfixes 🐛
mt_rand
return type (#1956), #8272, thanks @enumag!strtr
returnsnon-empty-string
(#1963), thanks @staabm!v1.9.0
Compare Source
Check out the article about this release!
Major new features 🚀
@phpstan-assert
,@phpstan-assert-if-true
,@phpstan-assert-if-false
(#1317), #7110, #8186, thanks @rvanvelzen!@phpstan-self-out
/@phpstan-this-out
support (#1799), thanks @rvanvelzen!@param-out
support (#1804), #7231, #6871, #6186, #4372, #5785, thanks @staabm!ClassReflection::getAllowedSubTypes()
(#1477), thanks @jiripudil!checkBenevolentUnionTypes
to strictly check BenevolentUnionType (#1930), #8223, thanks @VincentLanglet!Bleeding edge 🔪
list
type (#1751), #3311, #8185, #6243, thanks @rvanvelzen!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
: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 🔧
non-negative-int
andnon-positive-int
(#1803), thanks @rvanvelzen!NonexistentOffsetInArrayDimFetchCheck
(#1801), thanks @herndlm!@method
extension to look at@throws
in __call (#1842), #8163, thanks @VincentLanglet!$this
/static
in conditional return types (#1863), thanks @rvanvelzen!mb_convert_case()
andmb_convert_kana()
(#1866), thanks @zonuexe!callable-object
andcallable-string
(#1906), thanks @rvanvelzen!FunctionReflection
/ExtendedMethodReflection::returnsByReference()
(#1899), #6005, thanks @staabm!MutatingScope::enterNamespace()
is part of BC promise (phpstan/phpstan-src@92732ca)Bugfixes 🐛
Scope
orFunctionReflection
in userland class (phpstan/phpstan-src@2796f8d)no-named-arguments
implies variadic argument is alist
(#1796), thanks @herndlm!Countable
incount()
(#1876), thanks @staabm!RuleLevelHelper::accepts()
for constant arrays (#1911), #8209, thanks @rvanvelzen!get_object_var()
as private property read (#1902), #3654, thanks @vovochka404!@param-out
(phpstan/phpstan-src@cf40007)$this
in nativeExpressionTypes (#1936), thanks @rajyan!@phpstan-self-out
(#1949), thanks @staabm!Function signature fixes 🤖
mb_check_encoding()
acceptsarray<string>
in PHP 7.2+ (#1867), thanks @zonuexe!Internals 🔍
Type::getConstantArrays
as successor forTypeUtils::getOldConstantArrays
(#1684), thanks @herndlm!TypeUtils::getArrays()
andTypeUtils::getAnyArrays()
(#1687), thanks @herndlm!Type::getLastIterableValueType()
(#1811), thanks @herndlm!Type::getFirstIterableValueType()
(#1811), thanks @herndlm!Type::getFirstIterableKeyType()
andType::getLastIterableKeyType()
(#1812), #8152, thanks @herndlm!JustNullableTypeTrait
(#1821), thanks @herndlm!Type::isConstantArray()
(#1822), thanks @herndlm!getConstantArrays()
usage withisConstantArray()
(#1827), thanks @herndlm!Type::getArraySize()
(#1828), thanks @herndlm!Type::flipArray()
(#1832), thanks @herndlm!Type::getKeysArray()
andType::getValuesArray()
(#1851), thanks @herndlm!FunctionReflection::getDocComment()
(#1834), thanks @staabm!Type::popArray()
andType::shiftArray()
(#1847), thanks @herndlm!Type::shuffleArray()
(#1853), thanks @herndlm!ConstantArrayType::generalizeToArray()
(#1856), thanks @herndlm!array_pop
/array_shift
arg (#1864), thanks @herndlm!ArrayType::castToArrayKey()
withType::toArrayKey()
(#1841), thanks @rvanvelzen!Type::fillKeysArray()
(#1869), thanks @herndlm!ErrorType
for invalid keys (#1869), thanks @herndlm!is_(int,object,resource,scalar)
extensions with stubs (#1884), thanks @BackEndTea!pow()
return type extension to re-useBinaryOp\Pow
type inference (#1900), thanks @staabm!Type::getArrays()
usage inInvalidKeyInArrayDimFetchRule
(#1872), thanks @herndlm!Type::searchArray()
(#1874), thanks @herndlm!variableTypes
to save byexprString
(#1909), thanks @rajyan!variableTypes
andmoreSpecificTypes
(#1919), thanks @rajyan!::set-*
in GitHub Actions (#1917), thanks @rez1dent3!Type::intersectKeyArray()
(#1916), thanks @herndlm!Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.