Ver código fonte

Let users open the homepage of the current package by doing composer home without argument, fixes #6748

Jordi Boggiano 7 anos atrás
pai
commit
a1e292d84d
1 arquivos alterados com 8 adições e 2 exclusões
  1. 8 2
      src/Composer/Command/HomeCommand.php

+ 8 - 2
src/Composer/Command/HomeCommand.php

@@ -38,7 +38,7 @@ class HomeCommand extends BaseCommand
             ->setAliases(array('home'))
             ->setDescription('Opens the package\'s repository URL or homepage in your browser.')
             ->setDefinition(array(
-                new InputArgument('packages', InputArgument::IS_ARRAY | InputArgument::REQUIRED, 'Package(s) to browse to.'),
+                new InputArgument('packages', InputArgument::IS_ARRAY, 'Package(s) to browse to.'),
                 new InputOption('homepage', 'H', InputOption::VALUE_NONE, 'Open the homepage instead of the repository URL.'),
                 new InputOption('show', 's', InputOption::VALUE_NONE, 'Only show the homepage or repository URL.'),
             ))
@@ -61,7 +61,13 @@ EOT
         $io = $this->getIO();
         $return = 0;
 
-        foreach ($input->getArgument('packages') as $packageName) {
+        $packages = $input->getArgument('packages');
+        if (!$packages) {
+            $io->writeError('No package specified, opening homepage for the root package');
+            $packages = [$this->getComposer()->getPackage()->getName()];
+        }
+
+        foreach ($packages as $packageName) {
             $handled = false;
             $packageExists = false;
             foreach ($repos as $repo) {