This run took 12 seconds.
$ date --- stdout --- Fri Jun 6 04:47:55 UTC 2025 --- end --- $ git clone file:///srv/git/mediawiki-extensions-Springboard.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 --- 674121ed9ff8493d6b689f656d1ec7f6ff406493 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: 37 installs, 0 updates, 0 removals - Locking composer/pcre (3.3.2) - Locking composer/semver (3.3.2) - Locking composer/spdx-licenses (1.5.9) - Locking composer/xdebug-handler (3.0.5) - Locking doctrine/deprecations (1.1.5) - Locking felixfbecker/advanced-json-rpc (v3.2.1) - Locking mediawiki/mediawiki-codesniffer (v41.0.0) - Locking mediawiki/mediawiki-phan-config (0.12.1) - Locking mediawiki/minus-x (1.1.1) - Locking mediawiki/phan-taint-check-plugin (4.0.0) - Locking microsoft/tolerant-php-parser (v0.1.1) - Locking netresearch/jsonmapper (v4.5.0) - Locking phan/phan (5.4.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.3.2) - 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.1.0) - Locking psr/container (2.0.2) - Locking psr/log (2.0.0) - Locking sabre/event (5.1.7) - Locking squizlabs/php_codesniffer (3.7.2) - Locking symfony/console (v5.4.47) - 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-php73 (v1.32.0) - Locking symfony/polyfill-php80 (v1.32.0) - Locking symfony/service-contracts (v3.6.0) - Locking symfony/string (v6.4.21) - Locking symfony/yaml (v6.4.21) - Locking tysonandre/var_representation_polyfill (0.1.3) - Locking webmozart/assert (1.11.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 37 installs, 0 updates, 0 removals - Downloading symfony/yaml (v6.4.21) 0/1 [>---------------------------] 0% 1/1 [============================] 100% - Installing composer/pcre (3.3.2): Extracting archive - Installing symfony/polyfill-php80 (v1.32.0): Extracting archive - Installing squizlabs/php_codesniffer (3.7.2): Extracting archive - Installing symfony/polyfill-mbstring (v1.32.0): Extracting archive - Installing composer/spdx-licenses (1.5.9): Extracting archive - Installing composer/semver (3.3.2): Extracting archive - Installing mediawiki/mediawiki-codesniffer (v41.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 (v6.4.21): 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/polyfill-php73 (v1.32.0): Extracting archive - Installing symfony/console (v5.4.47): 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.1): Extracting archive - Installing webmozart/assert (1.11.0): Extracting archive - Installing phpstan/phpdoc-parser (2.1.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 (2.0.0): Extracting archive - Installing composer/xdebug-handler (3.0.5): Extracting archive - Installing phan/phan (5.4.1): Extracting archive - Installing mediawiki/phan-taint-check-plugin (4.0.0): Extracting archive - Installing mediawiki/mediawiki-phan-config (0.12.1): Extracting archive - Installing mediawiki/minus-x (1.1.1): 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.3.2): Extracting archive - Installing symfony/yaml (v6.4.21): Extracting archive 0/37 [>---------------------------] 0% 19/37 [==============>-------------] 51% 36/37 [===========================>] 97% 37/37 [============================] 100% 3 package suggestions were added by new dependencies, use `composer suggest` to see details. Generating autoload files 16 packages you are using are looking for funding. Use the `composer fund` command to find out more! --- stdout --- --- end --- Upgrading c:mediawiki/mediawiki-codesniffer from 41.0.0 -> 47.0.0 Upgrading c:mediawiki/mediawiki-phan-config from 0.12.1 -> 0.15.1 Upgrading c:mediawiki/minus-x from 1.1.1 -> 1.1.3 Upgrading c:php-parallel-lint/php-parallel-lint from 1.3.2 -> 1.4.0 $ /usr/bin/composer update --- stderr --- Loading composer repositories with package information Updating dependencies Lock file operations: 3 installs, 12 updates, 1 removal - Removing symfony/polyfill-php73 (v1.32.0) - Upgrading composer/semver (3.3.2 => 3.4.3) - Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0) - Upgrading mediawiki/mediawiki-codesniffer (v41.0.0 => v47.0.0) - Upgrading mediawiki/mediawiki-phan-config (0.12.1 => 0.15.1) - Upgrading mediawiki/minus-x (1.1.1 => 1.1.3) - Upgrading mediawiki/phan-taint-check-plugin (4.0.0 => 6.1.0) - Upgrading microsoft/tolerant-php-parser (v0.1.1 => v0.1.2) - Upgrading phan/phan (5.4.1 => 5.4.5) - Upgrading php-parallel-lint/php-parallel-lint (v1.3.2 => v1.4.0) - Locking phpcsstandards/phpcsextra (1.2.1) - Locking phpcsstandards/phpcsutils (1.0.12) - Upgrading psr/log (2.0.0 => 3.0.2) - Upgrading squizlabs/php_codesniffer (3.7.2 => 3.12.2) - Upgrading symfony/console (v5.4.47 => v7.3.0) - Upgrading symfony/string (v6.4.21 => v7.3.0) Writing lock file Installing dependencies from lock file (including require-dev) Package operations: 3 installs, 12 updates, 1 removal 0 [>---------------------------] 0 [->--------------------------] - Removing symfony/polyfill-php73 (v1.32.0) - Upgrading squizlabs/php_codesniffer (3.7.2 => 3.12.2): Extracting archive 0/2 [>---------------------------] 0% 1/2 [==============>-------------] 50% 2/2 [============================] 100% - Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive - Upgrading composer/semver (3.3.2 => 3.4.3): Extracting archive - Upgrading mediawiki/mediawiki-codesniffer (v41.0.0 => v47.0.0): Extracting archive - Upgrading symfony/string (v6.4.21 => v7.3.0): Extracting archive - Upgrading symfony/console (v5.4.47 => v7.3.0): Extracting archive - Upgrading microsoft/tolerant-php-parser (v0.1.1 => v0.1.2): Extracting archive - Upgrading psr/log (2.0.0 => 3.0.2): Extracting archive - Upgrading phan/phan (5.4.1 => 5.4.5): Extracting archive - Upgrading mediawiki/phan-taint-check-plugin (4.0.0 => 6.1.0): Extracting archive - Upgrading mediawiki/mediawiki-phan-config (0.12.1 => 0.15.1): Extracting archive - Upgrading mediawiki/minus-x (1.1.1 => 1.1.3): Extracting archive - Upgrading php-parallel-lint/php-parallel-lint (v1.3.2 => v1.4.0): Extracting archive 0/13 [>---------------------------] 0% 13/13 [============================] 100% Generating autoload files 17 packages you are using are looking for funding. Use the `composer fund` command to find out more! No security vulnerability advisories found --- stdout --- PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils --- end --- Previously failing phpcs rules: {'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate', 'MediaWiki.Commenting.PropertyDocumentation.MissingVar', 'MediaWiki.Usage.ForbiddenFunctions.passthru', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected', 'Squiz.Scope.MethodScope.Missing', 'MediaWiki.Files.ClassMatchesFilename.NotMatch', 'MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic', 'MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage', 'Generic.Files.LineLength.TooLong', 'MediaWiki.Usage.ExtendClassUsage.FunctionVarUsage', 'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected', 'MediaWiki.Usage.DeprecatedGlobalVariables.Deprecated$wgTitle', 'MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic', 'MediaWiki.ControlStructures.AssignmentInControlStructures.AssignmentInControlStructures'} $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":12,"warnings":13,"fixable":6},"files":{"\/src\/repo\/Springboard.i18n.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/AdminLinksHooks.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/CustomLoader.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/SpecialSpringboard.php":{"errors":4,"warnings":2,"messages":[{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":23,"column":13},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":59,"column":13},{"message":"Use static closure","source":"MediaWiki.Usage.StaticClosure.StaticClosure","severity":5,"fixable":true,"type":"WARNING","line":88,"column":62},{"message":"A single space should be after the fn keyword in closures","source":"MediaWiki.WhiteSpace.SpaceAfterClosure.NoWhitespaceAfterArrow","severity":5,"fixable":true,"type":"ERROR","line":88,"column":62},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":128,"column":121}]},"\/src\/repo\/includes\/SpringboardAPI.php":{"errors":8,"warnings":11,"messages":[{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":25,"column":13},{"message":"Visibility must be declared on method \"execute\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":27,"column":5},{"message":"Use static closure","source":"MediaWiki.Usage.StaticClosure.StaticClosure","severity":5,"fixable":true,"type":"WARNING","line":42,"column":62},{"message":"A single space should be after the fn keyword in closures","source":"MediaWiki.WhiteSpace.SpaceAfterClosure.NoWhitespaceAfterArrow","severity":5,"fixable":true,"type":"ERROR","line":42,"column":62},{"message":"Use static closure","source":"MediaWiki.Usage.StaticClosure.StaticClosure","severity":5,"fixable":true,"type":"WARNING","line":68,"column":44},{"message":"A single space should be after the fn keyword in closures","source":"MediaWiki.WhiteSpace.SpaceAfterClosure.NoWhitespaceAfterArrow","severity":5,"fixable":true,"type":"ERROR","line":68,"column":44},{"message":"Visibility must be declared on method \"download\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":98,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":106,"column":21},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":109,"column":25},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":121,"column":17},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":124,"column":21},{"message":"Visibility must be declared on method \"dbUpdate\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":139,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":143,"column":9},{"message":"Visibility must be declared on method \"composerInstall\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":150,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":157,"column":9},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":158,"column":9},{"message":"Visibility must be declared on method \"delete\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":166,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":169,"column":17},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":172,"column":17}]}}} --- end --- PHPCS run failed $ vendor/bin/phpcbf --- stdout --- PHPCBF RESULT SUMMARY ---------------------------------------------------------------------- FILE FIXED REMAINING ---------------------------------------------------------------------- /src/repo/includes/SpecialSpringboard.php 2 4 /src/repo/includes/SpringboardAPI.php 4 15 ---------------------------------------------------------------------- A TOTAL OF 6 ERRORS WERE FIXED IN 2 FILES ---------------------------------------------------------------------- Time: 359ms; Memory: 8MB --- end --- $ vendor/bin/phpcs --report=json --- stdout --- {"totals":{"errors":9,"warnings":10,"fixable":0},"files":{"\/src\/repo\/includes\/CustomLoader.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/AdminLinksHooks.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/Springboard.i18n.alias.php":{"errors":0,"warnings":0,"messages":[]},"\/src\/repo\/includes\/SpecialSpringboard.php":{"errors":3,"warnings":1,"messages":[{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":23,"column":13},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic","severity":5,"fixable":false,"type":"ERROR","line":29,"column":12},{"message":"Missing function doc comment","source":"MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":59,"column":13},{"message":"Line exceeds 120 characters; contains 121 characters","source":"Generic.Files.LineLength.TooLong","severity":5,"fixable":false,"type":"WARNING","line":128,"column":121}]},"\/src\/repo\/includes\/SpringboardAPI.php":{"errors":6,"warnings":9,"messages":[{"message":"Missing class property doc comment","source":"MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPrivate","severity":5,"fixable":false,"type":"ERROR","line":25,"column":13},{"message":"Visibility must be declared on method \"execute\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":27,"column":5},{"message":"Visibility must be declared on method \"download\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":98,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":106,"column":21},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":109,"column":25},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":121,"column":17},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":124,"column":21},{"message":"Visibility must be declared on method \"dbUpdate\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":139,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":143,"column":9},{"message":"Visibility must be declared on method \"composerInstall\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":150,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":157,"column":9},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":158,"column":9},{"message":"Visibility must be declared on method \"delete\"","source":"Squiz.Scope.MethodScope.Missing","severity":5,"fixable":false,"type":"ERROR","line":166,"column":5},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":169,"column":17},{"message":"exec should not be used","source":"MediaWiki.Usage.ForbiddenFunctions.exec","severity":5,"fixable":false,"type":"WARNING","line":172,"column":17}]}}} --- end --- * sniff MediaWiki.Commenting.PropertyDocumentation.MissingVar is no longer failing * sniff MediaWiki.Usage.ForbiddenFunctions.passthru is no longer failing * sniff MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected is no longer failing * sniff MediaWiki.Files.ClassMatchesFilename.NotMatch is no longer failing * sniff MediaWiki.Usage.ExtendClassUsage.FunctionConfigUsage is no longer failing * sniff MediaWiki.Usage.ExtendClassUsage.FunctionVarUsage is no longer failing * sniff MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationProtected is no longer failing * sniff MediaWiki.Usage.DeprecatedGlobalVariables.Deprecated$wgTitle is no longer failing * sniff MediaWiki.Commenting.PropertyDocumentation.MissingDocumentationPublic is no longer failing * sniff MediaWiki.ControlStructures.AssignmentInControlStructures.AssignmentInControlStructures is no longer failing * sniff MediaWiki.Usage.ForbiddenFunctions.exec is now failing $ git checkout .phpcs.xml --- stderr --- Updated 1 path from the index --- stdout --- --- end --- Tests still failing. Skipping $ /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 17 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 --exclude node_modules --exclude .phan > phpcs -sp --cache > minus-x check . Script minus-x check . handling the test event returned with error code 1 --- stdout --- PHP 8.2.28 | 10 parallel jobs ..... 5/5 (100%) Checked 5 files in 0.1 seconds No syntax error found ..... 5 / 5 (100%) Time: 96ms; Memory: 8MB MinusX ====== Processing /src/repo... E.....E......EEEEEEEEEE..EEEE.E.EE. Error: /src/repo/i18n/en.json should not be executable Error: /src/repo/i18n/qqq.json should not be executable Error: /src/repo/extension.json should not be executable Error: /src/repo/.gitignore should not be executable Error: /src/repo/.phpcs.xml should not be executable Error: /src/repo/INSTALL should not be executable Error: /src/repo/resources/init.js should not be executable Error: /src/repo/resources/components/Skins.vue should not be executable Error: /src/repo/resources/components/App.vue should not be executable Error: /src/repo/resources/components/Extensions.vue should not be executable Error: /src/repo/resources/ext.ZestStyles.less should not be executable Error: /src/repo/README.md should not be executable Error: /src/repo/Springboard.i18n.alias.php should not be executable Error: /src/repo/includes/CustomLoader.php should not be executable Error: /src/repo/includes/SpringboardAPI.php should not be executable Error: /src/repo/includes/SpecialSpringboard.php should not be executable Error: /src/repo/extensions/README.md should not be executable Error: /src/repo/composer.json should not be executable Error: /src/repo/skins/README.md should not be executable --- end --- Traceback (most recent call last): File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 2026, 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 1963, 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.