Use pretty name/version in lock file and debug:packages, fixes #98

main
Jordi Boggiano 13 years ago
parent 8df2436be8
commit 3b8ee5dd54

@ -50,12 +50,12 @@ EOT
$installedRepo = new PlatformRepository($localRepo); $installedRepo = new PlatformRepository($localRepo);
foreach ($installedRepo->getPackages() as $package) { foreach ($installedRepo->getPackages() as $package) {
$output->writeln('installed: '.$package->getName().' '.$package->getVersion()); $output->writeln('installed: '.$package->getPrettyName().' '.$package->getPrettyVersion().' ('.$package->getName().' '.$package->getVersion().')');
} }
foreach ($composer->getRepositoryManager()->getRepositories() as $repository) { foreach ($composer->getRepositoryManager()->getRepositories() as $repository) {
foreach ($repository->getPackages() as $package) { foreach ($repository->getPackages() as $package) {
$output->writeln('available: '.$package->getName().' '.$package->getVersion()); $output->writeln('available: '.$package->getPrettyName().' '.$package->getPrettyVersion().' ('.$package->getName().' '.$package->getVersion().')');
} }
} }
} }

@ -27,7 +27,6 @@ class ArrayDumper
'names', 'names',
'extra', 'extra',
'installationSource' => 'installation-source', 'installationSource' => 'installation-source',
'version',
'license', 'license',
'requires', 'requires',
'conflicts', 'conflicts',
@ -41,6 +40,7 @@ class ArrayDumper
$data = array(); $data = array();
$data['name'] = $package->getPrettyName(); $data['name'] = $package->getPrettyName();
$data['version'] = $package->getPrettyVersion();
if ($package->getTargetDir()) { if ($package->getTargetDir()) {
$data['target-dir'] = $package->getTargetDir(); $data['target-dir'] = $package->getTargetDir();
} }

@ -89,8 +89,8 @@ class Locker
{ {
$hash = array(); $hash = array();
foreach ($packages as $package) { foreach ($packages as $package) {
$name = $package->getName(); $name = $package->getPrettyName();
$version = $package->getVersion(); $version = $package->getPrettyVersion();
if (!$name || !$version) { if (!$name || !$version) {
throw new \LogicException(sprintf( throw new \LogicException(sprintf(

@ -13,6 +13,7 @@
namespace Composer\Repository; namespace Composer\Repository;
use Composer\Package\PackageInterface; use Composer\Package\PackageInterface;
use Composer\Package\Version\VersionParser;
/** /**
* A repository implementation that simply stores packages in an array * A repository implementation that simply stores packages in an array
@ -29,6 +30,11 @@ class ArrayRepository implements RepositoryInterface
*/ */
public function findPackage($name, $version) public function findPackage($name, $version)
{ {
// normalize version & name
$versionParser = new VersionParser();
$version = $versionParser->normalize($version);
$name = strtolower($name);
foreach ($this->getPackages() as $package) { foreach ($this->getPackages() as $package) {
if ($name === $package->getName() && $version === $package->getVersion()) { if ($name === $package->getName() && $version === $package->getVersion()) {
return $package; return $package;

Loading…
Cancel
Save