phpstan-dba icon indicating copy to clipboard operation
phpstan-dba copied to clipboard

Uncaught UnexpectedValueException: RecursiveDirectoryIterator::__construct(//proc/tty/driver)

Open kaskader201 opened this issue 1 year ago • 1 comments

Hi, this error happened to me. Locally everything is fine, but when I run it with a bit limited rights (to access some paths etc.) for example in CI I get this error, or it still tries to get to //root.

Started doing this after installing this package, any change to the settings didn't help, even adding those paths to excluded. Anybody got any ideas?

PHP 8.3, PDO, verison of package 0.2.81

PHP Fatal error: Uncaught UnexpectedValueException: RecursiveDirectoryIterator::__construct(//proc/tty/driver): Failed to open directory: Permission denied in phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php:42 Stack trace: #0 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php(42): RecursiveDirectoryIterator->__construct() #1 [internal function]: _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->__construct() #2 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php(99): RecursiveDirectoryIterator->getChildren() #3 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php(82): _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->getChildren() #4 [internal function]: _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\ExcludeDirectoryFilterIterator->getChildren() #5 [internal function]: FilterIterator->next() #6 [internal function]: FilterIterator->next() #7 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/File/FileFinder.php(51): FilterIterator->next() #8 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorFactory.php(57): PHPStan\File\FileFinder->findFiles() #9 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorRepository.php(24): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorFactory->createByDirectory() #10 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/BetterReflectionSourceLocatorFactory.php(139): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorRepository->getOrCreate() #11 /tmp/phpstan/cache/nette.configurator/Container_7990011899.php(6530): PHPStan\Reflection\BetterReflection\BetterReflectionSourceLocatorFactory->create() #12 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(174): Container_7990011899->createServiceBetterReflectionSourceLocator() #13 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(245): _PHPStan_b7fe9900d\Nette\DI\Container->_PHPStan_b7fe9900d\Nette\DI\{closure}() #14 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(173): _PHPStan_b7fe9900d\Nette\DI\Container->preventDeadLock() #15 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(112): _PHPStan_b7fe9900d\Nette\DI\Container->createService() #16 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/Nette/NetteContainer.php(33): _PHPStan_b7fe9900d\Nette\DI\Container->getService() #17 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/MemoizingContainer.php(25): PHPStan\DependencyInjection\Nette\NetteContainer->getService() #18 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(136): PHPStan\DependencyInjection\MemoizingContainer->getService() #19 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(124): PHPStan\DependencyInjection\ContainerFactory::postInitializeContainer() #20 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/CommandHelper.php(283): PHPStan\DependencyInjection\ContainerFactory->create() #21 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseCommand.php(126): PHPStan\Command\CommandHelper::begin() #22 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\AnalyseCommand->execute() #23 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870): _PHPStan_b7fe9900d\Symfony\Component\Console\Command\Command->run() #24 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRunCommand() #25 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRun() #26 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->run() #27 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): _PHPStan_b7fe9900d\{closure}() #28 /data/www/vendor/phpstan/phpstan/phpstan(8): require('...') #29 /data/www/vendor/bin/phpstan(119): include('...') #30 {main} Next _PHPStan_b7fe9900d\Symfony\Component\Finder\Exception\AccessDeniedException: RecursiveDirectoryIterator::__construct(//proc/tty/driver): Failed to open directory: Permission denied in phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php:108 Stack trace: #0 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php(82): _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->getChildren() #1 [internal function]: _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\ExcludeDirectoryFilterIterator->getChildren() #2 [internal function]: FilterIterator->next() #3 [internal function]: FilterIterator->next() #4 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/File/FileFinder.php(51): FilterIterator->next() #5 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorFactory.php(57): PHPStan\File\FileFinder->findFiles() #6 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorRepository.php(24): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorFactory->createByDirectory() #7 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/BetterReflectionSourceLocatorFactory.php(139): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorRepository->getOrCreate() #8 /tmp/phpstan/cache/nette.configurator/Container_7990011899.php(6530): PHPStan\Reflection\BetterReflection\BetterReflectionSourceLocatorFactory->create() #9 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(174): Container_7990011899->createServiceBetterReflectionSourceLocator() #10 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(245): _PHPStan_b7fe9900d\Nette\DI\Container->_PHPStan_b7fe9900d\Nette\DI\{closure}() #11 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(173): _PHPStan_b7fe9900d\Nette\DI\Container->preventDeadLock() #12 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(112): _PHPStan_b7fe9900d\Nette\DI\Container->createService() #13 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/Nette/NetteContainer.php(33): _PHPStan_b7fe9900d\Nette\DI\Container->getService() #14 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/MemoizingContainer.php(25): PHPStan\DependencyInjection\Nette\NetteContainer->getService() #15 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(136): PHPStan\DependencyInjection\MemoizingContainer->getService() #16 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(124): PHPStan\DependencyInjection\ContainerFactory::postInitializeContainer() #17 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/CommandHelper.php(283): PHPStan\DependencyInjection\ContainerFactory->create() #18 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseCommand.php(126): PHPStan\Command\CommandHelper::begin() #19 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\AnalyseCommand->execute() #20 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870): _PHPStan_b7fe9900d\Symfony\Component\Console\Command\Command->run() #21 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRunCommand() #22 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRun() #23 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->run() #24 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): _PHPStan_b7fe9900d\{closure}() #25 /data/www/vendor/phpstan/phpstan/phpstan(8): require('...') #26 /data/www/vendor/bin/phpstan(119): include('...') #27 {main} thrown in phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php on line 108 Fatal error: Uncaught UnexpectedValueException: RecursiveDirectoryIterator::__construct(//proc/tty/driver): Failed to open directory: Permission denied in phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php:42 Stack trace: #0 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php(42): RecursiveDirectoryIterator->__construct() #1 [internal function]: _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->__construct() #2 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php(99): RecursiveDirectoryIterator->getChildren() #3 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php(82): _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->getChildren() #4 [internal function]: _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\ExcludeDirectoryFilterIterator->getChildren() #5 [internal function]: FilterIterator->next() #6 [internal function]: FilterIterator->next() #7 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/File/FileFinder.php(51): FilterIterator->next() #8 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorFactory.php(57): PHPStan\File\FileFinder->findFiles() #9 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorRepository.php(24): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorFactory->createByDirectory() #10 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/BetterReflectionSourceLocatorFactory.php(139): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorRepository->getOrCreate() #11 /tmp/phpstan/cache/nette.configurator/Container_7990011899.php(6530): PHPStan\Reflection\BetterReflection\BetterReflectionSourceLocatorFactory->create() #12 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(174): Container_7990011899->createServiceBetterReflectionSourceLocator() #13 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(245): _PHPStan_b7fe9900d\Nette\DI\Container->_PHPStan_b7fe9900d\Nette\DI\{closure}() #14 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(173): _PHPStan_b7fe9900d\Nette\DI\Container->preventDeadLock() #15 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(112): _PHPStan_b7fe9900d\Nette\DI\Container->createService() #16 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/Nette/NetteContainer.php(33): _PHPStan_b7fe9900d\Nette\DI\Container->getService() #17 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/MemoizingContainer.php(25): PHPStan\DependencyInjection\Nette\NetteContainer->getService() #18 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(136): PHPStan\DependencyInjection\MemoizingContainer->getService() #19 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(124): PHPStan\DependencyInjection\ContainerFactory::postInitializeContainer() #20 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/CommandHelper.php(283): PHPStan\DependencyInjection\ContainerFactory->create() #21 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseCommand.php(126): PHPStan\Command\CommandHelper::begin() #22 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\AnalyseCommand->execute() #23 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870): _PHPStan_b7fe9900d\Symfony\Component\Console\Command\Command->run() #24 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRunCommand() #25 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRun() #26 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->run() #27 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): _PHPStan_b7fe9900d\{closure}() #28 /data/www/vendor/phpstan/phpstan/phpstan(8): require('...') #29 /data/www/vendor/bin/phpstan(119): include('...') #30 {main} Next _PHPStan_b7fe9900d\Symfony\Component\Finder\Exception\AccessDeniedException: RecursiveDirectoryIterator::__construct(//proc/tty/driver): Failed to open directory: Permission denied in phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php:108 Stack trace: #0 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php(82): _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->getChildren() #1 [internal function]: _PHPStan_b7fe9900d\Symfony\Component\Finder\Iterator\ExcludeDirectoryFilterIterator->getChildren() #2 [internal function]: FilterIterator->next() #3 [internal function]: FilterIterator->next() #4 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/File/FileFinder.php(51): FilterIterator->next() #5 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorFactory.php(57): PHPStan\File\FileFinder->findFiles() #6 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorRepository.php(24): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorFactory->createByDirectory() #7 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Reflection/BetterReflection/BetterReflectionSourceLocatorFactory.php(139): PHPStan\Reflection\BetterReflection\SourceLocator\OptimizedDirectorySourceLocatorRepository->getOrCreate() #8 /tmp/phpstan/cache/nette.configurator/Container_7990011899.php(6530): PHPStan\Reflection\BetterReflection\BetterReflectionSourceLocatorFactory->create() #9 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(174): Container_7990011899->createServiceBetterReflectionSourceLocator() #10 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(245): _PHPStan_b7fe9900d\Nette\DI\Container->_PHPStan_b7fe9900d\Nette\DI\{closure}() #11 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(173): _PHPStan_b7fe9900d\Nette\DI\Container->preventDeadLock() #12 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/nette/di/src/DI/Container.php(112): _PHPStan_b7fe9900d\Nette\DI\Container->createService() #13 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/Nette/NetteContainer.php(33): _PHPStan_b7fe9900d\Nette\DI\Container->getService() #14 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/MemoizingContainer.php(25): PHPStan\DependencyInjection\Nette\NetteContainer->getService() #15 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(136): PHPStan\DependencyInjection\MemoizingContainer->getService() #16 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/DependencyInjection/ContainerFactory.php(124): PHPStan\DependencyInjection\ContainerFactory::postInitializeContainer() #17 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/CommandHelper.php(283): PHPStan\DependencyInjection\ContainerFactory->create() #18 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/src/Command/AnalyseCommand.php(126): PHPStan\Command\CommandHelper::begin() #19 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Command/Command.php(259): PHPStan\Command\AnalyseCommand->execute() #20 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(870): _PHPStan_b7fe9900d\Symfony\Component\Console\Command\Command->run() #21 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(261): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRunCommand() #22 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/console/Application.php(157): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->doRun() #23 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(124): _PHPStan_b7fe9900d\Symfony\Component\Console\Application->run() #24 phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/bin/phpstan(125): _PHPStan_b7fe9900d\{closure}() #25 /data/www/vendor/phpstan/phpstan/phpstan(8): require('...') #26 /data/www/vendor/bin/phpstan(119): include('...') #27 {main} thrown in phar:///data/www/vendor/phpstan/phpstan/phpstan.phar/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php on line 108

kaskader201 avatar Aug 12 '24 21:08 kaskader201

I have never seen such a error before. Could you share a reproducer? Does the error go away when removing phpstan-dba from your project?

staabm avatar Aug 13 '24 06:08 staabm

Sorry for the confusion, I should have followed the phpstan command with the characters // as a comment

kaskader201 avatar Sep 04 '24 11:09 kaskader201