joomla / jissues

Issue tracking application extending GitHub's issues and pull requests for the Joomla! project.
https://issues.joomla.org
GNU General Public License v2.0
69 stars 80 forks source link

Update PHPStan packages #1234

Closed joomla-dependency-bot closed 6 months ago

joomla-dependency-bot commented 6 months ago

This PR contains the following updates:

Package Type Update Change
phpstan/phpstan require-dev minor 1.10.67 -> 1.11.0
phpstan/phpstan-phpunit require-dev minor 1.3.16 -> 1.4.0

Release Notes

phpstan/phpstan ### [`v1.11.0`](https://togithub.com/phpstan/phpstan/releases/tag/1.11.0) [Compare Source](https://togithub.com/phpstan/phpstan/compare/1.10.67...1.11.0) [**Read the article about PHPStan 1.11 on phpstan.org ยป**](https://phpstan.org/blog/phpstan-1-11-errors-identifiers-phpstan-pro-reboot) # Major new features ๐Ÿš€ - **Error identifiers** - A way to categorize reported errors by a stable identifier. Up until now you had to use specific and ever-changing error messages - Can be used for [ignoring specific errors locally](https://phpstan.org/user-guide/ignoring-errors#ignoring-in-code-using-phpdocs) with new `@phpstan-ignore` comment (uses current or next line automatically) - Can be used for [ignoring specific errors in `ignoreErrors`](https://phpstan.org/user-guide/ignoring-errors#ignoring-in-configuration-file) section of your configuration file (phpstan.neon) - Can be used in [output formatters](https://phpstan.org/user-guide/output-format) - Can be seen in PHPStan Pro GUI or in TableErrorFormatter with `-v` - Catalogue with source code links: https://phpstan.org/error-identifiers - **PHPStan Pro Reboot** - A new migration wizard will effortlessly migrate all your `@phpstan-ignore-line` and `@phpstan-ignore-next-line` to the new `@phpstan-ignore` comment style with error identifiers. The old comment style is dangerous because it ignores all errors, current and future, on that line. - Revamped UI for much more comfortable viewing and browsing of reported errors - The new UI also lets you **browse ignored errors**, from `ignoreErrors`, from your baseline and also ignored locally in source code using comments - Streaming errors during launch: You don't have to wait for the analysis to complete, you can see errors as they come in during the analysis - Support for mapping file paths to the host filesystem when running in Docker or remotely - Try it out by running PHPStan with `--pro` CLI option - PHPDoc tags describing callable lifecycle: `@param-immediately-invoked-callable`, `@param-later-invoked-callable` - Useful for exception analysis (https://phpstan.org/blog/bring-your-exceptions-under-control) and `@phpstan-pure` - PHPDoc tag `@param-closure-this` to describe what `$this` is bound to in a passed closure - Two new config options around stricter offset checks in arrays ([#​3028](https://togithub.com/phpstan/phpstan-src/pull/3028)), [#​7553](https://togithub.com/phpstan/phpstan/issues/7553), thanks [@​ttomdewit](https://togithub.com/ttomdewit)! - `reportPossiblyNonexistentGeneralArrayOffset` - `reportPossiblyNonexistentConstantArrayOffset` - [Learn more in the documentation](https://phpstan.org/config-reference#reportpossiblynonexistentgeneralarrayoffset) # Bleeding edge ๐Ÿ”ช - Checking truthiness of `@phpstan-pure` above functions and methods - Check `new`/function call/method call/static method call on a separate line without any side effects even without `@phpstan-pure` PHPDoc tag on the declaration side - https://github.com/phpstan/phpstan-src/commit/281a87d1ab61809076ecfa6dfc2cc86e3babe235 - [#​3020](https://togithub.com/phpstan/phpstan-src/pull/3020), thanks [@​staabm](https://togithub.com/staabm)! - [#​3022](https://togithub.com/phpstan/phpstan-src/pull/3022), thanks [@​staabm](https://togithub.com/staabm)! - [#​3023](https://togithub.com/phpstan/phpstan-src/pull/3023), thanks [@​staabm](https://togithub.com/staabm)! - BetterNoopRule - take advantage of impure points (https://github.com/phpstan/phpstan-src/commit/a6470521b65d7424f552633c1f3827704c6262c3), [#​10389](https://togithub.com/phpstan/phpstan/issues/10389) - Run missing type check on `@param-out` (https://github.com/phpstan/phpstan-src/commit/56b20024386d983927c64dfa895ff026bed2798c) - CallToConstructorStatementWithoutSideEffectsRule - report class with no constructor (https://github.com/phpstan/phpstan-src/commit/b116d25a6e4ba6c09f59af6569d9e6f6fd20aff4) - Deprecated: returning plain strings as errors, use RuleErrorBuilder - Learn more: [Using RuleErrorBuilder to enrich reported errors in custom rules](https://phpstan.org/blog/using-rule-error-builder) - Deprecated: returning RuleError without identifier (https://github.com/phpstan/phpstan-src/commit/969e6fa31d5484d42dab902703cfc6820a983cfd) *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 ๐Ÿ”ง - Generic RuleErrorBuilder (https://github.com/phpstan/phpstan-src/commit/9a3ed85178097e2d74f27623dd02bdd72c571e5b) - Deprecate `checkMissingIterableValueType: false` and `checkGenericClassInNonGenericObjectType: false` in favour of ignoring via identifiers (https://github.com/phpstan/phpstan-src/commit/a64998108b318581b0203e84582711c3e4d1e43c) - Deprecate old NoopRule - replaced by BetterNoopRule in bleeding edge (https://github.com/phpstan/phpstan-src/commit/109083571de6102cb854b9975c1463551ef678d0) - Allow ignoring errors from CollectedDataNode with local comments (https://github.com/phpstan/phpstan-src/commit/dc3b75ab4a2acd863405416620240302b284973a) - Introduce `new` type ([#​3050](https://togithub.com/phpstan/phpstan-src/pull/3050)), [#​9704](https://togithub.com/phpstan/phpstan/issues/9704), thanks [@​ruudk](https://togithub.com/ruudk)! - RuleTestCase - fail on PHP warnings, notices etc. ([#​3030](https://togithub.com/phpstan/phpstan-src/pull/3030)), thanks [@​janedbal](https://togithub.com/janedbal)! - Check duplicate assignment of redeclared promoted readonly properties ([#​3049](https://togithub.com/phpstan/phpstan-src/pull/3049)), [#​8101](https://togithub.com/phpstan/phpstan/issues/8101), [#​9863](https://togithub.com/phpstan/phpstan/issues/9863), [#​9864](https://togithub.com/phpstan/phpstan/issues/9864), thanks [@​schlndh](https://togithub.com/schlndh)! - Remove line from "nikic/php-parser" error message ([#​2845](https://togithub.com/phpstan/phpstan-src/pull/2845)), thanks [@​mvorisek](https://togithub.com/mvorisek)! - Stub validator - PHPStan classes are known without extra stubs (https://github.com/phpstan/phpstan-src/commit/d004c239677fb7abe41aa16e8e1b45bfac63f773) - Stub validator - PhpParser classes are known without extra stubs (https://github.com/phpstan/phpstan-src/commit/3e498e1592221f3a01527c10318424014d52f85d) - CheckstyleErrorFormatter - include error identifier in source attribute (https://github.com/phpstan/phpstan-src/commit/f66cf5badd2c98317d1d296ba24c3be77efcda18), [#​1205](https://togithub.com/phpstan/phpstan/issues/1205) - BaselinePhpErrorFormatter - error identifiers in comments (https://github.com/phpstan/phpstan-src/commit/4b32cac2d1b98c6af65c07041fdbc64e5d3f3baf) - `RuleErrorBuilder::file()` - file path needs to exist (https://github.com/phpstan/phpstan-src/commit/c453f29f60992167a5aa46d4926c18a420ae7b26) - AbstractMethodInNonAbstractClassRule - better error message for enums (https://github.com/phpstan/phpstan-src/commit/b5dd34e492b03566458e98b314c6852cfd683916) - Fixed Xdebug spelling ([#​2746](https://togithub.com/phpstan/phpstan-src/pull/2746)), thanks [@​derickr](https://togithub.com/derickr)! - Track invalidated `$this` and used variables after invoking closure ([#​2980](https://togithub.com/phpstan/phpstan-src/pull/2980)) - Support `@phan-` prefixes on recognized PHPDoc tags ([#​3000](https://togithub.com/phpstan/phpstan-src/pull/3000)), thanks [@​anomiex](https://togithub.com/anomiex)! - `pure-callable` and `pure-Closure` PHPDoc types (https://github.com/phpstan/phpstan-src/commit/cdaff5f00d621c3a94e048b8bd9fa864d47b3228) - `highlight_string()` flips side-effects depending on $return ([#​3021](https://togithub.com/phpstan/phpstan-src/pull/3021)), thanks [@​staabm](https://togithub.com/staabm)! - Improve types for predefined constants ([#​3054](https://togithub.com/phpstan/phpstan-src/pull/3054)), thanks [@​zonuexe](https://togithub.com/zonuexe)! # Bugfixes ๐Ÿ› - Make `AccessoryNonFalsyStringType::toInteger()` return `IntegerType` instead of non-zero ([#​3018](https://togithub.com/phpstan/phpstan-src/pull/3018)), [#​10893](https://togithub.com/phpstan/phpstan/issues/10893), thanks [@​zonuexe](https://togithub.com/zonuexe)! - Filter scope by non-empty array after foreach regardless of `polluteScopeWithAlwaysIterableForeach` ([#​3029](https://togithub.com/phpstan/phpstan-src/pull/3029)), [#​10922](https://togithub.com/phpstan/phpstan/issues/10922), thanks [@​VincentLanglet](https://togithub.com/VincentLanglet)! - Preserve large arrays with same keys through union ([#​3032](https://togithub.com/phpstan/phpstan-src/pull/3032)), [#​9397](https://togithub.com/phpstan/phpstan/issues/9397), [#​10080](https://togithub.com/phpstan/phpstan/issues/10080), thanks [@​schlndh](https://togithub.com/schlndh)! - Fix `count($x) > $n === true` negation ([#​3037](https://togithub.com/phpstan/phpstan-src/pull/3037)), [#​10952](https://togithub.com/phpstan/phpstan/issues/10952), thanks [@​rvanvelzen](https://togithub.com/rvanvelzen)! - Fix NAN not accepting NAN ([#​3036](https://togithub.com/phpstan/phpstan-src/pull/3036)), [#​10956](https://togithub.com/phpstan/phpstan/issues/10956), [#​10297](https://togithub.com/phpstan/phpstan/issues/10297), thanks [@​rvanvelzen](https://togithub.com/rvanvelzen)! - DateTimeInstantiationRule - fix error message for `new` with wrong name case (https://github.com/phpstan/phpstan-src/commit/59ac31a554203a7ae3fb9449bbd5b61f3afe2e20) - Process ConstFetch (https://github.com/phpstan/phpstan-src/commit/b5c63c296783bd067b14bad410dab2b87a1b7b3c) - Fix `preg_match_all` behaviour with no flags (https://github.com/phpstan/phpstan-src/commit/a856ec7ab5540cb4a8d30e9e170958a32a7165b2) - `file_get_contents` is an impure function (https://github.com/phpstan/phpstan-src/commit/2b5b3174c7f00e56b7692b4c26552b2ad13c73d5) - Fix `ClosureType::equals()` (https://github.com/phpstan/phpstan-src/commit/29c35b584a948e9a3c90e2d56312069ce073e6e6) - Use statement result of analysed anonymous class to inform about throw points and impure points (https://github.com/phpstan/phpstan-src/commit/70a75f68896e5f7eaa988c0cb7f20dad32c3c172) - Filter out implicit throw points from callables when `exceptions.implicitThrows: false` ([#​3016](https://togithub.com/phpstan/phpstan-src/pull/3016)), thanks [@​janedbal](https://togithub.com/janedbal)! - Fix `ConstantArrayType::hasOffsetValueType()` for offset union type where all types are valid (https://github.com/phpstan/phpstan-src/commit/26e949b0d093751c98e9a106f680092abf3b28d9) - `non-empty-list` always has offset 0 (https://github.com/phpstan/phpstan-src/commit/f4d1d481472b45c56ba2cd49ae98065092217f36) - Narrow to `non-empty-string`/`non-falsey-string` after `mb_strlen()` ([#​3038](https://togithub.com/phpstan/phpstan-src/pull/3038)), thanks [@​staabm](https://togithub.com/staabm)! - Implement `Type::isOffsetAccessLegal()` to detect offset access that crashes even in `isset()` ([#​3045](https://togithub.com/phpstan/phpstan-src/pull/3045)), [#​8393](https://togithub.com/phpstan/phpstan/issues/8393), [#​10926](https://togithub.com/phpstan/phpstan/issues/10926), thanks [@​rajyan](https://togithub.com/rajyan)! - Specify types on `match()` condition correctly ([#​3053](https://togithub.com/phpstan/phpstan-src/pull/3053)), [#​10974](https://togithub.com/phpstan/phpstan/issues/10974), [#​9694](https://togithub.com/phpstan/phpstan/issues/9694), thanks [@​rvanvelzen](https://togithub.com/rvanvelzen)! - `json_decode` with force array flag: subtract all objects, not just stdClass ([#​3052](https://togithub.com/phpstan/phpstan-src/pull/3052)), thanks [@​rajyan](https://togithub.com/rajyan)! - Fix `strlen($x) > $n === true` negation ([#​3040](https://togithub.com/phpstan/phpstan-src/pull/3040)), thanks [@​staabm](https://togithub.com/staabm)! - Support multi-byte string function variants ([#​3039](https://togithub.com/phpstan/phpstan-src/pull/3039)), thanks [@​staabm](https://togithub.com/staabm)! - Final scope from `Continue_` points should not be used for `while (true)` ([#​3057](https://togithub.com/phpstan/phpstan-src/pull/3057)), [#​10980](https://togithub.com/phpstan/phpstan/issues/10980), thanks [@​greew](https://togithub.com/greew)! - Fix enum performance problem ([#​3062](https://togithub.com/phpstan/phpstan-src/pull/3062), [#​3060](https://togithub.com/phpstan/phpstan-src/pull/3060)), [#​10979](https://togithub.com/phpstan/phpstan/issues/10979), thanks [@​staabm](https://togithub.com/staabm)! - NULL and null as a property default value are treated differently when overriding a parent property ([#​3063](https://togithub.com/phpstan/phpstan-src/pull/3063)), [#​10987](https://togithub.com/phpstan/phpstan/issues/10987), thanks [@​staabm](https://togithub.com/staabm)! # Function signature fixes ๐Ÿค– - Make the url key of metadata returned by `stream_get_meta_data()` optional ([#​3024](https://togithub.com/phpstan/phpstan-src/pull/3024)), [#​10887](https://togithub.com/phpstan/phpstan/issues/10887), thanks [@​hirokinoue](https://togithub.com/hirokinoue)! - Narrow `Closure::bind` `$newScope` param ([#​2817](https://togithub.com/phpstan/phpstan-src/pull/2817)), thanks [@​mvorisek](https://togithub.com/mvorisek)! - Infer object type mysqli_fetch_object ([#​2675](https://togithub.com/phpstan/phpstan/issues/2675)) ([#​2675](https://togithub.com/phpstan/phpstan-src/pull/2675)), thanks [@​staabm](https://togithub.com/staabm)! - Fix `Imagick::identifyImage()` return type ([#​3017](https://togithub.com/phpstan/phpstan-src/pull/3017)), thanks [@​SVillette](https://togithub.com/SVillette)! # Internals ๐Ÿ” - Clean up old identifiers and metadata (https://github.com/phpstan/phpstan-src/commit/c476a8611d06ed5ce850ba74bd087ed0fa9304ad) - Delete StatementOrderVisitor that is no longer needed (https://github.com/phpstan/phpstan-src/commit/017d321f47b2a49c11b0337a920235b0770da164) - Introduce `ClassReflection::getClassTypeDescription()` (https://github.com/phpstan/phpstan-src/commit/dec9e435a7e0cea96079eb08c799df6b49b92e82) - Fix classname typo in tests ([#​2461](https://togithub.com/phpstan/phpstan-src/pull/2461)), thanks [@​szepeviktor](https://togithub.com/szepeviktor)! - Fix various typos ([#​2463](https://togithub.com/phpstan/phpstan-src/pull/2463)), thanks [@​szepeviktor](https://togithub.com/szepeviktor)! - Added text regarding patch issues during installation ([#​2670](https://togithub.com/phpstan/phpstan-src/pull/2670)), thanks [@​mt-satak](https://togithub.com/mt-satak)! - Fix typo in ArgumentsNormalizer ([#​2705](https://togithub.com/phpstan/phpstan-src/pull/2705)), thanks [@​mad-briller](https://togithub.com/mad-briller)! - Rich PHPDoc for ExceptionTypeResolver (https://github.com/phpstan/phpstan-src/commit/e7ab4f741c0ec22cf70457c7a542b7978202b10a) - Hide internal commands ([#​2833](https://togithub.com/phpstan/phpstan-src/pull/2833)), thanks [@​rvanvelzen](https://togithub.com/rvanvelzen)! - Test invalidated object in static closure ([#​2981](https://togithub.com/phpstan/phpstan-src/pull/2981)), thanks [@​staabm](https://togithub.com/staabm)! - PHPDoc: address multiple variables defined in one [@​param](https://togithub.com/param) ([#​3001](https://togithub.com/phpstan/phpstan-src/pull/3001)), thanks [@​Muqsit](https://togithub.com/Muqsit)! - Do not assume every contributor uses PhpStorm (https://github.com/phpstan/phpstan-src/commit/d1834e69d06e0f85a45db8f5fb7a2c5a6ce898b6) - TypeInferenceTestCase: ability to disable implicit throws ([#​3015](https://togithub.com/phpstan/phpstan-src/pull/3015)), thanks [@​janedbal](https://togithub.com/janedbal)! - Slightly reduce comparing and calling methods for trivial optimizations ([#​3004](https://togithub.com/phpstan/phpstan-src/pull/3004)), [#​10926](https://togithub.com/phpstan/phpstan/issues/10926), thanks [@​zonuexe](https://togithub.com/zonuexe)! - AnalyserResultFinalizer - DRY of running CollectedDataNode rules (https://github.com/phpstan/phpstan-src/commit/38e2c96ee45733c8d3b44d048ce27a9b5450718e) - Introduce LocalIgnoresProcessor (https://github.com/phpstan/phpstan-src/commit/d026655260727c7c6e4cd69d50d57569e9128c13) - Introduce `RuleErrorBuilder::treatPhpDocTypesAsCertainTip()` for a bit more DRYness ([#​3035](https://togithub.com/phpstan/phpstan-src/pull/3035)), thanks [@​axlon](https://togithub.com/axlon)! - Make ResultCacheEndToEndTest pass level 9 ([#​3055](https://togithub.com/phpstan/phpstan-src/pull/3055)), [#​10977](https://togithub.com/phpstan/phpstan/issues/10977), thanks [@​AJenbo](https://togithub.com/AJenbo)! - ClassReflection - cache enum cases (https://github.com/phpstan/phpstan-src/commit/39ce0425737cdbacfee5fbc08160d023cb5bc639), [#​10979](https://togithub.com/phpstan/phpstan/issues/10979)
phpstan/phpstan-phpunit ### [`v1.4.0`](https://togithub.com/phpstan/phpstan-phpunit/releases/tag/1.4.0) [Compare Source](https://togithub.com/phpstan/phpstan-phpunit/compare/1.3.16...1.4.0) - [f3ea021](http://github.com/phpstan/phpstan-phpunit/commit/f3ea021866f4263f07ca3636bf22c64be9610c11) - Update lock-closed-issues.yml - [f93aec7](http://github.com/phpstan/phpstan-phpunit/commit/f93aec74624bcdb9773da40a729f111df1f6e22a) - Merge remote-tracking branch 'origin/1.3.x' into 1.4.x - [77bdf96](http://github.com/phpstan/phpstan-phpunit/commit/77bdf9644e105833f810eefc3d6e051ac33dd939) - Update metcalfc/changelog-generator action to v4.3.1 - [6a1df9a](http://github.com/phpstan/phpstan-phpunit/commit/6a1df9a11edc5642f4a3b462fd1bcb7b07bafa35) - Update cbrgm/mastodon-github-action action to v2 - [e95a58b](http://github.com/phpstan/phpstan-phpunit/commit/e95a58baebb1f2daf7067c3667bff371b202151d) - Update metcalfc/changelog-generator action to v4.2.0 - [77345df](http://github.com/phpstan/phpstan-phpunit/commit/77345df14f04d05252c8b13a5b4444eacd6a0764) - Update dessant/lock-threads action to v5 - [99bb21e](http://github.com/phpstan/phpstan-phpunit/commit/99bb21e6ead1df1c6b9ec2b5750804a00aa6fb08) - Merge branch '1.3.x' into 1.4.x - [ac8ea99](http://github.com/phpstan/phpstan-phpunit/commit/ac8ea9981675cb991b7bbcde55add4b73dc7c690) - Update actions/checkout action to v4 - [529f300](http://github.com/phpstan/phpstan-phpunit/commit/529f300b5bf38a5ca83617b162ffd58c8c6f5647) - Merge branch '1.3.x' into 1.4.x - [62e883e](http://github.com/phpstan/phpstan-phpunit/commit/62e883ea3762a31faa4f6609c20fb1363762d4e3) - Open 1.4.x-dev - [97ec1d3](http://github.com/phpstan/phpstan-phpunit/commit/97ec1d34e9eb2669df4de20e0eb9d6a99f92b4d6) - Merge branch '1.3.x' into 1.4.x - [4d99a7d](http://github.com/phpstan/phpstan-phpunit/commit/4d99a7d020727a2c7b4b428aecbe6a0171bb78a5) - Require PHPStan 1.11 - [908e232](http://github.com/phpstan/phpstan-phpunit/commit/908e232dab1297e5ad6e492b5dfa2d828727915d) - Error identifiers

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.

๐Ÿ‘ป Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.



This PR has been generated by Renovate Bot.