[PR #932] [MERGED] Bump phpstan/phpstan from 0.11.2 to 0.11.3 #1453

Closed
opened 2026-02-26 03:31:04 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/koel/koel/pull/932
Author: @dependabot-preview[bot]
Created: 3/11/2019
Status: Merged
Merged: 3/14/2019
Merged by: @phanan

Base: masterHead: dependabot/composer/phpstan/phpstan-0.11.3


📝 Commits (1)

  • c2e9792 Bump phpstan/phpstan from 0.11.2 to 0.11.3

📊 Changes

1 file changed (+44 additions, -43 deletions)

View changed files

📝 composer.lock (+44 -43)

📄 Description

Bumps phpstan/phpstan from 0.11.2 to 0.11.3.

Release notes

Sourced from phpstan/phpstan's releases.

0.11.3

This release comes with a complete rewrite of part of PHPStan's core which is in charge of code interpretation and type inference (NodeScopeResolver). You can check out the rewrite in this PR: #1938

It's released as a minor version because it's fully backwards-compatible with previous version - no custom extensions and rules should break with this release. However, every time a bugfix in PHPStan is made, your CI build can fail because PHPStan simply got smarter and sees more types, or finds an error in your code it should have already found. (New rules are added only in major versions, like 0.10, 0.11, and upcoming 0.12.)

Users are usually happy about this - they get more bugs reported to them for free. But if you don't like the risk of your build failing every time new version of PHPStan is released, use composer.lock file and run composer update only manually. If you don't commit composer.lock for any reason, don't use the ^ or ~ version constraint - instead, lock to a specific version, like this: "phpstan/phpstan": "0.11.3".

Bugfixes

  • Thanks to the rewrite (#1938), about 35 NodeScopeResolver-related bugs were fixed in total.
  • Assignments in conditions are finally supported (753ec783)! This haunted PHPStan users since the beginning. These issues are closed thanks to the fix:
  • Fixed array access on string (#1896), thanks @​CZechBoY!
  • Fixed array_slice type loss with non-empty array (181424148f7aa8e419cd8565940a4d5081bacc8a), #1919
  • Fixed analysing trait use from eval (a308deb01558fe5c9671df318b235ba7fcc73b35), #1923
  • Fixed trait in eval with phpDoc (30a5ce4a84f7c7ccd763623ac03b2c6a53c4bdc4), #1923
  • Do not skip the rest of traits from TraitUse if one of them isn't in analysed files (5838040306be1e99798adf6f320b98c76f6c12c0)
  • Subclasses of "extra offset classes" are offset accessible too (#1930), thanks @​zajca!
  • Disallow $this in static closures (#1907), thanks @​iluuu1994!
  • Fixed falsey context of array&hasOffset (13cef623d8762c4597924d0da0f5668b76353969), #1942
  • Fixed invalid + operation detection for array&hasOffset (b5eeff17b7981f1ba015e03f35f005f53edb0c0b), #1942

Improvements

  • Implement filter_var dynamic return type extension (#1900), thanks @​iluuu1994!
  • Support == operator between boolean-able types (2a5f95d37011f067dc4e956bb38a992712b8c496)
  • Basic support for get_class() in == operator (df27a123b812211e172889235413e3d3095d6c0a)

Function signatures fixes

Commits
  • e4644b4 Additional StatementResult tests
  • 2fc53b9 Reworked Scope::$currentlyAssignedExpressions with array keys
  • 622b1ab Removed obsolete todos
  • 484fe29 Fix variable certainty after foreach with polluteScopeWithAlwaysIterableForea...
  • 5c6da6f Fixed generalizing recursive type
  • 0af93d2 Fixed generalizing scope for constant arrays nested inside general arrays
  • e19e171 Fixed build
  • 5c752a5 Check foreach key variable certainty in polluteScopeWithAlwaysIterableForeach...
  • 2a5e9c6 Fixed nested closure use by-ref that uses function/method return type
  • 0e0fac9 Introduce ExpressionContext that will allow taking more advantage of Scope im...
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot ignore this [patch|minor|major] version will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
  • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in your Dependabot dashboard:

  • Update frequency (including time of day and day of week)
  • Automerge options (never/patch/minor, and dev/runtime dependencies)
  • Pull request limits (per update run and/or open at any time)
  • Out-of-range updates (receive only lockfile updates, if desired)
  • Security updates (receive only security updates, if desired)

Finally, you can contact us by mentioning @dependabot.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/koel/koel/pull/932 **Author:** [@dependabot-preview[bot]](https://github.com/apps/dependabot-preview) **Created:** 3/11/2019 **Status:** ✅ Merged **Merged:** 3/14/2019 **Merged by:** [@phanan](https://github.com/phanan) **Base:** `master` ← **Head:** `dependabot/composer/phpstan/phpstan-0.11.3` --- ### 📝 Commits (1) - [`c2e9792`](https://github.com/koel/koel/commit/c2e97920e760021b9de1af55bb261b7424896cc9) Bump phpstan/phpstan from 0.11.2 to 0.11.3 ### 📊 Changes **1 file changed** (+44 additions, -43 deletions) <details> <summary>View changed files</summary> 📝 `composer.lock` (+44 -43) </details> ### 📄 Description Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan) from 0.11.2 to 0.11.3. <details> <summary>Release notes</summary> *Sourced from [phpstan/phpstan's releases](https://github.com/phpstan/phpstan/releases).* > ## 0.11.3 > This release comes with a complete rewrite of part of PHPStan's core which is in charge of code interpretation and type inference ([NodeScopeResolver](https://github.com/phpstan/phpstan/blob/e4644b4a8fd393c346f1137305fb2f76a7dc20a7/src/Analyser/NodeScopeResolver.php)). You can check out the rewrite in this PR: [#1938](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1938) > > It's released as a minor version because it's fully backwards-compatible with previous version - no custom extensions and rules should break with this release. However, every time a bugfix in PHPStan is made, your CI build can fail because PHPStan simply got smarter and sees more types, or finds an error in your code it **should have already found**. (New rules are added only in major versions, like 0.10, 0.11, and upcoming 0.12.) > > Users are usually happy about this - they get more bugs reported to them for free. But if you don't like the risk of your build failing every time new version of PHPStan is released, use `composer.lock` file and run `composer update` only manually. If you don't commit `composer.lock` for any reason, don't use the `^` or `~` version constraint - instead, lock to a specific version, like this: `"phpstan/phpstan": "0.11.3"`. > > Bugfixes > ============== > > * Thanks to the rewrite ([#1938](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1938)), about 35 NodeScopeResolver-related bugs were fixed in total. > * Assignments in conditions are finally supported (753ec783)! This haunted PHPStan users since the beginning. These issues are closed thanks to the fix: > * [#647](https://github-redirect.dependabot.com/phpstan/phpstan/issues/647), [#1510](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1510), [#1364](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1364), [#1908](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1908), [#1085](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1085), [#701](https://github-redirect.dependabot.com/phpstan/phpstan/issues/701) > * Fixed array access on string ([#1896](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1896)), thanks [@&#8203;CZechBoY](https://github.com/CZechBoY)! > * Fixed `array_slice` type loss with non-empty array (181424148f7aa8e419cd8565940a4d5081bacc8a), [#1919](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1919) > * Fixed analysing trait use from eval (a308deb01558fe5c9671df318b235ba7fcc73b35), [#1923](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1923) > * Fixed trait in eval with phpDoc (30a5ce4a84f7c7ccd763623ac03b2c6a53c4bdc4), [#1923](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1923) > * Do not skip the rest of traits from TraitUse if one of them isn't in analysed files (5838040306be1e99798adf6f320b98c76f6c12c0) > * Subclasses of "extra offset classes" are offset accessible too ([#1930](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1930)), thanks [@&#8203;zajca](https://github.com/zajca)! > * Disallow `$this` in static closures ([#1907](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1907)), thanks [@&#8203;iluuu1994](https://github.com/iluuu1994)! > * Fixed falsey context of array&hasOffset (13cef623d8762c4597924d0da0f5668b76353969), [#1942](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1942) > * Fixed invalid + operation detection for array&hasOffset (b5eeff17b7981f1ba015e03f35f005f53edb0c0b), [#1942](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1942) > > Improvements > ============== > > * Implement `filter_var` dynamic return type extension ([#1900](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1900)), thanks [@&#8203;iluuu1994](https://github.com/iluuu1994)! > * Support `==` operator between boolean-able types (2a5f95d37011f067dc4e956bb38a992712b8c496) > * Basic support for `get_class()` in `==` operator (df27a123b812211e172889235413e3d3095d6c0a) > > Function signatures fixes > ============== > > * Fix void return typehint for `Ds\Set::first()` ([#1958](https://github-redirect.dependabot.com/phpstan/phpstan/issues/1958)), thanks [@&#8203;demyan112rv](https://github.com/demyan112rv)! </details> <details> <summary>Commits</summary> - [`e4644b4`](https://github.com/phpstan/phpstan/commit/e4644b4a8fd393c346f1137305fb2f76a7dc20a7) Additional StatementResult tests - [`2fc53b9`](https://github.com/phpstan/phpstan/commit/2fc53b9c8caf267381a009f1df5c38ea5593d560) Reworked Scope::$currentlyAssignedExpressions with array keys - [`622b1ab`](https://github.com/phpstan/phpstan/commit/622b1ab8a7cede3773e64b5806bbd5a6d093b07c) Removed obsolete todos - [`484fe29`](https://github.com/phpstan/phpstan/commit/484fe29ddaf5db735896280b68528c9fd2b05863) Fix variable certainty after foreach with polluteScopeWithAlwaysIterableForea... - [`5c6da6f`](https://github.com/phpstan/phpstan/commit/5c6da6f46f5067f9b1d5dcef5b314f1b3fca5f0a) Fixed generalizing recursive type - [`0af93d2`](https://github.com/phpstan/phpstan/commit/0af93d24c8a384faf9cb6fd52bfd456f6664e1c1) Fixed generalizing scope for constant arrays nested inside general arrays - [`e19e171`](https://github.com/phpstan/phpstan/commit/e19e171ec0d53443ac98f8161dfe07fdf9123b21) Fixed build - [`5c752a5`](https://github.com/phpstan/phpstan/commit/5c752a5056519fcb061bb2443cd95946dca202a5) Check foreach key variable certainty in polluteScopeWithAlwaysIterableForeach... - [`2a5e9c6`](https://github.com/phpstan/phpstan/commit/2a5e9c6ec16d87d5e11ff8ca0739ba52d74cd25b) Fixed nested closure use by-ref that uses function/method return type - [`0e0fac9`](https://github.com/phpstan/phpstan/commit/0e0fac98a47aa2282fc9ee4046bbc50f84f661ca) Introduce ExpressionContext that will allow taking more advantage of Scope im... - Additional commits viewable in [compare view](https://github.com/phpstan/phpstan/compare/0.11.2...0.11.3) </details> <br /> [![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=phpstan/phpstan&package-manager=composer&previous-version=0.11.2&new-version=0.11.3)](https://dependabot.com/compatibility-score.html?dependency-name=phpstan/phpstan&package-manager=composer&previous-version=0.11.2&new-version=0.11.3) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Automerge options (never/patch/minor, and dev/runtime dependencies) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired) Finally, you can contact us by mentioning @dependabot. </details> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 03:31:04 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/koel-koel#1453
No description provided.