vaimo/composer-patches

View on GitHub
src/Composer/Commands/ListCommand.php

Summary

Maintainability
C
1 day
Test Coverage

File ListCommand.php has 296 lines of code (exceeds 250 allowed). Consider refactoring.
Open

<?php
/**
 * Copyright © Vaimo Group. All rights reserved.
 * See LICENSE_VAIMO.txt for license details.
 */
Severity: Minor
Found in src/Composer/Commands/ListCommand.php - About 3 hrs to fix

    Method execute has 74 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        protected function execute(InputInterface $input, OutputInterface $output)
        {
            $composer = $this->getComposer();
    
            $isDevMode = !$input->getOption('no-dev');
    Severity: Major
    Found in src/Composer/Commands/ListCommand.php - About 2 hrs to fix

      Method configure has 64 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

          protected function configure()
          {
              parent::configure();
      
              $this->setName('patch:list');
      Severity: Major
      Found in src/Composer/Commands/ListCommand.php - About 2 hrs to fix

        Method composerFilteredPatchesList has 33 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

            private function composerFilteredPatchesList($patches, $additions, $removals, $withAffected, $filters, $statuses)
            {
                $hasFilers = (bool)array_filter($filters);
        
                $listResolver = new ListResolvers\FilteredListResolver($filters);
        Severity: Minor
        Found in src/Composer/Commands/ListCommand.php - About 1 hr to fix

          Method composerFilteredPatchesList has 6 arguments (exceeds 4 allowed). Consider refactoring.
          Open

              private function composerFilteredPatchesList($patches, $additions, $removals, $withAffected, $filters, $statuses)
          Severity: Minor
          Found in src/Composer/Commands/ListCommand.php - About 45 mins to fix

            Function execute has a Cognitive Complexity of 7 (exceeds 5 allowed). Consider refactoring.
            Open

                protected function execute(InputInterface $input, OutputInterface $output)
                {
                    $composer = $this->getComposer();
            
                    $isDevMode = !$input->getOption('no-dev');
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php - About 35 mins to fix

            Cognitive Complexity

            Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

            A method's cognitive complexity is based on a few simple rules:

            • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
            • Code is considered more complex for each "break in the linear flow of the code"
            • Code is considered more complex when "flow breaking structures are nested"

            Further reading

            Function generateOutput has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
            Open

                private function generateOutput(OutputInterface $output, array $list)
                {
                    $statusConfig = new \Vaimo\ComposerPatches\Package\PatchApplier\StatusConfig();
            
                    $statusDecorators = $statusConfig->getLabels();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php - About 25 mins to fix

            Cognitive Complexity

            Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

            A method's cognitive complexity is based on a few simple rules:

            • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
            • Code is considered more complex for each "break in the linear flow of the code"
            • Code is considered more complex when "flow breaking structures are nested"

            Further reading

            The method execute() has 103 lines of code. Current threshold is set to 100. Avoid really long methods.
            Open

                protected function execute(InputInterface $input, OutputInterface $output)
                {
                    $composer = $this->getComposer();
            
                    $isDevMode = !$input->getOption('no-dev');
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            Missing class import via use statement (line '150', column '31').
            Open

                    $patchListUtils = new \Vaimo\ComposerPatches\Utils\PatchListUtils();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '303', column '33').
            Open

                    $packageCollector = new \Vaimo\ComposerPatches\Package\Collector(
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '239', column '31').
            Open

                    $patchListUtils = new \Vaimo\ComposerPatches\Utils\PatchListUtils();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '240', column '33').
            Open

                    $patchListUpdater = new \Vaimo\ComposerPatches\Patch\DefinitionList\Updater();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '135', column '30').
            Open

                    $loaderFactory = new \Vaimo\ComposerPatches\Factories\PatchesLoaderFactory($composer);
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '325', column '30').
            Open

                    $componentPool = new \Vaimo\ComposerPatches\Patch\DefinitionList\Loader\ComponentPool(
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '151', column '33').
            Open

                    $patchListUpdater = new \Vaimo\ComposerPatches\Patch\DefinitionList\Updater();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '282', column '31').
            Open

                    $configDefaults = new \Vaimo\ComposerPatches\Config\Defaults();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '317', column '20').
            Open

                    return new \Vaimo\ComposerPatches\Repository\PatchesApplier\QueueGenerator(
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '127', column '31').
            Open

                    $contextFactory = new \Vaimo\ComposerPatches\Factories\ComposerContextFactory($composer);
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '164', column '28').
            Open

                    $filterUtils = new \Vaimo\ComposerPatches\Utils\FilterUtils();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '307', column '20').
            Open

                    return new \Vaimo\ComposerPatches\Repository\StateGenerator(
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '340', column '29').
            Open

                    $statusConfig = new \Vaimo\ComposerPatches\Package\PatchApplier\StatusConfig();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '268', column '32').
            Open

                        $filterUtils = new \Vaimo\ComposerPatches\Utils\FilterUtils();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '296', column '30').
            Open

                    $configFactory = new \Vaimo\ComposerPatches\Factories\ConfigFactory($composerContext);
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '216', column '36').
            Open

                    $packageInfoResolver = new \Vaimo\ComposerPatches\Package\InfoResolver(
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            Missing class import via use statement (line '315', column '30').
            Open

                    $stateAnalyser = new \Vaimo\ComposerPatches\Repository\State\Analyser();
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            MissingImport

            Since: 2.7.0

            Importing all external classes in a file through use statements makes them clearly visible.

            Example

            function make() {
                return new \stdClass();
            }

            Source http://phpmd.org/rules/cleancode.html#MissingImport

            The method execute uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them.
            Open

                    } else {
                        $this->generateOutput($output, $patches);
                    }
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phpmd

            ElseExpression

            Since: 1.4.0

            An if expression with an else branch is basically not necessary. You can rewrite the conditions in a way that the else clause is not necessary and the code becomes simpler to read. To achieve this, use early return statements, though you may need to split the code it several smaller methods. For very simple assignments you could also use the ternary operations.

            Example

            class Foo
            {
                public function bar($flag)
                {
                    if ($flag) {
                        // one branch
                    } else {
                        // another branch
                    }
                }
            }

            Source https://phpmd.org/rules/cleancode.html#elseexpression

            Define a constant instead of duplicating this literal "excluded" 4 times.
            Open

                    $withExcluded = $input->getOption('excluded') || $input->getOption('with-excludes');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by sonar-php

            Duplicated string literals make the process of refactoring error-prone, since you must be sure to update all occurrences.

            On the other hand, constants can be referenced from many places, but only need to be updated in a single place.

            Noncompliant Code Example

            With the default threshold of 3:

            function run() {
              prepare('action1');                              // Non-Compliant - 'action1' is duplicated 3 times
              execute('action1');
              release('action1');
            }
            

            Compliant Solution

            ACTION_1 = 'action1';
            
            function run() {
              prepare(ACTION_1);
              execute(ACTION_1);
              release(ACTION_1);
            }
            

            Exceptions

            To prevent generating some false-positives, literals having less than 5 characters are excluded.

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                    $beBrief = $input->getOption('brief');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getPackage from undeclared class \Composer\Composer
            Open

                        array($composer->getPackage())
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::setName
            Open

                    $this->setName('patch:list');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_IS_ARRAY from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                    $withAffected = $input->getOption('with-affected');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method writeln from undeclared class \Symfony\Component\Console\Output\OutputInterface
            Open

                        $output->writeln(json_encode($patches));
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::setDescription
            Open

                    $this->setDescription('List all registered and eligible (based on project config) patches');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Parameter $output has undeclared type \Symfony\Component\Console\Output\OutputInterface
            Open

                protected function execute(InputInterface $input, OutputInterface $output)
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to undeclared class \Composer\Command\BaseCommand
            Open

                    parent::configure();
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getArgument from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                        Patch::TARGETS => $input->getArgument('targets')
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Parameter $output has undeclared type \Symfony\Component\Console\Output\OutputInterface
            Open

                private function generateOutput(OutputInterface $output, array $list)
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addArgument
            Open

                    $this->addArgument(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method writeln from undeclared class \Symfony\Component\Console\Output\OutputInterface
            Open

                            $output->writeln($owner ? sprintf('  ~ %s', $patchInfoLabel) : $patchInfoLabel);
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant IS_ARRAY from undeclared class \Symfony\Component\Console\Input\InputArgument
            Open

                        InputArgument::IS_ARRAY,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::getComposer
            Open

                    $composer = $this->getComposer();
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                    $isDevMode = !$input->getOption('no-dev');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                        array_filter((array)$input->getOption('status'))
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method writeln from undeclared class \Symfony\Component\Console\Output\OutputInterface
            Open

                        $output->writeln('');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_OPTIONAL from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Parameter $input has undeclared type \Symfony\Component\Console\Input\InputInterface
            Open

                protected function execute(InputInterface $input, OutputInterface $output)
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                        Patch::SOURCE => $input->getOption('filter'),
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                    if ($input->getOption('json')) {
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::getIO
            Open

                        $this->getIO(),
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_OPTIONAL from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to undeclared constant \Vaimo\ComposerPatches\Composer\Commands\ListCommand::SUCCESS
            Open

                    return self::SUCCESS;
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phan

            Class extends undeclared class \Composer\Command\BaseCommand
            Open

            class ListCommand extends \Composer\Command\BaseCommand
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method getOption from undeclared class \Symfony\Component\Console\Input\InputInterface
            Open

                    $withExcluded = $input->getOption('excluded') || $input->getOption('with-excludes');
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_NONE from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_NONE,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Parameter $composer has undeclared type \Composer\Composer
            Open

                private function createStateGenerator(Composer $composer)
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method writeln from undeclared class \Symfony\Component\Console\Output\OutputInterface
            Open

                        $output->writeln(sprintf('<info>%s</info>', $packageName));
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Argument #1 of this call to \preg_match is typically a literal or constant but isn't, but argument #2 (which is typically a variable) is a literal or constant. The arguments may be in the wrong order.
            Open

                            || preg_match($filterUtils->composeRegex($statusFilters, '/'), 'excluded')
            Severity: Minor
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to undeclared method \Vaimo\ComposerPatches\Composer\Commands\ListCommand::addOption
            Open

                    $this->addOption(
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Reference to constant VALUE_IS_ARRAY from undeclared class \Symfony\Component\Console\Input\InputOption
            Open

                        InputOption::VALUE_OPTIONAL | InputOption::VALUE_IS_ARRAY,
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            Call to method writeln from undeclared class \Symfony\Component\Console\Output\OutputInterface
            Open

                                $output->writeln(sprintf('    <comment>%s</comment>', $line));
            Severity: Critical
            Found in src/Composer/Commands/ListCommand.php by phan

            There are no issues that match your filters.

            Category
            Status