Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use strpos instead of str_contains #7220

Merged
merged 3 commits into from Dec 26, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
10 changes: 5 additions & 5 deletions bin/test-with-real-projects.sh
Expand Up @@ -22,8 +22,8 @@ phpunit)
;;

collections)
git clone --depth=1 git@github.com:muglug/collections.git
cd collections
git clone --depth=1 git@github.com:psalm/endtoend-test-collections.git
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

those two could probably removed. AFAIK, they're not in CI anymore...

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

collections is used:

- run:
name: Analyse PHPUnit
command: bin/test-with-real-projects.sh phpunit
- run:
name: Analyse Psl
command: bin/test-with-real-projects.sh psl
- run:
name: Analyse Collections
command: bin/test-with-real-projects.sh collections

cd endtoend-test-collections
composer install
"$PSALM" --monochrome --show-info=false
;;
Expand All @@ -38,12 +38,12 @@ psl)
;;

laravel)
git clone --depth=1 git@github.com:muglug/framework.git
cd framework
git clone --depth=1 git@github.com:psalm/endtoend-test-laravel.git
cd endtoend-test-laravel
composer install
"$PSALM" --monochrome
;;
*)
echo "Usage: test-with-real-projects.sh {phpunit|collections|proxymanager|laravel|psl}"
echo "Usage: test-with-real-projects.sh {phpunit|collections|laravel|psl}"
exit 1
esac
Expand Up @@ -41,7 +41,6 @@
use function in_array;
use function mt_rand;
use function reset;
use function str_contains;
use function strpos;
use function substr;

Expand Down Expand Up @@ -505,7 +504,7 @@ public static function getReturnTypeFromMappingIds(
public static function cleanContext(Context $context, int $fake_var_discriminator): void
{
foreach ($context->vars_in_scope as $var_in_scope => $_) {
if (str_contains($var_in_scope, "__fake_{$fake_var_discriminator}_")) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Psalm did not pick that up? Polyfills are messing with the analysis maybe?

I wonder how hard it could be to add a new config forbidPolyfills that, when enabled would warn about functions removed through deltas but defined elsewhere...

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Polyfills are messing with the analysis maybe?

Reflection, likely.

if (strpos($var_in_scope, "__fake_{$fake_var_discriminator}_") !== false) {
unset($context->vars_in_scope[$var_in_scope]);
}
}
Expand Down
5 changes: 5 additions & 0 deletions vendor-bin/box/composer.json
Expand Up @@ -3,5 +3,10 @@
"prefer-stable": true,
"require": {
"humbug/box": "3.10.*"
},
"config": {
"allow-plugins": {
"composer/package-versions-deprecated": true
}
}
}