فهرست منبع

#4331 use --no-auth-cache for svn downloader when such option was set

Alexander Loutsenko 9 سال پیش
والد
کامیت
f42ba46175
1فایلهای تغییر یافته به همراه8 افزوده شده و 0 حذف شده
  1. 8 0
      src/Composer/Downloader/SvnDownloader.php

+ 8 - 0
src/Composer/Downloader/SvnDownloader.php

@@ -21,6 +21,8 @@ use Composer\Util\Svn as SvnUtil;
  */
 class SvnDownloader extends VcsDownloader
 {
+    protected $cacheCredentials = true;
+
     /**
      * {@inheritDoc}
      */
@@ -29,6 +31,11 @@ class SvnDownloader extends VcsDownloader
         SvnUtil::cleanEnv();
         $ref = $package->getSourceReference();
 
+        $repoConfig = $package->getRepository()->getRepoConfig();
+        if (array_key_exists('svn-cache-credentials', $repoConfig)) {
+            $this->cacheCredentials = (bool) $repoConfig['svn-cache-credentials'];
+        }
+
         $this->io->writeError("    Checking out ".$package->getSourceReference());
         $this->execute($url, "svn co", sprintf("%s/%s", $url, $ref), null, $path);
     }
@@ -85,6 +92,7 @@ class SvnDownloader extends VcsDownloader
     protected function execute($baseUrl, $command, $url, $cwd = null, $path = null)
     {
         $util = new SvnUtil($baseUrl, $this->io, $this->config);
+        $util->setCacheCredentials($this->cacheCredentials);
         try {
             return $util->execute($command, $url, $cwd, $path, $this->io->isVerbose());
         } catch (\RuntimeException $e) {