Browse Source

Merge branch '1.4'

Jordi Boggiano 8 years ago
parent
commit
a2e22f7a84

+ 1 - 1
src/Composer/Command/RemoveCommand.php

@@ -35,7 +35,7 @@ class RemoveCommand extends BaseCommand
             ->setName('remove')
             ->setDescription('Removes a package from the require or require-dev.')
             ->setDefinition(array(
-                new InputArgument('packages', InputArgument::IS_ARRAY, 'Packages that should be removed.'),
+                new InputArgument('packages', InputArgument::IS_ARRAY | InputArgument::REQUIRED, 'Packages that should be removed.'),
                 new InputOption('dev', null, InputOption::VALUE_NONE, 'Removes a package from the require-dev section.'),
                 new InputOption('no-progress', null, InputOption::VALUE_NONE, 'Do not output download progress.'),
                 new InputOption('no-update', null, InputOption::VALUE_NONE, 'Disables the automatic update of the dependencies.'),

+ 4 - 3
src/Composer/Command/ShowCommand.php

@@ -256,6 +256,8 @@ EOT
         }
         if (Platform::isWindows()) {
             $width--;
+        } else {
+            $width = max(80, $width);
         }
 
         if ($input->getOption('path') && null === $composer) {
@@ -445,11 +447,10 @@ EOT
                     if (isset($package['path'])) {
                         $io->write(' ' . $package['path'], false);
                     }
+                    $io->write('');
                     if (isset($package['warning'])) {
-                        $io->writeError('');
-                        $io->writeError('<warning>' . $package['warning'] . '</warning>', false);
+                        $io->write('<warning>' . $package['warning'] . '</warning>');
                     }
-                    $io->write('');
                 }
 
                 if ($showAllTypes) {

+ 5 - 0
src/Composer/Repository/Vcs/BitbucketDriver.php

@@ -321,6 +321,11 @@ abstract class BitbucketDriver extends VcsDriver
             );
             $hasNext = true;
             while ($hasNext) {
+                // skip headless branches which seem to be deleted branches that bitbucket nevertheless returns in the API
+                if ($this->vcsType === 'hg' && empty($data['heads'])) {
+                    continue;
+                }
+
                 $branchData = JsonFile::parseJson($this->getContentsWithOAuthCredentials($resource), $resource);
                 foreach ($branchData['values'] as $data) {
                     $this->branches[$data['name']] = $data['target']['hash'];