Fix phpstan/phpstan#8031: Union of constant string type lost when used with generics. #25877
phar.yml
on: pull_request
Compiler Tests
2m 21s
Commit PHAR
Matrix: integration-tests / integration-run-phpstan
integration-tests
/
PMMP Tests
1m 27s
Matrix: integration-tests / integration-tests
Checksum PHAR
PHAR Prefix Diff
Matrix: extension-tests / tests-extensions
Matrix: other-tests / Other Tests
integration-tests
/
Integration - Update baselines
0s
Annotations
61 errors and 3 warnings
|
integration-tests / Integration - shipmonk-rnd/dead-code-detector
Process completed with exit code 1.
|
|
integration-tests / Integration - shipmonk-rnd/dead-code-detector
Process completed with exit code 1.
|
|
integration-tests / Integration - shipmonk-rnd/dead-code-detector
Internal error: PHPStan\Analyser\NodeScopeResolver::processExprNode(): Argument #4 ($storage) must be of type PHPStan\Analyser\ExpressionResultStorage, Closure given, called in /home/runner/work/phpstan-src/phpstan-src/e2e/integration/repo/vendor/shipmonk/phpstan-rules/src/Rule/ForbidCheckedExceptionInCallableRule.php on line 239 while analysing file /home/runner/work/phpstan-src/phpstan-src/e2e/integration/repo/src/Compatibility/BackwardCompatibilityChecker.php
Run PHPStan with -v option and post the stack trace to:
https://github.com/phpstan/phpstan/issues/new?template=Bug_report.yaml
|
|
integration-tests / Integration - efabrica-team/phpstan-latte
Process completed with exit code 1.
|
|
integration-tests / Integration - efabrica-team/phpstan-latte:
src/Resolver/ValueResolver/ValueResolver.php#L92
Parameter #2 $array of function implode expects array<string>, list<mixed> given.
|
|
integration-tests / Integration - efabrica-team/phpstan-latte:
src/Compiler/NodeVisitor/Behavior/ComponentsNodeVisitorBehavior.php (in context of class Efabrica/PHPStanLatte/Compiler/NodeVisitor/AddTypeToComponentNodeVisitor)#L76
Parameter #2 $array of function implode expects array<string>, list<mixed> given.
|
|
integration-tests / Integration - efabrica-team/phpstan-latte:
src/Compiler/Compiler/Latte3Compiler.php#L35
Call to function is_array() with list<Latte\Extension> will always evaluate to true.
|
|
integration-tests / Integration - doctrine/dbal
Process completed with exit code 1.
|
|
integration-tests / Integration - doctrine/dbal:
src/Driver/PDO/SQLSrv/Driver.php#L98
Only booleans are allowed in a ternary operator condition, mixed given.
|
|
integration-tests / Integration - Roave/BetterReflection
Process completed with exit code 1.
|
|
integration-tests / Integration - Roave/BetterReflection:
src/Util/FileHelper.php#L46
Offset 2 might not exist on non-empty-list{0?: string, 1?: non-empty-string, 2?: non-empty-string}.
|
|
integration-tests / Integration - Roave/BetterReflection:
src/Util/FileHelper.php#L46
Offset 1 might not exist on non-empty-list{0?: string, 1?: non-empty-string, 2?: non-empty-string}.
|
|
integration-tests / Integration - doctrine/orm
Process completed with exit code 1.
|
|
integration-tests / Integration - doctrine/orm:
src/Mapping/ClassMetadata.php#L1449
Parameter #1 $mappingArray of static method Doctrine\ORM\Mapping\AssociationMapping::fromMappingArray() expects array{fieldName: string, sourceEntity: class-string, targetEntity: class-string, cascade?: list<'all'|'detach'|'persist'|'refresh'|'remove'>, fetch?: 2|3|4|null, inherited?: class-string|null, declared?: class-string|null, cache?: array<mixed>|null, ...}, non-empty-array<mixed> given.
|
|
integration-tests / Integration - doctrine/orm:
src/Mapping/ClassMetadata.php#L1448
Parameter #1 $mappingArray of static method Doctrine\ORM\Mapping\ManyToManyOwningSideMapping::fromMappingArrayAndNamingStrategy() expects array{fieldName: string, sourceEntity: class-string, targetEntity: class-string, cascade?: list<'all'|'detach'|'persist'|'refresh'|'remove'>, fetch?: 2|3|4|null, inherited?: class-string|null, declared?: class-string|null, cache?: array<mixed>|null, ...}, non-empty-array<mixed> given.
|
|
integration-tests / Integration - doctrine/orm:
src/Mapping/ClassMetadata.php#L1440
Parameter #1 $mappingArray of static method Doctrine\ORM\Mapping\OneToManyAssociationMapping::fromMappingArrayAndName() expects array{fieldName: string, sourceEntity: class-string, targetEntity: class-string, cascade?: list<'all'|'detach'|'persist'|'refresh'|'remove'>, fetch?: 2|3|4|null, inherited?: class-string|null, declared?: class-string|null, cache?: array<mixed>|null, ...}, non-empty-array<mixed> given.
|
|
integration-tests / Integration - doctrine/orm:
src/Mapping/ClassMetadata.php#L1432
Parameter #1 $mappingArray of static method Doctrine\ORM\Mapping\ToOneOwningSideMapping::fromMappingArrayAndName() expects array{fieldName: string, sourceEntity: class-string, targetEntity: class-string, cascade?: list<'all'|'detach'|'persist'|'refresh'|'remove'>, fetch?: 2|3|4|null, inherited?: class-string|null, declared?: class-string|null, cache?: array<mixed>|null, ...}, non-empty-array<mixed> given.
|
|
integration-tests / Integration - doctrine/orm:
src/Mapping/ClassMetadata.php#L1428
Parameter #1 $mappingArray of static method Doctrine\ORM\Mapping\ToOneInverseSideMapping::fromMappingArrayAndName() expects array{fieldName: string, sourceEntity: class-string, targetEntity: class-string, cascade?: list<'all'|'detach'|'persist'|'refresh'|'remove'>, fetch?: 2|3|4|null, inherited?: class-string|null, declared?: class-string|null, cache?: array<mixed>|null, ...}, non-empty-array<mixed> given.
|
|
integration-tests / Integration - doctrine/orm:
src/Mapping/ClassMetadata.php#L1422
Parameter #1 $mappingArray of static method Doctrine\ORM\Mapping\ToOneOwningSideMapping::fromMappingArrayAndName() expects array{fieldName: string, sourceEntity: class-string, targetEntity: class-string, cascade?: list<'all'|'detach'|'persist'|'refresh'|'remove'>, fetch?: 2|3|4|null, inherited?: class-string|null, declared?: class-string|null, cache?: array<mixed>|null, ...}, non-empty-array<mixed> given.
|
|
integration-tests / Integration - Larastan tests PHP 8.4, ^12.48
Process completed with exit code 1.
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L620
Expected type Illuminate\Support\Collection<string, Illuminate\Support\Collection<int, int>>, actual: Illuminate\Support\Collection<'string', Illuminate\Support\Collection<int, int>>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L612
Expected type Illuminate\Support\Collection<string, array<int, int>>, actual: Illuminate\Support\Collection<'string', array<int, int>>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L253
Expected type Illuminate\Support\Collection<string, string>, actual: Illuminate\Support\Collection<'string', string>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L209
Expected type Illuminate\Support\Collection<string, string>, actual: Illuminate\Support\Collection<'string', string>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L199
Expected type Illuminate\Support\Collection<string, string>, actual: Illuminate\Support\Collection<'string', string>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L184
Expected type Illuminate\Support\Collection<string, string>, actual: Illuminate\Support\Collection<'string', string>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L168
Expected type Illuminate\Support\Collection<string, string>, actual: Illuminate\Support\Collection<'string', string>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L46
Expected type Illuminate\Support\Collection<string, User>, actual: Illuminate\Support\Collection<'string', User>
|
|
integration-tests / Integration - laravel/framework:
types/Support/Collection.php#L38
Expected type Illuminate\Support\Collection<string, User>, actual: Illuminate\Support\Collection<'string', User>
|
|
integration-tests / Integration - laravel/framework:
types/Database/Eloquent/Collection.php#L119
Expected type Illuminate\Support\Collection<string, User>, actual: Illuminate\Support\Collection<'string', User>
|
|
integration-tests / PMMP Tests:
src/item/Item.php#L741
Cannot cast mixed to int.
|
|
integration-tests / PMMP Tests:
src/item/Item.php#L740
Cannot cast mixed to int.
|
|
integration-tests / PMMP Tests:
src/item/Item.php#L739
Cannot cast mixed to int.
|
|
integration-tests / PMMP Tests:
src/command/defaults/WhitelistCommand.php#L92
Parameter #2 $array of function implode expects array<string>, list<mixed> given.
|
|
integration-tests / PMMP Tests:
src/command/defaults/WhitelistCommand.php#L91
Parameter #1 $array of function sort expects an array of values castable to string, array<mixed> given.
|
|
integration-tests / PMMP Tests:
src/command/defaults/TeleportCommand.php#L101
Casting to *NEVER* something that's already *NEVER*.
|
|
integration-tests / PMMP Tests:
src/command/defaults/TeleportCommand.php#L100
Casting to *NEVER* something that's already *NEVER*.
|
|
integration-tests / PMMP Tests:
src/Server.php#L1192
Cannot cast mixed to string.
|
|
integration-tests / PMMP Tests:
src/Server.php#L758
Ignored error pattern #^Cannot cast mixed to string\.$# (cast.string) in path /home/runner/work/phpstan-src/phpstan-src/e2e/integration/repo/src/Server.php is expected to occur 1 time, but occurred 2 times.
|
|
integration-tests / PMMP Tests:
build/generate-block-serializer-consts.php#L181
Parameter #1 $array of function sort expects an array of values castable to string, array<mixed> given.
|
|
integration-tests / Integration - laravel/framework
Process completed with exit code 1.
|
|
integration-tests / Integration - laravel/framework:
src/Illuminate/View/Compilers/ComponentTagCompiler.php#L345
No error with identifier variable.undefined is reported on line 345.
|
|
integration-tests / Integration - laravel/framework:
src/Illuminate/View/Compilers/ComponentTagCompiler.php#L344
No error with identifier variable.undefined is reported on line 344.
|
|
integration-tests / Integration - laravel/framework:
src/Illuminate/View/Compilers/ComponentTagCompiler.php#L343
No error with identifier variable.undefined is reported on line 343.
|
|
integration-tests / Integration - laravel/framework:
src/Illuminate/Mail/Mailable.php#L268
No error with identifier callable.nonNativeMethod is reported on line 268.
|
|
integration-tests / Integration - laravel/framework:
src/Illuminate/Http/Client/PendingRequest.php#L1081
Variable $shouldRetry on left side of ?? always exists and is always null.
|
|
integration-tests / Integration - laravel/framework:
src/Illuminate/Foundation/Console/RouteListCommand.php#L406
Variable $action on left side of ?? always exists and is not nullable.
|
|
integration-tests / Integration - drupal/drupal
Process completed with exit code 1.
|
|
integration-tests / Integration - drupal/drupal:
core/tests/Drupal/Tests/PerformanceTestTrait.php (in context of class Drupal/FunctionalJavascriptTests/PerformanceTestBase)#L166
Offset 'delete' on array{}|array{get: non-empty-array<*NEVER*, non-empty-list<*NEVER*>>} in isset() does not exist.
|
|
integration-tests / Integration - drupal/drupal:
core/modules/package_manager/src/Validator/ComposerPatchesValidator.php#L96
Variable $stage_configuration_ok might not be defined.
|
|
integration-tests / Integration - drupal/drupal:
core/modules/package_manager/src/Validator/ComposerPatchesValidator.php#L96
Variable $plugin_installed_in_stage might not be defined.
|
|
integration-tests / Integration - shopware/shopware:
src/Storefront/Controller/ContextController.php#L126
Offset 'host' might not exist on non-empty-array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/Installer/Controller/FinishController.php#L72
Offset 'host' might not exist on non-empty-array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/Framework/Feature/FeatureFlagRegistry.php#L89
Casting to bool something that's already *NEVER*.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/Framework/DataAbstractionLayer/Search/Criteria.php#L499
Parameter #1 $ids of class Shopware\Core\Framework\DataAbstractionLayer\Search\Criteria constructor expects array<string>|null, array<array<string>|string> given.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/DevOps/Test/AnnotationTagTester.php#L151
Offset 4 might not exist on non-empty-list{0?: string, 1?: non-empty-string|null, 2?: string|null, 3?: non-empty-string|null, 4?: string|null}.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/DevOps/Test/AnnotationTagTester.php#L151
Offset 3 might not exist on non-empty-list{0?: string, 1?: non-empty-string|null, 2?: string|null, 3?: non-empty-string|null, 4?: string|null}.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/DevOps/Test/AnnotationTagTester.php#L150
Offset 2 might not exist on non-empty-list{0?: string, 1?: non-empty-string|null, 2?: string|null, 3?: non-empty-string|null, 4?: string|null}.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/DevOps/Test/AnnotationTagTester.php#L150
Offset 1 might not exist on non-empty-list{0?: string, 1?: non-empty-string|null, 2?: string|null, 3?: non-empty-string|null, 4?: string|null}.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/Checkout/Cart/LineItemFactoryRegistry.php#L99
Parameter #2 $data of method Shopware\Core\Checkout\Cart\LineItemFactoryHandler\LineItemFactoryInterface::update() expects array<string, mixed>, array<int|string, mixed> given.
|
|
integration-tests / Integration - shopware/shopware:
src/Core/Checkout/Cart/LineItemFactoryRegistry.php#L54
Parameter #1 $data of method Shopware\Core\Checkout\Cart\LineItemFactoryHandler\LineItemFactoryInterface::create() expects array<string, mixed>, array<int|string, mixed> given.
|
|
other-tests / Other Tests (7.4, windows-latest, cd e2e/name-conflict
composer install
cp ../../phpstan vendor/p...
Environment variable 'INPUT_GITHUB_CONTEXT' exceeds the maximum supported length. Environment variable length: 34120 , Maximum supported length: 32766
|
|
other-tests / Other Tests (7.4, windows-latest, cd e2e/name-conflict
composer install
cp ../../phpstan vendor/p...
Environment variable 'INPUT_GITHUB_CONTEXT' exceeds the maximum supported length. Environment variable length: 34120 , Maximum supported length: 32766
|
|
other-tests / Other Tests (7.4, windows-latest, cd e2e/name-conflict
composer install
cp ../../phpstan vendor/p...
Environment variable 'INPUT_GITHUB_CONTEXT' exceeds the maximum supported length. Environment variable length: 34120 , Maximum supported length: 32766
|
Artifacts
Produced during runtime
| Name | Size | Digest | |
|---|---|---|---|
|
baselines-better-reflection-baseline.neon
|
363 Bytes |
sha256:fc82bf2b8bdbc0e543aa6b3c6d92a4278efda2379815b2c41afdaec37f365836
|
|
|
baselines-doctrine-dbal-baseline.neon
|
1010 Bytes |
sha256:032e2050efab068882a904ae89a741c237d7cddcf96fd7e974a0c4cd3c566d8a
|
|
|
baselines-doctrine-orm-baseline.neon
|
1.16 KB |
sha256:27174cc608a95202a0628b3aa922ca0356ab46efe9381cbdfa6152aa0b392ce7
|
|
|
baselines-drupal-baseline.neon
|
1.23 KB |
sha256:60ccd05fdc36c24618fb64c2ac3f600cd4536db749758d7162e360c0742f3644
|
|
|
baselines-efabrica-phpstan-latte-baseline.neon
|
706 Bytes |
sha256:d73f9c999741f5af7aa77d254999148b5f0a44d632248cd0622e3201c4d53e26
|
|
|
baselines-laravel-baseline.neon
|
384 Bytes |
sha256:2a052132e414eeb8f6590cf642bd4773b0c36de5c4b4dfe59a2ca8f21a71df4a
|
|
|
baselines-laravel-types-baseline.neon
|
422 Bytes |
sha256:bc64bc0f861a5cf2ecc156ae5fe137ae477bd8c21eee180c1a7285c94ee2c6a0
|
|
|
baselines-shipmonk-dead-code-detector-baseline.neon
|
228 Bytes |
sha256:917e56f377676084b6576bfee00abeb4656e12a0bba5c591c623ad94b757150f
|
|
|
baselines-shopware-baseline.neon
|
10.5 KB |
sha256:361857cbd06d99ee30847f2c0b681efb1afe465617f24b5d465583cc9d8a35d3
|
|
|
phar-file
|
3.76 MB |
sha256:c1de14b6e7599e1f19c9f52cf947144e2edadada1e96e5f6af9d386293f9dd1d
|
|
|
phar-file-checksum
|
3.76 MB |
sha256:13992bcb9f7aeaac3366a4ff60f1169da9dbf98ca4f604f61aa513e2429f8860
|
|
|
pocketmine-ng-baseline.neon
|
1.23 KB |
sha256:ba3e7d2aed26de7c70e924a08cac29cf01e3af84205a466c881d5243738924e3
|
|