Browse Source

Attempt to load README.md by default on non-github repos if no "readme" key specified in composer.json

Jordi Boggiano 8 years ago
parent
commit
0f5336f555
1 changed files with 20 additions and 21 deletions
  1. 20 21
      src/Packagist/WebBundle/Package/Updater.php

+ 20 - 21
src/Packagist/WebBundle/Package/Updater.php

@@ -471,34 +471,33 @@ class Updater
         try {
         try {
             $driver = $repository->getDriver();
             $driver = $repository->getDriver();
             $composerInfo = $driver->getComposerInformation($driver->getRootIdentifier());
             $composerInfo = $driver->getComposerInformation($driver->getRootIdentifier());
-
             if (isset($composerInfo['readme'])) {
             if (isset($composerInfo['readme'])) {
                 $readmeFile = $composerInfo['readme'];
                 $readmeFile = $composerInfo['readme'];
-                $ext = substr($readmeFile, strrpos($readmeFile, '.'));
-
-                if ($ext === $readmeFile) {
-                    $ext = '.txt';
-                }
+            } else {
+                $readmeFile = 'README.md';
+            }
 
 
-                switch ($ext) {
-                    case '.txt':
-                        $source = $driver->getFileContent($readmeFile, $driver->getRootIdentifier());
-                        $package->setReadme('<pre>' . htmlspecialchars($source) . '</pre>');
-                        break;
+            $ext = substr($readmeFile, strrpos($readmeFile, '.'));
+            if ($ext === $readmeFile) {
+                $ext = '.txt';
+            }
 
 
-                    case '.md':
-                        $source = $driver->getFileContent($readmeFile, $driver->getRootIdentifier());
-                        $parser = new GithubMarkdown();
-                        $readme = $parser->parse($source);
+            switch ($ext) {
+                case '.txt':
+                    $source = $driver->getFileContent($readmeFile, $driver->getRootIdentifier());
+                    $package->setReadme('<pre>' . htmlspecialchars($source) . '</pre>');
+                    break;
 
 
-                        if (!empty($readme)) {
-                            $package->setReadme($this->prepareReadme($readme));
-                        }
-                        break;
-                }
+                case '.md':
+                    $source = $driver->getFileContent($readmeFile, $driver->getRootIdentifier());
+                    $parser = new GithubMarkdown();
+                    $readme = $parser->parse($source);
 
 
+                    if (!empty($readme)) {
+                        $package->setReadme($this->prepareReadme($readme));
+                    }
+                    break;
             }
             }
-
         } catch (\Exception $e) {
         } catch (\Exception $e) {
             // we ignore all errors for this minor function
             // we ignore all errors for this minor function
             $io->write(
             $io->write(