This repository was archived by the owner on Feb 6, 2025. It is now read-only.
Update PHPStan packages to v2 (major) #883
Open
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.0->^2.0^1.0->^2.0^1.0->^2.0^1.0->^2.0^1.0->^2.0Release Notes
phpstan/phpstan (phpstan/phpstan)
v2.1.2Compare Source
Improvements 🔧
Bugfixes 🐛
Function signature fixes 🤖
falseto the return type (#3730), thanks @sreichel!samesitecookie argument precision (phpstan/phpstan-src@a54cdb0)Internals 🔍
ConstantArrayType::findTypeAndMethodNames()used only once (phpstan/phpstan-src@30b9cd8)v2.1.1Compare Source
Improvements 🔧
getNextStatementsin UnreachableStatementNode (#3745), thanks @samsonasik!@phpstan-consistent-constructor(#3687), #12137, thanks @herndlm!checkUninitializedPropertiesis enabled (phpstan/phpstan-src@ca86412)Bugfixes 🐛
Internals 🔍
propertyNameattributev2.1.0Compare Source
Read all about this release on PHPStan's blog!
Major new features 🚀
#[Deprecated]attribute (RFC)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 🔧
#[AllowDynamicProperties](#3738), #12281, thanks @staabm!parent::(phpstan/phpstan-src@41837b4)Bugfixes 🐛
preg_match()group containing start/end meta characters (#3740), #12297, thanks @staabm!Internals 🔍
In*Nodevirtual nodes for more precise Scope phpstan/phpstan-src@90e48fa)Scope::getConstantinstead (#3666), thanks @staabm!v2.0.4Compare Source
This release includes improvements and fixes from PHPStan 1.12.13.
Improvements 🔧
strictRulesInstalledparameter (#3729), thanks @staabm!Bugfixes 🐛
htmlspecialcharsandhtmlentitiesbeingnon-empty-stringwithout ENT_SUBSTITUTE flag (#3710), #12021, thanks @jack-worman!Function signature fixes 🤖
fgetcsvreturn type; never returns null (#3712), thanks @janedbal!apcu_cache_infoandapcu_sma_infosignatures (#3726, phpstan/phpstan-src@e7e8093), thanks @vindic!Internals 🔍
v2.0.3Compare Source
This release includes improvements and fixes from PHPStan 1.12.12.
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 🔧
Bugfixes 🐛
in_array(#3646), #12083, thanks @janedbal!Function signature fixes 🤖
Internals 🔍
Scope::getPhpVersion()(#3642), thanks @staabm!Printer::__construct()(#3680), thanks @samsonasik!v2.0.2Compare Source
Improvements 🔧
diagnosecommand (#3609), thanks @staabm!phpVersion.minandmaxin VersionCompareFunctionDynamicReturnTypeExtension (#3631), thanks @staabm!Internals 🔍
v2.0.1Compare Source
Bugfixes 🐛
v2.0.0Compare Source
Read more about PHPStan 2.0.
Check out the UPGRADING guide!.
Buy the PHPStan elephpant and T-shirts!
Major new features 🚀
mixedtypes strictly, not just explicitmixedlisttype (#1751), #3311, #8185, #6243, thanks @rvanvelzen!@readonlyrule that disallows default values (#1391), thanks @herndlm!@phpstan-consistent-constructor(#1296), thanks @canvural!is_a()orclass_parents()(phpstan/phpstan-src@c4a662a)new ReflectionMethod()(phpstan/phpstan-src@5363066)instanceofof classes not covered by backward compatibility promise (phpstan/phpstan-src@ff4d02d)instanceofof classes covered by backward compatibility promise but where the assumption might change (phpstan/phpstan-src@996bc69)@phpstan-self-out(phpstan/phpstan-src@6838669)@param-out(phpstan/phpstan-src@30c4b9e), #10260@param-closure-this(phpstan/phpstan-src@2fa539a), #10933@vartag type against native type (phpstan/phpstan-src@a69e3bc)reportWrongPhpDocTypeInVarTagtotrueto have all types validated, not just native onesreportAnyTypeWideningInVarTag: truefor stricter behaviour (#2840), thanks @janedbal!@phpstan-pureabove functions and methodsPHPStan\Type\Typeinterface via@var(phpstan/phpstan-src@713b98f), https://github.com/nunomaduro/larastan/issues/1567#issuecomment-1460445389@mixinPHPDoc tag above traits (phpstan/phpstan-src@0d0de94)@extends,@implements,@usefor unresolvable types (phpstan/phpstan-src@2bb5282), #11552@methodtags (phpstan/phpstan-src@5b7e474)@method@templatetags above traits (phpstan/phpstan-src@aadbf62)@propertytags (phpstan/phpstan-src@55ea2ae), #10752, #9356var_exportwithout$return=true(#3225), #11320, thanks @staabm!new/function call/method call/static method call on a separate line without any side effects even without@phpstan-purePHPDoc tag on the declaration sidecall_user_func()(#2479), thanks @staabm!array_filter()calls (#1077), #6840, thanks @leongersen!array_values()calls (#2917), thanks @kamil-zacek!@no-named-arguments(phpstan/phpstan-src@74ba8c2), #5968@phpstan-self-out(phpstan/phpstan-src@892b319)@mixin(phpstan/phpstan-src@3175c81)polluteScopeWithBlock(defaults totrue,falseinphpstan-strict-rules) (phpstan/phpstan-src@946cf18)@readonlyproperty and@immutableclass PHPDoc (#1295, #1335), #4082, thanks @herndlm!instanceof *Typein favour of new methods onTypeinterface, (phpstan/phpstan-src@436e6d3), learn more: Why Is instanceof *Type Wrong and Getting Deprecated?Improvements 🔧
exceptions.check.tooWideThrowTypemade true by default (phpstan/phpstan-src@1b1da3e)implicitThrowsto only look for explicit throw points in too-wide@throwsrules when set tofalse(phpstan/phpstan-src@a0e688c)GenericObjectType(#2818, #2821)RuleLevelHelper::accepts()behaviour (phpstan/phpstan-src@941fc81), #11119, #4174Throw_(phpstan/phpstan-src@22eef6d), #4912@param-out(phpstan/phpstan-src@56b2002)@finalmethod in OverridingMethodRule, #9135@param-out(phpstan/phpstan-src@7ceb19d), https://github.com/phpstan/phpstan/issues/8880#issuecomment-1426971473skipCheckGenericClasses(phpstan/phpstan-src@28c2c79)??/isset/emptywith different message (#1253), thanks @rajyan!is_array(#1191), thanks @herndlm!isset(), not just on PHP 8.2+ (#3476), thanks @ondrejmirtes!Collection<...>|Foo[]being resolved to Collection of Foo (phpstan/phpstan-src@fff8f09)PhpMethodReflectionandPhpFunctionReflection::isVariadic()(#3534), thanks @staabm!Bugfixes 🐛
mixedtype based on config (#2885), thanks @schlndh!Function signature fixes 🤖
0|positive-int(#1027), thanks @staabm!Imagickparameter types (#2334), thanks @zonuexe!max()/min()should expect non-empty-array (#2163), thanks @staabm!Closure::bind$newScopeparam (#2817), thanks @mvorisek!error_logerrors withmessage_type=2(#2428), #9380, thanks @staabm!FILE_NO_DEFAULT_CONTEXTinfile()(#2482), thanks @staabm!file()flags args (#2476, #2482), thanks @staabm!flock()operation flags (#2477), thanks @staabm!stream_socket_client()signature (#2519), thanks @staabm!scandir()signature (#2518), thanks @staabm!extract()signature (#2517), thanks @staabm!RecursiveIteratorIterator::__construct()parameter types (#2835), thanks @staabm!Localesignatures (#2880), thanks @devnix!$modeparameter for thecount()(#3190), thanks @kuma3!filter_input*type param type (#2271), thanks @herndlm!curl_setoptfunction signature based on 2nd arg (#1719), thanks @staabm!count_chars()(#3596), thanks @u01jmg3!Internals 🔍
$templateTagsis required (phpstan/phpstan-src@5b58f83)$usePathConstantsAsConstantStringmade required (phpstan/phpstan-src@f88d9ba)PhpMethodReflectionFactory::create()- all parameters are required (phpstan/phpstan-src@8bfbf8f)$nodeTypeand$acceptsNamedArgumentsmade required (phpstan/phpstan-src@4937527)$ignorableofcompare()method made required (phpstan/phpstan-src@f85a500)$dateTimeClassof DateTimeModifyReturnTypeExtension constructor made required (phpstan/phpstan-src@a8cd423)PhpVersionparameter to variousTypemethods (#3478), thanks @VincentLanglet!getClass()return types in extension interfaces (#1754), thanks @staabm!FunctionCallParametersCheck::check()parameters (phpstan/phpstan-src@710e09c)instanceof selfinConstantArrayType(#3552), thanks @herndlm!bashunit -aexit_code to check for errors (#3533), thanks @Chemaclass!v1.12.16Compare Source
Bugfixes 🐛
implode()(#3772), #11854, thanks @staabm!hash()return type (#3665), thanks @VincentLanglet!OpenSslEncryptParameterOutTypeExtension(#3753), thanks @paulbalandan!newfrom parent conConfiguration
📅 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 these updates again.
This PR was generated by Mend Renovate. View the repository job log.