622 Commits (597f834ae998ea80797879f4259e8e6accff4a4b)

Author SHA1 Message Date
Jordi Boggiano f681dbc51e Merge remote-tracking branch 'curry684/rewrite-depends' 8 years ago
Jordi Boggiano fff0aed3a6 Allow Semver VersionParser in input hints 8 years ago
Jordi Boggiano c9436438ff Add memoization to parseConstraints, saves some (6-7% here) RAM and marginal CPU time 8 years ago
Sash f6899e5c38 #4828 Using version guesser to pull out the commit has for git repositories. The return value is now an array with version and commit values. 8 years ago
Niels Keurentjes e38fe67333 Rewrote DependsCommand 9 years ago
Jordi Boggiano 6eb50623e6 Merge remote-tracking branch 'hfcorriez/compressed_archiver' 9 years ago
Jordi Boggiano 7e17fec3b8 Merge pull request #2585 from jaypea/ziparchiver
added ZipArchiver to actually compress zip files
9 years ago
Niels Keurentjes 7b6ccde97a Clarified error message and added braces. 9 years ago
Niels Keurentjes a48159b283 Bail out if root package attempts to include itself. 9 years ago
Jordi Boggiano 1818b95149 CS fixes 9 years ago
Jordi Boggiano f31799b739 Fix error output of the psr-4 trailing backslash validation 9 years ago
Sullivan SENECHAL 5d625c2231 Improve PHPDoc for package requires 9 years ago
Sullivan SENECHAL d9a62ffd50 Improve PHPDoc for package links 9 years ago
Jordi Boggiano 966a982738 CS fixes 9 years ago
Jordi Boggiano 1fca6be3bf Fix detection of the root package version to always use the correct cwd 9 years ago
Jordi Boggiano 4b269f4ded Follow stability option in create-project to select the best possible version, refs #4563 9 years ago
Jordi Boggiano 6c9b161c43 Re-use locker content hash logic to generate dist reference, refs #4515 9 years ago
Jordi Boggiano ac1a0c898d Add exclude-from-classmap support in validation 9 years ago
Jordi Boggiano 599ad77167 Merge pull request #4542 from bd808/feature/support-merge-plugin
Allow easier manipulation of RootAliasPackage
9 years ago
Bryan Davis dc40bf9f51 Remove unused local variables from AliasPackage 9 years ago
Bryan Davis 06c44ce998 Add setters used by composer-merge-plugin to RootPackageInterface
Extend RootPackageInterface with setter functions used by
composer-merge-plugin and implement them for RootAliasPackage. This will
allow composer-merge-plugin and similar code that manipulates the root
package at runtime to ignore the difference between a RootPackage and
a RootAliasPackage.
9 years ago
Jordi Boggiano 193a072d3c Clarify that the abstract constraint should not be relied upon anymore 9 years ago
Bryan Davis 2eb0af264b Allow RootAliasPackage to override cached values
AliasPackage caches the values of 'requires', 'devRequires',
'conflicts', 'provides', 'replaces' locally to allow `self.version`
references to be properly updated to reference the alias. Plugins like
composer-merge-plugin that manipulate these settings at runtime need to
be able to change the values after alias construction.
9 years ago
Jordi Boggiano 125dc62fab Make trigger error visible 9 years ago
Jordi Boggiano 82349bcb2a Fix support for extracting stability flags in multi-constraints, fixes #4440 9 years ago
Jordi Boggiano 507415e404 Make VersionSelector prefer stable by default and allow specifying a PHP version that must be matched, fixes #4318 9 years ago
Jordi Boggiano a54f84f05f Merge pull request #4479 from MakiCode/feature#4397
Added --file flag: Feature#4397
9 years ago
Rob Bast b523fc0b7b ran fixers 9 years ago
MakiCode 1c0b9cd65f Removed test for non-string file name check 9 years ago
MakiCode fefc106ef6 Removed type check on ArchiveManager 9 years ago
MakiCode 22e93f110b Fixed indentation 9 years ago
MakiCode 7005d89847 Fixed bug 9 years ago
MakiCode 63ede6c9dd Fixed issues with PR 9 years ago
MakiCode 0d00338bdb Added better messages and fixed bugs 9 years ago
MakiCode 906c1c2e66 Added check for filename in archive manager and added test 9 years ago
MakiCode 87b5af60a8 Almost finished adding --file option, need to add unit test 9 years ago
Jordi Boggiano ce08582671 Fix CS 9 years ago
Rob Bast 1328d9c3b2 rename baseversionparser to semverversionparser
and fix docblock as per @stof request
9 years ago
Rob Bast 89717fa593 implement old linkconstraintinterface for BC 9 years ago
Rob Bast a1ad7fc435 fix classname clashing cause of existing class in current namespace 9 years ago
Rob Bast a1427d7fd6 replace all occurences in code and comments 9 years ago
Rob Bast 1ccfc8eb96 add semver, deprecated existing classes 9 years ago
Jordi Boggiano 0cbf679f21 Avoid failing to write the lock file if a lock file is present but corrupt/conflicted 9 years ago
Jordi Boggiano 66acee7feb Add config.platform to the list of locked properties 9 years ago
Jordi Boggiano 74e56fd5c6 Merge remote-tracking branch 'szeber/master' 9 years ago
Jordi Boggiano 89c6a68a76 Updates to path repository and path downloader, refs #4365 9 years ago
Zsolt Szeberenyi 62630e5c69 Fix strict comparison of the content hash 9 years ago
Zsolt Szeberenyi bfb83f1fb7 Add name and version to the relevant fields, move content hash checking to the Locker 9 years ago
Samuel ROZE 4ab123291d Add missing licence in VersionGuesser 9 years ago
Samuel ROZE 623f31fcc4 Use version guesser to get local package version 9 years ago
Samuel ROZE 5261a5fa03 Move version guessing in `VersionGuesser` class 9 years ago
Jordi Boggiano 92faf1c7a8 Merge pull request #4228 from naderman/memory-version-constraint
Remove unnecessary version comparison cache variable and store operator as int
9 years ago
Nils Adermann ccaba0d2f7 Make static translation tables in version constraint private and use === 9 years ago
Jordi Boggiano c36d2a2e50 Merge pull request #4214 from legoktm/parse-links
Move VersionParser::parseLinks() to ArrayLoader::parseLinks()
9 years ago
Jordi Boggiano efb9f13248 Merge pull request #4229 from naderman/memory-version-array-merge
VersionParser: remove a few hundred/thousand array_merge calls
9 years ago
Nils Adermann de65199f31 Merge pull request #4117 from stof/patch-1
Optimize the regex detecting timestamps
9 years ago
Nils Adermann 3fd4672382 VersionParser: Append elements directly instead of array_merge 9 years ago
Nils Adermann e88df7429f Remove a few hundred/thousand array_merge calls 9 years ago
Nils Adermann 8dd110e0a9 Remove unnecessary version comparison cache variable and store operators as int 9 years ago
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.
9 years ago
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().
9 years ago
Kunal Mehta c5afb8f23a Mark VersionParser::formatVersion() as deprecated
With 1753c275ff, this will be handled nicely.
9 years ago
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.
9 years ago
Jordi Boggiano 8775c94895 Merge pull request #4196 from localheinz/fix/namespace
Fix: Import Symfony\Component\Finder\Finder
9 years ago
Andreas Möller 962f5a99ea Fix: Import Symfony\Component\Finder\Finder 9 years ago
Jordi Boggiano 6a64041055 CS fixes 9 years ago
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.
9 years ago
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).
9 years ago
Rob Bast 0298cdc60d change delimiter to curly braces 9 years ago
Jordi Boggiano a943827371 Show that no version was found in composer show/license if root package is auto-versioned, fixes #4158 9 years ago
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 9 years ago
nevvermind 12c833864c Revert converting `1.0.0` to `^1.0`. 9 years ago
Christophe Coevoet a014a2f803 Optimize the regex detecting timestamps
Using a possessive quantifier avoids useless backtracking.
9 years ago
Jordi Boggiano 17c2a8019e Merge pull request #4089 from nevvermind/plugin-api-versions
Make plugins have actual constraints instead of fixed versions
9 years ago
nevvermind 4fd9a3ceee compare against correct format 9 years ago
nevvermind 3032f0a538 Refactor based on code review
- Move the version api getter to the PluginManager And make it such that it can be mocked, but not pollute the public interface. That means "protected" visibility.
- The plugin api version constant should still be used throughout the code.
- Use different fixtures class names
- Use regex possessive quantifiers for performance
- Use full words for readability
9 years ago
Rob Bast 0f04f97088 Fixed failing testcase 9 years ago
nevvermind eb2aa14830 Make plugins have actual constraints instead of fixed versions
Instead of developing plugins against a single, fixed Plugin API version - `"composer-plugin-api": "1.0.0"`, this change will allow plugin developers to use versions like `"composer-plugin-api": "~1.1"` or `"composer-plugin-api": ">=2.1 <3.0"`, aka actual Composer-compatible constraints.

Only the "1.0", "1.0.0" and "1.0.0" Plugin API versions will be regarded as BC versions, and internally converted to "^1.0"; every other declared version string will be kept as it is.

Because of this new constraint flexibility, plugin version mismatches will be skipped, which means those plugin will NOT be registered to the system. Previously, a mismatch triggered a warning, but plugins were still registered.
9 years ago
Rob Bast 46e0a506b9 Added another testcase + fix 9 years ago
Rob Bast a0ca1d4d96 Consider 0 as part of a version 9 years ago
nevvermind 8e79a3766d Added phpdocs + change to yoda comparison 9 years ago
Rob Bast 95dbb6d9db add docs to support section in composer schema, closes #4055
Note that this does not yet add this attribute @ packagist though
9 years ago
Possum 2e99b9fdf5 Use https where possible 9 years ago
Jordi Boggiano 4ce0adb23c Use the caret operator for all require operations 9 years ago
Jordi Boggiano 43c1caad0d Merge remote-tracking branch 'Seldaek/caret-op-for-semver'
Conflicts:
	tests/Composer/Test/Package/Version/VersionSelectorTest.php
9 years ago
Jordi Boggiano a57c51e8d7 Finalize platform override feature
- Added tests, docs
- Persist to lock file
- Add support in config command
- Added to json schema
9 years ago
Jordi Boggiano fd7e28b8b4 Restore special handling of conflict/provide/replace 9 years ago
Vadim Tyukov b02bdb4c7a [alias] RootAliasPackage manages the requirements correctly 9 years ago
Marc Bennewitz ff1ce78e6b fixes #3976: drop ext/ctype dependency 9 years ago
Jordi Boggiano f41c1217f5 Merge pull request #3913 from hannesvdvreken/patch-2
Remove unused variable
9 years ago
Rob Bast 117b7ea033 Fixes #3900 9 years ago
Hannes Van De Vreken b85cb7df82 Remove unused variable 9 years ago
Jordi Boggiano 4d665f59b0 Create lock if we only have platform dependencies 9 years ago
Jordi Boggiano 0b4a9235f4 CS fixes 9 years ago
Felix Kiss b86f9bf4ba Update RootPackageInterface.php
Fix typo
10 years ago
Jordi Boggiano 53925295c3 Merge pull request #3699 from trivago/non_feature_branches
added non-feature-branches
10 years ago
rkerner abc9d60fcc added non-feature-branches to handle non-numeric branches matching configured patterns not been handled as feature branches 10 years ago
Chris Brand 87b7de4d0a Add the P character to the regex pattern
According to http://php.net/manual/en/function.preg-match.php and some other sources named groups should contain a 'P' character after the '?'

Without this, I receive the following error when running an update:

[ErrorException]
  preg_match(): Compilation failed: unrecognized character after (?< at offset 4

Exception trace:
 () at phar:///var/www/git/smmqa/app/admin/composer.phar/src/Composer/Package/Version/VersionParser.php:181
10 years ago
Jordi Boggiano cd38d1e096 Tweaks to also support 1.0-dev style aliases, refs #3480 10 years ago
Damian Mooyman 7bb85ff21e Support aliases for numeric branches. Fixes #3461 10 years ago