phpstan/phpstan (phpstan/phpstan)
### [`v1.10.44`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.44)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.43...1.10.44)
# Improvements 🔧
- PHP 8.3: support for dynamic class constant fetches ([RFC](https://wiki.php.net/rfc/dynamic_class_constant_fetch))
- PHP 8.3: support for anonymous readonly class
- RedefinedParametersRule ([#2755](https://togithub.com/phpstan/phpstan-src/pull/2755)), [#8025](https://togithub.com/phpstan/phpstan/issues/8025), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- AbstractPrivateMethodRule ([#2756](https://togithub.com/phpstan/phpstan-src/pull/2756)), thanks [@staabm](https://togithub.com/staabm)!
- ReadOnlyClassRule (https://github.com/phpstan/phpstan-src/commit/02b2e3d0885528724a1af91a1758b8f36e2167f4)
- InvalidLexicalVariablesInClosureUseRule ([#2757](https://togithub.com/phpstan/phpstan-src/pull/2757)), [#1855](https://togithub.com/phpstan/phpstan/issues/1855), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- AbstractProtectedMethodRule ([#2758](https://togithub.com/phpstan/phpstan-src/pull/2758)), thanks [@staabm](https://togithub.com/staabm)!
- VarTagTypeRuleHelper: do not allow widening `list` to `mixed[]` ([#2760](https://togithub.com/phpstan/phpstan-src/pull/2760)), thanks [@janedbal](https://togithub.com/janedbal)!
# Bugfixes 🐛
- Re-add nullable type to interface to fix `Carbon` PHPStan extension ([#2762](https://togithub.com/phpstan/phpstan-src/pull/2762)), thanks [@CalebDW](https://togithub.com/CalebDW)!
- Fix named arguments for few multi-variant methods ([#2748](https://togithub.com/phpstan/phpstan-src/pull/2748)), thanks [@schlndh](https://togithub.com/schlndh)!
- Fix overriding `SoapClient` old-style constructor (https://github.com/phpstan/phpstan-src/commit/7765768fd54617616107f76489702d8bcac3d4d2), [#10165](https://togithub.com/phpstan/phpstan/issues/10165)
- Apply same fix in MethodSignatureRule from https://github.com/phpstan/phpstan-src/commit/be2b4152837ce05273c55937b8a56daa19cb4d81 (https://github.com/phpstan/phpstan-src/commit/85fcd5f35e5418ce78b7a0734facf11d079fe160), [#10166](https://togithub.com/phpstan/phpstan/issues/10166)
# Function signature fixes 🤖
- Remove fake params from `setcookie`/`setrawcookie` ([#2752](https://togithub.com/phpstan/phpstan-src/pull/2752)), [#10171](https://togithub.com/phpstan/phpstan/issues/10171), thanks [@schlndh](https://togithub.com/schlndh)!
### [`v1.10.43`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.43)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.42...1.10.43)
# Improvements 🔧
- Update `phpstan/phpdoc-parser`
- Fix HTML description detection for PhpStorm stubs ([https://github.com/phpstan/phpdoc-parser/pull/220](https://togithub.com/phpstan/phpdoc-parser/pull/220)), thanks [@schlndh](https://togithub.com/schlndh)!
- Make `ReflectionEnum` generic (https://github.com/phpstan/phpstan-src/commit/9ce8faf53c7a78c7887a2c33f9d34944605d6aae)
# Bugfixes 🐛
- Merge right scope of `??=` with scope before the expression (https://github.com/phpstan/phpstan-src/commit/846f44ee6e027853352674052510bc172a1bfc89), [#10151](https://togithub.com/phpstan/phpstan/issues/10151), [#10131](https://togithub.com/phpstan/phpstan/issues/10131)
- Fix return type of parent calls for SplHeap and other internal methods ([#2622](https://togithub.com/phpstan/phpstan-src/pull/2622)), [#7162](https://togithub.com/phpstan/phpstan/issues/7162), [#9867](https://togithub.com/phpstan/phpstan/issues/9867), thanks [@schlndh](https://togithub.com/schlndh)!
- `stdClass` does not have `__get` method (https://github.com/phpstan/phpstan-src/commit/baf359ea3cfa99368eb94d80887cfd7bb0a00b85), [#10149](https://togithub.com/phpstan/phpstan/issues/10149)
- Fix signature check of method from trait (https://github.com/phpstan/phpstan-src/commit/be2b4152837ce05273c55937b8a56daa19cb4d81), [#10153](https://togithub.com/phpstan/phpstan/issues/10153)
- All `universalObjectCratesClasses` allow dynamic properties (https://github.com/phpstan/phpstan-src/commit/2ec416e11202f150b880619c5bc6416bf17b8e3e)
- Fix infinite recursion with self-referencing class constant (https://github.com/phpstan/phpstan-src/commit/93af41bf52b47bbfbc533efea75f515a4caddc0e), [#10147](https://togithub.com/phpstan/phpstan/issues/10147)
# Internals 🔍
- Add named arguments variants to reflection golden test ([#2743](https://togithub.com/phpstan/phpstan-src/pull/2743)), thanks [@schlndh](https://togithub.com/schlndh)!
### [`v1.10.42`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.42)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.41...1.10.42)
This release closes **25 issues**! 🎉
# Major new features 🚀
- PHP 8.3 - support for natively typed class constants ([RFC](https://wiki.php.net/rfc/typed_class_constants))
- PHP 8.3 - support for `#[\Override]` attribute (https://github.com/phpstan/phpstan-src/commit/e9a563993f76e2504e4f6640a5a3da2e86ba8808) ([RFC](https://wiki.php.net/rfc/marking_overriden_methods))
- New configuration option: `checkMissingOverrideMethodAttribute` (https://phpstan.org/config-reference#checkmissingoverridemethodattribute) (https://github.com/phpstan/phpstan-src/commit/ac4d3de8df284308b4879a5a01168a10c18c0bea)
# Bleeding edge 🔪
- Detect overriding `@final` method in OverridingMethodRule, [#9135](https://togithub.com/phpstan/phpstan/issues/9135)
- MethodSignatureRule - look at abstract trait method (https://github.com/phpstan/phpstan-src/commit/5fd8cee591ce1b07daa5f98a1ddcdfc723f1b5eb)
- MagicConstantContextRule ([#2741](https://togithub.com/phpstan/phpstan-src/pull/2741)), [#10099](https://togithub.com/phpstan/phpstan/issues/10099), thanks [@staabm](https://togithub.com/staabm)!
*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 🔧
- Add ConstantsInTraitsRule ([#2718](https://togithub.com/phpstan/phpstan-src/pull/2718)), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- Add NoncapturingCatchRule ([#2721](https://togithub.com/phpstan/phpstan-src/pull/2721)), [#8663](https://togithub.com/phpstan/phpstan/issues/8663), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- Detect non-abstract methods with no body ([#2730](https://togithub.com/phpstan/phpstan-src/pull/2730)), [#4244](https://togithub.com/phpstan/phpstan/issues/4244), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- Detect properties declared in interface ([#2731](https://togithub.com/phpstan/phpstan-src/pull/2731)), [#8915](https://togithub.com/phpstan/phpstan/issues/8915), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- Add VariadicParametersDeclarationRule ([#2733](https://togithub.com/phpstan/phpstan-src/pull/2733)), [#3802](https://togithub.com/phpstan/phpstan/issues/3802), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- Add InvalidCallablePropertyTypeRule ([#2745](https://togithub.com/phpstan/phpstan-src/pull/2745)), [#4424](https://togithub.com/phpstan/phpstan/issues/4424), thanks [@paulbalandan](https://togithub.com/paulbalandan)!
- ConflictingTraitConstantsRule (https://github.com/phpstan/phpstan-src/commit/f94a3c365e6bd089695376e06f9abdf81f9f24fc)
- Read class constant type when generalizing the type for `dynamicConstantNames` (https://github.com/phpstan/phpstan-src/commit/cb9571b5c0b34bd0e26c9d085281842b3d829e6c)
- Rework prototype searching in OverridingMethodRule (https://github.com/phpstan/phpstan-src/commit/4b2ffb82f12c98e65dd6387976cabf8bebc0dc39), [#10101](https://togithub.com/phpstan/phpstan/issues/10101), [#7541](https://togithub.com/phpstan/phpstan/issues/7541), [#10043](https://togithub.com/phpstan/phpstan/issues/10043), [#7859](https://togithub.com/phpstan/phpstan/issues/7859), [#8081](https://togithub.com/phpstan/phpstan/issues/8081), [#8500](https://togithub.com/phpstan/phpstan/issues/8500), [#9014](https://togithub.com/phpstan/phpstan/issues/9014)
- OverridingMethodRule - search for method prototype in traits (https://github.com/phpstan/phpstan-src/commit/2df14af6e13cfa2b725c325f3f39eb87476d37bd)
- VarTagTypeRuleHelper: fix widening array shapes ([#2738](https://togithub.com/phpstan/phpstan-src/pull/2738)), [#10130](https://togithub.com/phpstan/phpstan/issues/10130), thanks [@janedbal](https://togithub.com/janedbal)!
- Note about Xdebug with `--debug` (https://github.com/phpstan/phpstan-src/commit/c534f8cc79680e63a418760aa000c5bb7e3dfb0b)
- FunctionSignatureMapProvider - cache data statically (https://github.com/phpstan/phpstan-src/commit/394064bb332d9bdd988895f9c63de6eb9ea538c5), [#10039](https://togithub.com/phpstan/phpstan/issues/10039)
# Bugfixes 🐛
- Star projection is always within template type bounds ([#2715](https://togithub.com/phpstan/phpstan-src/pull/2715)), [#10097](https://togithub.com/phpstan/phpstan/issues/10097), thanks [@jiripudil](https://togithub.com/jiripudil)!
- Support `non-empty-string` in `str_shuffle()` ([#2717](https://togithub.com/phpstan/phpstan-src/pull/2717)), thanks [@staabm](https://togithub.com/staabm)!
- Look if userland prototype has `ReturnTypeWillChange` or not (https://github.com/phpstan/phpstan-src/commit/eb0c7a1308ad6d45eca98e5f034529aca640b513), [#9615](https://togithub.com/phpstan/phpstan/issues/9615)
- Fix wrong tip about returning a list (https://github.com/phpstan/phpstan-src/commit/00adfaa7d1cb427262577df705264701b7de9670, https://github.com/phpstan/phpstan-src/commit/00a9d94685b297d3b1b09d7fe4398b60c3036401)
- Fix parameter names for multi-variant functions ([#2726](https://togithub.com/phpstan/phpstan-src/pull/2726)), [#9018](https://togithub.com/phpstan/phpstan/issues/9018), [#9399](https://togithub.com/phpstan/phpstan/issues/9399), [#9923](https://togithub.com/phpstan/phpstan/issues/9923), [#9823](https://togithub.com/phpstan/phpstan/issues/9823), thanks [@schlndh](https://togithub.com/schlndh)!
- Fix iterator_to_array, iterator_count for PHP 8.2 ([#2625](https://togithub.com/phpstan/phpstan-src/pull/2625)), [#9793](https://togithub.com/phpstan/phpstan/issues/9793), [#7760](https://togithub.com/phpstan/phpstan/issues/7760), thanks [@schlndh](https://togithub.com/schlndh)!
- Update array_filter signature to allow null as callback ([#2740](https://togithub.com/phpstan/phpstan/issues/2740)) ([#2740](https://togithub.com/phpstan/phpstan-src/pull/2740)), thanks [@andyexeter](https://togithub.com/andyexeter)!
# Function signature fixes 🤖
- Fix return value of `mailparse_msg_get_part()` ([#2722](https://togithub.com/phpstan/phpstan-src/pull/2722)), thanks [@jlherren](https://togithub.com/jlherren)!
- Update functionMaps ([#2699](https://togithub.com/phpstan/phpstan-src/pull/2699)), thanks [@zonuexe](https://togithub.com/zonuexe)!
- Change `iptcparse` return type ([#2727](https://togithub.com/phpstan/phpstan-src/pull/2727)), thanks [@ManuelHu](https://togithub.com/ManuelHu)!
# Internals 🔍
- Create DirectoryCreator helper class ([#2697](https://togithub.com/phpstan/phpstan-src/pull/2697)), thanks [@CalebDW](https://togithub.com/CalebDW)!
- Use PHP 8.3 in Name Collision Detector (https://github.com/phpstan/phpstan-src/commit/8cd239e1fbaebcc5d4a57a757724e31ad4b6e36b)
- Golden test for reflection ([#2679](https://togithub.com/phpstan/phpstan-src/pull/2679)), thanks [@schlndh](https://togithub.com/schlndh)!
- Fully qualify the name of the `#[\Override]` attribute in error messages ([#10136](https://togithub.com/phpstan/phpstan-src/pull/10136)), thanks [@TimWolla](https://togithub.com/TimWolla)!
- RuleTestCase - allow null tip (https://github.com/phpstan/phpstan-src/commit/f384b43c911ee465abcc479d3efddf97ba2309f8)
Configuration
📅 Schedule: Branch creation - "before 4pm on Wednesday except before 9am on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
1.10.41
->1.10.44
Release Notes
phpstan/phpstan (phpstan/phpstan)
### [`v1.10.44`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.44) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.43...1.10.44) # Improvements 🔧 - PHP 8.3: support for dynamic class constant fetches ([RFC](https://wiki.php.net/rfc/dynamic_class_constant_fetch)) - PHP 8.3: support for anonymous readonly class - RedefinedParametersRule ([#2755](https://togithub.com/phpstan/phpstan-src/pull/2755)), [#8025](https://togithub.com/phpstan/phpstan/issues/8025), thanks [@paulbalandan](https://togithub.com/paulbalandan)! - AbstractPrivateMethodRule ([#2756](https://togithub.com/phpstan/phpstan-src/pull/2756)), thanks [@staabm](https://togithub.com/staabm)! - ReadOnlyClassRule (https://github.com/phpstan/phpstan-src/commit/02b2e3d0885528724a1af91a1758b8f36e2167f4) - InvalidLexicalVariablesInClosureUseRule ([#2757](https://togithub.com/phpstan/phpstan-src/pull/2757)), [#1855](https://togithub.com/phpstan/phpstan/issues/1855), thanks [@paulbalandan](https://togithub.com/paulbalandan)! - AbstractProtectedMethodRule ([#2758](https://togithub.com/phpstan/phpstan-src/pull/2758)), thanks [@staabm](https://togithub.com/staabm)! - VarTagTypeRuleHelper: do not allow widening `listConfiguration
📅 Schedule: Branch creation - "before 4pm on Wednesday except before 9am on Wednesday" in timezone America/New_York, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, 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.