1
0
Fork 0
Commit Graph

3725 Commits (c7ed232ef42c2bd63cdba057b6c7c8043b37cd5a)

Author SHA1 Message Date
Samuel ROZE 6c16153302 Added repository tests 2015-08-25 22:06:48 +01:00
Zsolt Szeberenyi 62630e5c69 Fix strict comparison of the content hash 2015-08-21 16:55:44 +12:00
Zsolt Szeberenyi bfb83f1fb7 Add name and version to the relevant fields, move content hash checking to the Locker 2015-08-21 16:54:28 +12:00
Bryan Davis 71cb587611 Add autoloader cli options to `require` and `remove`
Update the `composer require` and `composer remove` commands to support
the `--optimize-autoloader` and `--classmap-authoritative` cli options
and associated configuration settings. All cli entry points that invoke
`Installer::run()` or `AutoloadGenerator::dump()` now have consistent
support for these autoloader optimization flags.
2015-08-19 22:18:54 -06:00
Bryan Davis cc2b9cfca5 Add cli argument for classmap-authoritative
Add a `--classmap-authoritative (-a)` argument to `composer install`,
`composer update` and `composer dumpautoload`. This enables the same
authoritative classmap behavior as the existing `classmap-authoritative`
configuration setting. The option can be used for creating highly
optimized production autoloaders via `composer install --no-dev
--optimize-autoloader --classmap-authoritative` for projects where
multiple autoloaders are present and unnecessary `file_exists` calls
introduce performance issues.

Closes #4361
2015-08-19 22:18:54 -06:00
voroks e873438dbd Merge branch 'master' of github.com:composer/composer into 4254-remove-autoload_files.php-when-needed 2015-08-19 15:08:57 +08:00
voroks 154092ba1a Added removing file 'include_path.php' (if it is empty). 2015-08-19 15:08:27 +08:00
Samuel ROZE 4ab123291d Add missing licence in VersionGuesser 2015-08-18 15:10:59 +01:00
Samuel ROZE 623f31fcc4 Use version guesser to get local package version 2015-08-18 15:08:27 +01:00
Samuel ROZE 5261a5fa03 Move version guessing in `VersionGuesser` class 2015-08-18 14:58:18 +01:00
Samuel ROZE ead68d3d49 Create the path repository and downloader 2015-08-18 14:40:48 +01:00
voroks 457bc20c34 Explicit comparison was removed. 2015-08-18 16:10:59 +08:00
voroks cca42ff0be Fixed indents: we should use spaces instead tabulation. 2015-08-18 15:29:22 +08:00
Jordi Boggiano 9859859f10 Add comment, fixes #4145 2015-08-17 15:57:00 +01:00
DSanchez abfe54f334 Add missing PHPDoc
Conflicts:
	src/Composer/Installer.php
2015-08-17 15:55:09 +01:00
DSanchez 6ce9d2e152 Remove useless variable, method return void! 2015-08-17 15:52:30 +01:00
voroks 4fa1cb2e9c Removing file autoload_files.php was added (#4254) 2015-08-15 16:12:16 +08:00
Jordi Boggiano 3c5f3e6dc7 Warn if cache isnt writable as well 2015-08-14 13:30:42 +01:00
Rob Bast 61dc752c78 Warn if cache directory cannot be created
closes #1161
2015-08-14 14:21:12 +02:00
Rob Bast 593af4b1bf add license file during autoload dumping
closes #4288
2015-08-14 12:00:21 +02:00
Jordi Boggiano a979cc78ed Suppress warnings on touch() failures of the vendor dir, refs #4070 2015-08-11 11:20:39 +01:00
Jordi Boggiano cedbe7f1a0 Bump vcs verbosity output to very verbose, refs #4330 2015-08-10 12:58:58 +01:00
Jordi Boggiano 0457ec6fb3 Remove deadcode, fixes #4345, fixes #4268 2015-08-10 12:42:51 +01:00
Jordi Boggiano 812523f1ab Add more debug info on cache write failure, refs #4249 2015-08-10 10:07:48 +01:00
Jordi Boggiano 65bb8d99f4 Fix global switch regression on config command, fixes #4344 2015-08-10 08:35:31 +01:00
Jordi Boggiano 5a26b7c102 Merge pull request #4299 from webberwu/master
show change if package directory have changed to symbolic link
2015-08-10 01:17:02 +01:00
Jordi Boggiano 4824b4504e Remove typo 2015-08-10 01:05:32 +01:00
Jordi Boggiano 33badac0a8 Include full error message in debug mode 2015-08-10 00:57:13 +01:00
Jordi Boggiano b16c5fbeb9 Shorten ternary and reuse config file instead of the null argument to figure out path to auth.json 2015-08-10 00:56:55 +01:00
Jordi Boggiano cdeb7621ba Merge remote-tracking branch 'Tehem/issue-4302' 2015-08-10 00:52:39 +01:00
Jordi Boggiano a782dab2cd Merge remote-tracking branch 'iamluc/git-diff' 2015-08-09 23:26:55 +01:00
Jordi Boggiano bd23ce672a Merge pull request #4324 from MalteWunsch/getCanonicalPackages-with-different-versions
Improve documentation for WritableRepositoryInterface::getCanonicalPackages
2015-08-09 17:36:21 +01:00
iamluc d02ab54be1 Add a new option to view local modifications (git diff) 2015-08-09 17:30:32 +02:00
Nicolas Grekas fbae6b1589 Revert "Merge pull request #3975 from marc-mabe/hotfix/3974"
This reverts commit bdb6ecb29e, reversing
changes made to 8a12e50a16.
2015-08-04 10:34:54 +02:00
Malte Wunsch 70ff00c9de Reverted inadvertent API change, improved API documentation 2015-08-04 09:32:23 +02:00
Tehem 9e592f19a1 Used shorthand version for ternary operator 2015-08-03 23:36:05 +02:00
Malte Wunsch 767279b41a getCanonicalPackages returns packages with same name in different versions 2015-08-03 18:28:04 +02:00
Thomas Marcon b35e762354 Updated configFile parsing to first look into -f parameter, then COMPOSER environment variable, then default to composer.json 2015-07-31 12:01:49 +02:00
Rob Bast 51ef7b5eef instead of generic be more verbose about possible causes 2015-07-31 10:01:58 +02:00
Rob Bast 77f1d5945f make sure php version errors are less misleading
* determine conflicting version in problem using pool package
* hide version in rule to keep it generic rather than possibly misleading

fixes #4319
2015-07-31 09:58:34 +02:00
Tehem 9392adef79 Fixes #4302 allow COMPOSER env with config statements (overrides --file) 2015-07-28 00:01:01 +02:00
Webber Wu 92530e374b Merge remote-tracking branch 'upstream/master' 2015-07-26 12:33:39 +08:00
Kocsis Máté 87c16073ec Merge branch 'master' of https://github.com/composer/composer into feature-bin-compat 2015-07-22 15:54:20 +02:00
Jordi Boggiano 00c26791fa Merge pull request #4264 from alcohol/use-composer-spdx
remove spdx files, introduce external library
2015-07-20 18:29:14 +01:00
Jordi Boggiano bbf959ac34 Do not retry failures once degraded mode is already enabled 2015-07-20 17:44:03 +01:00
Jordi Boggiano ff84b32097 Add degraded mode to try and bypass ipv6/gzip issues, refs #4142, refs #4121 2015-07-20 17:33:53 +01:00
Rob Bast 2553f5f7d4 throw error when file is loaded 2015-07-20 12:10:30 +02:00
Rob Bast 56f0d82207 get resources dir from spdxlicenses 2015-07-20 11:42:20 +02:00
Rob Bast 616585e0cc spdxlicense extends spdxlicenses, add depr error 2015-07-16 13:21:18 +02:00
Rob Bast 1f006a499e updated compiler class to include spdx sources 2015-07-16 12:03:34 +02:00
Rob Bast 5ae9e7fe22 remove spdx files, introduce external library 2015-07-16 11:42:12 +02:00
Jordi Boggiano 92faf1c7a8 Merge pull request #4228 from naderman/memory-version-constraint
Remove unnecessary version comparison cache variable and store operator as int
2015-07-14 13:37:15 +01:00
Jordi Boggiano 7e0db8aa46 Merge pull request #4239 from naderman/memory-rules
Reduce memory usage of Rule objects
2015-07-14 13:34:24 +01:00
Nils Adermann cf1af58514 Use bitwise operators directly in rules instead of get/set Bitfield 2015-07-14 14:24:18 +02:00
Nils Adermann ccaba0d2f7 Make static translation tables in version constraint private and use === 2015-07-14 14:12:19 +02:00
Jordi Boggiano c36d2a2e50 Merge pull request #4214 from legoktm/parse-links
Move VersionParser::parseLinks() to ArrayLoader::parseLinks()
2015-07-13 14:28:10 +01:00
Jordi Boggiano 42bfe9c56a Merge pull request #4219 from localheinz/feature/strict-mode
Enhancement: Also validate if lock file is up to date
2015-07-12 16:39:36 +01:00
Jordi Boggiano acc11f63c5 Merge pull request #4234 from naderman/rule-hash-int-size
Reduce rule hash size
2015-07-12 16:25:14 +01:00
Jordi Boggiano efb9f13248 Merge pull request #4229 from naderman/memory-version-array-merge
VersionParser: remove a few hundred/thousand array_merge calls
2015-07-12 16:14:16 +01:00
Andreas Möller 5828f6202d Enhancement: Also validate lock file 2015-07-10 18:07:40 -04:00
Nils Adermann de65199f31 Merge pull request #4117 from stof/patch-1
Optimize the regex detecting timestamps
2015-07-09 21:17:24 +02:00
Nils Adermann 956035e641 Remove the unnecessary return statements from setters 2015-07-09 19:40:03 +02:00
Nils Adermann f535542fca Use constants with names for bitfield offsets 2015-07-09 18:59:16 +02:00
Nils Adermann 329ab5cf41 Rename blob rule property to bitfield 2015-07-09 18:48:50 +02:00
Nils Adermann 961ea868ac Use an integer bitfield for rule properties instead of a string binary blob 2015-07-09 18:26:31 +02:00
Nils Adermann 6e81f63635 Reduce memory footprint of rules by storing data in blob
Not declaring the job property saves significant amounts of memory as
most rules leave it as null
2015-07-09 17:23:45 +02:00
Nils Adermann 3fd4672382 VersionParser: Append elements directly instead of array_merge 2015-07-09 12:57:34 +02:00
Nils Adermann c7e1f49e78 Rule hashes are only used in the rule set, so no need to store them 2015-07-08 19:11:59 +02:00
Nils Adermann 15d572da4c Use 4 byte integer from raw md5 instead of 5 hex representation chars
The hash is necessary as comparisons are significantly too slow
otherwise. The old hash function used substr on the hexadecimal
representation of the md5 hash, rather than the raw binary output. This
wastes a significant amount of memory, as each byte can only be used to
store up to 4 bit of information. The new hash has 32bit instead of
20bit and uses only a 4 byte integer instead of a 5 byte string.
2015-07-08 19:11:58 +02:00
Nils Adermann 5b1b96b61e Output the number of rules used in the solver for profiling purposes 2015-07-08 17:57:23 +02:00
Nils Adermann e88df7429f Remove a few hundred/thousand array_merge calls 2015-07-08 13:36:19 +02:00
Nils Adermann 8dd110e0a9 Remove unnecessary version comparison cache variable and store operators as int 2015-07-08 13:13:47 +02:00
Nils Adermann 07e1d227c9 Output the size of the pool after dependency resolution for users 2015-07-07 15:40:26 +02:00
Nils Adermann 22737e31a7 Merge pull request #4213 from legoktm/stabilities
Don't use BasePackage::$stabilities in VersionParser
2015-07-07 13:45:55 +02:00
Jordi Boggiano a8d71be0ef Add event name in verbose mode, refs #4123 2015-07-04 12:15:04 +01:00
Jordi Boggiano 852e4f4e26 Merge remote-tracking branch 'alcohol/output-script-command-in-verbose-mode' 2015-07-04 12:11:18 +01:00
Jordi Boggiano 0964c02acb Use only one level of verbosity 2015-07-04 12:02:57 +01:00
Jordi Boggiano 5ba41514a9 Merge remote-tracking branch 'alcohol/add-suggests-command' 2015-07-04 11:58:58 +01:00
Kunal Mehta 14d1f0f3f6 Move VersionParser::parseLinks() to ArrayLoader::parseLinks()
Working towards #3545.

parseLinks is a wrapper around VersionParser::parseConstraints() that
creates Link objects, and better belongs in ArrayLoader.
2015-07-03 19:35:54 -07:00
Kunal Mehta 0ad9e98a59 Don't use BasePackage::$stabilities in VersionParser
Working towards #3545.

This adds VersionParser::$stabilities, which is an array of the
supported stability levels. This adds a little bit of duplication,
however we were already hardcoding the various stabilities in regular
expressions and functions like parseStability().
2015-07-03 17:54:30 -07:00
Jordi Boggiano 2438105e11 Merge pull request #4086 from legoktm/format-version
Move VersionParser::formatVersion() to BasePackage::getFullPrettyVersion()
2015-07-04 00:55:50 +01:00
Jordi Boggiano e2b2f450dc Merge pull request #4144 from staabm/patch-2
Dropped unnecessary break statements
2015-07-03 21:49:05 +01:00
Jordi Boggiano 9b3e8b963e Merge pull request #4143 from staabm/patch-1
Dropped obsolete condition
2015-07-03 21:48:39 +01:00
Jordi Boggiano 01a9c3a0ce Merge pull request #4208 from alcohol/update-spdx-updater
Updated SPDX related files in light of 2.0 release of SPDX specification
2015-07-03 11:54:16 +01:00
Rob Bast 4019f7bb44 Revert "apply a regex solution instead of tokenizer"
This reverts commit 33a7305e22c8d4e2ce38586855fd3d4b7b2af3dd.
2015-07-03 12:22:16 +02:00
Rob Bast b5d286e27b apply a regex solution instead of tokenizer 2015-07-03 12:22:16 +02:00
Rob Bast e4118385a0 updated spdx related files 2015-07-03 12:22:16 +02:00
Kunal Mehta c5afb8f23a Mark VersionParser::formatVersion() as deprecated
With 1753c275ff, this will be handled nicely.
2015-07-02 00:07:04 -07:00
Kunal Mehta f634c6946d Update callers of VersionParser::formatVersion()
Tests were moved to BasePackageTest.
2015-07-02 00:06:56 -07:00
Kunal Mehta 99dab8aebd Move VersionParser::formatVersion() to BasePackage::getFullPrettyVersion()
Working towards #3545.

formatVersion() does not belong in VersionParser since it depends upon a
Package object, and is creating a more complete pretty formatted
version, not parsing anything.

The new getFullPrettyVersion() method can be seen as an extension to
getPrettyVersion(), and is located in BasePackage as a result.

Callers to VersionParser::formatVersion() were not updated in this
commit to demonstrate that no functionality was changed in this
refactor. They will be updated in a follow up commit.
2015-07-01 23:54:08 -07:00
Jordi Boggiano 8775c94895 Merge pull request #4196 from localheinz/fix/namespace
Fix: Import Symfony\Component\Finder\Finder
2015-07-01 10:29:53 +01:00
Andreas Möller 962f5a99ea Fix: Import Symfony\Component\Finder\Finder 2015-06-30 21:03:59 -04:00
Jordi Boggiano 79f9158fb2 Merge pull request #4192 from localheinz/fix/import
Fix: Add missing imports
2015-06-30 15:38:46 +01:00
Jordi Boggiano 6a64041055 CS fixes 2015-06-30 15:38:32 +01:00
Jordi Boggiano 4d36622ada Merge pull request #4191 from localheinz/fix/docblock
Fix: Docblock
2015-06-30 15:25:49 +01:00
Jordi Boggiano 70f5150893 Merge pull request #4190 from localheinz/fix/unused-private-property
Fix: Remove unused private property
2015-06-30 15:14:03 +01:00
Jordi Boggiano 4307031e9b Merge pull request #4189 from localheinz/fix/unused-imports
Fix: Remove unused imports
2015-06-30 15:13:46 +01:00
Jordi Boggiano a8e004c7e7 Merge pull request #4199 from sminnee/version-comparison-docs
>=2.3.0 now includes pre-releases, added docs for this and -stable suffix Fixes #4080.
2015-06-30 14:32:20 +01:00
Jordi Boggiano b17ccbfa0d Avoid invalid warnings when scanning the same file twice, fixes #4195, fixes #4197 2015-06-30 13:27:28 +01:00
Sam Minnee 2cd698874f Include pre-releases in >=2.3.0 comparison. Fixes #4080.
This is a change to the >=2.3.0 comparison. Without this change, such a
comparison will exclude pre-release versions.

The rationale is that this makes the comparison more consistent with
<2.3.0 (which excludes all pre-releases) and ~2.3.0 (which includes
pre-releases).
2015-06-30 13:10:20 +01:00
Rob Bast 0298cdc60d change delimiter to curly braces 2015-06-30 13:52:47 +02:00
Andreas Möller 12ffe2b4d4 Fix: Add missing imports 2015-06-28 23:37:40 -04:00
Andreas Möller e184118d76 Fix: Docblock 2015-06-28 23:28:45 -04:00
Andreas Möller 3854d2d457 Fix: Remove unused private property 2015-06-28 23:25:55 -04:00
Andreas Möller eac5fbdee4 Fix: Remove unused imports 2015-06-28 23:20:54 -04:00
Jordi Boggiano 943107cfe7 Load most specific namespaces always, and dependents before dependencies when building classmaps
This also adds notifications of duplicate classes
2015-06-26 14:40:26 +01:00
Rob Bast 3dffdc8705 don't suggest packages already installed 2015-06-24 11:06:21 +02:00
Rob Bast fd34c5883a added php script handler info as well 2015-06-24 09:21:36 +02:00
Rob Bast 680082c5fe output based purely on verbosity 2015-06-23 22:46:16 +02:00
Rob Bast 33f78b2ccc limit suggestions to optional list of packages 2015-06-23 22:46:16 +02:00
Rob Bast 760eeb0b03 reworked suggests command 2015-06-23 22:46:16 +02:00
Gusakov Nikita f1af16984e [Command] Add suggests command 2015-06-23 21:04:20 +02:00
Jordi Boggiano d0ff01698d Fix outdated comment 2015-06-20 12:58:19 +01:00
Jordi Boggiano d5bdf4be28 Update URLs for bitbucket as well 2015-06-19 23:23:48 +01:00
Jordi Boggiano ee1e2c6f15 Merge pull request #4167 from wimvds/fix-bitbucket-references
download correct Bitbucket archive reference when using --prefer-dist
2015-06-19 18:54:18 +01:00
Wim Vandersmissen 1ff2a02517 fix to download correct Bitbucket archive reference when using --prefer-dist 2015-06-19 15:07:16 +02:00
Jordi Boggiano e727ed4d73 --keep-vcs should only imply prefer source for the root package in create-project, refs #4063 2015-06-19 12:59:57 +01:00
Jordi Boggiano a943827371 Show that no version was found in composer show/license if root package is auto-versioned, fixes #4158 2015-06-18 23:47:17 +01:00
Jordi Boggiano c8eca6f198 Remove pool usage from ArchiveCommand 2015-06-18 17:45:37 +01:00
Jordi Boggiano 801a7fcd0a Add support for constraints and not just exact versions in RepositoryInterface::findPackage/s 2015-06-18 17:44:58 +01:00
Jordi Boggiano 049f84f21f Remove unnecessary Pool usage in HomeCommand 2015-06-18 16:33:30 +01:00
Nils Adermann 75c501251d Revert "Merge remote-tracking branch 'naderman/load-no-providers'"
This reverts commit 3e85f82373, reversing
changes made to b025d0982b.
2015-06-18 15:40:27 +02:00
Jordi Boggiano 74e7c5fe22 Merge remote-tracking branch 'legoktm/publish-name' 2015-06-18 11:40:48 +01:00
Jordi Boggiano 3e85f82373 Merge remote-tracking branch 'naderman/load-no-providers' 2015-06-18 11:32:37 +01:00
Jordi Boggiano b025d0982b Remove some state 2015-06-18 11:12:57 +01:00
Thibault Jamet 25ab752ca6 Map archive command to the archive configuration 2015-06-17 20:53:09 +02:00
Thibault Jamet 1eec4fdfa5 Add archive configuration default values 2015-06-17 20:53:09 +02:00
Jordi Boggiano e73448ae1e Add possessive quantifiers to avoid backtracking and fix segfault on large files, fixes #4153 2015-06-16 11:22:45 +01:00
Zsolt Szeberenyi 9b50ca0161 Add the extra attribute to the content hash 2015-06-15 11:31:33 +02:00
Jordi Boggiano 8e9659bd83 Merge pull request #4139 from elazar/feature/tests-in-classmap
Resolves #4138: Removed *Test.php filtering from AutoloadGenerator->dump()
2015-06-14 10:10:46 +01:00
Markus Staab 94a924b702 Dropped unnecessary break statements
Next line breaks nevertheless
2015-06-14 10:16:45 +02:00
Markus Staab a4ad3c2146 Dropped obsolete condition
The conditional a few lines above already checks for `bytesMax > 0`
2015-06-14 10:13:18 +02:00
Zsolt Szeberenyi 3e0219c438 Change the content hash to be only based on values that affect dependency resolution 2015-06-13 10:15:56 +02:00
Zsolt Szeberenyi 50b560fe4c Add the hash of the parsed content of the composer.json to the lock file, and use it to verify the json is not changed 2015-06-12 22:24:31 +02:00
Jordi Boggiano 89540c5690 Support bg colors and more clearing values in html output formatter 2015-06-12 17:23:18 +01:00
Jordi Boggiano 29dbc3835f Fix html output formatter to work with latest symfony console 2015-06-12 17:10:19 +01:00
elazar 6c029a850c Resolves #4138: Removed *Test.php filtering from AutoloadGenerator->dump() 2015-06-12 10:52:55 -05:00
Jordi Boggiano 6d15ad08b6 Add http check even if openssl is present, refs #4084 2015-06-11 19:20:09 +01:00
Jordi Boggiano 24168d9d5c Merge pull request #4133 from benbor/added-ctrl-c
Added Ctrl+C support to create-project command for unix-like systems
2015-06-11 18:32:31 +01:00
Barys Biankouski a59c46f781 [create-project] If process terminated with SIGINT then 130 IMO will be returned. Remove unused variable 2015-06-11 19:50:52 +03:00
Jordi Boggiano c471edc488 Also downgrade provider access and others 2015-06-11 11:22:19 +01:00
Barys Biankouski 38bc4e6a78 Added Ctrl+C support to create-project command for unix-like systems 2015-06-11 13:02:33 +03:00
Branden Cash 5146085dc2 Follow symlinks when searching for artifacts 2015-06-10 11:46:08 -07:00
Rob Bast 9223f4a208 show command by default 2015-06-09 14:02:51 +02:00
Rob Bast cbd61660ab implemented verbose output 2015-06-09 09:02:43 +02:00
nevvermind 12c833864c Revert converting `1.0.0` to `^1.0`. 2015-06-08 22:45:20 +01:00
Nils Adermann 8b28d4bc82 Optimisation: Composer repo version listings are index by package name 2015-06-08 18:50:15 +02:00
Nils Adermann 65243ca392 Move methods for PR readability and fix phpdoc 2015-06-08 18:45:03 +02:00
Kunal Mehta 49bd1d773b Make an invalid package name a publish error, not warning
Since invalid names will prevent publishing to packagist, they should
be considered publish errors. If people do not plan on submitting their
package to packagist, they can use the --no-check-publish flag to turn
it into a normal warning again.
2015-06-07 17:44:56 -07:00
Christophe Coevoet a014a2f803 Optimize the regex detecting timestamps
Using a possessive quantifier avoids useless backtracking.
2015-06-07 10:38:27 +02:00