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

"Sending on the channel failed. Did the context die?" when using threads #11249

Open
BafS opened this issue Feb 5, 2025 · 10 comments
Open

"Sending on the channel failed. Did the context die?" when using threads #11249

BafS opened this issue Feb 5, 2025 · 10 comments

Comments

@BafS
Copy link
Contributor

BafS commented Feb 5, 2025

When trying to use the --threads option I hit this issue "Sending on the channel failed. Did the context die?". I tried combination of various flags and using more or less number of threads but errors remain. It does work without using the --threads option.

Psalm version: 6.2

Trace:

Uncaught RuntimeException: PHP Error: Could not send result to parent: 'Sending on the channel failed. Did the context die?'; be sure to shutdown the child before ending the parent in phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php:121 for command with CLI args "./bin/psalm.phar --memory-limit=4G --threads=8 --no-diff --no-cache" in phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/ErrorHandler.php:61
Stack trace:
#0 [internal function]: Psalm\Internal\ErrorHandler::Psalm\Internal\{closure}(256, 'Could not send ...', 'phar:///var/www...', 121)
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php(121): trigger_error('Could not send ...', 256)
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(56): Psalm\Internal\Fork\ForkContext::start(Array, Object(_HumbugBoxcb2388c0c7fd\Amp\Parallel\Ipc\LocalIpcHub), Object(_HumbugBoxcb2388c0c7fd\Amp\Internal\WrappedCancellation), 5)
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerFactory.php(36): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\ContextFactory@anonymous->start(Array, Object(_HumbugBoxcb2388c0c7fd\Amp\Internal\WrappedCancellation))
#4 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(200): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerFactory->create(Object(_HumbugBoxcb2388c0c7fd\Amp\Internal\WrappedCancellation))
#5 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/functions.php(30): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool::_HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\{closure}()
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Amp\{closure}(NULL, NULL, Array)
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#8 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#9 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(46): Fiber->resume(Object(Closure))
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#11 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#12 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#13 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(375): Fiber->resume()
#14 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(417): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeCallbacks()
#15 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#16 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(73): Fiber->resume()
#17 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(86): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#18 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(218): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#19 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(219): _HumbugBoxcb2388c0c7fd\Amp\Future->await()
#20 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(173): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->pull()
#21 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(114): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->getWorker()
#22 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(254): Psalm\Internal\Fork\Pool->runAll(Object(Psalm\Internal\Fork\InitAnalyzerTask))
#23 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 8)
#24 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 8, false, true)
#25 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#26 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#27 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#28 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#29 {main}
(Psalm 6.2.0@814dfde37b43a1fe6d9b0996e08b19661af53bc5 crashed due to an uncaught Throwable)

When using --threads=2 I have an other trace:

Uncaught _HumbugBoxcb2388c0c7fd\Amp\Sync\ChannelException: The channel closed while waiting to receive the next value in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/byte-stream/src/StreamChannel.php:75
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Context/Internal/AbstractContext.php(35): _HumbugBoxcb2388c0c7fd\Amp\ByteStream\StreamChannel->receive(NULL)
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php(144): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\Internal\AbstractContext->receive(NULL)
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/Internal/ContextWorker.php(96): Psalm\Internal\Fork\ForkContext->receive()
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\ContextWorker::_HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\{closure}()
#4 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#5 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(46): Fiber->resume(NULL)
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#8 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#9 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(375): Fiber->resume()
#11 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(417): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeCallbacks()
#12 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#13 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(73): Fiber->resume()
#14 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(86): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#15 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Internal/FutureIterator.php(107): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#16 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(56): _HumbugBoxcb2388c0c7fd\Amp\Internal\FutureIterator->consume()
#17 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(258): _HumbugBoxcb2388c0c7fd\Amp\Future::iterate(Array)
#18 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 2)
#19 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 2, false, true)
#20 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#21 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#22 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#23 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#24 {main}
Next _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\ContextException: The context stopped responding, potentially due to a fatal error or calling exit in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Context/Internal/AbstractContext.php:38
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php(144): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\Internal\AbstractContext->receive(NULL)
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/Internal/ContextWorker.php(96): Psalm\Internal\Fork\ForkContext->receive()
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\ContextWorker::_HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\{closure}()
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#4 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#5 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(46): Fiber->resume(NULL)
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#8 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#9 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(375): Fiber->resume()
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(417): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeCallbacks()
#11 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#12 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(73): Fiber->resume()
#13 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(86): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#14 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Internal/FutureIterator.php(107): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#15 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(56): _HumbugBoxcb2388c0c7fd\Amp\Internal\FutureIterator->consume()
#16 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(258): _HumbugBoxcb2388c0c7fd\Amp\Future::iterate(Array)
#17 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 2)
#18 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 2, false, true)
#19 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#20 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#21 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#22 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#23 {main}
(Psalm 6.2.0@814dfde37b43a1fe6d9b0996e08b19661af53bc5 crashed due to an uncaught Throwable)
Copy link

Hey @BafS, can you reproduce the issue on https://psalm.dev? These will be used as phpunit tests when implementing the feature or fixing this bug.

@danog
Copy link
Collaborator

danog commented Feb 5, 2025

What is the full output?
Do you have the ev, event or uv extensions installed?

@BafS
Copy link
Contributor Author

BafS commented Feb 5, 2025

No we don't use ev, event or uv

php -m | tr '\n' ' '
[PHP Modules] apcu bcmath bz2 calendar Core ctype curl date dom exif fileinfo filter ftp gd gettext gmp hash iconv imagick imap intl json libxml mailparse mbstring memprof metrillions mysqli mysqlnd mysqlnd_last_gtid openssl pcntl pcov pcre PDO pdo_mysql pdo_sqlite Phar random rdkafka readline Reflection session shmop SimpleXML soap sockets sodium SPL sqlite3 standard sysvmsg sysvsem sysvshm tokenizer xml xmlreader xmlwriter xsl Zend OPcache zip zlib

Full output (from gitlab CI):

JIT acceleration: ON
Target PHP version: 8.3 (inferred from current PHP version) Enabled extensions: apcu, dom, gmp, pdo (unsupported extensions: fileinfo, mailparse, zend-opcache).
Scanning files...
Analyzing files...
░░░
░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░    60 / 11311 (0%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░   120 / 11311 (1%)
░░
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░   180 / 11311 (1%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   240 / 11311 (2%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   300 / 11311 (2%)
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░
░░░░░░░░░░░░░░░
░░░░░░░░░░░░░
░   360 / 11311 (3%)
░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░   420 / 11311 (3%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░   480 / 11311 (4%)
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   540 / 11311 (4%)
░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   600 / 11311 (5%)
░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   660 / 11311 (5%)
░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   720 / 11311 (6%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   780 / 11311 (6%)
░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   840 / 11311 (7%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   900 / 11311 (7%)
░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   960 / 11311 (8%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░  1020 / 11311 (9%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1080 / 11311 (9%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░
░░░░░░░  1140 / 11311 (10%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░  1200 / 11311 (10%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░  1260 / 11311 (11%)
░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1320 / 11311 (11%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░  1380 / 11311 (12%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1440 / 11311 (12%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░  1500 / 11311 (13%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1560 / 11311 (13%)
░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1620 / 11311 (14%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1680 / 11311 (14%)
░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1740 / 11311 (15%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░  1800 / 11311 (15%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1860 / 11311 (16%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  1920 / 11311 (16%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░  1980 / 11311 (17%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2040 / 11311 (18%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░  2100 / 11311 (18%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2160 / 11311 (19%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2220 / 11311 (19%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2280 / 11311 (20%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░  2340 / 11311 (20%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2400 / 11311 (21%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░
░░░░░░░░░  2460 / 11311 (21%)
░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░  2520 / 11311 (22%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░  2580 / 11311 (22%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2640 / 11311 (23%)
░░░░░░░░░
░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2700 / 11311 (23%)
░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2760 / 11311 (24%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2820 / 11311 (24%)
░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░
░░░
░░░░░
░░░░░
░░░
░░░░░
░░░
░░░░░
░  2880 / 11311 (25%)
░░
░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  2940 / 11311 (25%)
░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░  3000 / 11311 (26%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░  3060 / 11311 (27%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3120 / 11311 (27%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░  3180 / 11311 (28%)
░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░  3240 / 11311 (28%)
░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3300 / 11311 (29%)
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3360 / 11311 (29%)
░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░  3420 / 11311 (30%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3480 / 11311 (30%)
░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3540 / 11311 (31%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3600 / 11311 (31%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3660 / 11311 (32%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3720 / 11311 (32%)
░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3780 / 11311 (33%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3840 / 11311 (33%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░  3900 / 11311 (34%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  3960 / 11311 (35%)
░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4020 / 11311 (35%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4080 / 11311 (36%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░  4140 / 11311 (36%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4200 / 11311 (37%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4260 / 11311 (37%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░  4320 / 11311 (38%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4380 / 11311 (38%)
░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4440 / 11311 (39%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4500 / 11311 (39%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4560 / 11311 (40%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4620 / 11311 (40%)
░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4680 / 11311 (41%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4740 / 11311 (41%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4800 / 11311 (42%)
░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4860 / 11311 (42%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4920 / 11311 (43%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  4980 / 11311 (44%)
░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5040 / 11311 (44%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░  5100 / 11311 (45%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5160 / 11311 (45%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░  5220 / 11311 (46%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░  5280 / 11311 (46%)
░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5340 / 11311 (47%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░  5400 / 11311 (47%)
░░
░░░░░░░
░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5460 / 11311 (48%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5520 / 11311 (48%)
░░░░░░░░░
░░░░░░░
░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5580 / 11311 (49%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5640 / 11311 (49%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░  5700 / 11311 (50%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5760 / 11311 (50%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5820 / 11311 (51%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  5880 / 11311 (51%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░
░░  5940 / 11311 (52%)
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6000 / 11311 (53%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░  6060 / 11311 (53%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6120 / 11311 (54%)
░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6180 / 11311 (54%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░  6240 / 11311 (55%)
░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6300 / 11311 (55%)
░░
░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6360 / 11311 (56%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6420 / 11311 (56%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6480 / 11311 (57%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6540 / 11311 (57%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6600 / 11311 (58%)
░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6660 / 11311 (58%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░  6720 / 11311 (59%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6780 / 11311 (59%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6840 / 11311 (60%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░  6900 / 11311 (61%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  6960 / 11311 (61%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░  7020 / 11311 (62%)
░░
░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7080 / 11311 (62%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7140 / 11311 (63%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░  7200 / 11311 (63%)
░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░  7260 / 11311 (64%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░  7320 / 11311 (64%)
░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7380 / 11311 (65%)
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7440 / 11311 (65%)
░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░  7500 / 11311 (66%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7560 / 11311 (66%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░  7620 / 11311 (67%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░  7680 / 11311 (67%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7740 / 11311 (68%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░  7800 / 11311 (68%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░  7860 / 11311 (69%)
░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7920 / 11311 (70%)
░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  7980 / 11311 (70%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8040 / 11311 (71%)
░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░  8100 / 11311 (71%)
░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8160 / 11311 (72%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░  8220 / 11311 (72%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8280 / 11311 (73%)
░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8340 / 11311 (73%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8400 / 11311 (74%)
░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8460 / 11311 (74%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8520 / 11311 (75%)
░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8580 / 11311 (75%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8640 / 11311 (76%)
░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8700 / 11311 (76%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░  8760 / 11311 (77%)
░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8820 / 11311 (77%)
░░░░░
░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8880 / 11311 (78%)
░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  8940 / 11311 (79%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░
░░░░░░░░░  9000 / 11311 (79%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9060 / 11311 (80%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░  9120 / 11311 (80%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9180 / 11311 (81%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░  9240 / 11311 (81%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9300 / 11311 (82%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░  9360 / 11311 (82%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9420 / 11311 (83%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░  9480 / 11311 (83%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9540 / 11311 (84%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9600 / 11311 (84%)
░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9660 / 11311 (85%)
░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9720 / 11311 (85%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  9780 / 11311 (86%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░  9840 / 11311 (86%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░  9900 / 11311 (87%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░  9960 / 11311 (88%)
░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10020 / 11311 (88%)
░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10080 / 11311 (89%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░ 10140 / 11311 (89%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10200 / 11311 (90%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10260 / 11311 (90%)
░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10320 / 11311 (91%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10380 / 11311 (91%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10440 / 11311 (92%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10500 / 11311 (92%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10560 / 11311 (93%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10620 / 11311 (93%)
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 10680 / 11311 (94%)
░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░Uncaught _HumbugBoxcb2388c0c7fd\Amp\Sync\ChannelException: The channel closed while waiting to receive the next value in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/byte-stream/src/StreamChannel.php:75
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Context/Internal/AbstractContext.php(35): _HumbugBoxcb2388c0c7fd\Amp\ByteStream\StreamChannel->receive(NULL)
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php(144): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\Internal\AbstractContext->receive(NULL)
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/Internal/ContextWorker.php(96): Psalm\Internal\Fork\ForkContext->receive()
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\ContextWorker::_HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\{closure}()
#4 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#5 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(46): Fiber->resume(NULL)
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#8 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#9 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(375): Fiber->start()
#11 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(417): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeCallbacks()
#12 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#13 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(73): Fiber->resume()
#14 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(86): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#15 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(218): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#16 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(219): _HumbugBoxcb2388c0c7fd\Amp\Future->await()
#17 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(118): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->pull()
#18 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(78): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->submit(Object(Psalm\Internal\Fork\AnalyzerTask))
#19 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(255): Psalm\Internal\Fork\Pool->run(Array, 'Psalm\\Internal\\...', Object(Closure))
#20 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3)
#21 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3, false, true)
#22 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#23 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#24 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#25 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#26 {main}
Next _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\ContextException: The context stopped responding, potentially due to a fatal error or calling exit in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Context/Internal/AbstractContext.php:38
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php(144): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\Internal\AbstractContext->receive(NULL)
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/Internal/ContextWorker.php(96): Psalm\Internal\Fork\ForkContext->receive()
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\ContextWorker::_HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\{closure}()
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#4 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#5 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(46): Fiber->resume(NULL)
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#8 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#9 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(375): Fiber->start()
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(417): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeCallbacks()
#11 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#12 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(73): Fiber->resume()
#13 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(86): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#14 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(218): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#15 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(219): _HumbugBoxcb2388c0c7fd\Amp\Future->await()
#16 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(118): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->pull()
#17 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(78): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->submit(Object(Psalm\Internal\Fork\AnalyzerTask))
#18 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(255): Psalm\Internal\Fork\Pool->run(Array, 'Psalm\\Internal\\...', Object(Closure))
#19 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3)
#20 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3, false, true)
#21 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#22 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#23 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#24 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#25 {main}
Next _HumbugBoxcb2388c0c7fd\Amp\Future\UnhandledFutureError: Unhandled future: _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\ContextException: "The context stopped responding, potentially due to a fatal error or calling exit"; Await the Future with Future::await() before the future is destroyed or use Future::ignore() to suppress this exception. Enable assertions and set AMP_DEBUG=true in the process environment to track its origin. in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Internal/FutureState.php:45
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(326): _HumbugBoxcb2388c0c7fd\Amp\Internal\FutureState->__destruct()
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#2 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(46): Fiber->resume(NULL)
#4 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(320): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#5 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(464): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeMicrotasks()
#6 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(375): Fiber->start()
#8 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(417): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->invokeCallbacks()
#9 [internal function]: _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(73): Fiber->resume()
#11 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(86): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver->_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#12 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(218): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#13 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(219): _HumbugBoxcb2388c0c7fd\Amp\Future->await()
#14 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(118): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->pull()
#15 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(78): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->submit(Object(Psalm\Internal\Fork\AnalyzerTask))
#16 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(255): Psalm\Internal\Fork\Pool->run(Array, 'Psalm\\Internal\\...', Object(Closure))
#17 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3)
#18 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3, false, true)
#19 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#20 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#21 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#22 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#23 {main}
Next _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\UncaughtThrowable: Uncaught _HumbugBoxcb2388c0c7fd\Amp\Future\UnhandledFutureError thrown in event loop callback _HumbugBoxcb2388c0c7fd\Amp\Internal\FutureState::_HumbugBoxcb2388c0c7fd\Amp\Internal\{closure} defined in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Internal/FutureState.php:46; use Revolt\EventLoop::setErrorHandler() to gracefully handle such exceptions: Unhandled future: _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\ContextException: "The context stopped responding, potentially due to a fatal error or calling exit"; Await the Future with Future::await() before the future is destroyed or use Future::ignore() to suppress this exception. Enable assertions and set AMP_DEBUG=true in the process environment to track its origin. in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/UncaughtThrowable.php:11
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/AbstractDriver.php(300): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\UncaughtThrowable::throwingCallback(Object(Closure), Object(_HumbugBoxcb2388c0c7fd\Amp\Future\UnhandledFutureError))
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/revolt/event-loop/src/EventLoop/Internal/DriverSuspension.php(93): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\AbstractDriver::_HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\{closure}()
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/amp/src/Future.php(218): _HumbugBoxcb2388c0c7fd\Revolt\EventLoop\Internal\DriverSuspension->suspend()
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Context/Internal/AbstractContext.php(96): _HumbugBoxcb2388c0c7fd\Amp\Future->await()
#4 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/ForkContext.php(162): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Context\Internal\AbstractContext->receiveExitResult(Object(_HumbugBoxcb2388c0c7fd\Amp\TimeoutCancellation))
#5 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/Internal/ContextWorker.php(133): Psalm\Internal\Fork\ForkContext->join(Object(_HumbugBoxcb2388c0c7fd\Amp\TimeoutCancellation))
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(121): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\ContextWorker->submit(Object(Psalm\Internal\Fork\AnalyzerTask), NULL)
#7 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(78): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->submit(Object(Psalm\Internal\Fork\AnalyzerTask))
#8 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(255): Psalm\Internal\Fork\Pool->run(Array, 'Psalm\\Internal\\...', Object(Closure))
#9 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3)
#10 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3, false, true)
#11 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#12 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#13 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#14 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#15 {main}
Next _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\WorkerException: The worker crashed in phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/Internal/ContextWorker.php:137
Stack trace:
#0 phar:///var/www/vendor/psalm/phar/psalm.phar/vendor/amphp/parallel/src/Worker/ContextWorkerPool.php(121): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\Internal\ContextWorker->submit(Object(Psalm\Internal\Fork\AnalyzerTask), NULL)
#1 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Fork/Pool.php(78): _HumbugBoxcb2388c0c7fd\Amp\Parallel\Worker\ContextWorkerPool->submit(Object(Psalm\Internal\Fork\AnalyzerTask))
#2 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(255): Psalm\Internal\Fork\Pool->run(Array, 'Psalm\\Internal\\...', Object(Closure))
#3 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Codebase/Analyzer.php(206): Psalm\Internal\Codebase\Analyzer->doAnalysis(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3)
#4 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Analyzer/ProjectAnalyzer.php(365): Psalm\Internal\Codebase\Analyzer->analyzeFiles(Object(Psalm\Internal\Analyzer\ProjectAnalyzer), 3, false, true)
#5 phar:///var/www/vendor/psalm/phar/psalm.phar/src/Psalm/Internal/Cli/Psalm.php(288): Psalm\Internal\Analyzer\ProjectAnalyzer->check('/var/www', false)
#6 phar:///var/www/vendor/psalm/phar/psalm.phar/psalm(7): Psalm\Internal\Cli\Psalm::run(Array)
#7 /var/www/vendor/psalm/phar/psalm.phar(14): require('phar:///var/www...')
#8 /var/www/bin/psalm.phar(119): include('/var/www/vendor...')
#9 {main}
(Psalm 6.2.0@814dfde37b43a1fe6d9b0996e08b19661af53bc5 crashed due to an uncaught Throwable)

@danog
Copy link
Collaborator

danog commented Feb 5, 2025

What version of PHP are you running? Please try running scans specifically on php 8.4.3, this may be a PHP bug.

@BafS
Copy link
Contributor Author

BafS commented Feb 5, 2025

php -v
PHP 8.3.15 (cli) (built: Dec 17 2024 18:18:02) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.3.15, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.15, Copyright (c), by Zend Technologies

I won't be able to try with PHP 8.4.3 right now because we don't use PHP 8.4 yet on the CI and I cannot reproduce it locally (but I'll try again)

@danog
Copy link
Collaborator

danog commented Feb 5, 2025

Try using 8.3.16, and also try using 8.4.3 if possible.

@BafS
Copy link
Contributor Author

BafS commented Feb 6, 2025

I tried with 8.3.16 and it didn't change anything, I have the exact same errors unfortunately

@danog
Copy link
Collaborator

danog commented Feb 6, 2025

And on 8.4.3?

@danog
Copy link
Collaborator

danog commented Feb 6, 2025

Will add some better tracking for the exit code of subprocesses to try and identify the issue, but I'd like to see the result of the scan on 8.4 (which should not change anything in the actual output as long as the target PHP version is set to the usual one)

@BafS
Copy link
Contributor Author

BafS commented Feb 6, 2025

Okay thanks. I'll tell you when we have 8.4.x available on our CI but it won't be soon. I'll try to reproduce it locally tomorrow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants