-
Notifications
You must be signed in to change notification settings - Fork 107
Description
phpstan is giving an internal error on files using Doctrine. It works otherwise.
Here's the stack trace:
Fatal error: Uncaught PHPStan\ShouldNotHappenException: Object manager could not be loaded in (app-folder)/vendor/phpstan/phpstan-doctrine/src/Type/Doctrine/ObjectMetadataResolver.php:66
Stack trace:
#0 (app-folder)/vendor/phpstan/phpstan-doctrine/src/Type/Doctrine/ObjectMetadataResolver.php(55): PHPStan\Type\Doctrine\ObjectMetadataResolver->loadObjectManager()
#1 (app-folder)/vendor/phpstan/phpstan-doctrine/src/Type/Doctrine/QueryBuilder/QueryBuilderGetQueryDynamicReturnTypeExtension.php(71): PHPStan\Type\Doctrine\ObjectMetadataResolver->getObjectManager()
#2 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(2984): PHPStan\Type\Doctrine\QueryBuilder\QueryBuilderGetQueryDynamicReturnTypeExtension->getTypeFromMethodCall()
#3 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(1351): PHPStan\Analyser\MutatingScope->methodCallReturnType()
#4 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Type/TypeTraverser.php(47): PHPStan\Analyser\MutatingScope->PHPStan\Analyser{closure}()
#5 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Type/TypeTraverser.php(37): PHPStan\Type\TypeTraverser->mapInternal()
#6 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(1353): PHPStan\Type\TypeTraverser::map()
#7 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(1359): PHPStan\Analyser\MutatingScope->PHPStan\Analyser{closure}()
#8 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(394): PHPStan\Analyser\MutatingScope->resolveType()
#9 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(1331): PHPStan\Analyser\MutatingScope->getType()
#10 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(1359): PHPStan\Analyser\MutatingScope->PHPStan\Analyser{closure}()
#11 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/MutatingScope.php(394): PHPStan\Analyser\MutatingScope->resolveType()
#12 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Rules/FunctionReturnTypeCheck.php(55): PHPStan\Analyser\MutatingScope->getType()
#13 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Rules/Methods/ReturnTypeRule.php(43): PHPStan\Rules\FunctionReturnTypeCheck->checkReturnType()
#14 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(70): PHPStan\Rules\Methods\ReturnTypeRule->processNode()
#15 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Node/ClassStatementsGatherer.php(91): PHPStan\Analyser\FileAnalyser->PHPStan\Analyser{closure}()
#16 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(388): PHPStan\Node\ClassStatementsGatherer->__invoke()
#17 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(294): PHPStan\Analyser\NodeScopeResolver::PHPStan\Analyser{closure}()
#18 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(237): PHPStan\Analyser\NodeScopeResolver->processStmtNode()
#19 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(399): PHPStan\Analyser\NodeScopeResolver->processStmtNodes()
#20 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(237): PHPStan\Analyser\NodeScopeResolver->processStmtNode()
#21 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(472): PHPStan\Analyser\NodeScopeResolver->processStmtNodes()
#22 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(237): PHPStan\Analyser\NodeScopeResolver->processStmtNode()
#23 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(440): PHPStan\Analyser\NodeScopeResolver->processStmtNodes()
#24 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/NodeScopeResolver.php(206): PHPStan\Analyser\NodeScopeResolver->processStmtNode()
#25 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/FileAnalyser.php(150): PHPStan\Analyser\NodeScopeResolver->processNodes()
#26 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Analyser/Analyser.php(52): PHPStan\Analyser\FileAnalyser->analyseFile()
#27 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyserRunner.php(57): PHPStan\Analyser\Analyser->analyse()
#28 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseApplication.php(148): PHPStan\Command\AnalyserRunner->runAnalyser()
#29 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseApplication.php(79): PHPStan\Command\AnalyseApplication->runAnalyser()
#30 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseCommand.php(156): PHPStan\Command\AnalyseApplication->analyse()
#31 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(228): PHPStan\Command\AnalyseCommand->execute()
#32 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(856): _HumbugBox7b277e069751\Symfony\Component\Console\Command\Command->run()
#33 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(237): _HumbugBox7b277e069751\Symfony\Component\Console\Application->doRunCommand()
#34 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(138): _HumbugBox7b277e069751\Symfony\Component\Console\Application->doRun()
#35 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(76): _HumbugBox7b277e069751\Symfony\Component\Console\Application->run()
#36 phar://(app-folder)/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(77): _HumbugBox7b277e069751{closure}()
#37 (app-folder)/vendor/phpstan/phpstan/phpstan(8): require('phar:///home/ec...')
#38 {main}
thrown in (app-folder)/vendor/phpstan/phpstan-doctrine/src/Type/Doctrine/ObjectMetadataResolver.php on line 66
PHP 8.0.2, Symfony 5.2.3, Fedora 33
phpstan/phpstan 0.12.74
phpstan/phpstan-doctrine 0.12.32
phpstan/phpstan-symfony 0.12.16
Source files have nothing of interest, besides using Doctrine in some way (i.e. ManagerRegistry, EntityManagerInterface). Example: https://phpstan.org/r/73fe31c3-5ed6-4e01-8a17-101685ae01a1