Reedy has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/277345

Change subject: Update composer/semver to 1.3.0
......................................................................

Update composer/semver to 1.3.0

https://github.com/composer/semver/compare/1.2.0...1.3.0

Change-Id: I4463dd4abe1972f4e3a4bcc6389dc861ecc8201a
---
M composer.json
M composer.lock
M composer/installed.json
M composer/semver/CHANGELOG.md
M composer/semver/src/VersionParser.php
5 files changed, 94 insertions(+), 73 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/vendor 
refs/changes/45/277345/1

diff --git a/composer.json b/composer.json
index 12631b7..350da2d 100644
--- a/composer.json
+++ b/composer.json
@@ -9,7 +9,7 @@
        },
        "prefer-stable": true,
        "require": {
-               "composer/semver": "1.2.0",
+               "composer/semver": "1.3.0",
                "cssjanus/cssjanus": "1.1.2",
                "firebase/php-jwt": "3.0.0",
                "liuggio/statsd-php-client": "1.0.18",
diff --git a/composer.lock b/composer.lock
index a254886..c6fbf2e 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,21 +4,21 @@
         "Read more about it at 
https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file";,
         "This file is @generated automatically"
     ],
-    "hash": "6ffda9f45687379b00d6d65bc154c465",
-    "content-hash": "ff2300ca1cec902e211d95dbd2285de7",
+    "hash": "6a775a852c35be7a2a75fed0771da208",
+    "content-hash": "adf0207574464e884bbf2fb7d97e277a",
     "packages": [
         {
             "name": "composer/semver",
-            "version": "1.2.0",
+            "version": "1.3.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/composer/semver.git";,
-                "reference": "0faeb6e433f6b352f0dc55ec1faf5c6b605a35d3"
+                "reference": "df4463baa9f44fe6cf0a6da4fde2934d4c0a2747"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/composer/semver/zipball/0faeb6e433f6b352f0dc55ec1faf5c6b605a35d3";,
-                "reference": "0faeb6e433f6b352f0dc55ec1faf5c6b605a35d3",
+                "url": 
"https://api.github.com/repos/composer/semver/zipball/df4463baa9f44fe6cf0a6da4fde2934d4c0a2747";,
+                "reference": "df4463baa9f44fe6cf0a6da4fde2934d4c0a2747",
                 "shasum": ""
             },
             "require": {
@@ -67,7 +67,7 @@
                 "validation",
                 "versioning"
             ],
-            "time": "2015-11-10 11:17:42"
+            "time": "2016-02-25 22:23:39"
         },
         {
             "name": "cssjanus/cssjanus",
diff --git a/composer/installed.json b/composer/installed.json
index 50ff5f3..0edf0d6 100644
--- a/composer/installed.json
+++ b/composer/installed.json
@@ -1,69 +1,5 @@
 [
     {
-        "name": "composer/semver",
-        "version": "1.2.0",
-        "version_normalized": "1.2.0.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/composer/semver.git";,
-            "reference": "0faeb6e433f6b352f0dc55ec1faf5c6b605a35d3"
-        },
-        "dist": {
-            "type": "zip",
-            "url": 
"https://api.github.com/repos/composer/semver/zipball/0faeb6e433f6b352f0dc55ec1faf5c6b605a35d3";,
-            "reference": "0faeb6e433f6b352f0dc55ec1faf5c6b605a35d3",
-            "shasum": ""
-        },
-        "require": {
-            "php": "^5.3.2 || ^7.0"
-        },
-        "require-dev": {
-            "phpunit/phpunit": "^4.5 || ^5.0.5",
-            "phpunit/phpunit-mock-objects": "2.3.0 || ^3.0"
-        },
-        "time": "2015-11-10 11:17:42",
-        "type": "library",
-        "extra": {
-            "branch-alias": {
-                "dev-master": "1.x-dev"
-            }
-        },
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Composer\\Semver\\": "src"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/";,
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Nils Adermann",
-                "email": "[email protected]",
-                "homepage": "http://www.naderman.de";
-            },
-            {
-                "name": "Jordi Boggiano",
-                "email": "[email protected]",
-                "homepage": "http://seld.be";
-            },
-            {
-                "name": "Rob Bast",
-                "email": "[email protected]",
-                "homepage": "http://robbast.nl";
-            }
-        ],
-        "description": "Semver library that offers utilities, version 
constraint parsing and validation.",
-        "keywords": [
-            "semantic",
-            "semver",
-            "validation",
-            "versioning"
-        ]
-    },
-    {
         "name": "cssjanus/cssjanus",
         "version": "v1.1.2",
         "version_normalized": "1.1.2.0",
@@ -1763,5 +1699,69 @@
             }
         ],
         "description": "Composer plugin to merge multiple composer.json files"
+    },
+    {
+        "name": "composer/semver",
+        "version": "1.3.0",
+        "version_normalized": "1.3.0.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/composer/semver.git";,
+            "reference": "df4463baa9f44fe6cf0a6da4fde2934d4c0a2747"
+        },
+        "dist": {
+            "type": "zip",
+            "url": 
"https://api.github.com/repos/composer/semver/zipball/df4463baa9f44fe6cf0a6da4fde2934d4c0a2747";,
+            "reference": "df4463baa9f44fe6cf0a6da4fde2934d4c0a2747",
+            "shasum": ""
+        },
+        "require": {
+            "php": "^5.3.2 || ^7.0"
+        },
+        "require-dev": {
+            "phpunit/phpunit": "^4.5 || ^5.0.5",
+            "phpunit/phpunit-mock-objects": "2.3.0 || ^3.0"
+        },
+        "time": "2016-02-25 22:23:39",
+        "type": "library",
+        "extra": {
+            "branch-alias": {
+                "dev-master": "1.x-dev"
+            }
+        },
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Composer\\Semver\\": "src"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/";,
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Nils Adermann",
+                "email": "[email protected]",
+                "homepage": "http://www.naderman.de";
+            },
+            {
+                "name": "Jordi Boggiano",
+                "email": "[email protected]",
+                "homepage": "http://seld.be";
+            },
+            {
+                "name": "Rob Bast",
+                "email": "[email protected]",
+                "homepage": "http://robbast.nl";
+            }
+        ],
+        "description": "Semver library that offers utilities, version 
constraint parsing and validation.",
+        "keywords": [
+            "semantic",
+            "semver",
+            "validation",
+            "versioning"
+        ]
     }
 ]
diff --git a/composer/semver/CHANGELOG.md b/composer/semver/CHANGELOG.md
index dd0ab51..ad10273 100644
--- a/composer/semver/CHANGELOG.md
+++ b/composer/semver/CHANGELOG.md
@@ -3,6 +3,11 @@
 All notable changes to this project will be documented in this file.
 This project adheres to [Semantic Versioning](http://semver.org/).
 
+### [1.3.0] 2016-02-25
+
+  * Fixed: stability parsing - 
[composer/composer#1234](https://github.com/composer/composer/issues/4889).
+  * Changed: collapse contiguous constraints when possible.
+
 ### [1.2.0] 2015-11-10
 
   * Changed: allow multiple numerical identifiers in 'pre-release' version 
part.
@@ -40,6 +45,7 @@
     - Namespace: `Composer\Test\Package\LinkConstraint` -> 
`Composer\Test\Semver\Constraint`
   * Changed: code style using php-cs-fixer.
 
+[1.3.0]: https://github.com/composer/semver/compare/1.2.0...1.3.0
 [1.2.0]: https://github.com/composer/semver/compare/1.1.0...1.2.0
 [1.1.0]: https://github.com/composer/semver/compare/1.0.0...1.1.0
 [1.0.0]: https://github.com/composer/semver/compare/0.1.0...1.0.0
diff --git a/composer/semver/src/VersionParser.php 
b/composer/semver/src/VersionParser.php
index d932f94..e6408ba 100644
--- a/composer/semver/src/VersionParser.php
+++ b/composer/semver/src/VersionParser.php
@@ -56,7 +56,7 @@
             return 'dev';
         }
 
-        preg_match('{' . self::$modifierRegex . '$}i', strtolower($version), 
$match);
+        preg_match('{' . self::$modifierRegex . '(?:\+.*)?$}i', 
strtolower($version), $match);
         if (!empty($match[3])) {
             return 'dev';
         }
@@ -259,6 +259,21 @@
 
         if (1 === count($orGroups)) {
             $constraint = $orGroups[0];
+        } elseif (2 === count($orGroups)
+            // parse the two OR groups and if they are contiguous we collapse
+            // them into one constraint
+            && $orGroups[0] instanceof MultiConstraint
+            && $orGroups[1] instanceof MultiConstraint
+            && ($a = (string) $orGroups[0])
+            && substr($a, 0, 3) === '[>=' && (false !== ($posA = strpos($a, 
'<', 4)))
+            && ($b = (string) $orGroups[1])
+            && substr($b, 0, 3) === '[>=' && (false !== ($posB = strpos($b, 
'<', 4)))
+            && substr($a, $posA + 2, -1) === substr($b, 4, $posB - 5)
+        ) {
+            $constraint = new MultiConstraint(array(
+                new Constraint('>=', substr($a, 4, $posA - 5)),
+                new Constraint('<', substr($b, $posB + 2, -1)),
+            ));
         } else {
             $constraint = new MultiConstraint($orGroups, false);
         }

-- 
To view, visit https://gerrit.wikimedia.org/r/277345
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4463dd4abe1972f4e3a4bcc6389dc861ecc8201a
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/vendor
Gerrit-Branch: master
Gerrit-Owner: Reedy <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to