Bläddra i källkod

Remove support for deprecated lock format

Jordi Boggiano 12 år sedan
förälder
incheckning
7e4ca7638c
2 ändrade filer med 2 tillägg och 66 borttagningar
  1. 1 5
      src/Composer/Installer.php
  2. 1 61
      src/Composer/Package/Locker.php

+ 1 - 5
src/Composer/Installer.php

@@ -315,7 +315,7 @@ class Installer
             $pool->addRepository($lockedRepository, $aliases);
         }
 
-        if (!$installFromLock || !$this->locker->isCompleteFormat()) {
+        if (!$installFromLock) {
             $repositories = $this->repositoryManager->getRepositories();
             foreach ($repositories as $repository) {
                 $pool->addRepository($repository, $aliases);
@@ -393,10 +393,6 @@ class Installer
         } elseif ($installFromLock) {
             $this->io->write('<info>Installing dependencies'.($withDevReqs?' (including require-dev)':'').' from lock file</info>');
 
-            if (!$this->locker->isCompleteFormat($withDevReqs)) {
-                $this->io->write('<warning>Warning: Your lock file is in a deprecated format. It will most likely take a *long* time for composer to install dependencies, and may cause dependency solving issues.</warning>');
-            }
-
             if (!$this->locker->isFresh()) {
                 $this->io->write('<warning>Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.</warning>');
             }

+ 1 - 61
src/Composer/Package/Locker.php

@@ -84,23 +84,6 @@ class Locker
         return $this->hash === $lock['hash'];
     }
 
-    /**
-     * Checks whether the lock file is in the new complete format or not
-     *
-     * @return bool
-     */
-    public function isCompleteFormat()
-    {
-        $lockData = $this->getLockData();
-        $lockedPackages = $lockData['packages'];
-
-        if (empty($lockedPackages) || isset($lockedPackages[0]['name'])) {
-            return true;
-        }
-
-        return false;
-    }
-
     /**
      * Searches and returns an array of locked packages, retrieved from registered repositories.
      *
@@ -133,50 +116,7 @@ class Locker
             return $packages;
         }
 
-        // legacy lock file support
-        $repo = $this->repositoryManager->getLocalRepository();
-        foreach ($lockedPackages as $info) {
-            $resolvedVersion = !empty($info['alias-version']) ? $info['alias-version'] : $info['version'];
-
-            // try to find the package in the local repo (best match)
-            $package = $repo->findPackage($info['package'], $resolvedVersion);
-
-            // try to find the package in any repo
-            if (!$package) {
-                $package = $this->repositoryManager->findPackage($info['package'], $resolvedVersion);
-            }
-
-            // try to find the package in any repo (second pass without alias + rebuild alias since it disappeared)
-            if (!$package && !empty($info['alias-version'])) {
-                $package = $this->repositoryManager->findPackage($info['package'], $info['version']);
-                if ($package) {
-                    $package->setAlias($info['alias-version']);
-                    $package->setPrettyAlias($info['alias-pretty-version']);
-                }
-            }
-
-            if (!$package) {
-                throw new \LogicException(sprintf(
-                    'Can not find "%s-%s" package in registered repositories',
-                    $info['package'], $info['version']
-                ));
-            }
-
-            $package = clone $package;
-            if (!empty($info['time'])) {
-                $package->setReleaseDate($info['time']);
-            }
-            if (!empty($info['source-reference'])) {
-                $package->setSourceReference($info['source-reference']);
-                if (is_callable($package, 'setDistReference')) {
-                    $package->setDistReference($info['source-reference']);
-                }
-            }
-
-            $packages->addPackage($package);
-        }
-
-        return $packages;
+        throw new \RuntimeException('Your composer.lock was created before 2012-09-15, and is not supported anymore. Run "composer update" to generate a new one.');
     }
 
     /**