From f8beab2f41f763b95f33ad2f8478c2291cbc00f8 Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Wed, 26 Apr 2017 21:23:37 -0400 Subject: dev-php/composer: version bump 1.3.1 -> 1.4.1. This commit adds composer-1.4.1 and removes the old composer-1.3.1 at the same time, allowing me to mess with the autoload.php in-flight. We had one patch that was giving us trouble with v1.4.1, and this new ebuild is an experiment to see if we can do away with it. Instead of installing to /usr/share/php/Composer, the new v1.4.1 will install to /usr/share/composer, and only create a symlink from /usr/bin/composer to the "real" executable under /usr/share. Since the executable loads everything via relative paths, having the "real" executable under /usr/share (with the rest of its stuff) allows composer to find what it's looking for out-of-the box, without us having to point it towards our particular install location. As a result, I've removed the one patch that did so, and I've updated autoload.php with the new path. Thanks are due to Guillaume Seren who did most of the prerequisite work and stayed on top of the pull request and bug. Gentoo-Bug: 613898 Closes: https://github.com/gentoo/gentoo/pull/4364 Package-Manager: Portage-2.3.3, Repoman-2.3.1 --- dev-php/composer/Manifest | 2 +- dev-php/composer/composer-1.3.1.ebuild | 42 -------------------- dev-php/composer/composer-1.4.1.ebuild | 46 ++++++++++++++++++++++ dev-php/composer/files/autoload.php | 5 ++- dev-php/composer/files/composer-update-paths.patch | 46 ---------------------- 5 files changed, 51 insertions(+), 90 deletions(-) delete mode 100644 dev-php/composer/composer-1.3.1.ebuild create mode 100644 dev-php/composer/composer-1.4.1.ebuild delete mode 100644 dev-php/composer/files/composer-update-paths.patch (limited to 'dev-php/composer') diff --git a/dev-php/composer/Manifest b/dev-php/composer/Manifest index 623786d06347..aaf64094054f 100644 --- a/dev-php/composer/Manifest +++ b/dev-php/composer/Manifest @@ -1 +1 @@ -DIST composer-1.3.1.tar.gz 1081862 SHA256 af40d800c8120c802f80c28cbd80824212111e62e3ef8b96a73ae639cff8f620 SHA512 3b8c4c708cd3b88b49574c691605ef42c2c083b300f910be3b897350c9c35d9f923f47cbcfa64e19d89c28079f0631350f30db747d89808183d20cb779895afb WHIRLPOOL 6545c1f38e11e4233c4ee6f257a8e0c090c2de2981ea9e00a7de54fe3d4337aaa16e1e873da7db2009ad355e3c6da4d7eb12eec81992233840b26bc2b1a0f373 +DIST composer-1.4.1.tar.gz 1090505 SHA256 27c0c134d6a151de8e552f4da98a2100973a64a33c462b14bd5cb463cee254dc SHA512 8fc1e53666151c2b029544216dfc842379763bd3e5085c15c118dfa8ca0da8559a48909cb5ee29f37f6ed07b7572375354a09bd160b9c0828fe40e809defd8a9 WHIRLPOOL 3104bbffc6e5241d052454169e88a0a167acf0229f1ed2fbf184eef9ccb5cd4ab00021be431b84389b40fe895fb1e560e8ecc2f7dd99f457c7190877a0fe107e diff --git a/dev-php/composer/composer-1.3.1.ebuild b/dev-php/composer/composer-1.3.1.ebuild deleted file mode 100644 index 366cc6ed80a6..000000000000 --- a/dev-php/composer/composer-1.3.1.ebuild +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -DESCRIPTION="Dependency Manager for PHP" -HOMEPAGE="https://github.com/composer/composer" -SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -RDEPEND=" - dev-lang/php:*[curl] - >=dev-php/ca-bundle-1.0.0 - >=dev-php/cli-prompt-1.0.0 - >=dev-php/psr-log-1.0.2 - dev-php/fedora-autoloader - >=dev-php/json-schema-2.0.0 - >=dev-php/jsonlint-1.4.0 - >=dev-php/phar-utils-1.0.0 - >=dev-php/semver-1.0.0 - >=dev-php/spdx-licenses-1.0.0 - >=dev-php/symfony-console-2.7.9 - >=dev-php/symfony-filesystem-2.7.20 - >=dev-php/symfony-finder-2.7.20 - >=dev-php/symfony-process-2.8.12" - -PATCHES=( - "${FILESDIR}/${PN}-update-paths.patch" -) - -src_install() { - insinto "/usr/share/php/Composer/Composer" - - # Composer expects the LICENSE file to be there, and the - # easiest thing to do is to give it what it wants. - doins -r src/Composer/. res LICENSE "${FILESDIR}"/autoload.php - dobin bin/composer - dodoc README.md -} diff --git a/dev-php/composer/composer-1.4.1.ebuild b/dev-php/composer/composer-1.4.1.ebuild new file mode 100644 index 000000000000..90d53510da0c --- /dev/null +++ b/dev-php/composer/composer-1.4.1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +DESCRIPTION="Dependency Manager for PHP" +HOMEPAGE="https://github.com/composer/composer" +SRC_URI="${HOMEPAGE}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + dev-lang/php:*[curl] + >=dev-php/ca-bundle-1.0.0 + >=dev-php/cli-prompt-1.0.0 + >=dev-php/psr-log-1.0.2 + dev-php/fedora-autoloader + >=dev-php/json-schema-2.0.0 + >=dev-php/jsonlint-1.4.0 + >=dev-php/phar-utils-1.0.0 + >=dev-php/semver-1.0.0 + >=dev-php/spdx-licenses-1.0.0 + >=dev-php/symfony-console-2.7.9 + >=dev-php/symfony-filesystem-2.7.20 + >=dev-php/symfony-finder-2.7.20 + >=dev-php/symfony-process-2.8.12" + +src_install() { + insinto "/usr/share/${PN}" + + # Composer expects the LICENSE file to be there, and the + # easiest thing to do is to give it what it wants. + doins -r src res LICENSE + + insinto "/usr/share/${PN}/vendor" + doins "${FILESDIR}"/autoload.php + + exeinto "/usr/share/${PN}/bin" + doexe "bin/${PN}" + dosym "/usr/share/${PN}/bin/${PN}" "/usr/bin/${PN}" + + dodoc CHANGELOG.md README.md doc/*.md + dodoc -r doc/articles doc/faqs +} diff --git a/dev-php/composer/files/autoload.php b/dev-php/composer/files/autoload.php index 5be766d60f49..30d8495a4548 100644 --- a/dev-php/composer/files/autoload.php +++ b/dev-php/composer/files/autoload.php @@ -6,7 +6,10 @@ if (!class_exists('Fedora\\Autoloader\\Autoload', false)) { require_once '/usr/share/php/Fedora/Autoloader/autoload.php'; } -\Fedora\Autoloader\Autoload::addPsr4('Composer\\', __DIR__); +\Fedora\Autoloader\Autoload::addPsr4( + 'Composer\\', + __DIR__ . '/../src/Composer' +); // Dependencies \Fedora\Autoloader\Dependencies::required(array( diff --git a/dev-php/composer/files/composer-update-paths.patch b/dev-php/composer/files/composer-update-paths.patch deleted file mode 100644 index 754cbabcbcfe..000000000000 --- a/dev-php/composer/files/composer-update-paths.patch +++ /dev/null @@ -1,46 +0,0 @@ ---- ./src/Composer/Autoload/AutoloadGenerator.php 2016-11-03 17:43:15.000000000 +0100 -+++ ./src/Composer/Autoload/AutoloadGenerator.php 2016-11-18 16:54:55.664985847 +0100 -@@ -291,7 +291,7 @@ - file_put_contents($targetDir.'/autoload_real.php', $this->getAutoloadRealFile(true, (bool) $includePathFileContents, $targetDirLoader, (bool) $includeFilesFileContents, $vendorPathCode, $appBaseDirCode, $suffix, $useGlobalIncludePath, $prependAutoloader, $staticPhpVersion)); - - $this->safeCopy(__DIR__.'/ClassLoader.php', $targetDir.'/ClassLoader.php'); -- $this->safeCopy(__DIR__.'/../../../LICENSE', $targetDir.'/LICENSE'); -+ $this->safeCopy('/usr/share/php/Composer/Composer/LICENSE', $targetDir.'/LICENSE'); - - if ($this->runScripts) { - $this->eventDispatcher->dispatchScript(ScriptEvents::POST_AUTOLOAD_DUMP, $this->devMode, array(), array( - ---- ./tests/Composer/Test/Json/ComposerSchemaTest.php 2016-11-03 17:43:15.000000000 +0100 -+++ ./tests/Composer/Test/Json/ComposerSchemaTest.php 2016-11-20 18:27:43.169665101 +0100 -@@ -87,7 +87,7 @@ - - private function check($json) - { -- $schema = json_decode(file_get_contents(__DIR__ . '/../../../../res/composer-schema.json')); -+ $schema = json_decode(file_get_contents('/usr/share/php/Composer/Composer/res/composer-schema.json')); - $validator = new Validator(); - $validator->check(json_decode($json), $schema); - ---- ./src/Composer/Json/JsonFile.php 2016-11-04 02:51:03.844719014 +0100 -+++ ./src/Composer/Json/JsonFile.php 2016-11-18 16:44:06.065969630 +0100 -@@ -156,7 +156,7 @@ - self::validateSyntax($content, $this->path); - } - -- $schemaFile = __DIR__ . '/../../../res/composer-schema.json'; -+ $schemaFile = '/usr/share/php/Composer/Composer/res/composer-schema.json'; - $schemaData = json_decode(file_get_contents($schemaFile)); - - if ($schema === self::LAX_SCHEMA) { - ---- ./bin/composer 2016-11-18 15:56:40.615898592 +0100 -+++ ./bin/composer 2016-11-18 16:06:05.348912690 +0100 -@@ -5,7 +5,7 @@ - echo 'Warning: Composer should be invoked via the CLI version of PHP, not the '.PHP_SAPI.' SAPI'.PHP_EOL; - } - --require __DIR__.'/../src/bootstrap.php'; -+require '/usr/share/php/Composer/Composer/autoload.php'; - - use Composer\Console\Application; - -- cgit v1.2.3-65-gdbad