Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore(deps): update dependency phpstan/phpstan to ~1.10.0 (#87)
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [phpstan/phpstan](https://togithub.com/phpstan/phpstan) | require-dev | minor | `~1.9.0` -> `~1.10.0` | --- ### Release Notes <details> <summary>phpstan/phpstan</summary> ### [`v1.10.6`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.6) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.5...1.10.6) # Bleeding edge πͺ - Report narrowing `PHPStan\Type\Type` interface via `@var` (phpstan/phpstan-src@713b98f), [https://github.com/nunomaduro/larastan/issues/1567#issuecomment-1460445389](https://togithub.com/nunomaduro/larastan/issues/1567#issuecomment-1460445389) - Check invalid PHPDocs in previously unchecked statement types (phpstan/phpstan-src@9780d35) - InvalidPHPStanDocTagRule in StubValidator (phpstan/phpstan-src@9c2552b) *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](https://phpstan.org/blog/what-is-bleeding-edge)* # Improvements π§ - InvalidPHPStanDocTagRule - add forgotten handling of ClassConst (phpstan/phpstan-src@d943d58) # Bugfixes π - Fix false positive with `array_combine()` on PHP 8+ ([#​2276](https://togithub.com/phpstan/phpstan-src/pull/2276)), [#​9011](https://togithub.com/phpstan/phpstan/issues/9011), thanks [@​staabm](https://togithub.com/staabm)! - Ignore Nop nodes in NodeScopeResolver when creating UnreachableStatementNode ([#​2279](https://togithub.com/phpstan/phpstan-src/pull/2279)), [#​8966](https://togithub.com/phpstan/phpstan/issues/8966), thanks [@​herndlm](https://togithub.com/herndlm)! - Fix wrong positives about templates in conditional types ([#​2241](https://togithub.com/phpstan/phpstan-src/pull/2241)), [#​8609](https://togithub.com/phpstan/phpstan/issues/8609), [#​7310](https://togithub.com/phpstan/phpstan/issues/7310), [#​8408](https://togithub.com/phpstan/phpstan/issues/8408), thanks [@​KmeCnin](https://togithub.com/KmeCnin)! ### [`v1.10.5`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.5) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.4...1.10.5) # Improvements π§ - Check local type aliases above traits (phpstan/phpstan-src@4654c16) # Bugfixes π - Fix type aliases in method-level template types (phpstan/phpstan-src@c926144), [#​9008](https://togithub.com/phpstan/phpstan/issues/9008) - Fix type aliases in traits (phpstan/phpstan-src@60021c2), [#​5091](https://togithub.com/phpstan/phpstan/issues/5091) - Fix interface accepting a Closure (phpstan/phpstan-src@0dbe3ab), [#​9006](https://togithub.com/phpstan/phpstan/issues/9006) - Process enum case expression (phpstan/phpstan-src@f64b27c), [#​9005](https://togithub.com/phpstan/phpstan/issues/9005) - Fixed missing processing of UseUse and GroupUse (phpstan/phpstan-src@b797512) ### [`v1.10.4`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.4) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.3...1.10.4) # Improvements π§ - Remove 3 leading spaces in PHAR ([#​2254](https://togithub.com/phpstan/phpstan-src/pull/2254)), [#​8952](https://togithub.com/phpstan/phpstan/issues/8952), thanks [@​ruudk](https://togithub.com/ruudk)! - Add missing newline at the end of the file ([#​2254](https://togithub.com/phpstan/phpstan-src/pull/2254)), thanks [@​ruudk](https://togithub.com/ruudk)! - RuleError interfaces are part of BC promise (phpstan/phpstan-src@aed9319) - Update nikic/php-parser (phpstan/phpstan-src@dda95b4) - Update BetterReflection ([#​2274](https://togithub.com/phpstan/phpstan-src/pull/2274)), [#​8889](https://togithub.com/phpstan/phpstan/issues/8889) # Bugfixes π - Fix bug with `array_column` ([#​2244](https://togithub.com/phpstan/phpstan-src/pull/2244)), [#​8917](https://togithub.com/phpstan/phpstan/issues/8917), thanks [@​VincentLanglet](https://togithub.com/VincentLanglet)! - Improve `filter_var()` handling of a couple of simple scalars and null ([#​2262](https://togithub.com/phpstan/phpstan-src/pull/2262)), thanks [@​herndlm](https://togithub.com/herndlm)! - Fix `value-of` for multiple enums (phpstan/phpstan-src@3adc91d), [#​8983](https://togithub.com/phpstan/phpstan/issues/8983) - Fix `->value` on unions of enums (phpstan/phpstan-src@05b85ba), [#​9000](https://togithub.com/phpstan/phpstan/issues/9000) # Function signature fixes π€ - Fix return type of `Ds\Sequence::copy()` ([#​1954](https://togithub.com/phpstan/phpstan-src/pull/1954)), thanks [@​MidnightDesign](https://togithub.com/MidnightDesign)! - Fix `password_hash()` return type ([#​2260](https://togithub.com/phpstan/phpstan-src/pull/2260)), [#​5978](https://togithub.com/phpstan/phpstan/issues/5978), thanks [@​VincentLanglet](https://togithub.com/VincentLanglet)! ### [`v1.10.3`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.3) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.2...1.10.3) # Improvements π§ - Add support for `@not-deprecated` annotation ([#​2255](https://togithub.com/phpstan/phpstan-src/pull/2255)), [https://github.com/phpstan/phpstan/discussions/7422](https://togithub.com/phpstan/phpstan/discussions/7422), thanks [@​stof](https://togithub.com/stof)! # Bugfixes π - Fix arithmetic operations with BenevolentUnionType (phpstan/phpstan-src@f882eff), [#​8938](https://togithub.com/phpstan/phpstan/issues/8938) - Fix native return type of `array_chunk()` (phpstan/phpstan-src@e4a6d20), [#​8956](https://togithub.com/phpstan/phpstan/issues/8956) - Support for property fetch in initializers (phpstan/phpstan-src@53c643d), [#​8957](https://togithub.com/phpstan/phpstan/issues/8957) - ObjectType - fix enum property with subtracted type (phpstan/phpstan-src@eb00fd2), [#​8828](https://togithub.com/phpstan/phpstan/issues/8828), [#​8486](https://togithub.com/phpstan/phpstan/issues/8486) ### [`v1.10.2`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.2) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.1...1.10.2) # Improvements π§ - Allow generating baseline in .php format (phpstan/phpstan-src@8260032), [#​8870](https://togithub.com/phpstan/phpstan/issues/8870) - See documentation: https://phpstan.org/user-guide/baseline#php-baseline-format-instead-of-neon # Function signature fixes π€ - Instances of `object` returned by `db2_*()` functions are always instances of `stdClass` ([#​2249](https://togithub.com/phpstan/phpstan-src/pull/2249)), thanks [@​phansys](https://togithub.com/phansys)! ### [`v1.10.1`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.1) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.0...1.10.1) # Bugfixes π - Fix match expression and `treatPhpDocTypesAsCertain: false` ([#​2248](https://togithub.com/phpstan/phpstan-src/pull/2248)), [#​8932](https://togithub.com/phpstan/phpstan/issues/8932), thanks [@​VincentLanglet](https://togithub.com/VincentLanglet)! - Fix calling dynamic return type extensions on nullable types (phpstan/phpstan-src@7331bc5) - Fix edge case with `in_array` and enums (phpstan/phpstan-src@7d6f0f6) ### [`v1.10.0`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.0) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.9.18...1.10.0) **Read the article about this release: [PHPStan 1.10 Comes With a Lie Detector](https://phpstan.org/blog/phpstan-1-10-comes-with-lie-detector)** # Major new features π - "Always true" conditions in the last `elseif` branch and last match expression arm are not reported by default ([#​2105](https://togithub.com/phpstan/phpstan-src/pull/2105)), [#​8042](https://togithub.com/phpstan/phpstan/issues/8042), [#​8485](https://togithub.com/phpstan/phpstan/issues/8485), [#​7721](https://togithub.com/phpstan/phpstan/issues/7721), [#​4242](https://togithub.com/phpstan/phpstan/issues/4242), [#​8240](https://togithub.com/phpstan/phpstan/issues/8240), thanks [@​staabm](https://togithub.com/staabm)! - Set [`reportAlwaysTrueInLastCondition`](https://phpstan.org/config-reference#reportalwaystrueinlastcondition) to `true` to have them reported again - Note: "Always true" conditions in PHPStan 1.x are reported with Bleeding Edge enabled, or with phpstan-strict-rules installed, or with [relevant options](https://togithub.com/phpstan/phpstan-strict-rules/blob/66b378f5b242130908b8a2222bf8110f14f4375a/rules.neon#L4-L7) enabled separately. In PHPStan 2.0 they're going to be always reported, except for the last `elseif` branch and last match expression arm. - Deprecate various `instanceof *Type` in favour of new methods on `Type` interface, (phpstan/phpstan-src@436e6d3), learn more: [Why Is instanceof \*Type Wrong and Getting Deprecated?](https://phpstan.org/blog/why-is-instanceof-type-wrong-and-getting-deprecated) - Deprecations in your custom rules and extensions will be reported in Bleeding Edge, or with `phpstan-deprecation-rules` installed - Explain why type isn't accepted by another type in less intuitive scenarios, [#​3281](https://togithub.com/phpstan/phpstan/issues/3281), [#​6787](https://togithub.com/phpstan/phpstan/issues/6787) - Some examples: https://phpstan.org/r/61cfbb65-1a04-471a-a5c5-d61f0540ae1d, https://phpstan.org/r/839f1fd2-d66a-4356-af21-3fe171d83fd1, https://phpstan.org/r/2bea7ece-6b26-4dc9-a1cf-d2f0e7fbb9d6, https://phpstan.org/r/fed1c275-46d0-434f-b9c4-3212f4df6d1c, https://phpstan.org/r/24a23b74-af27-4443-986c-04af61427d50 # Bleeding edge πͺ - Validate inline PHPDoc `@var` tag type against native type (phpstan/phpstan-src@a69e3bc) - Set [`reportWrongPhpDocTypeInVarTag`](https://phpstan.org/config-reference#reportwrongphpdoctypeinvartag) to `true` to have all types validated, not just native ones - Always report always true conditions, except for last elseif and match arm ([#​2105](https://togithub.com/phpstan/phpstan-src/pull/2105)), thanks [@​staabm](https://togithub.com/staabm)! - Disable "unreachable branches" rules: UnreachableIfBranchesRule, UnreachableTernaryElseBranchRule, unreachable arm error in MatchExpressionRule - Because "always true" is always reported, these are no longer needed - IncompatibleDefaultParameterTypeRule for closures (phpstan/phpstan-src@0264f5b) - New `RuleLevelHelper::accepts()` behaviour (phpstan/phpstan-src@941fc81) - Check template type variance in `@param-out` (phpstan/phpstan-src@7ceb19d), [https://github.com/phpstan/phpstan/issues/8880#issuecomment-1426971473](https://togithub.com/phpstan/phpstan/issues/8880#issuecomment-1426971473) *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](https://phpstan.org/blog/what-is-bleeding-edge)* # Improvements π§ - Implement identical/equal comparisons on EnumCaseObjectType ([#​2105](https://togithub.com/phpstan/phpstan-src/pull/2105)), thanks [@​staabm](https://togithub.com/staabm)! - MatchExpressionRule - use ConstantConditionRuleHelper to remove some duplicate errors (phpstan/phpstan-src@7380ed0) - Improvements of `MutatingScope::getNativeType()` ([#​1943](https://togithub.com/phpstan/phpstan-src/pull/1943)), [#​4689](https://togithub.com/phpstan/phpstan/issues/4689), [#​7578](https://togithub.com/phpstan/phpstan/issues/7578), [#​6260](https://togithub.com/phpstan/phpstan/issues/6260) - Allow default values for allow-private-mutation properties ([#​2178](https://togithub.com/phpstan/phpstan-src/pull/2178)), [#​8701](https://togithub.com/phpstan/phpstan/issues/8701), thanks [@​zonuexe](https://togithub.com/zonuexe)! - Support `treatPhpDocTypesAsCertain` in NumberComparisonOperatorsConstantConditionRule (phpstan/phpstan-src@649eb70), [#​6776](https://togithub.com/phpstan/phpstan/issues/6776), [#​7075](https://togithub.com/phpstan/phpstan/issues/7075) - JsonErrorFormatter - strip console-specific characters from tip (phpstan/phpstan-src@6419da7) - `InClassMethodNode` - add `getClassReflection()` (phpstan/phpstan-src@c4ee0b8) - PhpFunctionFromParserNodeReflection and PhpMethodFromParserNodeReflection are part of BC promise (phpstan/phpstan-src@8107179) - AttributesCheck - detect deprecated attributes (phpstan/phpstan-src@e46b0b4) - Introduce `Type::getTemplateType()` and deprecate `GenericTypeVariableResolver` (phpstan/phpstan-src@b73a8aa, phpstan/phpstan-src@01b4d4e) - Implement PHP version dependent loose const comparison ([#​2220](https://togithub.com/phpstan/phpstan-src/pull/2220), [#​2225](https://togithub.com/phpstan/phpstan-src/pull/2225)), thanks [@​staabm](https://togithub.com/staabm)! # Bugfixes π - Fix LateResolvableTypeTrait (phpstan/phpstan-src@bc28286) - StrCaseFunctionsReturnTypeExtension - do not throw ShouldNotHappenException, it might happen if mbstring is not enabled and the polyfill is not implemented (phpstan/phpstan-src@c015e47), [#​8925](https://togithub.com/phpstan/phpstan/issues/8925) # Function signature fixes π€ - Fix `PDO::sqliteCreateFunction` ([#​2208](https://togithub.com/phpstan/phpstan-src/pull/2208)), [#​8802](https://togithub.com/phpstan/phpstan/issues/8802), thanks [@​VincentLanglet](https://togithub.com/VincentLanglet)! - Use "numeric-string" type for some MySQLi functions ([#​2223](https://togithub.com/phpstan/phpstan-src/pull/2223), [#​2224](https://togithub.com/phpstan/phpstan-src/pull/2224)), thanks [@​phansys](https://togithub.com/phansys)! - Update param and return type for `db2_autocommit()` ([#​2239](https://togithub.com/phpstan/phpstan-src/pull/2239)), thanks [@​phansys](https://togithub.com/phansys)! # Internals π - Deprecate `TypeUtils::getDirectClassNames()` and `instanceof TypeWithClassName`, use `Type::getObjectClassNames()` instead ([#​1924](https://togithub.com/phpstan/phpstan-src/pull/1924)), thanks [@​herndlm](https://togithub.com/herndlm)! - Remove dead code in UnionType ([#​2194](https://togithub.com/phpstan/phpstan-src/pull/2194)), thanks [@​staabm](https://togithub.com/staabm)! - Use `isSuperTypeOf()` instead of `accepts()` in the right places (phpstan/phpstan-src@ddb9dc5) - Modernized `IncompatibleDefaultParameterTypeRule` (phpstan/phpstan-src@a79ad03) - InClassMethodNode always contains PhpMethodFromParserNodeReflection (phpstan/phpstan-src@01a7897) - InFunctionNode always contains PhpFunctionFromParserNodeReflection (phpstan/phpstan-src@e864b24) - Modernized InClassMethodNode rules (phpstan/phpstan-src@c3da6a9) - Modernized InFunctionNode rules (phpstan/phpstan-src@b736ddc) - Introduce `Type::acceptsWithReason()` (phpstan/phpstan-src@b763bd9), [#​3281](https://togithub.com/phpstan/phpstan/issues/3281) - Fix invalid phpdocs missing null ([#​2213](https://togithub.com/phpstan/phpstan-src/pull/2213)), thanks [@​janedbal](https://togithub.com/janedbal)! - NodeScopeResolver::earlyTerminatingMethodNames remove useless default ([#​2214](https://togithub.com/phpstan/phpstan-src/pull/2214)), [#​8830](https://togithub.com/phpstan/phpstan/issues/8830), thanks [@​janedbal](https://togithub.com/janedbal)! - Skip `testEditorUrlWithRelativePath()` test on PhpStorm console ([#​2229](https://togithub.com/phpstan/phpstan-src/pull/2229)), thanks [@​staabm](https://togithub.com/staabm)! - VarianceCheck - accept only ParametersAcceptorWithPhpDocs (phpstan/phpstan-src@7da13f7) - Remove duplicate method definition from ConstantType interface (phpstan/phpstan-src@61fa3a1) - `Type::isEnum()` (phpstan/phpstan-src@93113cb) - `Type::getObjectClassReflections()` (phpstan/phpstan-src@4c7046e) </details> --- ### 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/open-feature/php-sdk). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4xNDguMCIsInVwZGF0ZWRJblZlciI6IjM0LjE2MC4wIn0=--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
- Loading branch information