phpstan/phpstan
### [`v1.10.54`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.54)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.53...1.10.54)
# Bleeding edge πͺ
- Revert "ParamAttributesRule - promoted property attribute needs to target both parameters and properties" (https://github.com/phpstan/phpstan-src/commit/02f66df2a2997ad39ee25c92b6a7f7102f09514f), [#10385](https://togithub.com/phpstan/phpstan/issues/10385)
- See PHP internals discussion: https://externals.io/message/111942#112021
*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 π§
- UsedNamesRule - level 0 ([#2849](https://togithub.com/phpstan/phpstan-src/pull/2849)), thanks [@lulco](https://togithub.com/lulco)!
# Bugfixes π
- Simplify TooWideClosureReturnTypehintRule (https://github.com/phpstan/phpstan-src/commit/a81df66485ea7c94655d70f322775e84bef871f9)
- Fix falsy isset for all expressions (https://github.com/phpstan/phpstan-src/commit/af14d50e2b5d1b2cf91813059cdc827be63fdb20), [#10373](https://togithub.com/phpstan/phpstan/issues/10373)
### [`v1.10.53`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.53)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.52...1.10.53)
# Improvements π§
- Impl `str_increment` / `str_decrement` return type extension ([#2776](https://togithub.com/phpstan/phpstan-src/pull/2776)), thanks [@zonuexe](https://togithub.com/zonuexe)!
# Bugfixes π
- Fix loading polyfills twice (https://github.com/phpstan/phpstan/commit/3e7c7c7c6306157e6967ef436e952aeba1097edb?w=1), [#10387](https://togithub.com/phpstan/phpstan/issues/10387)
- `array_udiff()` comparator return type is too strict ([#2822](https://togithub.com/phpstan/phpstan-src/pull/2822)), [#9697](https://togithub.com/phpstan/phpstan/issues/9697), thanks [@staabm](https://togithub.com/staabm)!
# Internals π
- Simplify default return path in extensions ([#2816](https://togithub.com/phpstan/phpstan-src/pull/2816)), thanks [@staabm](https://togithub.com/staabm)!
### [`v1.10.52`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.52)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.51...1.10.52)
# Improvements π§
- Do not allow to generate baseline when reflection error occurs (https://github.com/phpstan/phpstan-src/commit/78ea9a621093cde38dd382cc67557c8b211589d8)
- Show internal errors that occured when generating a baseline (https://github.com/phpstan/phpstan-src/commit/c997ea9eefb8a57f5e273cff3b3338f423e755b6)
# Bugfixes π
- Load PHP polyfills in bootstrap.php (https://github.com/phpstan/phpstan/commit/21df2d347a49a51b3377e4b6553aa110e7072eb6), [#10375](https://togithub.com/phpstan/phpstan/issues/10375)
### [`v1.10.51`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.51)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.50...1.10.51)
# Bleeding edge πͺ
- ParamAttributesRule - promoted property attribute needs to target both parameters and properties (https://github.com/phpstan/phpstan-src/commit/25d15526dbe59216f2b42aaa88a2be23bf9cbf44), [#10298](https://togithub.com/phpstan/phpstan/issues/10298)
- More precise `RecursiveIteratorIterator::__construct()` parameter types ([#2835](https://togithub.com/phpstan/phpstan-src/pull/2835)), thanks [@staabm](https://togithub.com/staabm)!
- PhpDocParser: add config for lines in its AST & enable ignoring errors within PHPDocs ([#2807](https://togithub.com/phpstan/phpstan-src/pull/2807)), thanks [@janedbal](https://togithub.com/janedbal)!
*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 π§
- Missing ThrowExprTypeRule - level 3 (https://github.com/phpstan/phpstan-src/commit/0359ebc78fa7bc5ed1b3b4032c68363ce70ab673)
- Analyse stubs only when not only files are analysed (https://github.com/phpstan/phpstan-src/commit/402024091b215dca7d91b74c415293323d2dbadc)
- Nicer error message in case of memory limit exhaustion in child process (https://github.com/phpstan/phpstan-src/commit/816be99361d263df24bf1e7fa078df62fb63d1d7)
# Bugfixes π
- Narrow `ReflectionEnum::getBackingType()` after `ReflectionEnum::isBacked()` ([#2830](https://togithub.com/phpstan/phpstan-src/pull/2830)), [#10167](https://togithub.com/phpstan/phpstan/issues/10167), thanks [@staabm](https://togithub.com/staabm)!
- Fix coalescing on an optional array offset ([#2834](https://togithub.com/phpstan/phpstan-src/pull/2834)), [#10317](https://togithub.com/phpstan/phpstan/issues/10317), thanks [@rvanvelzen](https://togithub.com/rvanvelzen)!
- More precise `??` type inference (https://github.com/phpstan/phpstan-src/commit/d801919e356a8cecc33b06046311aa036d2492ff), [#10327](https://togithub.com/phpstan/phpstan/issues/10327)
# Internals π
- phpstan-src is now downgraded for PHP 7.2+ with [`ondrejmirtes/simple-downgrader`](https://togithub.com/ondrejmirtes/simple-downgrader)
- Forward-compatible changes with PHP-Parser 5 (https://github.com/phpstan/phpstan-src/commit/436bd791bf256ca59334f2746e70a58d581d8574, https://github.com/phpstan/phpstan-src/commit/7eb66f6bd643fc95f8353b3b273c29514ddd8619, https://github.com/phpstan/phpstan-src/commit/bf0b138fbed6fb0960ca696869cc9f5f787d4261), [#5086](https://togithub.com/phpstan/phpstan/issues/5086)
- Use `str_starts_with()` and `str_contains()` instead of `strpos()` ([#2841](https://togithub.com/phpstan/phpstan-src/pull/2841)), thanks [@zonuexe](https://togithub.com/zonuexe)!
- Building preload script - sort by name for reproducible builds (https://github.com/phpstan/phpstan-src/commit/995de26a4b8009c4e89159683c4e602290dbc508)
- Lazier creation of ParameterAcceptor ([#2843](https://togithub.com/phpstan/phpstan-src/pull/2843)), thanks [@staabm](https://togithub.com/staabm)!
- Use const instead of properties ([#2815](https://togithub.com/phpstan/phpstan-src/pull/2815)), thanks [@zonuexe](https://togithub.com/zonuexe)!
- PhpDocValueRule: cheapest check first ([#2824](https://togithub.com/phpstan/phpstan-src/pull/2824)), thanks [@staabm](https://togithub.com/staabm)!
- Faster `ParametersAcceptorSelector::combine()` ([#2851](https://togithub.com/phpstan/phpstan-src/pull/2851)), thanks [@staabm](https://togithub.com/staabm)!
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.
[ ] If you want to rebase/retry this PR, click this checkbox.
This PR contains the following updates:
1.10.50
->1.10.54
Release Notes
phpstan/phpstan
### [`v1.10.54`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.54) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.53...1.10.54) # Bleeding edge πͺ - Revert "ParamAttributesRule - promoted property attribute needs to target both parameters and properties" (https://github.com/phpstan/phpstan-src/commit/02f66df2a2997ad39ee25c92b6a7f7102f09514f), [#10385](https://togithub.com/phpstan/phpstan/issues/10385) - See PHP internals discussion: https://externals.io/message/111942#112021 *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 π§ - UsedNamesRule - level 0 ([#2849](https://togithub.com/phpstan/phpstan-src/pull/2849)), thanks [@lulco](https://togithub.com/lulco)! # Bugfixes π - Simplify TooWideClosureReturnTypehintRule (https://github.com/phpstan/phpstan-src/commit/a81df66485ea7c94655d70f322775e84bef871f9) - Fix falsy isset for all expressions (https://github.com/phpstan/phpstan-src/commit/af14d50e2b5d1b2cf91813059cdc827be63fdb20), [#10373](https://togithub.com/phpstan/phpstan/issues/10373) ### [`v1.10.53`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.53) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.52...1.10.53) # Improvements π§ - Impl `str_increment` / `str_decrement` return type extension ([#2776](https://togithub.com/phpstan/phpstan-src/pull/2776)), thanks [@zonuexe](https://togithub.com/zonuexe)! # Bugfixes π - Fix loading polyfills twice (https://github.com/phpstan/phpstan/commit/3e7c7c7c6306157e6967ef436e952aeba1097edb?w=1), [#10387](https://togithub.com/phpstan/phpstan/issues/10387) - `array_udiff()` comparator return type is too strict ([#2822](https://togithub.com/phpstan/phpstan-src/pull/2822)), [#9697](https://togithub.com/phpstan/phpstan/issues/9697), thanks [@staabm](https://togithub.com/staabm)! # Internals π - Simplify default return path in extensions ([#2816](https://togithub.com/phpstan/phpstan-src/pull/2816)), thanks [@staabm](https://togithub.com/staabm)! ### [`v1.10.52`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.52) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.51...1.10.52) # Improvements π§ - Do not allow to generate baseline when reflection error occurs (https://github.com/phpstan/phpstan-src/commit/78ea9a621093cde38dd382cc67557c8b211589d8) - Show internal errors that occured when generating a baseline (https://github.com/phpstan/phpstan-src/commit/c997ea9eefb8a57f5e273cff3b3338f423e755b6) # Bugfixes π - Load PHP polyfills in bootstrap.php (https://github.com/phpstan/phpstan/commit/21df2d347a49a51b3377e4b6553aa110e7072eb6), [#10375](https://togithub.com/phpstan/phpstan/issues/10375) ### [`v1.10.51`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.51) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.50...1.10.51) # Bleeding edge πͺ - ParamAttributesRule - promoted property attribute needs to target both parameters and properties (https://github.com/phpstan/phpstan-src/commit/25d15526dbe59216f2b42aaa88a2be23bf9cbf44), [#10298](https://togithub.com/phpstan/phpstan/issues/10298) - More precise `RecursiveIteratorIterator::__construct()` parameter types ([#2835](https://togithub.com/phpstan/phpstan-src/pull/2835)), thanks [@staabm](https://togithub.com/staabm)! - PhpDocParser: add config for lines in its AST & enable ignoring errors within PHPDocs ([#2807](https://togithub.com/phpstan/phpstan-src/pull/2807)), thanks [@janedbal](https://togithub.com/janedbal)! *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 π§ - Missing ThrowExprTypeRule - level 3 (https://github.com/phpstan/phpstan-src/commit/0359ebc78fa7bc5ed1b3b4032c68363ce70ab673) - Analyse stubs only when not only files are analysed (https://github.com/phpstan/phpstan-src/commit/402024091b215dca7d91b74c415293323d2dbadc) - Nicer error message in case of memory limit exhaustion in child process (https://github.com/phpstan/phpstan-src/commit/816be99361d263df24bf1e7fa078df62fb63d1d7) # Bugfixes π - Narrow `ReflectionEnum::getBackingType()` after `ReflectionEnum::isBacked()` ([#2830](https://togithub.com/phpstan/phpstan-src/pull/2830)), [#10167](https://togithub.com/phpstan/phpstan/issues/10167), thanks [@staabm](https://togithub.com/staabm)! - Fix coalescing on an optional array offset ([#2834](https://togithub.com/phpstan/phpstan-src/pull/2834)), [#10317](https://togithub.com/phpstan/phpstan/issues/10317), thanks [@rvanvelzen](https://togithub.com/rvanvelzen)! - More precise `??` type inference (https://github.com/phpstan/phpstan-src/commit/d801919e356a8cecc33b06046311aa036d2492ff), [#10327](https://togithub.com/phpstan/phpstan/issues/10327) # Internals π - phpstan-src is now downgraded for PHP 7.2+ with [`ondrejmirtes/simple-downgrader`](https://togithub.com/ondrejmirtes/simple-downgrader) - Forward-compatible changes with PHP-Parser 5 (https://github.com/phpstan/phpstan-src/commit/436bd791bf256ca59334f2746e70a58d581d8574, https://github.com/phpstan/phpstan-src/commit/7eb66f6bd643fc95f8353b3b273c29514ddd8619, https://github.com/phpstan/phpstan-src/commit/bf0b138fbed6fb0960ca696869cc9f5f787d4261), [#5086](https://togithub.com/phpstan/phpstan/issues/5086) - Use `str_starts_with()` and `str_contains()` instead of `strpos()` ([#2841](https://togithub.com/phpstan/phpstan-src/pull/2841)), thanks [@zonuexe](https://togithub.com/zonuexe)! - Building preload script - sort by name for reproducible builds (https://github.com/phpstan/phpstan-src/commit/995de26a4b8009c4e89159683c4e602290dbc508) - Lazier creation of ParameterAcceptor ([#2843](https://togithub.com/phpstan/phpstan-src/pull/2843)), thanks [@staabm](https://togithub.com/staabm)! - Use const instead of properties ([#2815](https://togithub.com/phpstan/phpstan-src/pull/2815)), thanks [@zonuexe](https://togithub.com/zonuexe)! - PhpDocValueRule: cheapest check first ([#2824](https://togithub.com/phpstan/phpstan-src/pull/2824)), thanks [@staabm](https://togithub.com/staabm)! - Faster `ParametersAcceptorSelector::combine()` ([#2851](https://togithub.com/phpstan/phpstan-src/pull/2851)), thanks [@staabm](https://togithub.com/staabm)!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 Renovate Bot.