This run took 32 seconds.
$ date --- stdout --- Wed Aug 13 00:06:55 UTC 2025 --- end --- $ git clone file:///srv/git/css-sanitizer.git repo --depth=1 -b master --- stderr --- Cloning into 'repo'... --- stdout --- --- end --- $ git config user.name libraryupgrader --- stdout --- --- end --- $ git config user.email tools.libraryupgrader@tools.wmflabs.org --- stdout --- --- end --- $ git submodule update --init --- stdout --- --- end --- $ grr init --- stdout --- Installed commit-msg hook. --- end --- $ git show-ref refs/heads/master --- stdout --- 82f00953e18463686be7ea461d9997371c4a9e87 refs/heads/master --- end --- $ /usr/bin/composer install --- stderr --- No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information. Loading composer repositories with package information Updating dependencies Lock file operations: 70 installs, 0 updates, 0 removals - Locking composer/pcre (3.3.2) - Locking composer/semver (3.4.3) - Locking composer/spdx-licenses (1.5.9) - Locking composer/xdebug-handler (3.0.5) - Locking dealerdirect/phpcodesniffer-composer-installer (v1.1.2) - Locking doctrine/deprecations (1.1.5) - Locking doctrine/instantiator (2.0.0) - Locking felixfbecker/advanced-json-rpc (v3.2.1) - Locking mediawiki/mediawiki-codesniffer (v47.0.0) - Locking mediawiki/mediawiki-phan-config (0.16.0) - Locking mediawiki/minus-x (1.1.3) - Locking mediawiki/phan-taint-check-plugin (6.2.1) - Locking microsoft/tolerant-php-parser (v0.1.2) - Locking myclabs/deep-copy (1.13.4) - Locking netresearch/jsonmapper (v4.5.0) - Locking nikic/php-parser (v5.6.0) - Locking phan/phan (5.5.0) - Locking phar-io/manifest (2.0.4) - Locking phar-io/version (3.2.1) - Locking php-parallel-lint/php-console-color (v1.0.1) - Locking php-parallel-lint/php-console-highlighter (v1.0.0) - Locking php-parallel-lint/php-parallel-lint (v1.4.0) - Locking phpcsstandards/phpcsextra (1.2.1) - Locking phpcsstandards/phpcsutils (1.0.12) - Locking phpdocumentor/reflection-common (2.2.0) - Locking phpdocumentor/reflection-docblock (5.6.2) - Locking phpdocumentor/type-resolver (1.10.0) - Locking phpstan/phpdoc-parser (2.2.0) - Locking phpunit/php-code-coverage (9.2.32) - Locking phpunit/php-file-iterator (3.0.6) - Locking phpunit/php-invoker (3.1.1) - Locking phpunit/php-text-template (2.0.4) - Locking phpunit/php-timer (5.0.3) - Locking phpunit/phpunit (9.6.21) - Locking psr/container (2.0.2) - Locking psr/log (3.0.2) - Locking sabre/event (5.1.7) - Locking sebastian/cli-parser (1.0.2) - Locking sebastian/code-unit (1.0.8) - Locking sebastian/code-unit-reverse-lookup (2.0.3) - Locking sebastian/comparator (4.0.9) - Locking sebastian/complexity (2.0.3) - Locking sebastian/diff (4.0.6) - Locking sebastian/environment (5.1.5) - Locking sebastian/exporter (4.0.6) - Locking sebastian/global-state (5.0.8) - Locking sebastian/lines-of-code (1.0.4) - Locking sebastian/object-enumerator (4.0.4) - Locking sebastian/object-reflector (2.0.4) - Locking sebastian/recursion-context (4.0.6) - Locking sebastian/resource-operations (3.0.4) - Locking sebastian/type (3.2.1) - Locking sebastian/version (3.0.2) - Locking squizlabs/php_codesniffer (3.12.2) - Locking symfony/console (v7.3.2) - Locking symfony/deprecation-contracts (v3.6.0) - Locking symfony/polyfill-ctype (v1.32.0) - Locking symfony/polyfill-intl-grapheme (v1.32.0) - Locking symfony/polyfill-intl-normalizer (v1.32.0) - Locking symfony/polyfill-mbstring (v1.32.0) - Locking symfony/polyfill-php80 (v1.32.0) - Locking symfony/service-contracts (v3.6.0) - Locking symfony/string (v7.3.2) - Locking theseer/tokenizer (1.2.3) - Locking tysonandre/var_representation_polyfill (0.1.3) - Locking webmozart/assert (1.11.0) - Locking wikimedia/scoped-callback (v5.0.0) - Locking wikimedia/testing-access-wrapper (3.0.0) - Locking wikimedia/update-history (1.0.1) - Locking wikimedia/utfnormal (4.0.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 70 installs, 0 updates, 0 removals 0 [>---------------------------] 0 [->--------------------------] - Installing squizlabs/php_codesniffer (3.12.2): Extracting archive - Installing dealerdirect/phpcodesniffer-composer-installer (v1.1.2): Extracting archive - Installing composer/pcre (3.3.2): Extracting archive - Installing symfony/polyfill-php80 (v1.32.0): Extracting archive - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive - Installing symfony/polyfill-mbstring (v1.32.0): Extracting archive - Installing composer/spdx-licenses (1.5.9): Extracting archive - Installing composer/semver (3.4.3): Extracting archive - Installing mediawiki/mediawiki-codesniffer (v47.0.0): Extracting archive - Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive - Installing symfony/polyfill-intl-normalizer (v1.32.0): Extracting archive - Installing symfony/polyfill-intl-grapheme (v1.32.0): Extracting archive - Installing symfony/polyfill-ctype (v1.32.0): Extracting archive - Installing symfony/string (v7.3.2): Extracting archive - Installing symfony/deprecation-contracts (v3.6.0): Extracting archive - Installing psr/container (2.0.2): Extracting archive - Installing symfony/service-contracts (v3.6.0): Extracting archive - Installing symfony/console (v7.3.2): Extracting archive - Installing sabre/event (5.1.7): Extracting archive - Installing netresearch/jsonmapper (v4.5.0): Extracting archive - Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive - Installing webmozart/assert (1.11.0): Extracting archive - Installing phpstan/phpdoc-parser (2.2.0): Extracting archive - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive - Installing doctrine/deprecations (1.1.5): Extracting archive - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive - Installing phpdocumentor/reflection-docblock (5.6.2): Extracting archive - Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive - Installing psr/log (3.0.2): Extracting archive - Installing composer/xdebug-handler (3.0.5): Extracting archive - Installing phan/phan (5.5.0): Extracting archive - Installing mediawiki/phan-taint-check-plugin (6.2.1): Extracting archive - Installing mediawiki/mediawiki-phan-config (0.16.0): Extracting archive - Installing mediawiki/minus-x (1.1.3): Extracting archive - Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive - Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive - Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive - Installing sebastian/version (3.0.2): Extracting archive - Installing sebastian/type (3.2.1): Extracting archive - Installing sebastian/resource-operations (3.0.4): Extracting archive - Installing sebastian/recursion-context (4.0.6): Extracting archive - Installing sebastian/object-reflector (2.0.4): Extracting archive - Installing sebastian/object-enumerator (4.0.4): Extracting archive - Installing sebastian/global-state (5.0.8): Extracting archive - Installing sebastian/exporter (4.0.6): Extracting archive - Installing sebastian/environment (5.1.5): Extracting archive - Installing sebastian/diff (4.0.6): Extracting archive - Installing sebastian/comparator (4.0.9): Extracting archive - Installing sebastian/code-unit (1.0.8): Extracting archive - Installing sebastian/cli-parser (1.0.2): Extracting archive - Installing phpunit/php-timer (5.0.3): Extracting archive - Installing phpunit/php-text-template (2.0.4): Extracting archive - Installing phpunit/php-invoker (3.1.1): Extracting archive - Installing phpunit/php-file-iterator (3.0.6): Extracting archive - Installing theseer/tokenizer (1.2.3): Extracting archive - Installing nikic/php-parser (v5.6.0): Extracting archive - Installing sebastian/lines-of-code (1.0.4): Extracting archive - Installing sebastian/complexity (2.0.3): Extracting archive - Installing sebastian/code-unit-reverse-lookup (2.0.3): Extracting archive - Installing phpunit/php-code-coverage (9.2.32): Extracting archive - Installing phar-io/version (3.2.1): Extracting archive - Installing phar-io/manifest (2.0.4): Extracting archive - Installing myclabs/deep-copy (1.13.4): Extracting archive - Installing doctrine/instantiator (2.0.0): Extracting archive - Installing phpunit/phpunit (9.6.21): Extracting archive - Installing wikimedia/scoped-callback (v5.0.0): Extracting archive - Installing wikimedia/testing-access-wrapper (3.0.0): Extracting archive - Installing wikimedia/update-history (1.0.1): Extracting archive - Installing wikimedia/utfnormal (4.0.0): Extracting archive 0/68 [>---------------------------] 0% 21/68 [========>-------------------] 30% 37/68 [===============>------------] 54% 49/68 [====================>-------] 72% 57/68 [=======================>----] 83% 68/68 [============================] 100% 5 package suggestions were added by new dependencies, use `composer suggest` to see details. Generating autoload files 43 packages you are using are looking for funding. Use the `composer fund` command to find out more! --- stdout --- PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils --- end --- Upgrading c:mediawiki/mediawiki-phan-config from 0.16.0 -> 0.17.0 $ /usr/bin/composer update --- stderr --- Loading composer repositories with package information Updating dependencies Lock file operations: 0 installs, 3 updates, 0 removals - Upgrading mediawiki/mediawiki-phan-config (0.16.0 => 0.17.0) - Upgrading mediawiki/phan-taint-check-plugin (6.2.1 => 7.0.0) - Upgrading phan/phan (5.5.0 => 5.5.1) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 0 installs, 3 updates, 0 removals 0 [>---------------------------] 0 [->--------------------------] - Upgrading phan/phan (5.5.0 => 5.5.1): Extracting archive - Upgrading mediawiki/phan-taint-check-plugin (6.2.1 => 7.0.0): Extracting archive - Upgrading mediawiki/mediawiki-phan-config (0.16.0 => 0.17.0): Extracting archive 0/3 [>---------------------------] 0% 2/3 [==================>---------] 66% 3/3 [============================] 100% Generating autoload files 43 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found --- stdout --- --- end --- $ /usr/bin/composer install --- stderr --- Installing dependencies from lock file (including require-dev) Verifying lock file contents can be installed on current platform. Nothing to install, update or remove Generating autoload files 43 packages you are using are looking for funding. Use the `composer fund` command to find out more! --- stdout --- --- end --- $ /usr/bin/composer test --- stderr --- > parallel-lint . --exclude vendor > phpcs -p -s > phpunit > minus-x check . > phan -d . --long-progress-bar --allow-polyfill-parser Parsing files... ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 54 / 1622 ( 5%) 39MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 108 / 1622 ( 7%) 62MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 162 / 1622 ( 10%) 72MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 216 / 1622 ( 14%) 95MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 270 / 1622 ( 17%) 101MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 324 / 1622 ( 26%) 106MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 378 / 1622 ( 26%) 106MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 432 / 1622 ( 31%) 126MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 486 / 1622 ( 31%) 126MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 540 / 1622 ( 37%) 155MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 594 / 1622 ( 37%) 155MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 648 / 1622 ( 40%) 166MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 702 / 1622 ( 46%) 179MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 756 / 1622 ( 53%) 185MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 810 / 1622 ( 53%) 185MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 864 / 1622 ( 53%) 185MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 918 / 1622 ( 57%) 197MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 972 / 1622 ( 63%) 203MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1026 / 1622 ( 68%) 212MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1080 / 1622 ( 68%) 212MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1134 / 1622 ( 70%) 222MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1188 / 1622 ( 75%) 230MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1242 / 1622 ( 80%) 238MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1296 / 1622 ( 80%) 238MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1350 / 1622 ( 86%) 248MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1404 / 1622 ( 89%) 260MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1458 / 1622 ( 93%) 271MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1512 / 1622 ( 96%) 279MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1566 / 1622 ( 99%) 291MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 1620 / 1622 (100%) 297MB ░░ 1622 / 1622 (100%) 297MB Analyzing classes... ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 377MB Analyzing functions... ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 377MB Analyzing methods... ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 383MB Analyzing files... ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 54 / 124 ( 45%) 407MB ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 108 / 124 ( 88%) 425MB ░░░░░░░░░░░░░░░░ 124 / 124 (100%) 427MB Script phan -d . --long-progress-bar --allow-polyfill-parser handling the phan event returned with error code 1 Script @phan was called via test --- stdout --- PHP 8.2.28 | 10 parallel jobs ............................................................ 60/126 ( 47%) ............................................................ 120/126 ( 95%) ...... 126/126 (100%) Checked 126 files in 0.5 seconds No syntax error found ............................................................ 60 / 63 (95%) ... 63 / 63 (100%) Time: 2.49 secs; Memory: 8MB PHPUnit 9.6.21 by Sebastian Bergmann and contributors. ............................................................. 61 / 2694 ( 2%) ............................................................. 122 / 2694 ( 4%) ............................................................. 183 / 2694 ( 6%) ............................................................. 244 / 2694 ( 9%) ............................................................. 305 / 2694 ( 11%) ............................................................. 366 / 2694 ( 13%) ............................................................. 427 / 2694 ( 15%) ............................................................. 488 / 2694 ( 18%) ............................................................. 549 / 2694 ( 20%) ............................................................. 610 / 2694 ( 22%) ............................................................. 671 / 2694 ( 24%) ............................................................. 732 / 2694 ( 27%) ............................................................. 793 / 2694 ( 29%) ............................................................. 854 / 2694 ( 31%) ............................................................. 915 / 2694 ( 33%) ............................................................. 976 / 2694 ( 36%) ............................................................. 1037 / 2694 ( 38%) ............................................................. 1098 / 2694 ( 40%) ............................................................. 1159 / 2694 ( 43%) ............................................................. 1220 / 2694 ( 45%) ............................................................. 1281 / 2694 ( 47%) ............................................................. 1342 / 2694 ( 49%) ............................................................. 1403 / 2694 ( 52%) ............................................................. 1464 / 2694 ( 54%) ............................................................. 1525 / 2694 ( 56%) ............................................................. 1586 / 2694 ( 58%) ............................................................. 1647 / 2694 ( 61%) ............................................................. 1708 / 2694 ( 63%) ............................................................. 1769 / 2694 ( 65%) ............................................................. 1830 / 2694 ( 67%) ............................................................. 1891 / 2694 ( 70%) ............................................................. 1952 / 2694 ( 72%) ............................................................. 2013 / 2694 ( 74%) ............................................................. 2074 / 2694 ( 76%) ............................................................. 2135 / 2694 ( 79%) ............................................................. 2196 / 2694 ( 81%) ............................................................. 2257 / 2694 ( 83%) ............................................................. 2318 / 2694 ( 86%) ............................................................. 2379 / 2694 ( 88%) ............................................................. 2440 / 2694 ( 90%) ............................................................. 2501 / 2694 ( 92%) ............................................................. 2562 / 2694 ( 95%) ............................................................. 2623 / 2694 ( 97%) ............................................................. 2684 / 2694 ( 99%) .......... 2694 / 2694 (100%) Time: 00:01.229, Memory: 24.00 MB OK (2694 tests, 6386 assertions) MinusX ====== Processing /src/repo... ............................................................. ............................................................. .................. All good! src/Parser/DataSourceTokenizer.php:267 PhanPossiblyInfiniteRecursionSameParams consumeToken() is calling itself with the same parameters it was called with. This may cause infinite recursion (Phan does not check for changes to global or shared state). src/Parser/Parser.php:511 PhanPossiblyInfiniteLoop The loop condition isset($value[$l1]) does not seem to change within the loop and nothing seems to exit the loop --- end --- Traceback (most recent call last): File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 2031, in main libup.run(args.repo, args.output, args.branch) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1968, in run self.composer_upgrade(plan) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1031, in composer_upgrade self.composer_test() File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 341, in composer_test self.check_call(["composer", "test"]) File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 63, in check_call res.check_returncode() File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode raise CalledProcessError(self.returncode, self.args, self.stdout, subprocess.CalledProcessError: Command '['/usr/bin/composer', 'test']' returned non-zero exit status 1.