Merge branch '1.10'

main
Jordi Boggiano 4 years ago
commit 49a28f606c
No known key found for this signature in database
GPG Key ID: 7BBD42C429EC80BC

@ -442,9 +442,15 @@ that exact version, and not any other version, which would be incorrect.
#### provide
List of other packages that are provided by this package. This is mostly
useful for common interfaces. A package could depend on some virtual
`logger` package, any library that implements this logger interface would
simply list it in `provide`.
useful for implementations of common interfaces. A package could depend on
some virtual `logger-implementation` package, any library that implements
this logger interface would simply list it in `provide`.
Using `provide` with the name of an actual package rather than a virtual one
implies that the code of that package is also shipped, in which case `replace`
is generally a better choice. A common convention for packages providing an
interface and relying on other packages to provide an implementation (for
instance the PSR interfaces) is to use a `-implementation` suffix for the
name of the virtual package corresponding to the interface package.
#### suggest

@ -176,8 +176,19 @@ EOT
return 1;
}
$channelString = $versionsUtil->getChannel();
if (is_numeric($channelString)) {
$channelString .= '.x';
}
if (Composer::VERSION === $updateVersion) {
$io->writeError(sprintf('<info>You are already using composer version %s (%s channel).</info>', $updateVersion, $versionsUtil->getChannel()));
$io->writeError(
sprintf(
'<info>You are already using composer version %s (%s channel).</info>',
$updateVersion,
$channelString
)
);
// remove all backups except for the most recent, if any
if ($input->getOption('clean-backups')) {
@ -198,7 +209,7 @@ EOT
$updatingToTag = !preg_match('{^[0-9a-f]{40}$}', $updateVersion);
$io->write(sprintf("Upgrading to version <info>%s</info> (%s channel).", $updateVersion, $versionsUtil->getChannel()));
$io->write(sprintf("Upgrading to version <info>%s</info> (%s channel).", $updateVersion, $channelString));
$remoteFilename = $baseUrl . ($updatingToTag ? "/download/{$updateVersion}/composer.phar" : '/composer.phar');
$signature = $httpDownloader->get($remoteFilename.'.sig')->getBody();
$io->writeError(' ', false);

@ -43,7 +43,7 @@ class ArchivableFilesFinder extends \FilterIterator
{
$fs = new Filesystem();
$sources = $fs->normalizePath($sources);
$sources = $fs->normalizePath(realpath($sources));
if ($ignoreFilters) {
$filters = array();
@ -58,7 +58,7 @@ class ArchivableFilesFinder extends \FilterIterator
$this->finder = new Finder();
$filter = function (\SplFileInfo $file) use ($sources, $filters, $fs) {
if ($file->isLink() && strpos($file->getLinkTarget(), $sources) !== 0) {
if ($file->isLink() && strpos($file->getRealPath(), $sources) !== 0) {
return false;
}

Loading…
Cancel
Save