89 Commits (0aec42521b7210f66fefaf53a02ff9e4def0bdc0)

Author SHA1 Message Date
Jordi Boggiano 6146f7aded Take into account prefer-stable and dev packages when computing outdated, refs #5251 8 years ago
Jordi Boggiano 2dcd76aa43 Fix test suite 8 years ago
Sash 582e361a88 Fixing array accessing 9 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. 9 years ago
Jordi Boggiano 966a982738 CS fixes 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 507415e404 Make VersionSelector prefer stable by default and allow specifying a PHP version that must be matched, fixes #4318 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 89c6a68a76 Updates to path repository and path downloader, refs #4365 9 years ago
Samuel ROZE bb81e3721a Move the `proc_open` test in setUp 9 years ago
Samuel ROZE dfccb686ce Replace usage of brackets by legacy array notation 9 years ago
Samuel ROZE 5261a5fa03 Move version guessing in `VersionGuesser` class 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 f634c6946d Update callers of VersionParser::formatVersion()
Tests were moved to BasePackageTest.
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
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
nevvermind 12c833864c Revert converting `1.0.0` to `^1.0`. 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 a256f3dfca Added one failing testcase and one successful
Demonstrates that it handles x.y.z properly as long as z !== 0
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 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
Jordi Boggiano d4523119ea Use caret operator for 0.x releases when guessing versions, fixes #3518 10 years ago
Jordi Boggiano 06e96a78e2 Update ranges for 0.N versions, refs #3518 10 years ago
Jordi Boggiano 9438f3a58f Use better semver ranges for 0.x versions, fixes #3518 10 years ago
Jordi Boggiano 92f4c1fb35 Allow and ignore semver build metadata, fixes #2422 10 years ago
Jordi Boggiano f363f9d370 Add support for caret (^) operator 10 years ago
Jordi Boggiano ebab9db27a Add support for hyphen ranges 10 years ago
Jordi Boggiano 69ef80124f Add support for capital X in 3.X and || for OR 10 years ago
Jordi Boggiano 4c713978e9 Add more tests and validate that there is only one comma 10 years ago
Jordi Boggiano ca168d478b Spaces are now equivalent to comma in constraints and mean AND 10 years ago
Jordi Boggiano 029f709300 Fix parsing stability suffixes in multi constraints, fixes #1732 10 years ago
Jordi Boggiano 95d49ce638 Add additional test for beta without dash separator support, fixes #3331 10 years ago
Jordi Boggiano e6165e6495 Tweak rules to allow guessing based on branch aliases and avoid greedy constraints on alpha/beta/RC packages, refs #3096 10 years ago
Jordi Boggiano cf75ec7763 Merge remote-tracking branch 'weaverryan/require-version-select' 10 years ago
François Pluchino 6c6a623229 Fix invalid version format 10 years ago
Ryan Weaver 895e62e859 Refactoring selection of the "recommended" version (e.g ~1.2) and adding some tests
This also modifies the behavior slightly (from a recommendation by seldaek) to always
propose the minor version of the recommendation (e.g. ~1.2 instead of ~1.2.1).
10 years ago
Ryan Weaver aea2e901a9 Extracting logic into a new class related to selecting the latest version
Also refactored InitCommand slightly so that you can use this "latest version"
functionality when searching for a package as well.
10 years ago
Jordi Boggiano ac497feaba CS fixes 10 years ago
Jordi Boggiano 80499bb024 Detect ~> misuse and suggest fix, fixes #2476 11 years ago
Jordi Boggiano f59f443fce CS fixes and one more test for safety, fixes #1855 11 years ago
Sam Minnee 324ef0f9bb Fixed upper bound of wildcard matches.
Follow-on from 95b4348afa
11 years ago
Sam Minnee 95b4348afa Fixed lower bound of tilde and wildcard matches.
The lower bound of ~1.2 and 1.2.* style version requirements now uses >= 1.2.0.0-dev instead of
> 1.1.9999999.9999999.  This is more straightforward to read, and behaves equivalently.
11 years ago
Sam Minnee 34a21516c8 Fix tilde constraints without a stability suffix to work like wildcard constraints.
With this fix, a tilde constraint such as ~3.1 won't match unstable versions of 3.1,
but a wildcard constraint such as 3.1.* would.  This seems like a confusing
inconsistency, and so I have corrected it.
11 years ago
Jordi Boggiano 9d948eb795 Merge branch 'disjunctive' 11 years ago
Jordi Boggiano 0cccafbe81 Add disjunctive multi-constraints with |, refs #643, fixes #1342 11 years ago
Jordi Boggiano e16caa9bd7 Add EmptyConstraint 11 years ago