phpstan/phpstan
### [`v1.10.13`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.13)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.12...1.10.13)
- Fix internal error: FilterVarArrayDynamicReturnTypeExtension for `mixed` input ([#2338](https://togithub.com/phpstan/phpstan-src/pull/2338)), [#9178](https://togithub.com/phpstan/phpstan/issues/9178), thanks [@zonuexe](https://togithub.com/zonuexe)!
### [`v1.10.12`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.12)
[Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.11...1.10.12)
# Major new features 🚀
- Object shapes, [#2923](https://togithub.com/phpstan/phpstan/issues/2923)
- [Documentation](https://phpstan.org/writing-php-code/phpdoc-types#object-shapes)
- [Twitter thread](https://twitter.com/OndrejMirtes/status/1643873013731844096) about implementing it
- [phpdoc-parser implementation](https://togithub.com/phpstan/phpdoc-parser/commit/882eabc9b6a12e25c27091a261397f9c8792e722)
# Bleeding edge 🔪
- Stricter function signature map (https://github.com/phpstan/phpstan-src/commit/06b746d8e72cc0843707896ec161559bb6a81137, [#2163](https://togithub.com/phpstan/phpstan-src/pull/2163)), [#7239](https://togithub.com/phpstan/phpstan/issues/7239), thanks [@staabm](https://togithub.com/staabm)!
- Specify `Imagick` parameter types ([#2334](https://togithub.com/phpstan/phpstan-src/pull/2334)), thanks [@zonuexe](https://togithub.com/zonuexe)!
*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 🔧
- Improve `filter_*` array handling, support `FILTER_REQUIRE_ARRAY` ([#2318](https://togithub.com/phpstan/phpstan-src/pull/2318)), thanks [@herndlm](https://togithub.com/herndlm)!
- Asymmetric `@property` types ([#2327](https://togithub.com/phpstan/phpstan-src/pull/2327), [#2328](https://togithub.com/phpstan/phpstan-src/pull/2328), [#2329](https://togithub.com/phpstan/phpstan-src/pull/2329)), [#9062](https://togithub.com/phpstan/phpstan/issues/9062), thanks [@jtojnar](https://togithub.com/jtojnar)!
- Specify return type for `filter_input()` ([#2010](https://togithub.com/phpstan/phpstan-src/pull/2010)), [#6261](https://togithub.com/phpstan/phpstan/issues/6261), thanks [@herndlm](https://togithub.com/herndlm)!
- Improve return type precision of `filter_input` with invalid first args ([#2333](https://togithub.com/phpstan/phpstan-src/pull/2333)), thanks [@herndlm](https://togithub.com/herndlm)!
- Allow `@property` and `@method` to override above the same class (https://github.com/phpstan/phpstan-src/commit/3467a215cf4fdb0a7ba39edd47f986cb9910902f)
- Add `FilterVarArrayDynamicReturnTypeExtension` ([#2257](https://togithub.com/phpstan/phpstan-src/pull/2257)), thanks [@zonuexe](https://togithub.com/zonuexe)!
# Bugfixes 🐛
- Fix usage of `TypeSpecifierContext::truthy()` ([#2230](https://togithub.com/phpstan/phpstan-src/pull/2230)), [#3013](https://togithub.com/phpstan/phpstan/issues/3013), [#7686](https://togithub.com/phpstan/phpstan/issues/7686), thanks [@VincentLanglet](https://togithub.com/VincentLanglet)!
- Parent template type should respect child class bound when unspecified (https://github.com/phpstan/phpstan-src/commit/1017dc7bc7c997e07c488088a199427790c5ef5a), [https://github.com/phpstan/phpstan-doctrine/issues/333](https://togithub.com/phpstan/phpstan-doctrine/issues/333)
- Fix bug with match expression and `treatPhpDocTypesAsCertain` ([#2250](https://togithub.com/phpstan/phpstan-src/pull/2250)), [#8937](https://togithub.com/phpstan/phpstan/issues/8937), thanks [@VincentLanglet](https://togithub.com/VincentLanglet)!
- Generics: fix position variance of readonly-by-phpdoc properties ([#2337](https://togithub.com/phpstan/phpstan-src/pull/2337)), [#9153](https://togithub.com/phpstan/phpstan/issues/9153), thanks [@jiripudil](https://togithub.com/jiripudil)!
- PHPStan Pro - show errors from CollectedData (https://github.com/phpstan/phpstan-src/commit/b85a9613be49b917133a97ff20d0d94a0aa07876)
- Fix methods in IntersectionTypePropertyReflection (https://github.com/phpstan/phpstan-src/commit/d1c4c6d014eea52895b4c0655777134e1cd3c7ce)
# Function signature fixes 🤖
- Improve Imagick method types ([#2325](https://togithub.com/phpstan/phpstan-src/pull/2325)), thanks [@zonuexe](https://togithub.com/zonuexe)!
# Internals 🔍
- Switch to `cweagans/composer-patches` ([#2307](https://togithub.com/phpstan/phpstan-src/pull/2307)), thanks [@herndlm](https://togithub.com/herndlm)!
- WritingToReadOnlyPropertiesRule - hook on better node (https://github.com/phpstan/phpstan-src/commit/bddf57352f07f3a5007afb26cc44445c6344d35b)
- Validate usages of `assert*` functions in TypeInferenceTestCase ([#2326](https://togithub.com/phpstan/phpstan-src/pull/2326)), thanks [@staabm](https://togithub.com/staabm)!
Configuration
📅 Schedule: Branch creation - "before 3am on Monday" (UTC), 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, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
1.10.11
->1.10.13
Release Notes
phpstan/phpstan
### [`v1.10.13`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.13) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.12...1.10.13) - Fix internal error: FilterVarArrayDynamicReturnTypeExtension for `mixed` input ([#2338](https://togithub.com/phpstan/phpstan-src/pull/2338)), [#9178](https://togithub.com/phpstan/phpstan/issues/9178), thanks [@zonuexe](https://togithub.com/zonuexe)! ### [`v1.10.12`](https://togithub.com/phpstan/phpstan/releases/tag/1.10.12) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.11...1.10.12) # Major new features 🚀 - Object shapes, [#2923](https://togithub.com/phpstan/phpstan/issues/2923) - [Documentation](https://phpstan.org/writing-php-code/phpdoc-types#object-shapes) - [Twitter thread](https://twitter.com/OndrejMirtes/status/1643873013731844096) about implementing it - [phpdoc-parser implementation](https://togithub.com/phpstan/phpdoc-parser/commit/882eabc9b6a12e25c27091a261397f9c8792e722) # Bleeding edge 🔪 - Stricter function signature map (https://github.com/phpstan/phpstan-src/commit/06b746d8e72cc0843707896ec161559bb6a81137, [#2163](https://togithub.com/phpstan/phpstan-src/pull/2163)), [#7239](https://togithub.com/phpstan/phpstan/issues/7239), thanks [@staabm](https://togithub.com/staabm)! - Specify `Imagick` parameter types ([#2334](https://togithub.com/phpstan/phpstan-src/pull/2334)), thanks [@zonuexe](https://togithub.com/zonuexe)! *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 🔧 - Improve `filter_*` array handling, support `FILTER_REQUIRE_ARRAY` ([#2318](https://togithub.com/phpstan/phpstan-src/pull/2318)), thanks [@herndlm](https://togithub.com/herndlm)! - Asymmetric `@property` types ([#2327](https://togithub.com/phpstan/phpstan-src/pull/2327), [#2328](https://togithub.com/phpstan/phpstan-src/pull/2328), [#2329](https://togithub.com/phpstan/phpstan-src/pull/2329)), [#9062](https://togithub.com/phpstan/phpstan/issues/9062), thanks [@jtojnar](https://togithub.com/jtojnar)! - Specify return type for `filter_input()` ([#2010](https://togithub.com/phpstan/phpstan-src/pull/2010)), [#6261](https://togithub.com/phpstan/phpstan/issues/6261), thanks [@herndlm](https://togithub.com/herndlm)! - Improve return type precision of `filter_input` with invalid first args ([#2333](https://togithub.com/phpstan/phpstan-src/pull/2333)), thanks [@herndlm](https://togithub.com/herndlm)! - Allow `@property` and `@method` to override above the same class (https://github.com/phpstan/phpstan-src/commit/3467a215cf4fdb0a7ba39edd47f986cb9910902f) - Add `FilterVarArrayDynamicReturnTypeExtension` ([#2257](https://togithub.com/phpstan/phpstan-src/pull/2257)), thanks [@zonuexe](https://togithub.com/zonuexe)! # Bugfixes 🐛 - Fix usage of `TypeSpecifierContext::truthy()` ([#2230](https://togithub.com/phpstan/phpstan-src/pull/2230)), [#3013](https://togithub.com/phpstan/phpstan/issues/3013), [#7686](https://togithub.com/phpstan/phpstan/issues/7686), thanks [@VincentLanglet](https://togithub.com/VincentLanglet)! - Parent template type should respect child class bound when unspecified (https://github.com/phpstan/phpstan-src/commit/1017dc7bc7c997e07c488088a199427790c5ef5a), [https://github.com/phpstan/phpstan-doctrine/issues/333](https://togithub.com/phpstan/phpstan-doctrine/issues/333) - Fix bug with match expression and `treatPhpDocTypesAsCertain` ([#2250](https://togithub.com/phpstan/phpstan-src/pull/2250)), [#8937](https://togithub.com/phpstan/phpstan/issues/8937), thanks [@VincentLanglet](https://togithub.com/VincentLanglet)! - Generics: fix position variance of readonly-by-phpdoc properties ([#2337](https://togithub.com/phpstan/phpstan-src/pull/2337)), [#9153](https://togithub.com/phpstan/phpstan/issues/9153), thanks [@jiripudil](https://togithub.com/jiripudil)! - PHPStan Pro - show errors from CollectedData (https://github.com/phpstan/phpstan-src/commit/b85a9613be49b917133a97ff20d0d94a0aa07876) - Fix methods in IntersectionTypePropertyReflection (https://github.com/phpstan/phpstan-src/commit/d1c4c6d014eea52895b4c0655777134e1cd3c7ce) # Function signature fixes 🤖 - Improve Imagick method types ([#2325](https://togithub.com/phpstan/phpstan-src/pull/2325)), thanks [@zonuexe](https://togithub.com/zonuexe)! # Internals 🔍 - Switch to `cweagans/composer-patches` ([#2307](https://togithub.com/phpstan/phpstan-src/pull/2307)), thanks [@herndlm](https://togithub.com/herndlm)! - WritingToReadOnlyPropertiesRule - hook on better node (https://github.com/phpstan/phpstan-src/commit/bddf57352f07f3a5007afb26cc44445c6344d35b) - Validate usages of `assert*` functions in TypeInferenceTestCase ([#2326](https://togithub.com/phpstan/phpstan-src/pull/2326)), thanks [@staabm](https://togithub.com/staabm)!Configuration
📅 Schedule: Branch creation - "before 3am on Monday" (UTC), 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.