diff --git a/core/composer.json b/core/composer.json index c7107ba5f362..0a6874f18a1d 100644 --- a/core/composer.json +++ b/core/composer.json @@ -6,18 +6,19 @@ "require": { "php": ">=5.4.5", "sdboyer/gliph": "0.1.*", - "symfony/class-loader": "2.6.*", - "symfony/console": "2.6.*", - "symfony/css-selector": "2.6.*", - "symfony/dependency-injection": "2.6.*", - "symfony/event-dispatcher": "2.6.*", - "symfony/http-foundation": "2.6.*", - "symfony/http-kernel": "2.6.*", - "symfony/routing": "2.6.*", - "symfony/serializer": "2.6.*", - "symfony/validator": "2.6.*@dev", - "symfony/process": "2.6.*", - "symfony/yaml": "2.6.*", + "symfony/class-loader": "2.7.*", + "symfony/console": "2.7.*", + "symfony/css-selector": "2.7.*", + "symfony/dependency-injection": "2.7.*", + "symfony/event-dispatcher": "2.7.*", + "symfony/http-foundation": "2.7.*", + "symfony/http-kernel": "2.7.*", + "symfony/routing": "2.7.*", + "symfony/serializer": "2.7.*", + "symfony/translation": "2.7.*", + "symfony/validator": "2.7.*", + "symfony/process": "2.7.*", + "symfony/yaml": "2.7.*", "twig/twig": "1.18.*", "doctrine/common": "~2.4.2", "doctrine/annotations": "1.2.*", @@ -34,6 +35,8 @@ "fabpot/goutte": "^2.0.3", "masterminds/html5": "~2.1" }, + "minimum-stability": "dev", + "prefer-stable": true, "autoload": { "psr-4": { "Drupal\\Core\\": "lib/Drupal/Core", diff --git a/core/composer.lock b/core/composer.lock index a3a54d342af3..014507970b9e 100644 --- a/core/composer.lock +++ b/core/composer.lock @@ -1,10 +1,10 @@ { "_readme": [ "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "8815752eccc78eaca65ea89fa297746f", + "hash": "61a2b6dec8252d78e904d37fbf1637d7", "packages": [ { "name": "behat/mink", @@ -2143,17 +2143,17 @@ }, { "name": "symfony/browser-kit", - "version": "v2.6.6", + "version": "v2.6.9", "target-dir": "Symfony/Component/BrowserKit", "source": { "type": "git", "url": "https://github.com/symfony/BrowserKit.git", - "reference": "f21189b0eccbe56528515858ca1d5089a741692f" + "reference": "cf950c42947ea2f29c36a1f443202b6134f5c303" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/f21189b0eccbe56528515858ca1d5089a741692f", - "reference": "f21189b0eccbe56528515858ca1d5089a741692f", + "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/cf950c42947ea2f29c36a1f443202b6134f5c303", + "reference": "cf950c42947ea2f29c36a1f443202b6134f5c303", "shasum": "" }, "require": { @@ -2184,36 +2184,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony BrowserKit Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-05-02 15:18:45" }, { "name": "symfony/class-loader", - "version": "v2.6.6", - "target-dir": "Symfony/Component/ClassLoader", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/ClassLoader.git", - "reference": "861765b3e5f32979de5bd19ad2577cbb830a29d5" + "reference": "fa19598cb708b92d983b34aae313f57c217f9386" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/861765b3e5f32979de5bd19ad2577cbb830a29d5", - "reference": "861765b3e5f32979de5bd19ad2577cbb830a29d5", + "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/fa19598cb708b92d983b34aae313f57c217f9386", + "reference": "fa19598cb708b92d983b34aae313f57c217f9386", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/finder": "~2.0,>=2.0.5", @@ -2222,11 +2221,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\ClassLoader\\": "" } }, @@ -2235,36 +2234,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony ClassLoader Component", - "homepage": "http://symfony.com", - "time": "2015-03-27 10:19:51" + "homepage": "https://symfony.com", + "time": "2015-05-15 13:33:16" }, { "name": "symfony/console", - "version": "v2.6.7", - "target-dir": "Symfony/Component/Console", + "version": "v2.7.0-BETA2", "source": { "type": "git", "url": "https://github.com/symfony/Console.git", - "reference": "ebc5679854aa24ed7d65062e9e3ab0b18a917272" + "reference": "555ba7fc54a538e1b83988e2299db09b6b6dca64" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/ebc5679854aa24ed7d65062e9e3ab0b18a917272", - "reference": "ebc5679854aa24ed7d65062e9e3ab0b18a917272", + "url": "https://api.github.com/repos/symfony/Console/zipball/555ba7fc54a538e1b83988e2299db09b6b6dca64", + "reference": "555ba7fc54a538e1b83988e2299db09b6b6dca64", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "psr/log": "~1.0", @@ -2280,11 +2278,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Console\\": "" } }, @@ -2304,25 +2302,24 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2015-05-02 15:18:45" + "time": "2015-05-02 15:21:08" }, { "name": "symfony/css-selector", - "version": "v2.6.6", - "target-dir": "Symfony/Component/CssSelector", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/CssSelector.git", - "reference": "db2c48df9658423a8c168d89f7b971b73d3d74a4" + "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/CssSelector/zipball/db2c48df9658423a8c168d89f7b971b73d3d74a4", - "reference": "db2c48df9658423a8c168d89f7b971b73d3d74a4", + "url": "https://api.github.com/repos/symfony/CssSelector/zipball/0b5c07b516226b7dd32afbbc82fe547a469c5092", + "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/phpunit-bridge": "~2.7" @@ -2330,11 +2327,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\CssSelector\\": "" } }, @@ -2343,10 +2340,6 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Jean-François Simon", "email": "jeanfrancois.simon@sensiolabs.com" @@ -2354,25 +2347,29 @@ { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony CssSelector Component", - "homepage": "http://symfony.com", - "time": "2015-03-22 16:55:57" + "homepage": "https://symfony.com", + "time": "2015-05-15 13:33:16" }, { "name": "symfony/debug", - "version": "v2.6.6", + "version": "v2.6.9", "target-dir": "Symfony/Component/Debug", "source": { "type": "git", "url": "https://github.com/symfony/Debug.git", - "reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3" + "reference": "4851a041c48e76b91a221db84ab5850daa6a7b33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/d49a46a20a8f0544aedac54466750ad787d3d3e3", - "reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3", + "url": "https://api.github.com/repos/symfony/Debug/zipball/4851a041c48e76b91a221db84ab5850daa6a7b33", + "reference": "4851a041c48e76b91a221db84ab5850daa6a7b33", "shasum": "" }, "require": { @@ -2408,36 +2405,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Debug Component", - "homepage": "http://symfony.com", - "time": "2015-03-22 16:55:57" + "homepage": "https://symfony.com", + "time": "2015-05-20 13:09:45" }, { "name": "symfony/dependency-injection", - "version": "v2.6.6", - "target-dir": "Symfony/Component/DependencyInjection", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/DependencyInjection.git", - "reference": "8e9007012226b4bd41f8afed855c452cf5edc3a6" + "reference": "137bf489c5151c7eb1e4b7dd34a123f9a74b966d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/8e9007012226b4bd41f8afed855c452cf5edc3a6", - "reference": "8e9007012226b4bd41f8afed855c452cf5edc3a6", + "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/137bf489c5151c7eb1e4b7dd34a123f9a74b966d", + "reference": "137bf489c5151c7eb1e4b7dd34a123f9a74b966d", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "conflict": { "symfony/expression-language": "<2.6" @@ -2456,11 +2452,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\DependencyInjection\\": "" } }, @@ -2469,32 +2465,32 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony DependencyInjection Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-05-29 14:44:44" }, { "name": "symfony/dom-crawler", - "version": "v2.6.6", + "version": "v2.6.9", "target-dir": "Symfony/Component/DomCrawler", "source": { "type": "git", "url": "https://github.com/symfony/DomCrawler.git", - "reference": "8897ebf39c7dfb752a5494fa301845a3fbb9e53d" + "reference": "c74fe625d8c65fee512de2b40cceabba1b09503b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/8897ebf39c7dfb752a5494fa301845a3fbb9e53d", - "reference": "8897ebf39c7dfb752a5494fa301845a3fbb9e53d", + "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/c74fe625d8c65fee512de2b40cceabba1b09503b", + "reference": "c74fe625d8c65fee512de2b40cceabba1b09503b", "shasum": "" }, "require": { @@ -2523,36 +2519,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony DomCrawler Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-05-22 14:53:08" }, { "name": "symfony/event-dispatcher", - "version": "v2.6.6", - "target-dir": "Symfony/Component/EventDispatcher", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284" + "reference": "687039686d0e923429ba6e958d0baa920cd5d458" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/70f7c8478739ad21e3deef0d977b38c77f1fb284", - "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/687039686d0e923429ba6e958d0baa920cd5d458", + "reference": "687039686d0e923429ba6e958d0baa920cd5d458", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "psr/log": "~1.0", @@ -2569,11 +2564,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" } }, @@ -2582,36 +2577,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony EventDispatcher Component", - "homepage": "http://symfony.com", - "time": "2015-03-13 17:37:22" + "homepage": "https://symfony.com", + "time": "2015-05-02 15:21:08" }, { "name": "symfony/http-foundation", - "version": "v2.6.6", - "target-dir": "Symfony/Component/HttpFoundation", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9" + "reference": "729de183da037c125c5f6366bd4f0631ba1a1abb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/8a6337233f08f7520de97f4ffd6f00e947d892f9", - "reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9", + "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/729de183da037c125c5f6366bd4f0631ba1a1abb", + "reference": "729de183da037c125c5f6366bd4f0631ba1a1abb", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/expression-language": "~2.4", @@ -2620,15 +2614,15 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\HttpFoundation\\": "" }, "classmap": [ - "Symfony/Component/HttpFoundation/Resources/stubs" + "Resources/stubs" ] }, "notification-url": "https://packagist.org/downloads/", @@ -2636,45 +2630,47 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony HttpFoundation Component", - "homepage": "http://symfony.com", - "time": "2015-04-01 16:50:12" + "homepage": "https://symfony.com", + "time": "2015-05-22 14:54:25" }, { "name": "symfony/http-kernel", - "version": "v2.6.6", - "target-dir": "Symfony/Component/HttpKernel", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/HttpKernel.git", - "reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4" + "reference": "74acbb7ef9c4aae0620d3250b9b990d2fff28d16" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/3829cacfe21eaf3f73604a62d79183d1f6e792c4", - "reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4", + "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/74acbb7ef9c4aae0620d3250b9b990d2fff28d16", + "reference": "74acbb7ef9c4aae0620d3250b9b990d2fff28d16", "shasum": "" }, "require": { - "php": ">=5.3.3", + "php": ">=5.3.9", "psr/log": "~1.0", "symfony/debug": "~2.6,>=2.6.2", "symfony/event-dispatcher": "~2.5.9|~2.6,>=2.6.2", "symfony/http-foundation": "~2.5,>=2.5.4" }, + "conflict": { + "symfony/config": "<2.7" + }, "require-dev": { "symfony/browser-kit": "~2.3", "symfony/class-loader": "~2.1", - "symfony/config": "~2.0,>=2.0.5", + "symfony/config": "~2.7", "symfony/console": "~2.3", "symfony/css-selector": "~2.0,>=2.0.5", "symfony/dependency-injection": "~2.2", @@ -2701,11 +2697,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\HttpKernel\\": "" } }, @@ -2714,36 +2710,35 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony HttpKernel Component", - "homepage": "http://symfony.com", - "time": "2015-04-01 16:55:26" + "homepage": "https://symfony.com", + "time": "2015-05-30 16:52:28" }, { "name": "symfony/process", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Process", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/Process.git", - "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552" + "reference": "e0a82b58e36afc60f8e79b8bc85a22bb064077c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/a8bebaec1a9dc6cde53e0250e32917579b0be552", - "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552", + "url": "https://api.github.com/repos/symfony/Process/zipball/e0a82b58e36afc60f8e79b8bc85a22bb064077c1", + "reference": "e0a82b58e36afc60f8e79b8bc85a22bb064077c1", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/phpunit-bridge": "~2.7" @@ -2751,11 +2746,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Process\\": "" } }, @@ -2764,42 +2759,44 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Process Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-05-15 13:33:16" }, { "name": "symfony/routing", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Routing", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/Routing.git", - "reference": "4e173a645b63ff60a124f3741b4f15feebd908fa" + "reference": "6f0333fb8b89cf6f8fd9d6740c5e83b73d9c95b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/4e173a645b63ff60a124f3741b4f15feebd908fa", - "reference": "4e173a645b63ff60a124f3741b4f15feebd908fa", + "url": "https://api.github.com/repos/symfony/Routing/zipball/6f0333fb8b89cf6f8fd9d6740c5e83b73d9c95b9", + "reference": "6f0333fb8b89cf6f8fd9d6740c5e83b73d9c95b9", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" + }, + "conflict": { + "symfony/config": "<2.7" }, "require-dev": { "doctrine/annotations": "~1.0", "doctrine/common": "~2.2", "psr/log": "~1.0", - "symfony/config": "~2.2", + "symfony/config": "~2.7", "symfony/expression-language": "~2.4", "symfony/http-foundation": "~2.3", "symfony/phpunit-bridge": "~2.7", @@ -2814,11 +2811,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Routing\\": "" } }, @@ -2827,54 +2824,65 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Routing Component", - "homepage": "http://symfony.com", + "homepage": "https://symfony.com", "keywords": [ "router", "routing", "uri", "url" ], - "time": "2015-03-30 15:54:10" + "time": "2015-05-19 06:58:17" }, { "name": "symfony/serializer", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Serializer", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/Serializer.git", - "reference": "bf30b882e15945fe8700edcd966eb3f5503820f3" + "reference": "634d3adf119396320fba4c14caa01390700e7f3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Serializer/zipball/bf30b882e15945fe8700edcd966eb3f5503820f3", - "reference": "bf30b882e15945fe8700edcd966eb3f5503820f3", + "url": "https://api.github.com/repos/symfony/Serializer/zipball/634d3adf119396320fba4c14caa01390700e7f3b", + "reference": "634d3adf119396320fba4c14caa01390700e7f3b", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { - "symfony/phpunit-bridge": "~2.7" + "doctrine/annotations": "~1.0", + "doctrine/cache": "~1.0", + "symfony/config": "~2.2", + "symfony/phpunit-bridge": "~2.7", + "symfony/property-access": "~2.3", + "symfony/yaml": "~2.0" + }, + "suggest": { + "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", + "doctrine/cache": "For using the default cached annotation reader and metadata cache.", + "symfony/config": "For using the XML mapping loader.", + "symfony/property-access": "For using the ObjectNormalizer.", + "symfony/yaml": "For using the default YAML mapping loader." }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Serializer\\": "" } }, @@ -2883,40 +2891,42 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Serializer Component", - "homepage": "http://symfony.com", - "time": "2015-03-22 16:55:57" + "homepage": "https://symfony.com", + "time": "2015-05-29 14:44:44" }, { "name": "symfony/translation", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Translation", + "version": "v2.7.0-BETA2", "source": { "type": "git", "url": "https://github.com/symfony/Translation.git", - "reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af" + "reference": "1be5bbed3938247acd7c5f4e4f29dd32db636b1f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/bd939f05cdaca128f4ddbae1b447d6f0203b60af", - "reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af", + "url": "https://api.github.com/repos/symfony/Translation/zipball/1be5bbed3938247acd7c5f4e4f29dd32db636b1f", + "reference": "1be5bbed3938247acd7c5f4e4f29dd32db636b1f", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" + }, + "conflict": { + "symfony/config": "<2.7" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~2.3,>=2.3.12", + "symfony/config": "~2.7", "symfony/intl": "~2.3", "symfony/phpunit-bridge": "~2.7", "symfony/yaml": "~2.2" @@ -2929,11 +2939,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Translation\\": "" } }, @@ -2942,42 +2952,40 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Translation Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-05-11 02:35:29" }, { "name": "symfony/validator", - "version": "2.6.x-dev", - "target-dir": "Symfony/Component/Validator", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/Validator.git", - "reference": "6bb1b474d25cb80617d8da6cb14c955ba914e495" + "reference": "3a5461a388ff8962790fd5a39e6e2da84ba1e824" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Validator/zipball/d667b6a563e233b24ae1599a9fde7a53ddd1c055", - "reference": "6bb1b474d25cb80617d8da6cb14c955ba914e495", + "url": "https://api.github.com/repos/symfony/Validator/zipball/3a5461a388ff8962790fd5a39e6e2da84ba1e824", + "reference": "3a5461a388ff8962790fd5a39e6e2da84ba1e824", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/translation": "~2.0,>=2.0.5" + "php": ">=5.3.9", + "symfony/translation": "~2.4" }, "require-dev": { "doctrine/annotations": "~1.0", "doctrine/cache": "~1.0", - "doctrine/common": "~2.3", "egulias/email-validator": "~1.2,>=1.2.1", "symfony/config": "~2.2", "symfony/expression-language": "~2.4", @@ -3001,11 +3009,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Validator\\": "" } }, @@ -3025,25 +3033,24 @@ ], "description": "Symfony Validator Component", "homepage": "https://symfony.com", - "time": "2015-05-05 01:29:27" + "time": "2015-05-29 14:44:44" }, { "name": "symfony/yaml", - "version": "v2.6.6", - "target-dir": "Symfony/Component/Yaml", + "version": "v2.7.0", "source": { "type": "git", "url": "https://github.com/symfony/Yaml.git", - "reference": "174f009ed36379a801109955fc5a71a49fe62dd4" + "reference": "4a29a5248aed4fb45f626a7bbbd330291492f5c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/174f009ed36379a801109955fc5a71a49fe62dd4", - "reference": "174f009ed36379a801109955fc5a71a49fe62dd4", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/4a29a5248aed4fb45f626a7bbbd330291492f5c3", + "reference": "4a29a5248aed4fb45f626a7bbbd330291492f5c3", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/phpunit-bridge": "~2.7" @@ -3051,11 +3058,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Yaml\\": "" } }, @@ -3064,18 +3071,18 @@ "MIT" ], "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, { "name": "Fabien Potencier", "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], "description": "Symfony Yaml Component", - "homepage": "http://symfony.com", - "time": "2015-03-30 15:54:10" + "homepage": "https://symfony.com", + "time": "2015-05-02 15:21:08" }, { "name": "twig/twig", @@ -3286,11 +3293,9 @@ ], "packages-dev": [], "aliases": [], - "minimum-stability": "stable", - "stability-flags": { - "symfony/validator": 20 - }, - "prefer-stable": false, + "minimum-stability": "dev", + "stability-flags": [], + "prefer-stable": true, "prefer-lowest": false, "platform": { "php": ">=5.4.5" diff --git a/core/core.services.yml b/core/core.services.yml index 3196589a3f21..2bc5edc1d4ff 100644 --- a/core/core.services.yml +++ b/core/core.services.yml @@ -144,57 +144,49 @@ services: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin, default_backend: cache.backend.chainedfast } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [bootstrap] cache.config: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin, default_backend: cache.backend.chainedfast } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [config] cache.default: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [default] cache.entity: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [entity] cache.menu: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [menu] cache.render: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [render] cache.data: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [data] cache.discovery: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin, default_backend: cache.backend.chainedfast } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [discovery] cache_router_rebuild_subscriber: class: Drupal\Core\EventSubscriber\CacheRouterRebuildSubscriber @@ -253,13 +245,11 @@ services: - { name: backend_overridable } config.storage.file: class: Drupal\Core\Config\FileStorage - factory_class: Drupal\Core\Config\FileStorageFactory - factory_method: getActive + factory: Drupal\Core\Config\FileStorageFactory::getActive public: false config.storage.staging: class: Drupal\Core\Config\FileStorage - factory_class: Drupal\Core\Config\FileStorageFactory - factory_method: getStaging + factory: Drupal\Core\Config\FileStorageFactory::getStaging config.storage.snapshot: class: Drupal\Core\Config\DatabaseStorage arguments: ['@database', config_snapshot] @@ -285,8 +275,7 @@ services: arguments: ['@config.factory'] database: class: Drupal\Core\Database\Connection - factory_class: Drupal\Core\Database\Database - factory_method: getConnection + factory: Drupal\Core\Database\Database::getConnection arguments: [default] file_system: class: Drupal\Core\File\FileSystem @@ -324,8 +313,7 @@ services: logger.channel_base: abstract: true class: Drupal\Core\Logger\LoggerChannel - factory_method: get - factory_service: logger.factory + factory: logger.factory:get logger.channel.default: parent: logger.channel_base arguments: ['system'] @@ -340,8 +328,7 @@ services: arguments: ['cron'] logger.channel.file: class: Drupal\Core\Logger\LoggerChannel - factory_method: get - factory_service: logger.factory + factory: logger.factory:get arguments: ['file'] logger.channel.form: parent: logger.channel_base @@ -358,8 +345,7 @@ services: settings: class: Drupal\Core\Site\Settings - factory_class: Drupal\Core\Site\Settings - factory_method: getInstance + factory: Drupal\Core\Site\Settings::getInstance state: class: Drupal\Core\State\State arguments: ['@keyvalue'] @@ -546,8 +532,7 @@ services: arguments: ['@service_container'] app.root: class: SplString - factory_service: 'app.root.factory' - factory_method: 'get' + factory: app.root.factory:get tags: - { name: parameter_service } app.root.factory: @@ -617,8 +602,7 @@ services: - { name: service_collector, tag: string_translator, call: addTranslator } database.replica: class: Drupal\Core\Database\Connection - factory_class: Drupal\Core\Database\Database - factory_method: getConnection + factory: Drupal\Core\Database\Database::getConnection arguments: [replica] typed_data_manager: class: Drupal\Core\TypedData\TypedDataManager diff --git a/core/lib/Drupal/Core/Composer/Composer.php b/core/lib/Drupal/Core/Composer/Composer.php index bac268ffcbca..297f3800c606 100644 --- a/core/lib/Drupal/Core/Composer/Composer.php +++ b/core/lib/Drupal/Core/Composer/Composer.php @@ -24,14 +24,14 @@ class Composer { $package = $composer->getPackage(); $autoload = $package->getAutoload(); $autoload['classmap'] = array_merge($autoload['classmap'], array( - 'vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Request.php', - 'vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ParameterBag.php', - 'vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/FileBag.php', - 'vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/ServerBag.php', - 'vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/HeaderBag.php', - 'vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernel.php', - 'vendor/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernelInterface.php', - 'vendor/symfony/http-kernel/Symfony/Component/HttpKernel/TerminableInterface.php' + 'vendor/symfony/http-foundation/Request.php', + 'vendor/symfony/http-foundation/ParameterBag.php', + 'vendor/symfony/http-foundation/FileBag.php', + 'vendor/symfony/http-foundation/ServerBag.php', + 'vendor/symfony/http-foundation/HeaderBag.php', + 'vendor/symfony/http-kernel/HttpKernel.php', + 'vendor/symfony/http-kernel/HttpKernelInterface.php', + 'vendor/symfony/http-kernel/TerminableInterface.php', )); $package->setAutoload($autoload); } diff --git a/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php b/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php index 16bf0ad9b1ce..cb8587857328 100644 --- a/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php +++ b/core/lib/Drupal/Core/DependencyInjection/ContainerBuilder.php @@ -43,10 +43,6 @@ class ContainerBuilder extends SymfonyContainerBuilder { public function set($id, $service, $scope = self::SCOPE_CONTAINER) { SymfonyContainer::set($id, $service, $scope); - if ($this->hasDefinition($id) && ($definition = $this->getDefinition($id)) && $definition->isSynchronized()) { - $this->synchronize($id); - } - // Ensure that the _serviceId property is set on synthetic services as well. if (isset($this->services[$id]) && is_object($this->services[$id]) && !isset($this->services[$id]->_serviceId)) { $this->services[$id]->_serviceId = $id; diff --git a/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.php b/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.php index 77484de60f2d..4c7fea941441 100644 --- a/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.php +++ b/core/lib/Drupal/Core/DependencyInjection/YamlFileLoader.php @@ -83,6 +83,10 @@ class YamlFileLoader // parameters if (isset($content['parameters'])) { + if (!is_array($content['parameters'])) { + throw new InvalidArgumentException(sprintf('The "parameters" key should contain an array in %s. Check your YAML syntax.', $file)); + } + foreach ($content['parameters'] as $key => $value) { $this->container->setParameter($key, $this->resolveServices($value)); } @@ -108,6 +112,10 @@ class YamlFileLoader return; } + if (!is_array($content['services'])) { + throw new InvalidArgumentException(sprintf('The "services" key should contain an array in %s. Check your YAML syntax.', $file)); + } + foreach ($content['services'] as $id => $service) { $this->parseDefinition($id, $service, $file); } @@ -128,8 +136,14 @@ class YamlFileLoader $this->container->setAlias($id, substr($service, 1)); return; - } elseif (isset($service['alias'])) { - $public = !array_key_exists('public', $service) || (Boolean) $service['public']; + } + + if (!is_array($service)) { + throw new InvalidArgumentException(sprintf('A service definition must be an array or a string starting with "@" but %s found for service "%s" in %s. Check your YAML syntax.', gettype($service), $id, $file)); + } + + if (isset($service['alias'])) { + $public = !array_key_exists('public', $service) || (bool) $service['public']; $this->container->setAlias($id, new Alias($service['alias'], $public)); return; @@ -154,7 +168,7 @@ class YamlFileLoader } if (isset($service['synchronized'])) { - $definition->setSynchronized($service['synchronized']); + $definition->setSynchronized($service['synchronized'], 'request' !== $id); } if (isset($service['lazy'])) { @@ -169,6 +183,19 @@ class YamlFileLoader $definition->setAbstract($service['abstract']); } + if (isset($service['factory'])) { + if (is_string($service['factory'])) { + if (strpos($service['factory'], ':') !== false && strpos($service['factory'], '::') === false) { + $parts = explode(':', $service['factory']); + $definition->setFactory(array($this->resolveServices('@'.$parts[0]), $parts[1])); + } else { + $definition->setFactory($service['factory']); + } + } else { + $definition->setFactory(array($this->resolveServices($service['factory'][0]), $service['factory'][1])); + } + } + if (isset($service['factory_class'])) { $definition->setFactoryClass($service['factory_class']); } @@ -202,18 +229,33 @@ class YamlFileLoader } if (isset($service['calls'])) { + if (!is_array($service['calls'])) { + throw new InvalidArgumentException(sprintf('Parameter "calls" must be an array for service "%s" in %s. Check your YAML syntax.', $id, $file)); + } + foreach ($service['calls'] as $call) { - $args = isset($call[1]) ? $this->resolveServices($call[1]) : array(); - $definition->addMethodCall($call[0], $args); + if (isset($call['method'])) { + $method = $call['method']; + $args = isset($call['arguments']) ? $this->resolveServices($call['arguments']) : array(); + } else { + $method = $call[0]; + $args = isset($call[1]) ? $this->resolveServices($call[1]) : array(); + } + + $definition->addMethodCall($method, $args); } } if (isset($service['tags'])) { if (!is_array($service['tags'])) { - throw new InvalidArgumentException(sprintf('Parameter "tags" must be an array for service "%s" in %s.', $id, $file)); + throw new InvalidArgumentException(sprintf('Parameter "tags" must be an array for service "%s" in %s. Check your YAML syntax.', $id, $file)); } foreach ($service['tags'] as $tag) { + if (!is_array($tag)) { + throw new InvalidArgumentException(sprintf('A "tags" entry must be an array for service "%s" in %s. Check your YAML syntax.', $id, $file)); + } + if (!isset($tag['name'])) { throw new InvalidArgumentException(sprintf('A "tags" entry is missing a "name" key for service "%s" in %s.', $id, $file)); } @@ -223,7 +265,7 @@ class YamlFileLoader foreach ($tag as $attribute => $value) { if (!is_scalar($value) && null !== $value) { - throw new InvalidArgumentException(sprintf('A "tags" attribute must be of a scalar-type for service "%s", tag "%s", attribute "%s" in %s.', $id, $name, $attribute, $file)); + throw new InvalidArgumentException(sprintf('A "tags" attribute must be of a scalar-type for service "%s", tag "%s", attribute "%s" in %s. Check your YAML syntax.', $id, $name, $attribute, $file)); } } @@ -231,6 +273,11 @@ class YamlFileLoader } } + if (isset($service['decorates'])) { + $renameId = isset($service['decoration_inner_name']) ? $service['decoration_inner_name'] : null; + $definition->setDecoratedService($service['decorates'], $renameId); + } + $this->container->setDefinition($id, $definition); } @@ -240,6 +287,8 @@ class YamlFileLoader * @param string $file * * @return array The file content + * + * @throws InvalidArgumentException when the given file is not a local file or when it does not exist */ protected function loadFile($file) { @@ -271,7 +320,7 @@ class YamlFileLoader } if (!is_array($content)) { - throw new InvalidArgumentException(sprintf('The service file "%s" is not valid: it is not an array.', $file)); + throw new InvalidArgumentException(sprintf('The service file "%s" is not valid. It should contain an array. Check your YAML syntax.', $file)); } if ($invalid_keys = array_diff_key($content, array('parameters' => 1, 'services' => 1))) { @@ -284,9 +333,9 @@ class YamlFileLoader /** * Resolves services. * - * @param string $value + * @param string|array $value * - * @return Reference + * @return array|string|Reference */ private function resolveServices($value) { diff --git a/core/lib/Drupal/Core/RouteProcessor/RouteProcessorCurrent.php b/core/lib/Drupal/Core/RouteProcessor/RouteProcessorCurrent.php index 17a56b5209f0..4d5784390117 100644 --- a/core/lib/Drupal/Core/RouteProcessor/RouteProcessorCurrent.php +++ b/core/lib/Drupal/Core/RouteProcessor/RouteProcessorCurrent.php @@ -39,8 +39,16 @@ class RouteProcessorCurrent implements OutboundRouteProcessorInterface { public function processOutbound($route_name, Route $route, array &$parameters, CacheableMetadata $cacheable_metadata = NULL) { if ($route_name === '') { if ($current_route = $this->routeMatch->getRouteObject()) { + $requirements = $current_route->getRequirements(); + // Setting _method and _schema is deprecated since 2.7. Using + // setMethods() and setSchemes() are now the recommended ways. + unset($requirements['_method']); + unset($requirements['_schema']); + $route->setRequirements($requirements); + $route->setPath($current_route->getPath()); - $route->setRequirements($current_route->getRequirements()); + $route->setSchemes($current_route->getSchemes()); + $route->setMethods($current_route->getMethods()); $route->setOptions($current_route->getOptions()); $route->setDefaults($current_route->getDefaults()); $parameters = array_merge($parameters, $this->routeMatch->getRawParameters()->all()); diff --git a/core/lib/Drupal/Core/Routing/RouteBuilder.php b/core/lib/Drupal/Core/Routing/RouteBuilder.php index 9c34cde8d753..a78cf0c73514 100644 --- a/core/lib/Drupal/Core/Routing/RouteBuilder.php +++ b/core/lib/Drupal/Core/Routing/RouteBuilder.php @@ -168,9 +168,13 @@ class RouteBuilder implements RouteBuilderInterface, DestructableInterface { 'defaults' => array(), 'requirements' => array(), 'options' => array(), + 'host' => NULL, + 'schemes' => array(), + 'methods' => array(), + 'condition' => '', ); - $route = new Route($route_info['path'], $route_info['defaults'], $route_info['requirements'], $route_info['options']); + $route = new Route($route_info['path'], $route_info['defaults'], $route_info['requirements'], $route_info['options'], $route_info['host'], $route_info['schemes'], $route_info['methods'], $route_info['condition']); $collection->add($name, $route); } } diff --git a/core/lib/Drupal/Core/Routing/UrlGenerator.php b/core/lib/Drupal/Core/Routing/UrlGenerator.php index c7686c6d45e7..081a542681dd 100644 --- a/core/lib/Drupal/Core/Routing/UrlGenerator.php +++ b/core/lib/Drupal/Core/Routing/UrlGenerator.php @@ -345,8 +345,8 @@ class UrlGenerator implements UrlGeneratorInterface { else { $scheme = $this->context->getScheme(); } - $scheme_req = $route->getRequirement('_scheme'); - if (isset($scheme_req) && ($req = strtolower($scheme_req)) && $scheme !== $req) { + $scheme_req = $route->getSchemes(); + if ($scheme_req && ($req = $scheme_req[0]) && $scheme !== $req) { $scheme = $req; } $port = ''; diff --git a/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/NullConstraint.php b/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/IsNullConstraint.php similarity index 76% rename from core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/NullConstraint.php rename to core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/IsNullConstraint.php index e2a0a5f476f6..401be6375b70 100644 --- a/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/NullConstraint.php +++ b/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/IsNullConstraint.php @@ -2,12 +2,12 @@ /** * @file - * Contains \Drupal\Core\Validation\Plugin\Validation\Constraint\NullConstraint. + * Contains \Drupal\Core\Validation\Plugin\Validation\Constraint\IsNullConstraint. */ namespace Drupal\Core\Validation\Plugin\Validation\Constraint; -use Symfony\Component\Validator\Constraints\Null; +use Symfony\Component\Validator\Constraints\IsNull; /** * Null constraint. @@ -20,4 +20,4 @@ use Symfony\Component\Validator\Constraints\Null; * type = false * ) */ -class NullConstraint extends Null { } +class IsNullConstraint extends IsNull { } diff --git a/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/NullConstraintValidator.php b/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/IsNullConstraintValidator.php similarity index 85% rename from core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/NullConstraintValidator.php rename to core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/IsNullConstraintValidator.php index b584687311b4..fa1ac35fd706 100644 --- a/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/NullConstraintValidator.php +++ b/core/lib/Drupal/Core/Validation/Plugin/Validation/Constraint/IsNullConstraintValidator.php @@ -2,7 +2,7 @@ /** * @file - * Contains \Drupal\Core\Validation\Plugin\Validation\Constraint\NullConstraintValidator. + * Contains \Drupal\Core\Validation\Plugin\Validation\Constraint\IsNullConstraintValidator. */ namespace Drupal\Core\Validation\Plugin\Validation\Constraint; @@ -11,14 +11,14 @@ use Drupal\Core\TypedData\ComplexDataInterface; use Drupal\Core\TypedData\ListInterface; use Drupal\Core\TypedData\Validation\TypedDataAwareValidatorTrait; use Symfony\Component\Validator\Constraint; -use Symfony\Component\Validator\Constraints\NullValidator; +use Symfony\Component\Validator\Constraints\IsNullValidator; /** * Null constraint validator. * * Overrides the symfony validator to handle empty Typed Data structures. */ -class NullConstraintValidator extends NullValidator { +class IsNullConstraintValidator extends IsNullValidator { use TypedDataAwareValidatorTrait; diff --git a/core/modules/config/tests/config_events_test/src/EventSubscriber.php b/core/modules/config/tests/config_events_test/src/EventSubscriber.php index b127555a051c..a15fabb5cd09 100644 --- a/core/modules/config/tests/config_events_test/src/EventSubscriber.php +++ b/core/modules/config/tests/config_events_test/src/EventSubscriber.php @@ -37,11 +37,13 @@ class EventSubscriber implements EventSubscriberInterface { * * @param \Drupal\Core\Config\ConfigCrudEvent $event * The configuration event. + * @param string $name + * The event name. */ - public function configEventRecorder(ConfigCrudEvent $event) { + public function configEventRecorder(ConfigCrudEvent $event, $name) { $config = $event->getConfig(); $this->state->set('config_events_test.event', array( - 'event_name' => $event->getName(), + 'event_name' => $name, 'current_config_data' => $config->get(), 'original_config_data' => $config->getOriginal(), 'raw_config_data' => $config->getRawData() diff --git a/core/modules/contact/contact.services.yml b/core/modules/contact/contact.services.yml index 3db0d9fadb24..dac421071b28 100644 --- a/core/modules/contact/contact.services.yml +++ b/core/modules/contact/contact.services.yml @@ -9,6 +9,5 @@ services: arguments: ['@plugin.manager.mail', '@language_manager', '@logger.channel.contact', '@string_translation', '@entity.manager'] logger.channel.contact: class: Drupal\Core\Logger\LoggerChannel - factory_method: get - factory_service: logger.factory + factory: logger.factory:get arguments: ['contact'] diff --git a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php index 7ed62ba86efc..37a61eef4b3b 100644 --- a/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php +++ b/core/modules/link/src/Plugin/Field/FieldWidget/LinkWidget.php @@ -351,7 +351,7 @@ class LinkWidget extends WidgetBase { public function flagErrors(FieldItemListInterface $items, ConstraintViolationListInterface $violations, array $form, FormStateInterface $form_state) { /** @var \Symfony\Component\Validator\ConstraintViolationInterface $violation */ foreach ($violations as $offset => $violation) { - $parameters = $violation->getMessageParameters(); + $parameters = $violation->getParameters(); if (isset($parameters['@uri'])) { $parameters['@uri'] = static::getUriAsDisplayableString($parameters['@uri']); $violations->set($offset, new ConstraintViolation( @@ -361,7 +361,7 @@ class LinkWidget extends WidgetBase { $violation->getRoot(), $violation->getPropertyPath(), $violation->getInvalidValue(), - $violation->getMessagePluralization(), + $violation->getPlural(), $violation->getCode() )); } diff --git a/core/modules/migrate/migrate.services.yml b/core/modules/migrate/migrate.services.yml index 8b6bad75a9e9..3f2d32d56e72 100644 --- a/core/modules/migrate/migrate.services.yml +++ b/core/modules/migrate/migrate.services.yml @@ -3,8 +3,7 @@ services: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [migrate] plugin.manager.migrate.source: class: Drupal\migrate\Plugin\MigratePluginManager diff --git a/core/modules/rest/rest.services.yml b/core/modules/rest/rest.services.yml index 04f5f1d58289..6b613e398420 100644 --- a/core/modules/rest/rest.services.yml +++ b/core/modules/rest/rest.services.yml @@ -6,8 +6,7 @@ services: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [rest] access_check.rest.csrf: class: Drupal\rest\Access\CSRFAccessCheck diff --git a/core/modules/rest/src/Plugin/ResourceBase.php b/core/modules/rest/src/Plugin/ResourceBase.php index 614741316386..5f8065e11a5c 100644 --- a/core/modules/rest/src/Plugin/ResourceBase.php +++ b/core/modules/rest/src/Plugin/ResourceBase.php @@ -111,7 +111,7 @@ abstract class ResourceBase extends PluginBase implements ContainerFactoryPlugin switch ($method) { case 'POST': - $route->setPattern($create_path); + $route->setPath($create_path); // Restrict the incoming HTTP Content-type header to the known // serialization formats. $route->addRequirements(array('_content_type_format' => implode('|', $this->serializerFormats))); @@ -203,10 +203,14 @@ abstract class ResourceBase extends PluginBase implements ContainerFactoryPlugin // Pass the resource plugin ID along as default property. '_plugin' => $this->pluginId, ), array( - // The HTTP method is a requirement for this route. - '_method' => $method, '_permission' => "restful $lower_method $this->pluginId", - )); + ), + array(), + '', + array(), + // The HTTP method is a requirement for this route. + array($method) + ); return $route; } diff --git a/core/modules/rest/src/Plugin/views/display/RestExport.php b/core/modules/rest/src/Plugin/views/display/RestExport.php index 2efdbc7f3964..32c0110574ae 100644 --- a/core/modules/rest/src/Plugin/views/display/RestExport.php +++ b/core/modules/rest/src/Plugin/views/display/RestExport.php @@ -263,7 +263,7 @@ class RestExport extends PathPluginBase { if ($route = $collection->get("view.$view_id.$display_id")) { $style_plugin = $this->getPlugin('style'); // REST exports should only respond to get methods. - $requirements = array('_method' => 'GET'); + $route->setMethods(['GET']); // Format as a string using pipes as a delimiter. $requirements['_format'] = implode('|', $style_plugin->getFormats()); diff --git a/core/modules/rest/src/Routing/ResourceRoutes.php b/core/modules/rest/src/Routing/ResourceRoutes.php index 484c48e8e0b7..f975f2773722 100644 --- a/core/modules/rest/src/Routing/ResourceRoutes.php +++ b/core/modules/rest/src/Routing/ResourceRoutes.php @@ -74,9 +74,10 @@ class ResourceRoutes extends RouteSubscriberBase { $plugin = $this->manager->getInstance(array('id' => $id)); foreach ($plugin->routes() as $name => $route) { - $method = $route->getRequirement('_method'); + // @todo: Are multiple methods possible here? + $methods = $route->getMethods(); // Only expose routes where the method is enabled in the configuration. - if ($method && isset($enabled_methods[$method])) { + if ($methods && ($method = $methods[0]) && $method && isset($enabled_methods[$method])) { $route->setRequirement('_access_rest_csrf', 'TRUE'); // Check that authentication providers are defined. diff --git a/core/modules/simpletest/src/WebTestBase.php b/core/modules/simpletest/src/WebTestBase.php index 2e8702b90de5..721fdd91acb3 100644 --- a/core/modules/simpletest/src/WebTestBase.php +++ b/core/modules/simpletest/src/WebTestBase.php @@ -708,7 +708,8 @@ abstract class WebTestBase extends TestBase { if ($this->strictConfigSchema) { // Add a listener to validate configuration schema on save. $yaml = new \Symfony\Component\Yaml\Yaml(); - $services = $yaml->parse($directory . '/services.yml'); + $content = file_get_contents($directory . '/services.yml'); + $services = $yaml->parse($content); $services['services']['simpletest.config_schema_checker'] = [ 'class' => 'Drupal\Core\Config\Testing\ConfigSchemaChecker', 'arguments' => ['@config.typed'], diff --git a/core/modules/system/core.api.php b/core/modules/system/core.api.php index a3dee258aaa9..a156905f4d7a 100644 --- a/core/modules/system/core.api.php +++ b/core/modules/system/core.api.php @@ -438,8 +438,7 @@ * class: Drupal\Core\Cache\CacheBackendInterface * tags: * - { name: cache.bin } - * factory_method: get - * factory_service: cache_factory + * factory: cache_factory:get * arguments: [nameofbin] * @endcode * See the @link container Services topic @endlink for more on defining @@ -683,8 +682,7 @@ * class: Drupal\Core\Cache\CacheBackendInterface * tags: * - { name: cache.bin } - * factory_method: get - * factory_service: cache_factory + * factory: cache_factory:get * arguments: [entity] * @endcode * diff --git a/core/modules/system/src/Tests/Routing/RouteProviderTest.php b/core/modules/system/src/Tests/Routing/RouteProviderTest.php index c9af8868eb30..e316738b72ef 100644 --- a/core/modules/system/src/Tests/Routing/RouteProviderTest.php +++ b/core/modules/system/src/Tests/Routing/RouteProviderTest.php @@ -385,10 +385,10 @@ class RouteProviderTest extends KernelTestBase { $route = $provider->getRouteByName('route_a'); $this->assertEqual($route->getPath(), '/path/one', 'The right route pattern was found.'); - $this->assertEqual($route->getRequirement('_method'), 'GET', 'The right route method was found.'); + $this->assertEqual($route->getMethods(), ['GET'], 'The right route method was found.'); $route = $provider->getRouteByName('route_b'); $this->assertEqual($route->getPath(), '/path/one', 'The right route pattern was found.'); - $this->assertEqual($route->getRequirement('_method'), 'PUT', 'The right route method was found.'); + $this->assertEqual($route->getMethods(), ['PUT'], 'The right route method was found.'); $exception_thrown = FALSE; try { diff --git a/core/modules/toolbar/toolbar.services.yml b/core/modules/toolbar/toolbar.services.yml index d8110d2f5c8d..ef39464fc9b7 100644 --- a/core/modules/toolbar/toolbar.services.yml +++ b/core/modules/toolbar/toolbar.services.yml @@ -3,8 +3,7 @@ services: class: Drupal\Core\Cache\CacheBackendInterface tags: - { name: cache.bin } - factory_method: get - factory_service: cache_factory + factory: cache_factory:get arguments: [toolbar] toolbar.page_cache_request_policy.allow_toolbar_path: class: Drupal\toolbar\PageCache\AllowToolbarPath diff --git a/core/tests/Drupal/Tests/Core/DependencyInjection/ContainerBuilderTest.php b/core/tests/Drupal/Tests/Core/DependencyInjection/ContainerBuilderTest.php index fc97787c5355..8a93b6d4da00 100644 --- a/core/tests/Drupal/Tests/Core/DependencyInjection/ContainerBuilderTest.php +++ b/core/tests/Drupal/Tests/Core/DependencyInjection/ContainerBuilderTest.php @@ -9,9 +9,7 @@ namespace Drupal\Tests\Core\DependencyInjection; use Drupal\Core\DependencyInjection\ContainerBuilder; use Drupal\Tests\UnitTestCase; -use Drupal\Tests\Core\DependencyInjection\Fixture\BazClass; use Drupal\Tests\Core\DependencyInjection\Fixture\BarClass; -use Symfony\Component\DependencyInjection\Reference; /** * @coversDefaultClass \Drupal\Core\DependencyInjection\ContainerBuilder @@ -19,28 +17,6 @@ use Symfony\Component\DependencyInjection\Reference; */ class ContainerBuilderTest extends UnitTestCase { - /** - * Tests set with a synchronized service. - * - * @covers ::set - */ - public function testSetOnSynchronizedService() { - $container = new ContainerBuilder(); - $container->register('baz', '\Drupal\Tests\Core\DependencyInjection\Fixture\BazClass') - ->setSynchronized(TRUE); - $container->register('bar', '\Drupal\Tests\Core\DependencyInjection\Fixture\BarClass') - ->addMethodCall('setBaz', array(new Reference('baz'))); - - // Ensure that we can set services on a compiled container. - $container->compile(); - - $container->set('baz', $baz = new BazClass()); - $this->assertSame($baz, $container->get('bar')->getBaz()); - - $container->set('baz', $baz = new BazClass()); - $this->assertSame($baz, $container->get('bar')->getBaz()); - } - /** * @covers ::get */ diff --git a/core/tests/Drupal/Tests/Core/Routing/RoutingFixtures.php b/core/tests/Drupal/Tests/Core/Routing/RoutingFixtures.php index ffbfb0369b41..54cd70de7663 100644 --- a/core/tests/Drupal/Tests/Core/Routing/RoutingFixtures.php +++ b/core/tests/Drupal/Tests/Core/Routing/RoutingFixtures.php @@ -50,20 +50,16 @@ class RoutingFixtures { $routes = array(); $routes['route_a'] = array( 'path' => '/path/one', - 'requirements' => array( - '_method' => 'GET', - ), + 'methods' => array('GET'), ); $routes['route_b'] = array( 'path' => '/path/one', - 'requirements' => array( - '_method' => 'PUT', - ), + 'methods' => array('PUT'), ); $routes['route_c'] = array( 'path' => '/path/two', + 'methods' => array('GET'), 'requirements' => array( - '_method' => 'GET', '_format' => 'json' ), ); @@ -72,8 +68,8 @@ class RoutingFixtures { ); $routes['route_e'] = array( 'path' => '/path/two', + 'methods' => array('GET', 'HEAD'), 'requirements' => array( - '_method' => 'GET|HEAD', '_format' => 'html' ), ); @@ -90,15 +86,15 @@ class RoutingFixtures { $collection = new RouteCollection(); $route = new Route('path/one'); - $route->setRequirement('_method', 'GET'); + $route->setMethods(['GET']); $collection->add('route_a', $route); $route = new Route('path/one'); - $route->setRequirement('_method', 'PUT'); + $route->setMethods(['PUT']); $collection->add('route_b', $route); $route = new Route('path/two'); - $route->setRequirement('_method', 'GET'); + $route->setMethods(['GET']); $route->setRequirement('_format', 'json'); $collection->add('route_c', $route); @@ -106,7 +102,7 @@ class RoutingFixtures { $collection->add('route_d', $route); $route = new Route('path/two'); - $route->setRequirement('_method', 'GET|HEAD'); + $route->setMethods(['GET', 'HEAD']); $route->setRequirement('_format', 'html'); $collection->add('route_e', $route); @@ -122,22 +118,22 @@ class RoutingFixtures { $collection = new RouteCollection(); $route = new Route('/path/{thing}/one'); - $route->setRequirement('_method', 'GET'); + $route->setMethods(['GET']); $collection->add('route_a', $route); $route = new Route('/path/{thing}/one'); - $route->setRequirement('_method', 'PUT'); + $route->setMethods(['PUT']); $collection->add('route_b', $route); $route = new Route('/somewhere/{item}/over/the/rainbow'); - $route->setRequirement('_method', 'GET'); + $route->setMethods(['GET']); $collection->add('route_c', $route); $route = new Route('/another/{thing}/about/{item}'); $collection->add('route_d', $route); $route = new Route('/path/add/one'); - $route->setRequirement('_method', 'GET|HEAD'); + $route->setMethods(['GET', 'HEAD']); $collection->add('route_e', $route); return $collection; @@ -152,12 +148,12 @@ class RoutingFixtures { $collection = new RouteCollection(); $route = new Route('path/three'); - $route->setRequirement('_method', 'POST'); + $route->setMethods(['POST']); $route->setRequirement('_content_type_format', 'json'); $collection->add('route_f', $route); $route = new Route('path/three'); - $route->setRequirement('_method', 'PATCH'); + $route->setMethods(['PATCH']); $route->setRequirement('_content_type_format', 'xml'); $collection->add('route_g', $route); return $collection; diff --git a/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php b/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php index 4685727f5a32..677d21461e43 100644 --- a/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php +++ b/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php @@ -70,7 +70,7 @@ class UrlGeneratorTest extends UnitTestCase { $first_route = new Route('/test/one'); $second_route = new Route('/test/two/{narf}'); $third_route = new Route('/test/two/'); - $fourth_route = new Route('/test/four', array(), array('_scheme' => 'https')); + $fourth_route = new Route('/test/four', array(), array(), array(), '', ['https']); $routes->add('test_1', $first_route); $routes->add('test_2', $second_route); $routes->add('test_3', $third_route); diff --git a/core/tests/Drupal/Tests/Core/TypedData/RecursiveContextualValidatorTest.php b/core/tests/Drupal/Tests/Core/TypedData/RecursiveContextualValidatorTest.php index e4faaa756f02..26bbe043a8c2 100644 --- a/core/tests/Drupal/Tests/Core/TypedData/RecursiveContextualValidatorTest.php +++ b/core/tests/Drupal/Tests/Core/TypedData/RecursiveContextualValidatorTest.php @@ -16,6 +16,7 @@ use Drupal\Core\TypedData\Validation\ExecutionContextFactory; use Drupal\Core\TypedData\Validation\RecursiveValidator; use Drupal\Core\Validation\ConstraintManager; use Drupal\Tests\UnitTestCase; +use Symfony\Component\Translation\IdentityTranslator; use Symfony\Component\Validator\ConstraintValidatorFactory; use Symfony\Component\Validator\Context\ExecutionContextInterface; use Symfony\Component\Validator\DefaultTranslator; @@ -81,7 +82,7 @@ class RecursiveContextualValidatorTest extends UnitTestCase { $container->set('typed_data_manager', $this->typedDataManager); \Drupal::setContainer($container); - $translator = new DefaultTranslator(); + $translator = new IdentityTranslator(); $this->contextFactory = new ExecutionContextFactory($translator); $this->validatorFactory = new ConstraintValidatorFactory(); $this->recursiveValidator = new RecursiveValidator($this->contextFactory, $this->validatorFactory, $this->typedDataManager); diff --git a/core/vendor/composer/autoload_classmap.php b/core/vendor/composer/autoload_classmap.php index 1b5c7ffe81be..e66d49b53e4f 100644 --- a/core/vendor/composer/autoload_classmap.php +++ b/core/vendor/composer/autoload_classmap.php @@ -425,14 +425,14 @@ return array( 'SebastianBergmann\\RecursionContext\\Exception' => $vendorDir . '/sebastian/recursion-context/src/Exception.php', 'SebastianBergmann\\RecursionContext\\InvalidArgumentException' => $vendorDir . '/sebastian/recursion-context/src/InvalidArgumentException.php', 'SebastianBergmann\\Version' => $vendorDir . '/sebastian/version/src/Version.php', - 'SessionHandlerInterface' => $vendorDir . '/symfony/http-foundation/Symfony/Component/HttpFoundation/Resources/stubs/SessionHandlerInterface.php', - 'Symfony\\Component\\HttpFoundation\\FileBag' => $vendorDir . '/symfony/http-foundation/Symfony/Component/HttpFoundation/FileBag.php', - 'Symfony\\Component\\HttpFoundation\\HeaderBag' => $vendorDir . '/symfony/http-foundation/Symfony/Component/HttpFoundation/HeaderBag.php', - 'Symfony\\Component\\HttpFoundation\\ParameterBag' => $vendorDir . '/symfony/http-foundation/Symfony/Component/HttpFoundation/ParameterBag.php', - 'Symfony\\Component\\HttpFoundation\\Request' => $vendorDir . '/symfony/http-foundation/Symfony/Component/HttpFoundation/Request.php', - 'Symfony\\Component\\HttpFoundation\\ServerBag' => $vendorDir . '/symfony/http-foundation/Symfony/Component/HttpFoundation/ServerBag.php', - 'Symfony\\Component\\HttpKernel\\HttpKernel' => $vendorDir . '/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernel.php', - 'Symfony\\Component\\HttpKernel\\HttpKernelInterface' => $vendorDir . '/symfony/http-kernel/Symfony/Component/HttpKernel/HttpKernelInterface.php', - 'Symfony\\Component\\HttpKernel\\TerminableInterface' => $vendorDir . '/symfony/http-kernel/Symfony/Component/HttpKernel/TerminableInterface.php', + 'SessionHandlerInterface' => $vendorDir . '/symfony/http-foundation/Resources/stubs/SessionHandlerInterface.php', + 'Symfony\\Component\\HttpFoundation\\FileBag' => $vendorDir . '/symfony/http-foundation/FileBag.php', + 'Symfony\\Component\\HttpFoundation\\HeaderBag' => $vendorDir . '/symfony/http-foundation/HeaderBag.php', + 'Symfony\\Component\\HttpFoundation\\ParameterBag' => $vendorDir . '/symfony/http-foundation/ParameterBag.php', + 'Symfony\\Component\\HttpFoundation\\Request' => $vendorDir . '/symfony/http-foundation/Request.php', + 'Symfony\\Component\\HttpFoundation\\ServerBag' => $vendorDir . '/symfony/http-foundation/ServerBag.php', + 'Symfony\\Component\\HttpKernel\\HttpKernel' => $vendorDir . '/symfony/http-kernel/HttpKernel.php', + 'Symfony\\Component\\HttpKernel\\HttpKernelInterface' => $vendorDir . '/symfony/http-kernel/HttpKernelInterface.php', + 'Symfony\\Component\\HttpKernel\\TerminableInterface' => $vendorDir . '/symfony/http-kernel/TerminableInterface.php', 'Text_Template' => $vendorDir . '/phpunit/php-text-template/Text/Template.php', ); diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php index c33bac0ad6fc..305ab18c6815 100644 --- a/core/vendor/composer/autoload_namespaces.php +++ b/core/vendor/composer/autoload_namespaces.php @@ -9,21 +9,8 @@ return array( 'phpDocumentor' => array($vendorDir . '/phpdocumentor/reflection-docblock/src'), 'org\\bovigo\\vfs\\' => array($vendorDir . '/mikey179/vfsStream/src/main/php'), 'Twig_' => array($vendorDir . '/twig/twig/lib'), - 'Symfony\\Component\\Yaml\\' => array($vendorDir . '/symfony/yaml'), - 'Symfony\\Component\\Validator\\' => array($vendorDir . '/symfony/validator'), - 'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'), - 'Symfony\\Component\\Serializer\\' => array($vendorDir . '/symfony/serializer'), - 'Symfony\\Component\\Routing\\' => array($vendorDir . '/symfony/routing'), - 'Symfony\\Component\\Process\\' => array($vendorDir . '/symfony/process'), - 'Symfony\\Component\\HttpKernel\\' => array($vendorDir . '/symfony/http-kernel'), - 'Symfony\\Component\\HttpFoundation\\' => array($vendorDir . '/symfony/http-foundation'), - 'Symfony\\Component\\EventDispatcher\\' => array($vendorDir . '/symfony/event-dispatcher'), 'Symfony\\Component\\DomCrawler\\' => array($vendorDir . '/symfony/dom-crawler'), - 'Symfony\\Component\\DependencyInjection\\' => array($vendorDir . '/symfony/dependency-injection'), 'Symfony\\Component\\Debug\\' => array($vendorDir . '/symfony/debug'), - 'Symfony\\Component\\CssSelector\\' => array($vendorDir . '/symfony/css-selector'), - 'Symfony\\Component\\Console\\' => array($vendorDir . '/symfony/console'), - 'Symfony\\Component\\ClassLoader\\' => array($vendorDir . '/symfony/class-loader'), 'Symfony\\Component\\BrowserKit\\' => array($vendorDir . '/symfony/browser-kit'), 'Stack' => array($vendorDir . '/stack/builder/src'), 'Psr\\Log\\' => array($vendorDir . '/psr/log'), diff --git a/core/vendor/composer/autoload_psr4.php b/core/vendor/composer/autoload_psr4.php index ea6ef86dd1c4..af91507e4800 100644 --- a/core/vendor/composer/autoload_psr4.php +++ b/core/vendor/composer/autoload_psr4.php @@ -9,6 +9,19 @@ return array( 'Zend\\Stdlib\\' => array($vendorDir . '/zendframework/zend-stdlib'), 'Zend\\Feed\\' => array($vendorDir . '/zendframework/zend-feed'), 'Zend\\Escaper\\' => array($vendorDir . '/zendframework/zend-escaper'), + 'Symfony\\Component\\Yaml\\' => array($vendorDir . '/symfony/yaml'), + 'Symfony\\Component\\Validator\\' => array($vendorDir . '/symfony/validator'), + 'Symfony\\Component\\Translation\\' => array($vendorDir . '/symfony/translation'), + 'Symfony\\Component\\Serializer\\' => array($vendorDir . '/symfony/serializer'), + 'Symfony\\Component\\Routing\\' => array($vendorDir . '/symfony/routing'), + 'Symfony\\Component\\Process\\' => array($vendorDir . '/symfony/process'), + 'Symfony\\Component\\HttpKernel\\' => array($vendorDir . '/symfony/http-kernel'), + 'Symfony\\Component\\HttpFoundation\\' => array($vendorDir . '/symfony/http-foundation'), + 'Symfony\\Component\\EventDispatcher\\' => array($vendorDir . '/symfony/event-dispatcher'), + 'Symfony\\Component\\DependencyInjection\\' => array($vendorDir . '/symfony/dependency-injection'), + 'Symfony\\Component\\CssSelector\\' => array($vendorDir . '/symfony/css-selector'), + 'Symfony\\Component\\Console\\' => array($vendorDir . '/symfony/console'), + 'Symfony\\Component\\ClassLoader\\' => array($vendorDir . '/symfony/class-loader'), 'Symfony\\Cmf\\Component\\Routing\\' => array($vendorDir . '/symfony-cmf/routing'), 'React\\Promise\\' => array($vendorDir . '/react/promise/src'), 'Masterminds\\' => array($vendorDir . '/masterminds/html5/src'), diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json index 41b4c41e2fee..ca6969b7daba 100644 --- a/core/vendor/composer/installed.json +++ b/core/vendor/composer/installed.json @@ -1424,840 +1424,6 @@ ], "description": "Provides a simple API and specification that abstracts away the details of HTTP into a single PHP function." }, - { - "name": "symfony/class-loader", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/ClassLoader", - "source": { - "type": "git", - "url": "https://github.com/symfony/ClassLoader.git", - "reference": "861765b3e5f32979de5bd19ad2577cbb830a29d5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/861765b3e5f32979de5bd19ad2577cbb830a29d5", - "reference": "861765b3e5f32979de5bd19ad2577cbb830a29d5", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/finder": "~2.0,>=2.0.5", - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-03-27 10:19:51", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\ClassLoader\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony ClassLoader Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/css-selector", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/CssSelector", - "source": { - "type": "git", - "url": "https://github.com/symfony/CssSelector.git", - "reference": "db2c48df9658423a8c168d89f7b971b73d3d74a4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/CssSelector/zipball/db2c48df9658423a8c168d89f7b971b73d3d74a4", - "reference": "db2c48df9658423a8c168d89f7b971b73d3d74a4", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-03-22 16:55:57", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\CssSelector\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Jean-François Simon", - "email": "jeanfrancois.simon@sensiolabs.com" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony CssSelector Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/dependency-injection", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/DependencyInjection", - "source": { - "type": "git", - "url": "https://github.com/symfony/DependencyInjection.git", - "reference": "8e9007012226b4bd41f8afed855c452cf5edc3a6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/8e9007012226b4bd41f8afed855c452cf5edc3a6", - "reference": "8e9007012226b4bd41f8afed855c452cf5edc3a6", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "conflict": { - "symfony/expression-language": "<2.6" - }, - "require-dev": { - "symfony/config": "~2.2", - "symfony/expression-language": "~2.6", - "symfony/phpunit-bridge": "~2.7", - "symfony/yaml": "~2.1" - }, - "suggest": { - "symfony/config": "", - "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", - "symfony/yaml": "" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\DependencyInjection\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony DependencyInjection Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/debug", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/Debug", - "source": { - "type": "git", - "url": "https://github.com/symfony/Debug.git", - "reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/d49a46a20a8f0544aedac54466750ad787d3d3e3", - "reference": "d49a46a20a8f0544aedac54466750ad787d3d3e3", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "psr/log": "~1.0" - }, - "conflict": { - "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" - }, - "require-dev": { - "symfony/class-loader": "~2.2", - "symfony/http-foundation": "~2.1", - "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2", - "symfony/phpunit-bridge": "~2.7" - }, - "suggest": { - "symfony/http-foundation": "", - "symfony/http-kernel": "" - }, - "time": "2015-03-22 16:55:57", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Debug\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony Debug Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/http-foundation", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/HttpFoundation", - "source": { - "type": "git", - "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/8a6337233f08f7520de97f4ffd6f00e947d892f9", - "reference": "8a6337233f08f7520de97f4ffd6f00e947d892f9", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/expression-language": "~2.4", - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-04-01 16:50:12", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\HttpFoundation\\": "" - }, - "classmap": [ - "Symfony/Component/HttpFoundation/Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony HttpFoundation Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/event-dispatcher", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/EventDispatcher", - "source": { - "type": "git", - "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/70f7c8478739ad21e3deef0d977b38c77f1fb284", - "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.0,>=2.0.5", - "symfony/dependency-injection": "~2.6", - "symfony/expression-language": "~2.6", - "symfony/phpunit-bridge": "~2.7", - "symfony/stopwatch": "~2.3" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "time": "2015-03-13 17:37:22", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\EventDispatcher\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony EventDispatcher Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/http-kernel", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/HttpKernel", - "source": { - "type": "git", - "url": "https://github.com/symfony/HttpKernel.git", - "reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/3829cacfe21eaf3f73604a62d79183d1f6e792c4", - "reference": "3829cacfe21eaf3f73604a62d79183d1f6e792c4", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "psr/log": "~1.0", - "symfony/debug": "~2.6,>=2.6.2", - "symfony/event-dispatcher": "~2.5.9|~2.6,>=2.6.2", - "symfony/http-foundation": "~2.5,>=2.5.4" - }, - "require-dev": { - "symfony/browser-kit": "~2.3", - "symfony/class-loader": "~2.1", - "symfony/config": "~2.0,>=2.0.5", - "symfony/console": "~2.3", - "symfony/css-selector": "~2.0,>=2.0.5", - "symfony/dependency-injection": "~2.2", - "symfony/dom-crawler": "~2.0,>=2.0.5", - "symfony/expression-language": "~2.4", - "symfony/finder": "~2.0,>=2.0.5", - "symfony/phpunit-bridge": "~2.7", - "symfony/process": "~2.0,>=2.0.5", - "symfony/routing": "~2.2", - "symfony/stopwatch": "~2.3", - "symfony/templating": "~2.2", - "symfony/translation": "~2.0,>=2.0.5", - "symfony/var-dumper": "~2.6" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/class-loader": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/finder": "", - "symfony/var-dumper": "" - }, - "time": "2015-04-01 16:55:26", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\HttpKernel\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony HttpKernel Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/routing", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/Routing", - "source": { - "type": "git", - "url": "https://github.com/symfony/Routing.git", - "reference": "4e173a645b63ff60a124f3741b4f15feebd908fa" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/4e173a645b63ff60a124f3741b4f15feebd908fa", - "reference": "4e173a645b63ff60a124f3741b4f15feebd908fa", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/common": "~2.2", - "psr/log": "~1.0", - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/http-foundation": "~2.3", - "symfony/phpunit-bridge": "~2.7", - "symfony/yaml": "~2.0,>=2.0.5" - }, - "suggest": { - "doctrine/annotations": "For using the annotation loader", - "symfony/config": "For using the all-in-one router or any loader", - "symfony/expression-language": "For using expression matching", - "symfony/yaml": "For using the YAML loader" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Routing\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony Routing Component", - "homepage": "http://symfony.com", - "keywords": [ - "router", - "routing", - "uri", - "url" - ] - }, - { - "name": "symfony/serializer", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/Serializer", - "source": { - "type": "git", - "url": "https://github.com/symfony/Serializer.git", - "reference": "bf30b882e15945fe8700edcd966eb3f5503820f3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Serializer/zipball/bf30b882e15945fe8700edcd966eb3f5503820f3", - "reference": "bf30b882e15945fe8700edcd966eb3f5503820f3", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-03-22 16:55:57", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Serializer\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony Serializer Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/translation", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/Translation", - "source": { - "type": "git", - "url": "https://github.com/symfony/Translation.git", - "reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/bd939f05cdaca128f4ddbae1b447d6f0203b60af", - "reference": "bd939f05cdaca128f4ddbae1b447d6f0203b60af", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.3,>=2.3.12", - "symfony/intl": "~2.3", - "symfony/phpunit-bridge": "~2.7", - "symfony/yaml": "~2.2" - }, - "suggest": { - "psr/log": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Translation\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony Translation Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/process", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/Process", - "source": { - "type": "git", - "url": "https://github.com/symfony/Process.git", - "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/a8bebaec1a9dc6cde53e0250e32917579b0be552", - "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Process\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony Process Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/yaml", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/Yaml", - "source": { - "type": "git", - "url": "https://github.com/symfony/Yaml.git", - "reference": "174f009ed36379a801109955fc5a71a49fe62dd4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/174f009ed36379a801109955fc5a71a49fe62dd4", - "reference": "174f009ed36379a801109955fc5a71a49fe62dd4", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/phpunit-bridge": "~2.7" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Yaml\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony Yaml Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/dom-crawler", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/DomCrawler", - "source": { - "type": "git", - "url": "https://github.com/symfony/DomCrawler.git", - "reference": "8897ebf39c7dfb752a5494fa301845a3fbb9e53d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/8897ebf39c7dfb752a5494fa301845a3fbb9e53d", - "reference": "8897ebf39c7dfb752a5494fa301845a3fbb9e53d", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/css-selector": "~2.3", - "symfony/phpunit-bridge": "~2.7" - }, - "suggest": { - "symfony/css-selector": "" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\DomCrawler\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony DomCrawler Component", - "homepage": "http://symfony.com" - }, - { - "name": "symfony/browser-kit", - "version": "v2.6.6", - "version_normalized": "2.6.6.0", - "target-dir": "Symfony/Component/BrowserKit", - "source": { - "type": "git", - "url": "https://github.com/symfony/BrowserKit.git", - "reference": "f21189b0eccbe56528515858ca1d5089a741692f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/f21189b0eccbe56528515858ca1d5089a741692f", - "reference": "f21189b0eccbe56528515858ca1d5089a741692f", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "symfony/dom-crawler": "~2.0,>=2.0.5" - }, - "require-dev": { - "symfony/css-selector": "~2.0,>=2.0.5", - "symfony/phpunit-bridge": "~2.7", - "symfony/process": "~2.0,>=2.0.5" - }, - "suggest": { - "symfony/process": "" - }, - "time": "2015-03-30 15:54:10", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\BrowserKit\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Symfony BrowserKit Component", - "homepage": "http://symfony.com" - }, { "name": "zendframework/zend-stdlib", "version": "2.4.0", @@ -3212,80 +2378,6 @@ "xunit" ] }, - { - "name": "symfony/validator", - "version": "2.6.x-dev", - "version_normalized": "2.6.9999999.9999999-dev", - "target-dir": "Symfony/Component/Validator", - "source": { - "type": "git", - "url": "https://github.com/symfony/Validator.git", - "reference": "6bb1b474d25cb80617d8da6cb14c955ba914e495" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/Validator/zipball/d667b6a563e233b24ae1599a9fde7a53ddd1c055", - "reference": "6bb1b474d25cb80617d8da6cb14c955ba914e495", - "shasum": "" - }, - "require": { - "php": ">=5.3.3", - "symfony/translation": "~2.0,>=2.0.5" - }, - "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.0", - "doctrine/common": "~2.3", - "egulias/email-validator": "~1.2,>=1.2.1", - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/http-foundation": "~2.1", - "symfony/intl": "~2.3", - "symfony/phpunit-bridge": "~2.7", - "symfony/property-access": "~2.3", - "symfony/yaml": "~2.0,>=2.0.5" - }, - "suggest": { - "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", - "doctrine/cache": "For using the default cached annotation reader and metadata cache.", - "egulias/email-validator": "Strict (RFC compliant) email validation", - "symfony/config": "", - "symfony/expression-language": "For using the 2.4 Expression validator", - "symfony/http-foundation": "", - "symfony/intl": "", - "symfony/property-access": "For using the 2.4 Validator API", - "symfony/yaml": "" - }, - "time": "2015-05-05 01:29:27", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "dist", - "autoload": { - "psr-0": { - "Symfony\\Component\\Validator\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Validator Component", - "homepage": "https://symfony.com" - }, { "name": "mikey179/vfsStream", "version": "v1.5.0", @@ -3335,23 +2427,74 @@ "homepage": "http://vfs.bovigo.org/" }, { - "name": "symfony/console", - "version": "v2.6.7", - "version_normalized": "2.6.7.0", - "target-dir": "Symfony/Component/Console", + "name": "symfony/class-loader", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/Console.git", - "reference": "ebc5679854aa24ed7d65062e9e3ab0b18a917272" + "url": "https://github.com/symfony/ClassLoader.git", + "reference": "fa19598cb708b92d983b34aae313f57c217f9386" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/ebc5679854aa24ed7d65062e9e3ab0b18a917272", - "reference": "ebc5679854aa24ed7d65062e9e3ab0b18a917272", + "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/fa19598cb708b92d983b34aae313f57c217f9386", + "reference": "fa19598cb708b92d983b34aae313f57c217f9386", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/finder": "~2.0,>=2.0.5", + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-05-15 13:33:16", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\ClassLoader\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony ClassLoader Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/console", + "version": "v2.7.0-BETA2", + "version_normalized": "2.7.0.0-beta2", + "source": { + "type": "git", + "url": "https://github.com/symfony/Console.git", + "reference": "555ba7fc54a538e1b83988e2299db09b6b6dca64" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Console/zipball/555ba7fc54a538e1b83988e2299db09b6b6dca64", + "reference": "555ba7fc54a538e1b83988e2299db09b6b6dca64", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" }, "require-dev": { "psr/log": "~1.0", @@ -3364,16 +2507,16 @@ "symfony/event-dispatcher": "", "symfony/process": "" }, - "time": "2015-05-02 15:18:45", + "time": "2015-05-02 15:21:08", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { + "psr-4": { "Symfony\\Component\\Console\\": "" } }, @@ -3393,5 +2536,869 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com" + }, + { + "name": "symfony/css-selector", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/CssSelector.git", + "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/CssSelector/zipball/0b5c07b516226b7dd32afbbc82fe547a469c5092", + "reference": "0b5c07b516226b7dd32afbbc82fe547a469c5092", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-05-15 13:33:16", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\CssSelector\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony CssSelector Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/dependency-injection", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/DependencyInjection.git", + "reference": "137bf489c5151c7eb1e4b7dd34a123f9a74b966d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/137bf489c5151c7eb1e4b7dd34a123f9a74b966d", + "reference": "137bf489c5151c7eb1e4b7dd34a123f9a74b966d", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "conflict": { + "symfony/expression-language": "<2.6" + }, + "require-dev": { + "symfony/config": "~2.2", + "symfony/expression-language": "~2.6", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.1" + }, + "suggest": { + "symfony/config": "", + "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", + "symfony/yaml": "" + }, + "time": "2015-05-29 14:44:44", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\DependencyInjection\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony DependencyInjection Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/debug", + "version": "v2.6.9", + "version_normalized": "2.6.9.0", + "target-dir": "Symfony/Component/Debug", + "source": { + "type": "git", + "url": "https://github.com/symfony/Debug.git", + "reference": "4851a041c48e76b91a221db84ab5850daa6a7b33" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Debug/zipball/4851a041c48e76b91a221db84ab5850daa6a7b33", + "reference": "4851a041c48e76b91a221db84ab5850daa6a7b33", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "psr/log": "~1.0" + }, + "conflict": { + "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" + }, + "require-dev": { + "symfony/class-loader": "~2.2", + "symfony/http-foundation": "~2.1", + "symfony/http-kernel": "~2.3.24|~2.5.9|~2.6,>=2.6.2", + "symfony/phpunit-bridge": "~2.7" + }, + "suggest": { + "symfony/http-foundation": "", + "symfony/http-kernel": "" + }, + "time": "2015-05-20 13:09:45", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\Debug\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Debug Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/http-foundation", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/HttpFoundation.git", + "reference": "729de183da037c125c5f6366bd4f0631ba1a1abb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/729de183da037c125c5f6366bd4f0631ba1a1abb", + "reference": "729de183da037c125c5f6366bd4f0631ba1a1abb", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/expression-language": "~2.4", + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-05-22 14:54:25", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpFoundation\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony HttpFoundation Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/event-dispatcher", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/EventDispatcher.git", + "reference": "687039686d0e923429ba6e958d0baa920cd5d458" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/687039686d0e923429ba6e958d0baa920cd5d458", + "reference": "687039686d0e923429ba6e958d0baa920cd5d458", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "~2.0,>=2.0.5", + "symfony/dependency-injection": "~2.6", + "symfony/expression-language": "~2.6", + "symfony/phpunit-bridge": "~2.7", + "symfony/stopwatch": "~2.3" + }, + "suggest": { + "symfony/dependency-injection": "", + "symfony/http-kernel": "" + }, + "time": "2015-05-02 15:21:08", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony EventDispatcher Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/http-kernel", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/HttpKernel.git", + "reference": "74acbb7ef9c4aae0620d3250b9b990d2fff28d16" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/74acbb7ef9c4aae0620d3250b9b990d2fff28d16", + "reference": "74acbb7ef9c4aae0620d3250b9b990d2fff28d16", + "shasum": "" + }, + "require": { + "php": ">=5.3.9", + "psr/log": "~1.0", + "symfony/debug": "~2.6,>=2.6.2", + "symfony/event-dispatcher": "~2.5.9|~2.6,>=2.6.2", + "symfony/http-foundation": "~2.5,>=2.5.4" + }, + "conflict": { + "symfony/config": "<2.7" + }, + "require-dev": { + "symfony/browser-kit": "~2.3", + "symfony/class-loader": "~2.1", + "symfony/config": "~2.7", + "symfony/console": "~2.3", + "symfony/css-selector": "~2.0,>=2.0.5", + "symfony/dependency-injection": "~2.2", + "symfony/dom-crawler": "~2.0,>=2.0.5", + "symfony/expression-language": "~2.4", + "symfony/finder": "~2.0,>=2.0.5", + "symfony/phpunit-bridge": "~2.7", + "symfony/process": "~2.0,>=2.0.5", + "symfony/routing": "~2.2", + "symfony/stopwatch": "~2.3", + "symfony/templating": "~2.2", + "symfony/translation": "~2.0,>=2.0.5", + "symfony/var-dumper": "~2.6" + }, + "suggest": { + "symfony/browser-kit": "", + "symfony/class-loader": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "", + "symfony/finder": "", + "symfony/var-dumper": "" + }, + "time": "2015-05-30 16:52:28", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpKernel\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony HttpKernel Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/routing", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Routing.git", + "reference": "6f0333fb8b89cf6f8fd9d6740c5e83b73d9c95b9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Routing/zipball/6f0333fb8b89cf6f8fd9d6740c5e83b73d9c95b9", + "reference": "6f0333fb8b89cf6f8fd9d6740c5e83b73d9c95b9", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "conflict": { + "symfony/config": "<2.7" + }, + "require-dev": { + "doctrine/annotations": "~1.0", + "doctrine/common": "~2.2", + "psr/log": "~1.0", + "symfony/config": "~2.7", + "symfony/expression-language": "~2.4", + "symfony/http-foundation": "~2.3", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.0,>=2.0.5" + }, + "suggest": { + "doctrine/annotations": "For using the annotation loader", + "symfony/config": "For using the all-in-one router or any loader", + "symfony/expression-language": "For using expression matching", + "symfony/yaml": "For using the YAML loader" + }, + "time": "2015-05-19 06:58:17", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Routing\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Routing Component", + "homepage": "https://symfony.com", + "keywords": [ + "router", + "routing", + "uri", + "url" + ] + }, + { + "name": "symfony/serializer", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Serializer.git", + "reference": "634d3adf119396320fba4c14caa01390700e7f3b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Serializer/zipball/634d3adf119396320fba4c14caa01390700e7f3b", + "reference": "634d3adf119396320fba4c14caa01390700e7f3b", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "doctrine/annotations": "~1.0", + "doctrine/cache": "~1.0", + "symfony/config": "~2.2", + "symfony/phpunit-bridge": "~2.7", + "symfony/property-access": "~2.3", + "symfony/yaml": "~2.0" + }, + "suggest": { + "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", + "doctrine/cache": "For using the default cached annotation reader and metadata cache.", + "symfony/config": "For using the XML mapping loader.", + "symfony/property-access": "For using the ObjectNormalizer.", + "symfony/yaml": "For using the default YAML mapping loader." + }, + "time": "2015-05-29 14:44:44", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Serializer\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Serializer Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/translation", + "version": "v2.7.0-BETA2", + "version_normalized": "2.7.0.0-beta2", + "source": { + "type": "git", + "url": "https://github.com/symfony/Translation.git", + "reference": "1be5bbed3938247acd7c5f4e4f29dd32db636b1f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Translation/zipball/1be5bbed3938247acd7c5f4e4f29dd32db636b1f", + "reference": "1be5bbed3938247acd7c5f4e4f29dd32db636b1f", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "conflict": { + "symfony/config": "<2.7" + }, + "require-dev": { + "psr/log": "~1.0", + "symfony/config": "~2.7", + "symfony/intl": "~2.3", + "symfony/phpunit-bridge": "~2.7", + "symfony/yaml": "~2.2" + }, + "suggest": { + "psr/log": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "time": "2015-05-11 02:35:29", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Translation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Translation Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/validator", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Validator.git", + "reference": "3a5461a388ff8962790fd5a39e6e2da84ba1e824" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Validator/zipball/3a5461a388ff8962790fd5a39e6e2da84ba1e824", + "reference": "3a5461a388ff8962790fd5a39e6e2da84ba1e824", + "shasum": "" + }, + "require": { + "php": ">=5.3.9", + "symfony/translation": "~2.4" + }, + "require-dev": { + "doctrine/annotations": "~1.0", + "doctrine/cache": "~1.0", + "egulias/email-validator": "~1.2,>=1.2.1", + "symfony/config": "~2.2", + "symfony/expression-language": "~2.4", + "symfony/http-foundation": "~2.1", + "symfony/intl": "~2.3", + "symfony/phpunit-bridge": "~2.7", + "symfony/property-access": "~2.3", + "symfony/yaml": "~2.0,>=2.0.5" + }, + "suggest": { + "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", + "doctrine/cache": "For using the default cached annotation reader and metadata cache.", + "egulias/email-validator": "Strict (RFC compliant) email validation", + "symfony/config": "", + "symfony/expression-language": "For using the 2.4 Expression validator", + "symfony/http-foundation": "", + "symfony/intl": "", + "symfony/property-access": "For using the 2.4 Validator API", + "symfony/yaml": "" + }, + "time": "2015-05-29 14:44:44", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Validator\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Validator Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/process", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Process.git", + "reference": "e0a82b58e36afc60f8e79b8bc85a22bb064077c1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Process/zipball/e0a82b58e36afc60f8e79b8bc85a22bb064077c1", + "reference": "e0a82b58e36afc60f8e79b8bc85a22bb064077c1", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-05-15 13:33:16", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Process Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/yaml", + "version": "v2.7.0", + "version_normalized": "2.7.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/Yaml.git", + "reference": "4a29a5248aed4fb45f626a7bbbd330291492f5c3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/4a29a5248aed4fb45f626a7bbbd330291492f5c3", + "reference": "4a29a5248aed4fb45f626a7bbbd330291492f5c3", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "symfony/phpunit-bridge": "~2.7" + }, + "time": "2015-05-02 15:21:08", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Yaml Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/dom-crawler", + "version": "v2.6.9", + "version_normalized": "2.6.9.0", + "target-dir": "Symfony/Component/DomCrawler", + "source": { + "type": "git", + "url": "https://github.com/symfony/DomCrawler.git", + "reference": "c74fe625d8c65fee512de2b40cceabba1b09503b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/DomCrawler/zipball/c74fe625d8c65fee512de2b40cceabba1b09503b", + "reference": "c74fe625d8c65fee512de2b40cceabba1b09503b", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "symfony/css-selector": "~2.3", + "symfony/phpunit-bridge": "~2.7" + }, + "suggest": { + "symfony/css-selector": "" + }, + "time": "2015-05-22 14:53:08", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\DomCrawler\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony DomCrawler Component", + "homepage": "https://symfony.com" + }, + { + "name": "symfony/browser-kit", + "version": "v2.6.9", + "version_normalized": "2.6.9.0", + "target-dir": "Symfony/Component/BrowserKit", + "source": { + "type": "git", + "url": "https://github.com/symfony/BrowserKit.git", + "reference": "cf950c42947ea2f29c36a1f443202b6134f5c303" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/BrowserKit/zipball/cf950c42947ea2f29c36a1f443202b6134f5c303", + "reference": "cf950c42947ea2f29c36a1f443202b6134f5c303", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "symfony/dom-crawler": "~2.0,>=2.0.5" + }, + "require-dev": { + "symfony/css-selector": "~2.0,>=2.0.5", + "symfony/phpunit-bridge": "~2.7", + "symfony/process": "~2.0,>=2.0.5" + }, + "suggest": { + "symfony/process": "" + }, + "time": "2015-05-02 15:18:45", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.6-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Symfony\\Component\\BrowserKit\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony BrowserKit Component", + "homepage": "https://symfony.com" } ] diff --git a/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/Cookie.php b/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/Cookie.php index b8d9dffd9165..b225056f4b70 100644 --- a/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/Cookie.php +++ b/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/Cookie.php @@ -93,6 +93,7 @@ class Cookie $dateTime = \DateTime::createFromFormat('U', $this->expires, new \DateTimeZone('GMT')); if ($dateTime === false) { + // this throw will provoke PHP fatal throw new \UnexpectedValueException(sprintf('The cookie expiration time "%s" is not valid.'), $this->expires); } diff --git a/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/composer.json b/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/composer.json index 4c98b0aa5c3c..343ecd3a33d0 100644 --- a/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/composer.json +++ b/core/vendor/symfony/browser-kit/Symfony/Component/BrowserKit/composer.json @@ -3,7 +3,7 @@ "type": "library", "description": "Symfony BrowserKit Component", "keywords": [], - "homepage": "http://symfony.com", + "homepage": "https://symfony.com", "license": "MIT", "authors": [ { @@ -12,7 +12,7 @@ }, { "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "homepage": "https://symfony.com/contributors" } ], "require": { diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ApcClassLoader.php b/core/vendor/symfony/class-loader/ApcClassLoader.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ApcClassLoader.php rename to core/vendor/symfony/class-loader/ApcClassLoader.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php b/core/vendor/symfony/class-loader/ApcUniversalClassLoader.php similarity index 90% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php rename to core/vendor/symfony/class-loader/ApcUniversalClassLoader.php index 65b7b10b239b..dd95413caf10 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ApcUniversalClassLoader.php +++ b/core/vendor/symfony/class-loader/ApcUniversalClassLoader.php @@ -11,6 +11,8 @@ namespace Symfony\Component\ClassLoader; +trigger_error('The '.__NAMESPACE__.'\ApcUniversalClassLoader class is deprecated since version 2.7 and will be removed in 3.0. Use the Symfony\Component\ClassLoader\ApcClassLoader class instead.', E_USER_DEPRECATED); + /** * ApcUniversalClassLoader implements a "universal" autoloader cached in APC for PHP 5.3. * @@ -60,7 +62,8 @@ namespace Symfony\Component\ClassLoader; * * @api * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. Use the ApcClassLoader class instead. + * @deprecated since version 2.4, to be removed in 3.0. + * Use the {@link ClassLoader} class instead. */ class ApcUniversalClassLoader extends UniversalClassLoader { diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/CHANGELOG.md b/core/vendor/symfony/class-loader/CHANGELOG.md similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/CHANGELOG.md rename to core/vendor/symfony/class-loader/CHANGELOG.md diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassCollectionLoader.php b/core/vendor/symfony/class-loader/ClassCollectionLoader.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassCollectionLoader.php rename to core/vendor/symfony/class-loader/ClassCollectionLoader.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassLoader.php b/core/vendor/symfony/class-loader/ClassLoader.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassLoader.php rename to core/vendor/symfony/class-loader/ClassLoader.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php b/core/vendor/symfony/class-loader/ClassMapGenerator.php similarity index 98% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php rename to core/vendor/symfony/class-loader/ClassMapGenerator.php index 4c2aeab3ac79..112bee87bddc 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/ClassMapGenerator.php +++ b/core/vendor/symfony/class-loader/ClassMapGenerator.php @@ -95,7 +95,7 @@ class ClassMapGenerator $classes = array(); $namespace = ''; - for ($i = 0, $max = count($tokens); $i < $max; $i++) { + for ($i = 0, $max = count($tokens); $i < $max; ++$i) { $token = $tokens[$i]; if (is_string($token)) { diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php b/core/vendor/symfony/class-loader/DebugClassLoader.php similarity index 90% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php rename to core/vendor/symfony/class-loader/DebugClassLoader.php index 897919b20ae2..351869928c24 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugClassLoader.php +++ b/core/vendor/symfony/class-loader/DebugClassLoader.php @@ -11,6 +11,8 @@ namespace Symfony\Component\ClassLoader; +trigger_error('The '.__NAMESPACE__.'\DebugClassLoader class is deprecated since version 2.4 and will be removed in 3.0. Use the Symfony\Component\Debug\DebugClassLoader class instead.', E_USER_DEPRECATED); + /** * Autoloader checking if the class is really defined in the file found. * @@ -23,7 +25,8 @@ namespace Symfony\Component\ClassLoader; * * @api * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. Use the DebugClassLoader provided by the Debug component instead. + * @deprecated since version 2.4, to be removed in 3.0. + * Use {@link \Symfony\Component\Debug\DebugClassLoader} instead. */ class DebugClassLoader { diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugUniversalClassLoader.php b/core/vendor/symfony/class-loader/DebugUniversalClassLoader.php similarity index 85% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugUniversalClassLoader.php rename to core/vendor/symfony/class-loader/DebugUniversalClassLoader.php index 40d847c17858..2a102dbbf423 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/DebugUniversalClassLoader.php +++ b/core/vendor/symfony/class-loader/DebugUniversalClassLoader.php @@ -11,12 +11,15 @@ namespace Symfony\Component\ClassLoader; +trigger_error('The '.__NAMESPACE__.'\DebugUniversalClassLoader class is deprecated since version 2.4 and will be removed in 3.0. Use the Symfony\Component\Debug\DebugClassLoader class instead.', E_USER_DEPRECATED); + /** * Checks that the class is actually declared in the included file. * * @author Fabien Potencier * - * @deprecated Deprecated since version 2.4, to be removed in 3.0. Use the DebugClassLoader provided by the Debug component instead. + * @deprecated since version 2.4, to be removed in 3.0. + * Use the {@link \Symfony\Component\Debug\DebugClassLoader} class instead. */ class DebugUniversalClassLoader extends UniversalClassLoader { diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/LICENSE b/core/vendor/symfony/class-loader/LICENSE similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/LICENSE rename to core/vendor/symfony/class-loader/LICENSE diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/MapClassLoader.php b/core/vendor/symfony/class-loader/MapClassLoader.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/MapClassLoader.php rename to core/vendor/symfony/class-loader/MapClassLoader.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Psr4ClassLoader.php b/core/vendor/symfony/class-loader/Psr4ClassLoader.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Psr4ClassLoader.php rename to core/vendor/symfony/class-loader/Psr4ClassLoader.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md b/core/vendor/symfony/class-loader/README.md similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/README.md rename to core/vendor/symfony/class-loader/README.md diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/.gitignore b/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/.gitignore deleted file mode 100644 index c49a5d8df5c6..000000000000 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -vendor/ -composer.lock -phpunit.xml diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassCollectionLoaderTest.php b/core/vendor/symfony/class-loader/Tests/ClassCollectionLoaderTest.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassCollectionLoaderTest.php rename to core/vendor/symfony/class-loader/Tests/ClassCollectionLoaderTest.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassLoaderTest.php b/core/vendor/symfony/class-loader/Tests/ClassLoaderTest.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassLoaderTest.php rename to core/vendor/symfony/class-loader/Tests/ClassLoaderTest.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassMapGeneratorTest.php b/core/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/ClassMapGeneratorTest.php rename to core/vendor/symfony/class-loader/Tests/ClassMapGeneratorTest.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/Baz.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Baz.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/Baz.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Baz.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Namespaced/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Namespaced/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Pearlike/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Pearlike/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Pearlike/Baz.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Baz.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Pearlike/Baz.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Baz.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Pearlike/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/Pearlike/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/Pearlike/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/ApcPrefixCollision/A/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/alpha/Apc/NamespaceCollision/A/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/ApcPrefixCollision/A/B/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/beta/Apc/NamespaceCollision/A/B/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Apc/Pearlike/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Apc/fallback/Namespaced/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/A.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/A.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/A.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/A.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/ATrait.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/ATrait.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/ATrait.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/ATrait.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/B.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/B.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/B.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/B.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/BTrait.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/BTrait.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/BTrait.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/BTrait.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/CInterface.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CInterface.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/CInterface.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CInterface.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/CTrait.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CTrait.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/CTrait.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/CTrait.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/D.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/D.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/D.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/D.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/E.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/E.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/E.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/E.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/F.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/F.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/F.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/F.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/G.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/G.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/G.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/G.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/GInterface.php b/core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/GInterface.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/ClassesWithParents/GInterface.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/ClassesWithParents/GInterface.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/Baz.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Baz.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/Baz.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Baz.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/WithComments.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/WithComments.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced/WithComments.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced/WithComments.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced2/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced2/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced2/Baz.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Baz.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced2/Baz.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Baz.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced2/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Namespaced2/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Namespaced2/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/Baz.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Baz.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/Baz.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Baz.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/WithComments.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/WithComments.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike/WithComments.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike/WithComments.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike2/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike2/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike2/Baz.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Baz.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike2/Baz.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Baz.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike2/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/Pearlike2/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/Pearlike2/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/A/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/NamespaceCollision/C/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/A/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/alpha/PrefixCollision/C/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/A/B/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/NamespaceCollision/C/B/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/A/B/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Bar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/beta/PrefixCollision/C/B/Foo.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/SomeClass.php b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeClass.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/SomeClass.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeClass.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/SomeInterface.php b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeInterface.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/SomeInterface.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeInterface.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/SomeParent.php b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeParent.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/SomeParent.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/SomeParent.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/multipleNs.php b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/multipleNs.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/multipleNs.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/multipleNs.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/notAClass.php b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/notAClass.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/notAClass.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/notAClass.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/notPhpFile.md b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/notPhpFile.md similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/notPhpFile.md rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/notPhpFile.md diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/sameNsMultipleClasses.php b/core/vendor/symfony/class-loader/Tests/Fixtures/classmap/sameNsMultipleClasses.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/classmap/sameNsMultipleClasses.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/classmap/sameNsMultipleClasses.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/deps/traits.php b/core/vendor/symfony/class-loader/Tests/Fixtures/deps/traits.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/deps/traits.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/deps/traits.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Namespaced/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Namespaced/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Namespaced2/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced2/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Namespaced2/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Namespaced2/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Pearlike/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Pearlike/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Pearlike2/FooBar.php b/core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike2/FooBar.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/fallback/Pearlike2/FooBar.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/fallback/Pearlike2/FooBar.php diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/includepath/Foo.php b/core/vendor/symfony/class-loader/Tests/Fixtures/includepath/Foo.php similarity index 100% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/Tests/Fixtures/includepath/Foo.php rename to core/vendor/symfony/class-loader/Tests/Fixtures/includepath/Foo.php diff --git a/core/vendor/symfony/class-loader/Tests/Fixtures/php5.4/traits.php b/core/vendor/symfony/class-loader/Tests/Fixtures/php5.4/traits.php new file mode 100644 index 000000000000..ccdadaf0518f --- /dev/null +++ b/core/vendor/symfony/class-loader/Tests/Fixtures/php5.4/traits.php @@ -0,0 +1,32 @@ +=5.3.3" + "php": ">=5.3.9" }, "require-dev": { "symfony/phpunit-bridge": "~2.7", "symfony/finder": "~2.0,>=2.0.5" }, "autoload": { - "psr-0": { "Symfony\\Component\\ClassLoader\\": "" } + "psr-4": { "Symfony\\Component\\ClassLoader\\": "" } }, - "target-dir": "Symfony/Component/ClassLoader", "extra": { "branch-alias": { - "dev-master": "2.6-dev" + "dev-master": "2.7-dev" } } } diff --git a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/phpunit.xml.dist b/core/vendor/symfony/class-loader/phpunit.xml.dist similarity index 99% rename from core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/phpunit.xml.dist rename to core/vendor/symfony/class-loader/phpunit.xml.dist index a1b6c82c1016..4856db5be65d 100644 --- a/core/vendor/symfony/class-loader/Symfony/Component/ClassLoader/phpunit.xml.dist +++ b/core/vendor/symfony/class-loader/phpunit.xml.dist @@ -9,6 +9,7 @@ + ./Tests/ diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Application.php b/core/vendor/symfony/console/Application.php similarity index 98% rename from core/vendor/symfony/console/Symfony/Component/Console/Application.php rename to core/vendor/symfony/console/Application.php index 571682e13758..11ac33378f71 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Application.php +++ b/core/vendor/symfony/console/Application.php @@ -624,10 +624,12 @@ class Application * * @return string A string representing the Application * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. + * @deprecated since version 2.3, to be removed in 3.0. */ public function asText($namespace = null, $raw = false) { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0.', E_USER_DEPRECATED); + $descriptor = new TextDescriptor(); $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, !$raw); $descriptor->describe($output, $this, array('namespace' => $namespace, 'raw_output' => true)); @@ -643,10 +645,12 @@ class Application * * @return string|\DOMDocument An XML string representing the Application * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. + * @deprecated since version 2.3, to be removed in 3.0. */ public function asXml($namespace = null, $asDom = false) { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0.', E_USER_DEPRECATED); + $descriptor = new XmlDescriptor(); if ($asDom) { @@ -950,9 +954,9 @@ class Application { return new HelperSet(array( new FormatterHelper(), - new DialogHelper(), - new ProgressHelper(), - new TableHelper(), + new DialogHelper(false), + new ProgressHelper(false), + new TableHelper(false), new DebugFormatterHelper(), new ProcessHelper(), new QuestionHelper(), diff --git a/core/vendor/symfony/console/Symfony/Component/Console/CHANGELOG.md b/core/vendor/symfony/console/CHANGELOG.md similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/CHANGELOG.md rename to core/vendor/symfony/console/CHANGELOG.md diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Command/Command.php b/core/vendor/symfony/console/Command/Command.php similarity index 92% rename from core/vendor/symfony/console/Symfony/Component/Console/Command/Command.php rename to core/vendor/symfony/console/Command/Command.php index 20dd85bf5f46..02e207eac775 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Command/Command.php +++ b/core/vendor/symfony/console/Command/Command.php @@ -42,7 +42,8 @@ class Command private $applicationDefinitionMerged = false; private $applicationDefinitionMergedWithArgs = false; private $code; - private $synopsis; + private $synopsis = array(); + private $usages = array(); private $helperSet; /** @@ -219,7 +220,8 @@ class Command public function run(InputInterface $input, OutputInterface $output) { // force the creation of the synopsis before the merge with the app definition - $this->getSynopsis(); + $this->getSynopsis(true); + $this->getSynopsis(false); // add the application arguments and options $this->mergeApplicationDefinition(); @@ -577,15 +579,45 @@ class Command /** * Returns the synopsis for the command. * + * @param bool $short Whether to show the short version of the synopsis (with options folded) or not + * * @return string The synopsis */ - public function getSynopsis() + public function getSynopsis($short = false) { - if (null === $this->synopsis) { - $this->synopsis = trim(sprintf('%s %s', $this->name, $this->definition->getSynopsis())); + $key = $short ? 'short' : 'long'; + + if (!isset($this->synopsis[$key])) { + $this->synopsis[$key] = trim(sprintf('%s %s', $this->name, $this->definition->getSynopsis($short))); } - return $this->synopsis; + return $this->synopsis[$key]; + } + + /** + * Add a command usage example. + * + * @param string $usage The usage, it'll be prefixed with the command name + */ + public function addUsage($usage) + { + if (0 !== strpos($usage, $this->name)) { + $usage = sprintf('%s %s', $this->name, $usage); + } + + $this->usages[] = $usage; + + return $this; + } + + /** + * Returns alternative usages of the command. + * + * @return array + */ + public function getUsages() + { + return $this->usages; } /** @@ -609,10 +641,12 @@ class Command * * @return string A string representing the command * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. + * @deprecated since version 2.3, to be removed in 3.0. */ public function asText() { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0.', E_USER_DEPRECATED); + $descriptor = new TextDescriptor(); $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, true); $descriptor->describe($output, $this, array('raw_output' => true)); @@ -627,10 +661,12 @@ class Command * * @return string|\DOMDocument An XML string representing the command * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. + * @deprecated since version 2.3, to be removed in 3.0. */ public function asXml($asDom = false) { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0.', E_USER_DEPRECATED); + $descriptor = new XmlDescriptor(); if ($asDom) { diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Command/HelpCommand.php b/core/vendor/symfony/console/Command/HelpCommand.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Command/HelpCommand.php rename to core/vendor/symfony/console/Command/HelpCommand.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Command/ListCommand.php b/core/vendor/symfony/console/Command/ListCommand.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Command/ListCommand.php rename to core/vendor/symfony/console/Command/ListCommand.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/ConsoleEvents.php b/core/vendor/symfony/console/ConsoleEvents.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/ConsoleEvents.php rename to core/vendor/symfony/console/ConsoleEvents.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/ApplicationDescription.php b/core/vendor/symfony/console/Descriptor/ApplicationDescription.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/ApplicationDescription.php rename to core/vendor/symfony/console/Descriptor/ApplicationDescription.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/Descriptor.php b/core/vendor/symfony/console/Descriptor/Descriptor.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/Descriptor.php rename to core/vendor/symfony/console/Descriptor/Descriptor.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/DescriptorInterface.php b/core/vendor/symfony/console/Descriptor/DescriptorInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/DescriptorInterface.php rename to core/vendor/symfony/console/Descriptor/DescriptorInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/JsonDescriptor.php b/core/vendor/symfony/console/Descriptor/JsonDescriptor.php similarity index 94% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/JsonDescriptor.php rename to core/vendor/symfony/console/Descriptor/JsonDescriptor.php index 13785a40fe61..8649d3ac456f 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/JsonDescriptor.php +++ b/core/vendor/symfony/console/Descriptor/JsonDescriptor.php @@ -102,7 +102,7 @@ class JsonDescriptor extends Descriptor 'name' => $argument->getName(), 'is_required' => $argument->isRequired(), 'is_array' => $argument->isArray(), - 'description' => $argument->getDescription(), + 'description' => preg_replace('/\s*\R\s*/', ' ', $argument->getDescription()), 'default' => $argument->getDefault(), ); } @@ -120,7 +120,7 @@ class JsonDescriptor extends Descriptor 'accept_value' => $option->acceptValue(), 'is_value_required' => $option->isValueRequired(), 'is_multiple' => $option->isArray(), - 'description' => $option->getDescription(), + 'description' => preg_replace('/\s*\R\s*/', ' ', $option->getDescription()), 'default' => $option->getDefault(), ); } @@ -157,10 +157,9 @@ class JsonDescriptor extends Descriptor return array( 'name' => $command->getName(), - 'usage' => $command->getSynopsis(), + 'usage' => array_merge(array($command->getSynopsis()), $command->getUsages(), $command->getAliases()), 'description' => $command->getDescription(), 'help' => $command->getProcessedHelp(), - 'aliases' => $command->getAliases(), 'definition' => $this->getInputDefinitionData($command->getNativeDefinition()), ); } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/MarkdownDescriptor.php b/core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php similarity index 89% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/MarkdownDescriptor.php rename to core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php index 78d48b9508be..10f05168d47d 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/MarkdownDescriptor.php +++ b/core/vendor/symfony/console/Descriptor/MarkdownDescriptor.php @@ -36,7 +36,7 @@ class MarkdownDescriptor extends Descriptor .'* Name: '.($argument->getName() ?: '')."\n" .'* Is required: '.($argument->isRequired() ? 'yes' : 'no')."\n" .'* Is array: '.($argument->isArray() ? 'yes' : 'no')."\n" - .'* Description: '.($argument->getDescription() ?: '')."\n" + .'* Description: '.preg_replace('/\s*\R\s*/', PHP_EOL.' ', $argument->getDescription() ?: '')."\n" .'* Default: `'.str_replace("\n", '', var_export($argument->getDefault(), true)).'`' ); } @@ -53,7 +53,7 @@ class MarkdownDescriptor extends Descriptor .'* Accept value: '.($option->acceptValue() ? 'yes' : 'no')."\n" .'* Is value required: '.($option->isValueRequired() ? 'yes' : 'no')."\n" .'* Is multiple: '.($option->isArray() ? 'yes' : 'no')."\n" - .'* Description: '.($option->getDescription() ?: '')."\n" + .'* Description: '.preg_replace('/\s*\R\s*/', PHP_EOL.' ', $option->getDescription() ?: '')."\n" .'* Default: `'.str_replace("\n", '', var_export($option->getDefault(), true)).'`' ); } @@ -96,12 +96,14 @@ class MarkdownDescriptor extends Descriptor $command->getName()."\n" .str_repeat('-', strlen($command->getName()))."\n\n" .'* Description: '.($command->getDescription() ?: '')."\n" - .'* Usage: `'.$command->getSynopsis().'`'."\n" - .'* Aliases: '.(count($command->getAliases()) ? '`'.implode('`, `', $command->getAliases()).'`' : '') + .'* Usage:'."\n\n" + .array_reduce(array_merge(array($command->getSynopsis()), $command->getAliases(), $command->getUsages()), function ($carry, $usage) { + return $carry .= ' * `'.$usage.'`'."\n"; + }) ); if ($help = $command->getProcessedHelp()) { - $this->write("\n\n"); + $this->write("\n"); $this->write($help); } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/TextDescriptor.php b/core/vendor/symfony/console/Descriptor/TextDescriptor.php similarity index 63% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/TextDescriptor.php rename to core/vendor/symfony/console/Descriptor/TextDescriptor.php index fcc4411b5e60..0824463fce96 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/TextDescriptor.php +++ b/core/vendor/symfony/console/Descriptor/TextDescriptor.php @@ -32,16 +32,19 @@ class TextDescriptor extends Descriptor protected function describeInputArgument(InputArgument $argument, array $options = array()) { if (null !== $argument->getDefault() && (!is_array($argument->getDefault()) || count($argument->getDefault()))) { - $default = sprintf(' (default: %s)', $this->formatDefaultValue($argument->getDefault())); + $default = sprintf(' [default: %s]', $this->formatDefaultValue($argument->getDefault())); } else { $default = ''; } - $nameWidth = isset($options['name_width']) ? $options['name_width'] : strlen($argument->getName()); + $totalWidth = isset($options['total_width']) ? $options['total_width'] : strlen($argument->getName()); + $spacingWidth = $totalWidth - strlen($argument->getName()) + 2; - $this->writeText(sprintf(" %-${nameWidth}s %s%s", + $this->writeText(sprintf(" %s%s%s%s", $argument->getName(), - str_replace("\n", "\n".str_repeat(' ', $nameWidth + 2), $argument->getDescription()), + str_repeat(' ', $spacingWidth), + // + 17 = 2 spaces + + + 2 spaces + preg_replace('/\s*\R\s*/', PHP_EOL.str_repeat(' ', $totalWidth + 17), $argument->getDescription()), $default ), $options); } @@ -52,18 +55,33 @@ class TextDescriptor extends Descriptor protected function describeInputOption(InputOption $option, array $options = array()) { if ($option->acceptValue() && null !== $option->getDefault() && (!is_array($option->getDefault()) || count($option->getDefault()))) { - $default = sprintf(' (default: %s)', $this->formatDefaultValue($option->getDefault())); + $default = sprintf(' [default: %s]', $this->formatDefaultValue($option->getDefault())); } else { $default = ''; } - $nameWidth = isset($options['name_width']) ? $options['name_width'] : strlen($option->getName()); - $nameWithShortcutWidth = $nameWidth - strlen($option->getName()) - 2; + $value = ''; + if ($option->acceptValue()) { + $value = '='.strtoupper($option->getName()); - $this->writeText(sprintf(" %s %-${nameWithShortcutWidth}s%s%s%s", - '--'.$option->getName(), - $option->getShortcut() ? sprintf('(-%s) ', $option->getShortcut()) : '', - str_replace("\n", "\n".str_repeat(' ', $nameWidth + 2), $option->getDescription()), + if ($option->isValueOptional()) { + $value = '['.$value.']'; + } + } + + $totalWidth = isset($options['total_width']) ? $options['total_width'] : $this->calculateTotalWidthForOptions(array($option)); + $synopsis = sprintf('%s%s', + $option->getShortcut() ? sprintf('-%s, ', $option->getShortcut()) : ' ', + sprintf('--%s%s', $option->getName(), $value) + ); + + $spacingWidth = $totalWidth - strlen($synopsis) + 2; + + $this->writeText(sprintf(" %s%s%s%s%s", + $synopsis, + str_repeat(' ', $spacingWidth), + // + 17 = 2 spaces + + + 2 spaces + preg_replace('/\s*\R\s*/', "\n".str_repeat(' ', $totalWidth + 17), $option->getDescription()), $default, $option->isArray() ? ' (multiple values allowed)' : '' ), $options); @@ -74,24 +92,16 @@ class TextDescriptor extends Descriptor */ protected function describeInputDefinition(InputDefinition $definition, array $options = array()) { - $nameWidth = 0; - foreach ($definition->getOptions() as $option) { - $nameLength = strlen($option->getName()) + 2; - if ($option->getShortcut()) { - $nameLength += strlen($option->getShortcut()) + 3; - } - $nameWidth = max($nameWidth, $nameLength); - } + $totalWidth = $this->calculateTotalWidthForOptions($definition->getOptions()); foreach ($definition->getArguments() as $argument) { - $nameWidth = max($nameWidth, strlen($argument->getName())); + $totalWidth = max($totalWidth, strlen($argument->getName())); } - ++$nameWidth; if ($definition->getArguments()) { $this->writeText('Arguments:', $options); $this->writeText("\n"); foreach ($definition->getArguments() as $argument) { - $this->describeInputArgument($argument, array_merge($options, array('name_width' => $nameWidth))); + $this->describeInputArgument($argument, array_merge($options, array('total_width' => $totalWidth))); $this->writeText("\n"); } } @@ -101,11 +111,20 @@ class TextDescriptor extends Descriptor } if ($definition->getOptions()) { + $laterOptions = array(); + $this->writeText('Options:', $options); - $this->writeText("\n"); foreach ($definition->getOptions() as $option) { - $this->describeInputOption($option, array_merge($options, array('name_width' => $nameWidth))); + if (strlen($option->getShortcut()) > 1) { + $laterOptions[] = $option; + continue; + } $this->writeText("\n"); + $this->describeInputOption($option, array_merge($options, array('total_width' => $totalWidth))); + } + foreach ($laterOptions as $option) { + $this->writeText("\n"); + $this->describeInputOption($option, array_merge($options, array('total_width' => $totalWidth))); } } } @@ -115,27 +134,26 @@ class TextDescriptor extends Descriptor */ protected function describeCommand(Command $command, array $options = array()) { - $command->getSynopsis(); + $command->getSynopsis(true); + $command->getSynopsis(false); $command->mergeApplicationDefinition(false); $this->writeText('Usage:', $options); - $this->writeText("\n"); - $this->writeText(' '.$command->getSynopsis(), $options); - $this->writeText("\n"); - - if (count($command->getAliases()) > 0) { + foreach (array_merge(array($command->getSynopsis(true)), $command->getAliases(), $command->getUsages()) as $usage) { $this->writeText("\n"); - $this->writeText('Aliases: '.implode(', ', $command->getAliases()).'', $options); + $this->writeText(' '.$usage, $options); } + $this->writeText("\n"); - if ($definition = $command->getNativeDefinition()) { + $definition = $command->getNativeDefinition(); + if ($definition->getOptions() || $definition->getArguments()) { $this->writeText("\n"); $this->describeInputDefinition($definition, $options); + $this->writeText("\n"); } - $this->writeText("\n"); - if ($help = $command->getProcessedHelp()) { + $this->writeText("\n"); $this->writeText('Help:', $options); $this->writeText("\n"); $this->writeText(' '.str_replace("\n", "\n ", $help), $options); @@ -164,27 +182,12 @@ class TextDescriptor extends Descriptor } $this->writeText("Usage:\n", $options); - $this->writeText(" command [options] [arguments]\n\n", $options); - $this->writeText('Options:', $options); + $this->writeText(" command [options] [arguments]\n\n", $options); - $inputOptions = $application->getDefinition()->getOptions(); + $this->describeInputDefinition(new InputDefinition($application->getDefinition()->getOptions()), $options); - $width = 0; - foreach ($inputOptions as $option) { - $nameLength = strlen($option->getName()) + 2; - if ($option->getShortcut()) { - $nameLength += strlen($option->getShortcut()) + 3; - } - $width = max($width, $nameLength); - } - ++$width; - - foreach ($inputOptions as $option) { - $this->writeText("\n", $options); - $this->describeInputOption($option, array_merge($options, array('name_width' => $width))); - } - - $this->writeText("\n\n", $options); + $this->writeText("\n"); + $this->writeText("\n"); $width = $this->getColumnWidth($description->getCommands()); @@ -198,12 +201,13 @@ class TextDescriptor extends Descriptor foreach ($description->getNamespaces() as $namespace) { if (!$describedNamespace && ApplicationDescription::GLOBAL_NAMESPACE !== $namespace['id']) { $this->writeText("\n"); - $this->writeText(''.$namespace['id'].'', $options); + $this->writeText(' '.$namespace['id'].'', $options); } foreach ($namespace['commands'] as $name) { $this->writeText("\n"); - $this->writeText(sprintf(" %-${width}s %s", $name, $description->getCommand($name)->getDescription()), $options); + $spacingWidth = $width - strlen($name); + $this->writeText(sprintf(" %s%s%s", $name, str_repeat(' ', $spacingWidth), $description->getCommand($name)->getDescription()), $options); } } @@ -252,4 +256,27 @@ class TextDescriptor extends Descriptor return $width + 2; } + + /** + * @param InputOption[] $options + * + * @return int + */ + private function calculateTotalWidthForOptions($options) + { + $totalWidth = 0; + foreach ($options as $option) { + $nameLength = 4 + strlen($option->getName()) + 2; // - + shortcut + , + whitespace + name + -- + + if ($option->acceptValue()) { + $valueLength = 1 + strlen($option->getName()); // = + value + $valueLength += $option->isValueOptional() ? 2 : 0; // [ + ] + + $nameLength += $valueLength; + } + $totalWidth = max($totalWidth, $nameLength); + } + + return $totalWidth; + } } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/XmlDescriptor.php b/core/vendor/symfony/console/Descriptor/XmlDescriptor.php similarity index 95% rename from core/vendor/symfony/console/Symfony/Component/Console/Descriptor/XmlDescriptor.php rename to core/vendor/symfony/console/Descriptor/XmlDescriptor.php index 5054686697a2..b5676beb3766 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Descriptor/XmlDescriptor.php +++ b/core/vendor/symfony/console/Descriptor/XmlDescriptor.php @@ -65,8 +65,11 @@ class XmlDescriptor extends Descriptor $commandXML->setAttribute('id', $command->getName()); $commandXML->setAttribute('name', $command->getName()); - $commandXML->appendChild($usageXML = $dom->createElement('usage')); - $usageXML->appendChild($dom->createTextNode(sprintf($command->getSynopsis(), ''))); + $commandXML->appendChild($usagesXML = $dom->createElement('usages')); + + foreach (array_merge(array($command->getSynopsis()), $command->getAliases(), $command->getUsages()) as $usage) { + $usagesXML->appendChild($dom->createElement('usage', $usage)); + } $commandXML->appendChild($descriptionXML = $dom->createElement('description')); $descriptionXML->appendChild($dom->createTextNode(str_replace("\n", "\n ", $command->getDescription()))); @@ -74,12 +77,6 @@ class XmlDescriptor extends Descriptor $commandXML->appendChild($helpXML = $dom->createElement('help')); $helpXML->appendChild($dom->createTextNode(str_replace("\n", "\n ", $command->getProcessedHelp()))); - $commandXML->appendChild($aliasesXML = $dom->createElement('aliases')); - foreach ($command->getAliases() as $alias) { - $aliasesXML->appendChild($aliasXML = $dom->createElement('alias')); - $aliasXML->appendChild($dom->createTextNode($alias)); - } - $definitionXML = $this->getInputDefinitionDocument($command->getNativeDefinition()); $this->appendDocument($commandXML, $definitionXML->getElementsByTagName('definition')->item(0)); diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleCommandEvent.php b/core/vendor/symfony/console/Event/ConsoleCommandEvent.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleCommandEvent.php rename to core/vendor/symfony/console/Event/ConsoleCommandEvent.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleEvent.php b/core/vendor/symfony/console/Event/ConsoleEvent.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleEvent.php rename to core/vendor/symfony/console/Event/ConsoleEvent.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleExceptionEvent.php b/core/vendor/symfony/console/Event/ConsoleExceptionEvent.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleExceptionEvent.php rename to core/vendor/symfony/console/Event/ConsoleExceptionEvent.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleTerminateEvent.php b/core/vendor/symfony/console/Event/ConsoleTerminateEvent.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Event/ConsoleTerminateEvent.php rename to core/vendor/symfony/console/Event/ConsoleTerminateEvent.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatter.php b/core/vendor/symfony/console/Formatter/OutputFormatter.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatter.php rename to core/vendor/symfony/console/Formatter/OutputFormatter.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterInterface.php b/core/vendor/symfony/console/Formatter/OutputFormatterInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterInterface.php rename to core/vendor/symfony/console/Formatter/OutputFormatterInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterStyle.php b/core/vendor/symfony/console/Formatter/OutputFormatterStyle.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterStyle.php rename to core/vendor/symfony/console/Formatter/OutputFormatterStyle.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterStyleInterface.php b/core/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterStyleInterface.php rename to core/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterStyleStack.php b/core/vendor/symfony/console/Formatter/OutputFormatterStyleStack.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Formatter/OutputFormatterStyleStack.php rename to core/vendor/symfony/console/Formatter/OutputFormatterStyleStack.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/DebugFormatterHelper.php b/core/vendor/symfony/console/Helper/DebugFormatterHelper.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/DebugFormatterHelper.php rename to core/vendor/symfony/console/Helper/DebugFormatterHelper.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/DescriptorHelper.php b/core/vendor/symfony/console/Helper/DescriptorHelper.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/DescriptorHelper.php rename to core/vendor/symfony/console/Helper/DescriptorHelper.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/DialogHelper.php b/core/vendor/symfony/console/Helper/DialogHelper.php similarity index 97% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/DialogHelper.php rename to core/vendor/symfony/console/Helper/DialogHelper.php index 4b5c86d67d84..ebac99c9e334 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/DialogHelper.php +++ b/core/vendor/symfony/console/Helper/DialogHelper.php @@ -19,8 +19,8 @@ use Symfony\Component\Console\Formatter\OutputFormatterStyle; * * @author Fabien Potencier * - * @deprecated Deprecated since version 2.5, to be removed in 3.0. - * Use the question helper instead. + * @deprecated since version 2.5, to be removed in 3.0. + * Use {@link \Symfony\Component\Console\Helper\QuestionHelper} instead. */ class DialogHelper extends InputAwareHelper { @@ -28,6 +28,13 @@ class DialogHelper extends InputAwareHelper private static $shell; private static $stty; + public function __construct($triggerDeprecationError = true) + { + if ($triggerDeprecationError) { + trigger_error('"Symfony\Component\Console\Helper\DialogHelper" is deprecated since version 2.5 and will be removed in 3.0. Use "Symfony\Component\Console\Helper\QuestionHelper" instead.', E_USER_DEPRECATED); + } + } + /** * Asks the user to select a value. * diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/FormatterHelper.php b/core/vendor/symfony/console/Helper/FormatterHelper.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/FormatterHelper.php rename to core/vendor/symfony/console/Helper/FormatterHelper.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/Helper.php b/core/vendor/symfony/console/Helper/Helper.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/Helper.php rename to core/vendor/symfony/console/Helper/Helper.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/HelperInterface.php b/core/vendor/symfony/console/Helper/HelperInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/HelperInterface.php rename to core/vendor/symfony/console/Helper/HelperInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/HelperSet.php b/core/vendor/symfony/console/Helper/HelperSet.php similarity index 73% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/HelperSet.php rename to core/vendor/symfony/console/Helper/HelperSet.php index 467be86a85d7..52a669d48542 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/HelperSet.php +++ b/core/vendor/symfony/console/Helper/HelperSet.php @@ -78,6 +78,14 @@ class HelperSet implements \IteratorAggregate throw new \InvalidArgumentException(sprintf('The helper "%s" is not defined.', $name)); } + if ('dialog' === $name && $this->helpers[$name] instanceof DialogHelper) { + trigger_error('"Symfony\Component\Console\Helper\DialogHelper" is deprecated since version 2.5 and will be removed in 3.0. Use "Symfony\Component\Console\Helper\QuestionHelper" instead.', E_USER_DEPRECATED); + } elseif ('progress' === $name && $this->helpers[$name] instanceof ProgressHelper) { + trigger_error('"Symfony\Component\Console\Helper\ProgressHelper" is deprecated since version 2.5 and will be removed in 3.0. Use "Symfony\Component\Console\Helper\ProgressBar" instead.', E_USER_DEPRECATED); + } elseif ('table' === $name && $this->helpers[$name] instanceof TableHelper) { + trigger_error('"Symfony\Component\Console\Helper\TableHelper" is deprecated since version 2.5 and will be removed in 3.0. Use "Symfony\Component\Console\Helper\Table" instead.', E_USER_DEPRECATED); + } + return $this->helpers[$name]; } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/InputAwareHelper.php b/core/vendor/symfony/console/Helper/InputAwareHelper.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/InputAwareHelper.php rename to core/vendor/symfony/console/Helper/InputAwareHelper.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/ProcessHelper.php b/core/vendor/symfony/console/Helper/ProcessHelper.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/ProcessHelper.php rename to core/vendor/symfony/console/Helper/ProcessHelper.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php b/core/vendor/symfony/console/Helper/ProgressBar.php similarity index 96% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php rename to core/vendor/symfony/console/Helper/ProgressBar.php index 893664e412f5..ae1fdae88259 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressBar.php +++ b/core/vendor/symfony/console/Helper/ProgressBar.php @@ -171,12 +171,14 @@ class ProgressBar /** * Gets the progress bar step. * - * @deprecated since 2.6, to be removed in 3.0. Use {@link getProgress()} instead. + * @deprecated since version 2.6, to be removed in 3.0. Use {@link getProgress()} instead. * * @return int The progress bar step */ public function getStep() { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.6 and will be removed in 3.0. Use the getProgress() method instead.', E_USER_DEPRECATED); + return $this->getProgress(); } @@ -358,7 +360,7 @@ class ProgressBar /** * Sets the current progress. * - * @deprecated since 2.6, to be removed in 3.0. Use {@link setProgress()} instead. + * @deprecated since version 2.6, to be removed in 3.0. Use {@link setProgress()} instead. * * @param int $step The current progress * @@ -366,6 +368,8 @@ class ProgressBar */ public function setCurrent($step) { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.6 and will be removed in 3.0. Use the setProgress() method instead.', E_USER_DEPRECATED); + $this->setProgress($step); } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressHelper.php b/core/vendor/symfony/console/Helper/ProgressHelper.php similarity index 96% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressHelper.php rename to core/vendor/symfony/console/Helper/ProgressHelper.php index b82486dde458..fe67e9d02685 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/ProgressHelper.php +++ b/core/vendor/symfony/console/Helper/ProgressHelper.php @@ -20,7 +20,8 @@ use Symfony\Component\Console\Output\OutputInterface; * @author Chris Jones * @author Fabien Potencier * - * @deprecated Deprecated since 2.5, to be removed in 3.0; use ProgressBar instead. + * @deprecated since version 2.5, to be removed in 3.0 + * Use {@link ProgressBar} instead. */ class ProgressHelper extends Helper { @@ -117,6 +118,13 @@ class ProgressHelper extends Helper array(604800, 'days', 86400), ); + public function __construct($triggerDeprecationError = true) + { + if ($triggerDeprecationError) { + trigger_error('The '.__CLASS__.' class is deprecated since version 2.5 and will be removed in 3.0. Use the Symfony\Component\Console\Helper\ProgressBar class instead.', E_USER_DEPRECATED); + } + } + /** * Sets the progress bar width. * diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/QuestionHelper.php b/core/vendor/symfony/console/Helper/QuestionHelper.php similarity index 93% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/QuestionHelper.php rename to core/vendor/symfony/console/Helper/QuestionHelper.php index caa091492c54..9e4fa02f2c61 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/QuestionHelper.php +++ b/core/vendor/symfony/console/Helper/QuestionHelper.php @@ -109,25 +109,11 @@ class QuestionHelper extends Helper */ public function doAsk(OutputInterface $output, Question $question) { + $this->writePrompt($output, $question); + $inputStream = $this->inputStream ?: STDIN; - - $message = $question->getQuestion(); - if ($question instanceof ChoiceQuestion) { - $width = max(array_map('strlen', array_keys($question->getChoices()))); - - $messages = (array) $question->getQuestion(); - foreach ($question->getChoices() as $key => $value) { - $messages[] = sprintf(" [%-${width}s] %s", $key, $value); - } - - $output->writeln($messages); - - $message = $question->getPrompt(); - } - - $output->write($message); - $autocomplete = $question->getAutocompleterValues(); + if (null === $autocomplete || !$this->hasSttyAvailable()) { $ret = false; if ($question->isHidden()) { @@ -160,6 +146,49 @@ class QuestionHelper extends Helper return $ret; } + /** + * Outputs the question prompt. + * + * @param OutputInterface $output + * @param Question $question + */ + protected function writePrompt(OutputInterface $output, Question $question) + { + $message = $question->getQuestion(); + + if ($question instanceof ChoiceQuestion) { + $width = max(array_map('strlen', array_keys($question->getChoices()))); + + $messages = (array) $question->getQuestion(); + foreach ($question->getChoices() as $key => $value) { + $messages[] = sprintf(" [%-${width}s] %s", $key, $value); + } + + $output->writeln($messages); + + $message = $question->getPrompt(); + } + + $output->write($message); + } + + /** + * Outputs an error message. + * + * @param OutputInterface $output + * @param \Exception $error + */ + protected function writeError(OutputInterface $output, \Exception $error) + { + if (null !== $this->getHelperSet() && $this->getHelperSet()->has('formatter')) { + $message = $this->getHelperSet()->get('formatter')->formatBlock($error->getMessage(), 'error'); + } else { + $message = ''.$error->getMessage().''; + } + + $output->writeln($message); + } + /** * Autocompletes a question. * @@ -355,13 +384,7 @@ class QuestionHelper extends Helper $attempts = $question->getMaxAttempts(); while (null === $attempts || $attempts--) { if (null !== $error) { - if (null !== $this->getHelperSet() && $this->getHelperSet()->has('formatter')) { - $message = $this->getHelperSet()->get('formatter')->formatBlock($error->getMessage(), 'error'); - } else { - $message = ''.$error->getMessage().''; - } - - $output->writeln($message); + $this->writeError($output, $error); } try { diff --git a/core/vendor/symfony/console/Helper/SymfonyQuestionHelper.php b/core/vendor/symfony/console/Helper/SymfonyQuestionHelper.php new file mode 100644 index 000000000000..77130f9776ac --- /dev/null +++ b/core/vendor/symfony/console/Helper/SymfonyQuestionHelper.php @@ -0,0 +1,106 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Helper; + +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Question\ChoiceQuestion; +use Symfony\Component\Console\Question\ConfirmationQuestion; +use Symfony\Component\Console\Question\Question; +use Symfony\Component\Console\Style\SymfonyStyle; + +/** + * Symfony Style Guide compliant question helper. + * + * @author Kevin Bond + */ +class SymfonyQuestionHelper extends QuestionHelper +{ + /** + * {@inheritdoc} + */ + public function ask(InputInterface $input, OutputInterface $output, Question $question) + { + $validator = $question->getValidator(); + $question->setValidator(function ($value) use ($validator) { + if (null !== $validator && is_callable($validator)) { + $value = $validator($value); + } + + // make required + if (!is_array($value) && !is_bool($value) && 0 === strlen($value)) { + throw new \Exception('A value is required.'); + } + + return $value; + }); + + return parent::ask($input, $output, $question); + } + + /** + * {@inheritdoc} + */ + protected function writePrompt(OutputInterface $output, Question $question) + { + $text = $question->getQuestion(); + $default = $question->getDefault(); + + switch (true) { + case null === $default: + $text = sprintf(' %s:', $text); + + break; + + case $question instanceof ConfirmationQuestion: + $text = sprintf(' %s (yes/no) [%s]:', $text, $default ? 'yes' : 'no'); + + break; + + case $question instanceof ChoiceQuestion: + $choices = $question->getChoices(); + $text = sprintf(' %s [%s]:', $text, $choices[$default]); + + break; + + default: + $text = sprintf(' %s [%s]:', $text, $default); + } + + $output->writeln($text); + + if ($question instanceof ChoiceQuestion) { + $width = max(array_map('strlen', array_keys($question->getChoices()))); + + foreach ($question->getChoices() as $key => $value) { + $output->writeln(sprintf(" [%-${width}s] %s", $key, $value)); + } + } + + $output->write(' > '); + } + + /** + * {@inheritdoc} + */ + protected function writeError(OutputInterface $output, \Exception $error) + { + if ($output instanceof SymfonyStyle) { + $output->newLine(); + $output->error($error->getMessage()); + + return; + } + + parent::writeError($output, $error); + } +} diff --git a/core/vendor/symfony/console/Helper/Table.php b/core/vendor/symfony/console/Helper/Table.php new file mode 100644 index 000000000000..ff668a475e8c --- /dev/null +++ b/core/vendor/symfony/console/Helper/Table.php @@ -0,0 +1,605 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Helper; + +use Symfony\Component\Console\Output\OutputInterface; + +/** + * Provides helpers to display a table. + * + * @author Fabien Potencier + * @author Саша Стаменковић + * @author Abdellatif Ait boudad + */ +class Table +{ + /** + * Table headers. + * + * @var array + */ + private $headers = array(); + + /** + * Table rows. + * + * @var array + */ + private $rows = array(); + + /** + * Column widths cache. + * + * @var array + */ + private $columnWidths = array(); + + /** + * Number of columns cache. + * + * @var array + */ + private $numberOfColumns; + + /** + * @var OutputInterface + */ + private $output; + + /** + * @var TableStyle + */ + private $style; + + private static $styles; + + public function __construct(OutputInterface $output) + { + $this->output = $output; + + if (!self::$styles) { + self::$styles = self::initStyles(); + } + + $this->setStyle('default'); + } + + /** + * Sets a style definition. + * + * @param string $name The style name + * @param TableStyle $style A TableStyle instance + */ + public static function setStyleDefinition($name, TableStyle $style) + { + if (!self::$styles) { + self::$styles = self::initStyles(); + } + + self::$styles[$name] = $style; + } + + /** + * Gets a style definition by name. + * + * @param string $name The style name + * + * @return TableStyle A TableStyle instance + */ + public static function getStyleDefinition($name) + { + if (!self::$styles) { + self::$styles = self::initStyles(); + } + + if (!self::$styles[$name]) { + throw new \InvalidArgumentException(sprintf('Style "%s" is not defined.', $name)); + } + + return self::$styles[$name]; + } + + /** + * Sets table style. + * + * @param TableStyle|string $name The style name or a TableStyle instance + * + * @return Table + */ + public function setStyle($name) + { + if ($name instanceof TableStyle) { + $this->style = $name; + } elseif (isset(self::$styles[$name])) { + $this->style = self::$styles[$name]; + } else { + throw new \InvalidArgumentException(sprintf('Style "%s" is not defined.', $name)); + } + + return $this; + } + + /** + * Gets the current table style. + * + * @return TableStyle + */ + public function getStyle() + { + return $this->style; + } + + public function setHeaders(array $headers) + { + $headers = array_values($headers); + if (!empty($headers) && !is_array($headers[0])) { + $headers = array($headers); + } + + $this->headers = $headers; + + return $this; + } + + public function setRows(array $rows) + { + $this->rows = array(); + + return $this->addRows($rows); + } + + public function addRows(array $rows) + { + foreach ($rows as $row) { + $this->addRow($row); + } + + return $this; + } + + public function addRow($row) + { + if ($row instanceof TableSeparator) { + $this->rows[] = $row; + + return; + } + + if (!is_array($row)) { + throw new \InvalidArgumentException('A row must be an array or a TableSeparator instance.'); + } + + $this->rows[] = array_values($row); + + return $this; + } + + public function setRow($column, array $row) + { + $this->rows[$column] = $row; + + return $this; + } + + /** + * Renders table to output. + * + * Example: + * +---------------+-----------------------+------------------+ + * | ISBN | Title | Author | + * +---------------+-----------------------+------------------+ + * | 99921-58-10-7 | Divine Comedy | Dante Alighieri | + * | 9971-5-0210-0 | A Tale of Two Cities | Charles Dickens | + * | 960-425-059-0 | The Lord of the Rings | J. R. R. Tolkien | + * +---------------+-----------------------+------------------+ + */ + public function render() + { + $this->calculateNumberOfColumns(); + $this->rows = $this->buildTableRows($this->rows); + $this->headers = $this->buildTableRows($this->headers); + + $this->renderRowSeparator(); + if (!empty($this->headers)) { + foreach ($this->headers as $header) { + $this->renderRow($header, $this->style->getCellHeaderFormat()); + $this->renderRowSeparator(); + } + } + foreach ($this->rows as $row) { + if ($row instanceof TableSeparator) { + $this->renderRowSeparator(); + } else { + $this->renderRow($row, $this->style->getCellRowFormat()); + } + } + if (!empty($this->rows)) { + $this->renderRowSeparator(); + } + + $this->cleanup(); + } + + /** + * Renders horizontal header separator. + * + * Example: +-----+-----------+-------+ + */ + private function renderRowSeparator() + { + if (0 === $count = $this->numberOfColumns) { + return; + } + + if (!$this->style->getHorizontalBorderChar() && !$this->style->getCrossingChar()) { + return; + } + + $markup = $this->style->getCrossingChar(); + for ($column = 0; $column < $count; $column++) { + $markup .= str_repeat($this->style->getHorizontalBorderChar(), $this->getColumnWidth($column)).$this->style->getCrossingChar(); + } + + $this->output->writeln(sprintf($this->style->getBorderFormat(), $markup)); + } + + /** + * Renders vertical column separator. + */ + private function renderColumnSeparator() + { + $this->output->write(sprintf($this->style->getBorderFormat(), $this->style->getVerticalBorderChar())); + } + + /** + * Renders table row. + * + * Example: | 9971-5-0210-0 | A Tale of Two Cities | Charles Dickens | + * + * @param array $row + * @param string $cellFormat + */ + private function renderRow(array $row, $cellFormat) + { + if (empty($row)) { + return; + } + + $this->renderColumnSeparator(); + foreach ($this->getRowColumns($row) as $column) { + $this->renderCell($row, $column, $cellFormat); + $this->renderColumnSeparator(); + } + $this->output->writeln(''); + } + + /** + * Renders table cell with padding. + * + * @param array $row + * @param int $column + * @param string $cellFormat + */ + private function renderCell(array $row, $column, $cellFormat) + { + $cell = isset($row[$column]) ? $row[$column] : ''; + $width = $this->getColumnWidth($column); + if ($cell instanceof TableCell && $cell->getColspan() > 1) { + // add the width of the following columns(numbers of colspan). + foreach (range($column + 1, $column + $cell->getColspan() - 1) as $nextColumn) { + $width += $this->getColumnSeparatorWidth() + $this->getColumnWidth($nextColumn); + } + } + + // str_pad won't work properly with multi-byte strings, we need to fix the padding + if (function_exists('mb_strwidth') && false !== $encoding = mb_detect_encoding($cell)) { + $width += strlen($cell) - mb_strwidth($cell, $encoding); + } + + if ($cell instanceof TableSeparator) { + $this->output->write(sprintf($this->style->getBorderFormat(), str_repeat($this->style->getHorizontalBorderChar(), $width))); + } else { + $width += Helper::strlen($cell) - Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell); + $content = sprintf($this->style->getCellRowContentFormat(), $cell); + $this->output->write(sprintf($cellFormat, str_pad($content, $width, $this->style->getPaddingChar(), $this->style->getPadType()))); + } + } + + /** + * Calculate number of columns for this table. + */ + private function calculateNumberOfColumns() + { + if (null !== $this->numberOfColumns) { + return; + } + + $columns = array(0); + foreach (array_merge($this->headers, $this->rows) as $row) { + if ($row instanceof TableSeparator) { + continue; + } + + $columns[] = $this->getNumberOfColumns($row); + } + + return $this->numberOfColumns = max($columns); + } + + private function buildTableRows($rows) + { + $unmergedRows = array(); + for ($rowKey = 0; $rowKey < count($rows); $rowKey++) { + $rows = $this->fillNextRows($rows, $rowKey); + + // Remove any new line breaks and replace it with a new line + foreach ($rows[$rowKey] as $column => $cell) { + $rows[$rowKey] = $this->fillCells($rows[$rowKey], $column); + if (!strstr($cell, "\n")) { + continue; + } + $lines = explode("\n", $cell); + foreach ($lines as $lineKey => $line) { + if ($cell instanceof TableCell) { + $line = new TableCell($line, array('colspan' => $cell->getColspan())); + } + if (0 === $lineKey) { + $rows[$rowKey][$column] = $line; + } else { + $unmergedRows[$rowKey][$lineKey][$column] = $line; + } + } + } + } + + $tableRows = array(); + foreach ($rows as $rowKey => $row) { + $tableRows[] = $row; + if (isset($unmergedRows[$rowKey])) { + $tableRows = array_merge($tableRows, $unmergedRows[$rowKey]); + } + } + + return $tableRows; + } + + /** + * fill rows that contains rowspan > 1. + * + * @param array $rows + * @param array $line + * + * @return array + */ + private function fillNextRows($rows, $line) + { + $unmergedRows = array(); + foreach ($rows[$line] as $column => $cell) { + if ($cell instanceof TableCell && $cell->getRowspan() > 1) { + $nbLines = $cell->getRowspan()-1; + $lines = array($cell); + if (strstr($cell, "\n")) { + $lines = explode("\n", $cell); + $nbLines = count($lines) > $nbLines ? substr_count($cell, "\n") : $nbLines; + + $rows[$line][$column] = new TableCell($lines[0], array('colspan' => $cell->getColspan())); + unset($lines[0]); + } + + // create a two dimensional array (rowspan x colspan) + $unmergedRows = array_replace_recursive(array_fill($line + 1, $nbLines, ''), $unmergedRows); + foreach ($unmergedRows as $unmergedRowKey => $unmergedRow) { + $value = isset($lines[$unmergedRowKey - $line]) ? $lines[$unmergedRowKey - $line] : ''; + $unmergedRows[$unmergedRowKey][$column] = new TableCell($value, array('colspan' => $cell->getColspan())); + } + } + } + + foreach ($unmergedRows as $unmergedRowKey => $unmergedRow) { + // we need to know if $unmergedRow will be merged or inserted into $rows + if (isset($rows[$unmergedRowKey]) && is_array($rows[$unmergedRowKey]) && ($this->getNumberOfColumns($rows[$unmergedRowKey]) + $this->getNumberOfColumns($unmergedRows[$unmergedRowKey]) <= $this->numberOfColumns)) { + foreach ($unmergedRow as $cellKey => $cell) { + // insert cell into row at cellKey position + array_splice($rows[$unmergedRowKey], $cellKey, 0, array($cell)); + } + } else { + $row = $this->copyRow($rows, $unmergedRowKey-1); + foreach ($unmergedRow as $column => $cell) { + if (!empty($cell)) { + $row[$column] = $unmergedRow[$column]; + } + } + array_splice($rows, $unmergedRowKey, 0, array($row)); + } + } + + return $rows; + } + + /** + * fill cells for a row that contains colspan > 1. + * + * @param array $row + * @param array $column + * + * @return array + */ + private function fillCells($row, $column) + { + $cell = $row[$column]; + if ($cell instanceof TableCell && $cell->getColspan() > 1) { + foreach (range($column + 1, $column + $cell->getColspan() - 1) as $position) { + // insert empty value into rows at column position + array_splice($row, $position, 0, ''); + } + } + + return $row; + } + + /** + * @param array $rows + * @param int $line + * + * @return array + */ + private function copyRow($rows, $line) + { + $row = $rows[$line]; + foreach ($row as $cellKey => $cellValue) { + $row[$cellKey] = ''; + if ($cellValue instanceof TableCell) { + $row[$cellKey] = new TableCell('', array('colspan' => $cellValue->getColspan())); + } + } + + return $row; + } + + /** + * Gets number of columns by row. + * + * @param array $row + * + * @return int + */ + private function getNumberOfColumns(array $row) + { + $columns = count($row); + foreach ($row as $column) { + $columns += $column instanceof TableCell ? ($column->getColspan()-1) : 0; + } + + return $columns; + } + + /** + * Gets list of columns for the given row. + * + * @param array $row + * + * @return array() + */ + private function getRowColumns($row) + { + $columns = range(0, $this->numberOfColumns-1); + foreach ($row as $cellKey => $cell) { + if ($cell instanceof TableCell && $cell->getColspan() > 1) { + // exclude grouped columns. + $columns = array_diff($columns, range($cellKey+1, $cellKey + $cell->getColspan()-1)); + } + } + + return $columns; + } + + /** + * Gets column width. + * + * @param int $column + * + * @return int + */ + private function getColumnWidth($column) + { + if (isset($this->columnWidths[$column])) { + return $this->columnWidths[$column]; + } + + foreach (array_merge($this->headers, $this->rows) as $row) { + if ($row instanceof TableSeparator) { + continue; + } + + $lengths[] = $this->getCellWidth($row, $column); + } + + return $this->columnWidths[$column] = max($lengths) + strlen($this->style->getCellRowContentFormat()) - 2; + } + + /** + * Gets column width. + * + * @param int $column + * + * @return int + */ + private function getColumnSeparatorWidth() + { + return strlen(sprintf($this->style->getBorderFormat(), $this->style->getVerticalBorderChar())); + } + + /** + * Gets cell width. + * + * @param array $row + * @param int $column + * + * @return int + */ + private function getCellWidth(array $row, $column) + { + if (isset($row[$column])) { + $cell = $row[$column]; + if ($cell instanceof TableCell && $cell->getColspan() > 1) { + // we assume that cell value will be across more than one column. + $cell = substr($cell, 0, strlen($cell)/$cell->getColspan()); + } + + return Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell); + } + + return 0; + } + + /** + * Called after rendering to cleanup cache data. + */ + private function cleanup() + { + $this->columnWidths = array(); + $this->numberOfColumns = null; + } + + private static function initStyles() + { + $borderless = new TableStyle(); + $borderless + ->setHorizontalBorderChar('=') + ->setVerticalBorderChar(' ') + ->setCrossingChar(' ') + ; + + $compact = new TableStyle(); + $compact + ->setHorizontalBorderChar('') + ->setVerticalBorderChar(' ') + ->setCrossingChar('') + ->setCellRowContentFormat('%s') + ; + + $styleGuide = new TableStyle(); + $styleGuide + ->setHorizontalBorderChar('-') + ->setVerticalBorderChar(' ') + ->setCrossingChar(' ') + ->setCellHeaderFormat('%s') + ; + + return array( + 'default' => new TableStyle(), + 'borderless' => $borderless, + 'compact' => $compact, + 'symfony-style-guide' => $styleGuide, + ); + } +} diff --git a/core/vendor/symfony/console/Helper/TableCell.php b/core/vendor/symfony/console/Helper/TableCell.php new file mode 100644 index 000000000000..aa0d3180799f --- /dev/null +++ b/core/vendor/symfony/console/Helper/TableCell.php @@ -0,0 +1,77 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Helper; + +/** + * @author Abdellatif Ait boudad + */ +class TableCell +{ + /** + * @var string + */ + private $value; + + /** + * @var array + */ + private $options = array( + 'rowspan' => 1, + 'colspan' => 1, + ); + + /** + * @param string $value + * @param array $options + */ + public function __construct($value = '', array $options = array()) + { + $this->value = $value; + + // check option names + if ($diff = array_diff(array_keys($options), array_keys($this->options))) { + throw new \InvalidArgumentException(sprintf('The TableCell does not support the following options: \'%s\'.', implode('\', \'', $diff))); + } + + $this->options = array_merge($this->options, $options); + } + + /** + * Returns the cell value. + * + * @return string + */ + public function __toString() + { + return $this->value; + } + + /** + * Gets number of colspan. + * + * @return int + */ + public function getColspan() + { + return (int) $this->options['colspan']; + } + + /** + * Gets number of rowspan. + * + * @return int + */ + public function getRowspan() + { + return (int) $this->options['rowspan']; + } +} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/TableHelper.php b/core/vendor/symfony/console/Helper/TableHelper.php similarity index 93% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/TableHelper.php rename to core/vendor/symfony/console/Helper/TableHelper.php index fc6861cf35ed..06af5fad9b64 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/TableHelper.php +++ b/core/vendor/symfony/console/Helper/TableHelper.php @@ -20,7 +20,8 @@ use Symfony\Component\Console\Output\NullOutput; * @author Саша Стаменковић * @author Fabien Potencier * - * @deprecated Deprecated since 2.5, to be removed in 3.0; use Table instead. + * @deprecated since version 2.5, to be removed in 3.0 + * Use {@link Table} instead. */ class TableHelper extends Helper { @@ -33,8 +34,12 @@ class TableHelper extends Helper */ private $table; - public function __construct() + public function __construct($triggerDeprecationError = true) { + if ($triggerDeprecationError) { + trigger_error('The '.__CLASS__.' class is deprecated since version 2.5 and will be removed in 3.0. Use the Symfony\Component\Console\Helper\Table class instead.', E_USER_DEPRECATED); + } + $this->table = new Table(new NullOutput()); } diff --git a/core/vendor/symfony/console/Helper/TableSeparator.php b/core/vendor/symfony/console/Helper/TableSeparator.php new file mode 100644 index 000000000000..8cbbc6613be3 --- /dev/null +++ b/core/vendor/symfony/console/Helper/TableSeparator.php @@ -0,0 +1,29 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Helper; + +/** + * Marks a row as being a separator. + * + * @author Fabien Potencier + */ +class TableSeparator extends TableCell +{ + /** + * @param string $value + * @param array $options + */ + public function __construct(array $options = array()) + { + parent::__construct('', $options); + } +} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/TableStyle.php b/core/vendor/symfony/console/Helper/TableStyle.php similarity index 95% rename from core/vendor/symfony/console/Symfony/Component/Console/Helper/TableStyle.php rename to core/vendor/symfony/console/Helper/TableStyle.php index 580f9abc819d..f0f46c71e313 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/TableStyle.php +++ b/core/vendor/symfony/console/Helper/TableStyle.php @@ -234,6 +234,10 @@ class TableStyle */ public function setPadType($padType) { + if (!in_array($padType, array(STR_PAD_LEFT, STR_PAD_RIGHT, STR_PAD_BOTH), true)) { + throw new \InvalidArgumentException('Invalid padding type. Expected one of (STR_PAD_LEFT, STR_PAD_RIGHT, STR_PAD_BOTH).'); + } + $this->padType = $padType; return $this; diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/ArgvInput.php b/core/vendor/symfony/console/Input/ArgvInput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/ArgvInput.php rename to core/vendor/symfony/console/Input/ArgvInput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/ArrayInput.php b/core/vendor/symfony/console/Input/ArrayInput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/ArrayInput.php rename to core/vendor/symfony/console/Input/ArrayInput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/Input.php b/core/vendor/symfony/console/Input/Input.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/Input.php rename to core/vendor/symfony/console/Input/Input.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/InputArgument.php b/core/vendor/symfony/console/Input/InputArgument.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/InputArgument.php rename to core/vendor/symfony/console/Input/InputArgument.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/InputAwareInterface.php b/core/vendor/symfony/console/Input/InputAwareInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/InputAwareInterface.php rename to core/vendor/symfony/console/Input/InputAwareInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/InputDefinition.php b/core/vendor/symfony/console/Input/InputDefinition.php similarity index 87% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/InputDefinition.php rename to core/vendor/symfony/console/Input/InputDefinition.php index 48edb166c3b5..7efb849ab247 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Input/InputDefinition.php +++ b/core/vendor/symfony/console/Input/InputDefinition.php @@ -391,22 +391,50 @@ class InputDefinition /** * Gets the synopsis. * + * @param bool $short Whether to return the short version (with options foloded) or not + * * @return string The synopsis */ - public function getSynopsis() + public function getSynopsis($short = false) { $elements = array(); - foreach ($this->getOptions() as $option) { - $shortcut = $option->getShortcut() ? sprintf('-%s|', $option->getShortcut()) : ''; - $elements[] = sprintf('['.($option->isValueRequired() ? '%s--%s="..."' : ($option->isValueOptional() ? '%s--%s[="..."]' : '%s--%s')).']', $shortcut, $option->getName()); + + if ($short && $this->getOptions()) { + $elements[] = '[options]'; + } elseif (!$short) { + foreach ($this->getOptions() as $option) { + $value = ''; + if ($option->acceptValue()) { + $value = sprintf( + ' %s%s%s', + $option->isValueOptional() ? '[' : '', + strtoupper($option->getName()), + $option->isValueOptional() ? ']' : '' + ); + } + + $shortcut = $option->getShortcut() ? sprintf('-%s|', $option->getShortcut()) : ''; + $elements[] = sprintf('[%s--%s%s]', $shortcut, $option->getName(), $value); + } + } + + if (count($elements) && $this->getArguments()) { + $elements[] = '[--]'; } foreach ($this->getArguments() as $argument) { - $elements[] = sprintf($argument->isRequired() ? '%s' : '[%s]', $argument->getName().($argument->isArray() ? '1' : '')); + $element = '<'.$argument->getName().'>'; + if (!$argument->isRequired()) { + $element = '['.$element.']'; + } elseif ($argument->isArray()) { + $element = $element.' ('.$element.')'; + } if ($argument->isArray()) { - $elements[] = sprintf('... [%sN]', $argument->getName()); + $element .= '...'; } + + $elements[] = $element; } return implode(' ', $elements); @@ -417,10 +445,12 @@ class InputDefinition * * @return string A string representing the InputDefinition * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. + * @deprecated since version 2.3, to be removed in 3.0. */ public function asText() { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0.', E_USER_DEPRECATED); + $descriptor = new TextDescriptor(); $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, true); $descriptor->describe($output, $this, array('raw_output' => true)); @@ -435,10 +465,12 @@ class InputDefinition * * @return string|\DOMDocument An XML string representing the InputDefinition * - * @deprecated Deprecated since version 2.3, to be removed in 3.0. + * @deprecated since version 2.3, to be removed in 3.0. */ public function asXml($asDom = false) { + trigger_error('The '.__METHOD__.' method is deprecated since version 2.3 and will be removed in 3.0.', E_USER_DEPRECATED); + $descriptor = new XmlDescriptor(); if ($asDom) { diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/InputInterface.php b/core/vendor/symfony/console/Input/InputInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/InputInterface.php rename to core/vendor/symfony/console/Input/InputInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/InputOption.php b/core/vendor/symfony/console/Input/InputOption.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/InputOption.php rename to core/vendor/symfony/console/Input/InputOption.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Input/StringInput.php b/core/vendor/symfony/console/Input/StringInput.php similarity index 92% rename from core/vendor/symfony/console/Symfony/Component/Console/Input/StringInput.php rename to core/vendor/symfony/console/Input/StringInput.php index 6537e27a6bb3..40656b3c1488 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Input/StringInput.php +++ b/core/vendor/symfony/console/Input/StringInput.php @@ -39,6 +39,10 @@ class StringInput extends ArgvInput */ public function __construct($input, InputDefinition $definition = null) { + if ($definition) { + trigger_error('The $definition argument of the '.__METHOD__.' method is deprecated and will be removed in 3.0. Set this parameter with the bind() method instead.', E_USER_DEPRECATED); + } + parent::__construct(array(), null); $this->setTokens($this->tokenize($input)); diff --git a/core/vendor/symfony/console/Symfony/Component/Console/LICENSE b/core/vendor/symfony/console/LICENSE similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/LICENSE rename to core/vendor/symfony/console/LICENSE diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Logger/ConsoleLogger.php b/core/vendor/symfony/console/Logger/ConsoleLogger.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Logger/ConsoleLogger.php rename to core/vendor/symfony/console/Logger/ConsoleLogger.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/BufferedOutput.php b/core/vendor/symfony/console/Output/BufferedOutput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/BufferedOutput.php rename to core/vendor/symfony/console/Output/BufferedOutput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/ConsoleOutput.php b/core/vendor/symfony/console/Output/ConsoleOutput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/ConsoleOutput.php rename to core/vendor/symfony/console/Output/ConsoleOutput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/ConsoleOutputInterface.php b/core/vendor/symfony/console/Output/ConsoleOutputInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/ConsoleOutputInterface.php rename to core/vendor/symfony/console/Output/ConsoleOutputInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/NullOutput.php b/core/vendor/symfony/console/Output/NullOutput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/NullOutput.php rename to core/vendor/symfony/console/Output/NullOutput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/Output.php b/core/vendor/symfony/console/Output/Output.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/Output.php rename to core/vendor/symfony/console/Output/Output.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/OutputInterface.php b/core/vendor/symfony/console/Output/OutputInterface.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/OutputInterface.php rename to core/vendor/symfony/console/Output/OutputInterface.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Output/StreamOutput.php b/core/vendor/symfony/console/Output/StreamOutput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Output/StreamOutput.php rename to core/vendor/symfony/console/Output/StreamOutput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Question/ChoiceQuestion.php b/core/vendor/symfony/console/Question/ChoiceQuestion.php similarity index 75% rename from core/vendor/symfony/console/Symfony/Component/Console/Question/ChoiceQuestion.php rename to core/vendor/symfony/console/Question/ChoiceQuestion.php index e1da7a8c5e3a..ce4ff67779e7 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Question/ChoiceQuestion.php +++ b/core/vendor/symfony/console/Question/ChoiceQuestion.php @@ -36,7 +36,7 @@ class ChoiceQuestion extends Question $this->choices = $choices; $this->setValidator($this->getDefaultValidator()); - $this->setAutocompleterValues(array_keys($choices)); + $this->setAutocompleterValues($choices); } /** @@ -117,8 +117,9 @@ class ChoiceQuestion extends Question $choices = $this->choices; $errorMessage = $this->errorMessage; $multiselect = $this->multiselect; + $isAssoc = $this->isAssoc($choices); - return function ($selected) use ($choices, $errorMessage, $multiselect) { + return function ($selected) use ($choices, $errorMessage, $multiselect, $isAssoc) { // Collapse all spaces. $selectedChoices = str_replace(' ', '', $selected); @@ -134,17 +135,40 @@ class ChoiceQuestion extends Question $multiselectChoices = array(); foreach ($selectedChoices as $value) { - if (empty($choices[$value])) { + $results = array(); + foreach ($choices as $key => $choice) { + if ($choice === $value) { + $results[] = $key; + } + } + + if (count($results) > 1) { + throw new \InvalidArgumentException(sprintf('The provided answer is ambiguous. Value should be one of %s.', implode(' or ', $results))); + } + + $result = array_search($value, $choices); + + if (!$isAssoc) { + if (!empty($result)) { + $result = $choices[$result]; + } elseif (isset($choices[$value])) { + $result = $choices[$value]; + } + } elseif (empty($result) && array_key_exists($value, $choices)) { + $result = $value; + } + + if (empty($result)) { throw new \InvalidArgumentException(sprintf($errorMessage, $value)); } - array_push($multiselectChoices, $choices[$value]); + array_push($multiselectChoices, $result); } if ($multiselect) { return $multiselectChoices; } - return $choices[$selected]; + return current($multiselectChoices); }; } } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Question/ConfirmationQuestion.php b/core/vendor/symfony/console/Question/ConfirmationQuestion.php similarity index 59% rename from core/vendor/symfony/console/Symfony/Component/Console/Question/ConfirmationQuestion.php rename to core/vendor/symfony/console/Question/ConfirmationQuestion.php index 09ac74ff65d7..9e55859053f8 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Question/ConfirmationQuestion.php +++ b/core/vendor/symfony/console/Question/ConfirmationQuestion.php @@ -18,16 +18,20 @@ namespace Symfony\Component\Console\Question; */ class ConfirmationQuestion extends Question { + private $trueAnswerRegex; + /** * Constructor. * - * @param string $question The question to ask to the user - * @param bool $default The default answer to return, true or false + * @param string $question The question to ask to the user + * @param bool $default The default answer to return, true or false + * @param string $trueAnswerRegex A regex to match the "yes" answer */ - public function __construct($question, $default = true) + public function __construct($question, $default = true, $trueAnswerRegex = '/^y/i') { parent::__construct($question, (bool) $default); + $this->trueAnswerRegex = $trueAnswerRegex; $this->setNormalizer($this->getDefaultNormalizer()); } @@ -39,17 +43,19 @@ class ConfirmationQuestion extends Question private function getDefaultNormalizer() { $default = $this->getDefault(); + $regex = $this->trueAnswerRegex; - return function ($answer) use ($default) { + return function ($answer) use ($default, $regex) { if (is_bool($answer)) { return $answer; } + $answerIsTrue = (bool) preg_match($regex, $answer); if (false === $default) { - return $answer && 'y' === strtolower($answer[0]); + return $answer && $answerIsTrue; } - return !$answer || 'y' === strtolower($answer[0]); + return !$answer || $answerIsTrue; }; } } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Question/Question.php b/core/vendor/symfony/console/Question/Question.php similarity index 95% rename from core/vendor/symfony/console/Symfony/Component/Console/Question/Question.php rename to core/vendor/symfony/console/Question/Question.php index 9f776d57903e..01702b208fda 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Question/Question.php +++ b/core/vendor/symfony/console/Question/Question.php @@ -135,6 +135,10 @@ class Question */ public function setAutocompleterValues($values) { + if (is_array($values) && $this->isAssoc($values)) { + $values = array_merge(array_keys($values), array_values($values)); + } + if (null !== $values && !is_array($values)) { if (!$values instanceof \Traversable || $values instanceof \Countable) { throw new \InvalidArgumentException('Autocompleter values can be either an array, `null` or an object implementing both `Countable` and `Traversable` interfaces.'); @@ -235,4 +239,9 @@ class Question { return $this->normalizer; } + + protected function isAssoc($array) + { + return (bool) count(array_filter(array_keys($array), 'is_string')); + } } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/README.md b/core/vendor/symfony/console/README.md similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/README.md rename to core/vendor/symfony/console/README.md diff --git a/core/vendor/symfony/console/Resources/bin/hiddeninput.exe b/core/vendor/symfony/console/Resources/bin/hiddeninput.exe new file mode 100644 index 000000000000..b59fd5b7935e Binary files /dev/null and b/core/vendor/symfony/console/Resources/bin/hiddeninput.exe differ diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Shell.php b/core/vendor/symfony/console/Shell.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Shell.php rename to core/vendor/symfony/console/Shell.php diff --git a/core/vendor/symfony/console/Style/OutputStyle.php b/core/vendor/symfony/console/Style/OutputStyle.php new file mode 100644 index 000000000000..13ed05b13dc4 --- /dev/null +++ b/core/vendor/symfony/console/Style/OutputStyle.php @@ -0,0 +1,116 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Style; + +use Symfony\Component\Console\Formatter\OutputFormatterInterface; +use Symfony\Component\Console\Helper\ProgressBar; +use Symfony\Component\Console\Output\OutputInterface; + +/** + * Decorates output to add console style guide helpers + * + * @author Kevin Bond + */ +abstract class OutputStyle implements OutputInterface, StyleInterface +{ + private $output; + + /** + * @param OutputInterface $output + */ + public function __construct(OutputInterface $output) + { + $this->output = $output; + } + + /** + * {@inheritdoc} + */ + public function newLine($count = 1) + { + $this->output->write(str_repeat(PHP_EOL, $count)); + } + + /** + * @param int $max + * + * @return ProgressBar + */ + public function createProgressBar($max = 0) + { + return new ProgressBar($this->output, $max); + } + + /** + * {@inheritdoc} + */ + public function write($messages, $newline = false, $type = self::OUTPUT_NORMAL) + { + $this->output->write($messages, $newline, $type); + } + + /** + * {@inheritdoc} + */ + public function writeln($messages, $type = self::OUTPUT_NORMAL) + { + $this->output->writeln($messages, $type); + } + + /** + * {@inheritdoc} + */ + public function setVerbosity($level) + { + $this->output->setVerbosity($level); + } + + /** + * {@inheritdoc} + */ + public function getVerbosity() + { + return $this->output->getVerbosity(); + } + + /** + * {@inheritdoc} + */ + public function setDecorated($decorated) + { + $this->output->setDecorated($decorated); + } + + /** + * {@inheritdoc} + */ + public function isDecorated() + { + return $this->output->isDecorated(); + } + + /** + * {@inheritdoc} + */ + public function setFormatter(OutputFormatterInterface $formatter) + { + $this->output->setFormatter($formatter); + } + + /** + * {@inheritdoc} + */ + public function getFormatter() + { + return $this->output->getFormatter(); + } +} diff --git a/core/vendor/symfony/console/Style/StyleInterface.php b/core/vendor/symfony/console/Style/StyleInterface.php new file mode 100644 index 000000000000..214782e3939f --- /dev/null +++ b/core/vendor/symfony/console/Style/StyleInterface.php @@ -0,0 +1,159 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Style; + +/** + * Output style helpers + * + * @author Kevin Bond + */ +interface StyleInterface +{ + /** + * Formats a command title. + * + * @param string $message + */ + public function title($message); + + /** + * Formats a section title. + * + * @param string $message + */ + public function section($message); + + /** + * Formats a list. + * + * @param array $elements + */ + public function listing(array $elements); + + /** + * Formats informational text. + * + * @param string|array $message + */ + public function text($message); + + /** + * Formats a success result bar. + * + * @param string|array $message + */ + public function success($message); + + /** + * Formats an error result bar. + * + * @param string|array $message + */ + public function error($message); + + /** + * Formats an warning result bar. + * + * @param string|array $message + */ + public function warning($message); + + /** + * Formats a note admonition. + * + * @param string|array $message + */ + public function note($message); + + /** + * Formats a caution admonition. + * + * @param string|array $message + */ + public function caution($message); + + /** + * Formats a table. + * + * @param array $headers + * @param array $rows + */ + public function table(array $headers, array $rows); + + /** + * Asks a question. + * + * @param string $question + * @param string|null $default + * @param callable|null $validator + * + * @return string + */ + public function ask($question, $default = null, $validator = null); + + /** + * Asks a question with the user input hidden. + * + * @param string $question + * @param callable|null $validator + * + * @return string + */ + public function askHidden($question, $validator = null); + + /** + * Asks for confirmation. + * + * @param string $question + * @param bool $default + * + * @return bool + */ + public function confirm($question, $default = true); + + /** + * Asks a choice question. + * + * @param string $question + * @param array $choices + * @param string|int|null $default + * + * @return string + */ + public function choice($question, array $choices, $default = null); + + /** + * Add newline(s) + * + * @param int $count The number of newlines + */ + public function newLine($count = 1); + + /** + * Starts the progress output. + * + * @param int $max Maximum steps (0 if unknown) + */ + public function progressStart($max = 0); + + /** + * Advances the progress output X steps. + * + * @param int $step Number of steps to advance + */ + public function progressAdvance($step = 1); + + /** + * Finishes the progress output. + */ + public function progressFinish(); +} diff --git a/core/vendor/symfony/console/Style/SymfonyStyle.php b/core/vendor/symfony/console/Style/SymfonyStyle.php new file mode 100644 index 000000000000..1ccccc9df3c5 --- /dev/null +++ b/core/vendor/symfony/console/Style/SymfonyStyle.php @@ -0,0 +1,323 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\Console\Style; + +use Symfony\Component\Console\Application; +use Symfony\Component\Console\Formatter\OutputFormatter; +use Symfony\Component\Console\Helper\Helper; +use Symfony\Component\Console\Helper\ProgressBar; +use Symfony\Component\Console\Helper\SymfonyQuestionHelper; +use Symfony\Component\Console\Helper\Table; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; +use Symfony\Component\Console\Question\ChoiceQuestion; +use Symfony\Component\Console\Question\ConfirmationQuestion; +use Symfony\Component\Console\Question\Question; + +/** + * Output decorator helpers for the Symfony Style Guide. + * + * @author Kevin Bond + */ +class SymfonyStyle extends OutputStyle +{ + const MAX_LINE_LENGTH = 120; + + private $input; + private $questionHelper; + private $progressBar; + private $lineLength; + + /** + * @param InputInterface $input + * @param OutputInterface $output + */ + public function __construct(InputInterface $input, OutputInterface $output) + { + $this->input = $input; + $this->lineLength = min($this->getTerminalWidth(), self::MAX_LINE_LENGTH); + + parent::__construct($output); + } + + /** + * Formats a message as a block of text. + * + * @param string|array $messages The message to write in the block + * @param string|null $type The block type (added in [] on first line) + * @param string|null $style The style to apply to the whole block + * @param string $prefix The prefix for the block + * @param bool $padding Whether to add vertical padding + */ + public function block($messages, $type = null, $style = null, $prefix = ' ', $padding = false) + { + $messages = array_values((array) $messages); + $lines = array(); + + // add type + if (null !== $type) { + $messages[0] = sprintf('[%s] %s', $type, $messages[0]); + } + + // wrap and add newlines for each element + foreach ($messages as $key => $message) { + $message = OutputFormatter::escape($message); + $lines = array_merge($lines, explode("\n", wordwrap($message, $this->lineLength - Helper::strlen($prefix)))); + + if (count($messages) > 1 && $key < count($messages) - 1) { + $lines[] = ''; + } + } + + if ($padding && $this->isDecorated()) { + array_unshift($lines, ''); + $lines[] = ''; + } + + foreach ($lines as &$line) { + $line = sprintf('%s%s', $prefix, $line); + $line .= str_repeat(' ', $this->lineLength - Helper::strlen($line)); + + if ($style) { + $line = sprintf('<%s>%s', $style, $line); + } + } + + $this->writeln(implode("\n", $lines)."\n"); + } + + /** + * {@inheritdoc} + */ + public function title($message) + { + $this->writeln(sprintf("\n%s\n%s\n", $message, str_repeat('=', strlen($message)))); + } + + /** + * {@inheritdoc} + */ + public function section($message) + { + $this->writeln(sprintf("%s\n%s\n", $message, str_repeat('-', strlen($message)))); + } + + /** + * {@inheritdoc} + */ + public function listing(array $elements) + { + $elements = array_map(function ($element) { + return sprintf(' * %s', $element); + }, + $elements + ); + + $this->writeln(implode("\n", $elements)."\n"); + } + + /** + * {@inheritdoc} + */ + public function text($message) + { + if (!is_array($message)) { + $this->writeln(sprintf(' // %s', $message)); + + return; + } + + foreach ($message as $element) { + $this->text($element); + } + } + + /** + * {@inheritdoc} + */ + public function success($message) + { + $this->block($message, 'OK', 'fg=white;bg=green', ' ', true); + } + + /** + * {@inheritdoc} + */ + public function error($message) + { + $this->block($message, 'ERROR', 'fg=white;bg=red', ' ', true); + } + + /** + * {@inheritdoc} + */ + public function warning($message) + { + $this->block($message, 'WARNING', 'fg=white;bg=red', ' ', true); + } + + /** + * {@inheritdoc} + */ + public function note($message) + { + $this->block($message, 'NOTE', 'fg=yellow', ' ! '); + } + + /** + * {@inheritdoc} + */ + public function caution($message) + { + $this->block($message, 'CAUTION', 'fg=white;bg=red', ' ! ', true); + } + + /** + * {@inheritdoc} + */ + public function table(array $headers, array $rows) + { + $headers = array_map(function ($value) { return sprintf('%s', $value); }, $headers); + + $table = new Table($this); + $table->setHeaders($headers); + $table->setRows($rows); + $table->setStyle('symfony-style-guide'); + + $table->render(); + $this->newLine(); + } + + /** + * {@inheritdoc} + */ + public function ask($question, $default = null, $validator = null) + { + $question = new Question($question, $default); + $question->setValidator($validator); + + return $this->askQuestion($question, $validator); + } + + /** + * {@inheritdoc} + */ + public function askHidden($question, $validator = null) + { + $question = new Question($question); + $question->setHidden(true); + + return $this->askQuestion($question, $validator); + } + + /** + * {@inheritdoc} + */ + public function confirm($question, $default = true) + { + return $this->askQuestion(new ConfirmationQuestion($question, $default)); + } + + /** + * {@inheritdoc} + */ + public function choice($question, array $choices, $default = null) + { + if (null !== $default) { + $values = array_flip($choices); + $default = $values[$default]; + } + + return $this->askQuestion(new ChoiceQuestion($question, $choices, $default)); + } + + /** + * {@inheritdoc} + */ + public function progressStart($max = 0) + { + $this->progressBar = $this->createProgressBar($max); + $this->progressBar->start(); + } + + /** + * {@inheritdoc} + */ + public function progressAdvance($step = 1) + { + $this->getProgressBar()->advance($step); + } + + /** + * {@inheritdoc} + */ + public function progressFinish() + { + $this->getProgressBar()->finish(); + $this->newLine(2); + $this->progressBar = null; + } + + /** + * {@inheritdoc} + */ + public function createProgressBar($max = 0) + { + $progressBar = parent::createProgressBar($max); + + if ('\\' === DIRECTORY_SEPARATOR) { + $progressBar->setEmptyBarCharacter('░'); // light shade character \u2591 + $progressBar->setProgressCharacter(''); + $progressBar->setBarCharacter('▓'); // dark shade character \u2593 + } + + return $progressBar; + } + + /** + * @param Question $question + * + * @return string + */ + public function askQuestion(Question $question) + { + if (!$this->questionHelper) { + $this->questionHelper = new SymfonyQuestionHelper(); + } + + $answer = $this->questionHelper->ask($this->input, $this, $question); + + $this->newLine(); + + return $answer; + } + + /** + * @return ProgressBar + */ + private function getProgressBar() + { + if (!$this->progressBar) { + throw new \RuntimeException('The ProgressBar is not started.'); + } + + return $this->progressBar; + } + + private function getTerminalWidth() + { + $application = new Application(); + $dimensions = $application->getTerminalDimensions(); + + return $dimensions[0] ?: self::MAX_LINE_LENGTH; + } +} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Helper/Table.php b/core/vendor/symfony/console/Symfony/Component/Console/Helper/Table.php deleted file mode 100644 index 7766cbccc661..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Helper/Table.php +++ /dev/null @@ -1,410 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Console\Helper; - -use Symfony\Component\Console\Output\OutputInterface; - -/** - * Provides helpers to display a table. - * - * @author Fabien Potencier - * @author Саша Стаменковић - */ -class Table -{ - /** - * Table headers. - * - * @var array - */ - private $headers = array(); - - /** - * Table rows. - * - * @var array - */ - private $rows = array(); - - /** - * Column widths cache. - * - * @var array - */ - private $columnWidths = array(); - - /** - * Number of columns cache. - * - * @var array - */ - private $numberOfColumns; - - /** - * @var OutputInterface - */ - private $output; - - /** - * @var TableStyle - */ - private $style; - - private static $styles; - - public function __construct(OutputInterface $output) - { - $this->output = $output; - - if (!self::$styles) { - self::$styles = self::initStyles(); - } - - $this->setStyle('default'); - } - - /** - * Sets a style definition. - * - * @param string $name The style name - * @param TableStyle $style A TableStyle instance - */ - public static function setStyleDefinition($name, TableStyle $style) - { - if (!self::$styles) { - self::$styles = self::initStyles(); - } - - self::$styles[$name] = $style; - } - - /** - * Gets a style definition by name. - * - * @param string $name The style name - * - * @return TableStyle A TableStyle instance - */ - public static function getStyleDefinition($name) - { - if (!self::$styles) { - self::$styles = self::initStyles(); - } - - if (!self::$styles[$name]) { - throw new \InvalidArgumentException(sprintf('Style "%s" is not defined.', $name)); - } - - return self::$styles[$name]; - } - - /** - * Sets table style. - * - * @param TableStyle|string $name The style name or a TableStyle instance - * - * @return Table - */ - public function setStyle($name) - { - if ($name instanceof TableStyle) { - $this->style = $name; - } elseif (isset(self::$styles[$name])) { - $this->style = self::$styles[$name]; - } else { - throw new \InvalidArgumentException(sprintf('Style "%s" is not defined.', $name)); - } - - return $this; - } - - /** - * Gets the current table style. - * - * @return TableStyle - */ - public function getStyle() - { - return $this->style; - } - - public function setHeaders(array $headers) - { - $this->headers = array_values($headers); - - return $this; - } - - public function setRows(array $rows) - { - $this->rows = array(); - - return $this->addRows($rows); - } - - public function addRows(array $rows) - { - foreach ($rows as $row) { - $this->addRow($row); - } - - return $this; - } - - public function addRow($row) - { - if ($row instanceof TableSeparator) { - $this->rows[] = $row; - - return; - } - - if (!is_array($row)) { - throw new \InvalidArgumentException('A row must be an array or a TableSeparator instance.'); - } - - $this->rows[] = array_values($row); - - end($this->rows); - $rowKey = key($this->rows); - reset($this->rows); - - foreach ($row as $key => $cellValue) { - if (false === strpos($cellValue, "\n")) { - continue; - } - - $lines = explode("\n", $cellValue); - $this->rows[$rowKey][$key] = $lines[0]; - unset($lines[0]); - - foreach ($lines as $lineKey => $line) { - $nextRowKey = $rowKey + $lineKey + 1; - - if (isset($this->rows[$nextRowKey])) { - $this->rows[$nextRowKey][$key] = $line; - } else { - $this->rows[$nextRowKey] = array($key => $line); - } - } - } - - return $this; - } - - public function setRow($column, array $row) - { - $this->rows[$column] = $row; - - return $this; - } - - /** - * Renders table to output. - * - * Example: - * +---------------+-----------------------+------------------+ - * | ISBN | Title | Author | - * +---------------+-----------------------+------------------+ - * | 99921-58-10-7 | Divine Comedy | Dante Alighieri | - * | 9971-5-0210-0 | A Tale of Two Cities | Charles Dickens | - * | 960-425-059-0 | The Lord of the Rings | J. R. R. Tolkien | - * +---------------+-----------------------+------------------+ - */ - public function render() - { - $this->renderRowSeparator(); - $this->renderRow($this->headers, $this->style->getCellHeaderFormat()); - if (!empty($this->headers)) { - $this->renderRowSeparator(); - } - foreach ($this->rows as $row) { - if ($row instanceof TableSeparator) { - $this->renderRowSeparator(); - } else { - $this->renderRow($row, $this->style->getCellRowFormat()); - } - } - if (!empty($this->rows)) { - $this->renderRowSeparator(); - } - - $this->cleanup(); - } - - /** - * Renders horizontal header separator. - * - * Example: +-----+-----------+-------+ - */ - private function renderRowSeparator() - { - if (0 === $count = $this->getNumberOfColumns()) { - return; - } - - if (!$this->style->getHorizontalBorderChar() && !$this->style->getCrossingChar()) { - return; - } - - $markup = $this->style->getCrossingChar(); - for ($column = 0; $column < $count; $column++) { - $markup .= str_repeat($this->style->getHorizontalBorderChar(), $this->getColumnWidth($column)).$this->style->getCrossingChar(); - } - - $this->output->writeln(sprintf($this->style->getBorderFormat(), $markup)); - } - - /** - * Renders vertical column separator. - */ - private function renderColumnSeparator() - { - $this->output->write(sprintf($this->style->getBorderFormat(), $this->style->getVerticalBorderChar())); - } - - /** - * Renders table row. - * - * Example: | 9971-5-0210-0 | A Tale of Two Cities | Charles Dickens | - * - * @param array $row - * @param string $cellFormat - */ - private function renderRow(array $row, $cellFormat) - { - if (empty($row)) { - return; - } - - $this->renderColumnSeparator(); - for ($column = 0, $count = $this->getNumberOfColumns(); $column < $count; $column++) { - $this->renderCell($row, $column, $cellFormat); - $this->renderColumnSeparator(); - } - $this->output->writeln(''); - } - - /** - * Renders table cell with padding. - * - * @param array $row - * @param int $column - * @param string $cellFormat - */ - private function renderCell(array $row, $column, $cellFormat) - { - $cell = isset($row[$column]) ? $row[$column] : ''; - $width = $this->getColumnWidth($column); - - // str_pad won't work properly with multi-byte strings, we need to fix the padding - if (function_exists('mb_strwidth') && false !== $encoding = mb_detect_encoding($cell)) { - $width += strlen($cell) - mb_strwidth($cell, $encoding); - } - - $width += Helper::strlen($cell) - Helper::strlenWithoutDecoration($this->output->getFormatter(), $cell); - - $content = sprintf($this->style->getCellRowContentFormat(), $cell); - - $this->output->write(sprintf($cellFormat, str_pad($content, $width, $this->style->getPaddingChar(), $this->style->getPadType()))); - } - - /** - * Gets number of columns for this table. - * - * @return int - */ - private function getNumberOfColumns() - { - if (null !== $this->numberOfColumns) { - return $this->numberOfColumns; - } - - $columns = array(count($this->headers)); - foreach ($this->rows as $row) { - $columns[] = count($row); - } - - return $this->numberOfColumns = max($columns); - } - - /** - * Gets column width. - * - * @param int $column - * - * @return int - */ - private function getColumnWidth($column) - { - if (isset($this->columnWidths[$column])) { - return $this->columnWidths[$column]; - } - - $lengths = array($this->getCellWidth($this->headers, $column)); - foreach ($this->rows as $row) { - if ($row instanceof TableSeparator) { - continue; - } - - $lengths[] = $this->getCellWidth($row, $column); - } - - return $this->columnWidths[$column] = max($lengths) + strlen($this->style->getCellRowContentFormat()) - 2; - } - - /** - * Gets cell width. - * - * @param array $row - * @param int $column - * - * @return int - */ - private function getCellWidth(array $row, $column) - { - return isset($row[$column]) ? Helper::strlenWithoutDecoration($this->output->getFormatter(), $row[$column]) : 0; - } - - /** - * Called after rendering to cleanup cache data. - */ - private function cleanup() - { - $this->columnWidths = array(); - $this->numberOfColumns = null; - } - - private static function initStyles() - { - $borderless = new TableStyle(); - $borderless - ->setHorizontalBorderChar('=') - ->setVerticalBorderChar(' ') - ->setCrossingChar(' ') - ; - - $compact = new TableStyle(); - $compact - ->setHorizontalBorderChar('') - ->setVerticalBorderChar(' ') - ->setCrossingChar('') - ->setCellRowContentFormat('%s') - ; - - return array( - 'default' => new TableStyle(), - 'borderless' => $borderless, - 'compact' => $compact, - ); - } -} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.json b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.json deleted file mode 100644 index 7f8d92eefc1e..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.json +++ /dev/null @@ -1 +0,0 @@ -{"commands":[{"name":"help","usage":"help [--xml] [--format=\"...\"] [--raw] [command_name]","description":"Displays help for a command","help":"The help<\/info> command displays help for a given command:\n\n php app\/console help list<\/info>\n\nYou can also output the help in other formats by using the --format<\/comment> option:\n\n php app\/console help --format=xml list<\/info>\n\nTo display the list of available commands, please use the list<\/info> command.","aliases":[],"definition":{"arguments":{"command_name":{"name":"command_name","is_required":false,"is_array":false,"description":"The command name","default":"help"}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output help as XML","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output help in other formats","default":"txt"},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command help","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"list","usage":"list [--xml] [--raw] [--format=\"...\"] [namespace]","description":"Lists commands","help":"The list<\/info> command lists all commands:\n\n php app\/console list<\/info>\n\nYou can also display the commands for a specific namespace:\n\n php app\/console list test<\/info>\n\nYou can also output the information in other formats by using the --format<\/comment> option:\n\n php app\/console list --format=xml<\/info>\n\nIt's also possible to get raw list of commands (useful for embedding command runner):\n\n php app\/console list --raw<\/info>","aliases":[],"definition":{"arguments":{"namespace":{"name":"namespace","is_required":false,"is_array":false,"description":"The namespace name","default":null}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output list as XML","default":false},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command list","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output list in other formats","default":"txt"}}}}],"namespaces":[{"id":"_global","commands":["help","list"]}]} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.txt deleted file mode 100644 index f3a1968effc7..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.txt +++ /dev/null @@ -1,17 +0,0 @@ -Console Tool - -Usage: - command [options] [arguments] - -Options: - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Available commands: - help Displays help for a command - list Lists commands diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.json b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.json deleted file mode 100644 index 1655d47e6215..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.json +++ /dev/null @@ -1 +0,0 @@ -{"commands":[{"name":"help","usage":"help [--xml] [--format=\"...\"] [--raw] [command_name]","description":"Displays help for a command","help":"The help<\/info> command displays help for a given command:\n\n php app\/console help list<\/info>\n\nYou can also output the help in other formats by using the --format<\/comment> option:\n\n php app\/console help --format=xml list<\/info>\n\nTo display the list of available commands, please use the list<\/info> command.","aliases":[],"definition":{"arguments":{"command_name":{"name":"command_name","is_required":false,"is_array":false,"description":"The command name","default":"help"}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output help as XML","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output help in other formats","default":"txt"},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command help","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"list","usage":"list [--xml] [--raw] [--format=\"...\"] [namespace]","description":"Lists commands","help":"The list<\/info> command lists all commands:\n\n php app\/console list<\/info>\n\nYou can also display the commands for a specific namespace:\n\n php app\/console list test<\/info>\n\nYou can also output the information in other formats by using the --format<\/comment> option:\n\n php app\/console list --format=xml<\/info>\n\nIt's also possible to get raw list of commands (useful for embedding command runner):\n\n php app\/console list --raw<\/info>","aliases":[],"definition":{"arguments":{"namespace":{"name":"namespace","is_required":false,"is_array":false,"description":"The namespace name","default":null}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output list as XML","default":false},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command list","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output list in other formats","default":"txt"}}}},{"name":"descriptor:command1","usage":"descriptor:command1","description":"command 1 description","help":"command 1 help","aliases":["alias1","alias2"],"definition":{"arguments":[],"options":{"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"descriptor:command2","usage":"descriptor:command2 [-o|--option_name] argument_name","description":"command 2 description","help":"command 2 help","aliases":[],"definition":{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}}],"namespaces":[{"id":"_global","commands":["alias1","alias2","help","list"]},{"id":"descriptor","commands":["descriptor:command1","descriptor:command2"]}]} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.txt deleted file mode 100644 index a640a8d2d2e0..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.txt +++ /dev/null @@ -1,22 +0,0 @@ -My Symfony application version v1.0 - -Usage: - command [options] [arguments] - -Options: - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Available commands: - alias1 command 1 description - alias2 command 1 description - help Displays help for a command - list Lists commands -descriptor - descriptor:command1 command 1 description - descriptor:command2 command 2 description diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_astext1.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_astext1.txt deleted file mode 100644 index d9734fe30a41..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_astext1.txt +++ /dev/null @@ -1,20 +0,0 @@ -Console Tool - -Usage: - command [options] [arguments] - -Options: - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Available commands: - afoobar The foo:bar command - help Displays help for a command - list Lists commands -foo - foo:bar The foo:bar command diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_astext2.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_astext2.txt deleted file mode 100644 index 49992cfe3b62..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_astext2.txt +++ /dev/null @@ -1,16 +0,0 @@ -Console Tool - -Usage: - command [options] [arguments] - -Options: - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Available commands for the "foo" namespace: - foo:bar The foo:bar command diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_run1.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_run1.txt deleted file mode 100644 index 9bd08b5474c6..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_run1.txt +++ /dev/null @@ -1,17 +0,0 @@ -Console Tool - -Usage: - command [options] [arguments] - -Options: - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Available commands: - help Displays help for a command - list Lists commands diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_run2.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_run2.txt deleted file mode 100644 index 6963c0f164ef..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_run2.txt +++ /dev/null @@ -1,29 +0,0 @@ -Usage: - help [--xml] [--format="..."] [--raw] [command_name] - -Arguments: - command The command to execute - command_name The command name (default: "help") - -Options: - --xml To output help as XML - --format To output help in other formats (default: "txt") - --raw To output raw command help - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Help: - The help command displays help for a given command: - - php app/console help list - - You can also output the help in other formats by using the --format option: - - php app/console help --format=xml list - - To display the list of available commands, please use the list command. diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_1.json b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_1.json deleted file mode 100644 index 0c1675dbcef4..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_1.json +++ /dev/null @@ -1 +0,0 @@ -{"name":"descriptor:command1","usage":"descriptor:command1","description":"command 1 description","help":"command 1 help","aliases":["alias1","alias2"],"definition":{"arguments":[],"options":[]}} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_1.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_1.txt deleted file mode 100644 index 2375ac0e63d8..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_1.txt +++ /dev/null @@ -1,7 +0,0 @@ -Usage: - descriptor:command1 - -Aliases: alias1, alias2 - -Help: - command 1 help diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_2.json b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_2.json deleted file mode 100644 index 493b584669ef..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_2.json +++ /dev/null @@ -1 +0,0 @@ -{"name":"descriptor:command2","usage":"descriptor:command2 [-o|--option_name] argument_name","description":"command 2 description","help":"command 2 help","aliases":[],"definition":{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false}}}} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_2.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_2.txt deleted file mode 100644 index 1da9f3d29fa0..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_2.txt +++ /dev/null @@ -1,11 +0,0 @@ -Usage: - descriptor:command2 [-o|--option_name] argument_name - -Arguments: - argument_name - -Options: - --option_name (-o) - -Help: - command 2 help diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_astext.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_astext.txt deleted file mode 100644 index 5d703512f766..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/command_astext.txt +++ /dev/null @@ -1,18 +0,0 @@ -Usage: - namespace:name - -Aliases: name -Arguments: - command The command to execute - -Options: - --help (-h) Display this help message - --quiet (-q) Do not output any message - --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug - --version (-V) Display this application version - --ansi Force ANSI output - --no-ansi Disable ANSI output - --no-interaction (-n) Do not ask any interactive question - -Help: - help diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/definition_astext.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/definition_astext.txt deleted file mode 100644 index a7d7e0d5134e..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/definition_astext.txt +++ /dev/null @@ -1,11 +0,0 @@ -Arguments: - foo The foo argument - baz The baz argument (default: true) - bar The bar argument (default: ["http://foo.com/"]) - -Options: - --foo (-f) The foo option - --baz The baz option (default: false) - --bar (-b) The bar option (default: "bar") - --qux The qux option (default: ["http://foo.com/","bar"]) (multiple values allowed) - --qux2 The qux2 option (default: {"foo":"bar"}) (multiple values allowed) diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_1.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_1.txt deleted file mode 100644 index 111e5157f892..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_1.txt +++ /dev/null @@ -1 +0,0 @@ - argument_name diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_2.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_2.txt deleted file mode 100644 index 9497b1ce01a9..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_2.txt +++ /dev/null @@ -1 +0,0 @@ - argument_name argument description diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_3.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_3.txt deleted file mode 100644 index c421fc9117ca..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_argument_3.txt +++ /dev/null @@ -1 +0,0 @@ - argument_name argument description (default: "default_value") diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_definition_3.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_definition_3.txt deleted file mode 100644 index c6fb2ccc7b5b..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_definition_3.txt +++ /dev/null @@ -1,2 +0,0 @@ -Options: - --option_name (-o) diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_definition_4.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_definition_4.txt deleted file mode 100644 index e17c61c3adf4..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_definition_4.txt +++ /dev/null @@ -1,5 +0,0 @@ -Arguments: - argument_name - -Options: - --option_name (-o) diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_1.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_1.txt deleted file mode 100644 index daf83d07ea74..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_1.txt +++ /dev/null @@ -1 +0,0 @@ - --option_name (-o) diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_2.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_2.txt deleted file mode 100644 index 627e3c1ce5db..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_2.txt +++ /dev/null @@ -1 +0,0 @@ - --option_name (-o) option description (default: "default_value") diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_3.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_3.txt deleted file mode 100644 index b88b12d2b3e7..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_3.txt +++ /dev/null @@ -1 +0,0 @@ - --option_name (-o) option description diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_4.txt b/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_4.txt deleted file mode 100644 index 5dba5e6e8742..000000000000 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/input_option_4.txt +++ /dev/null @@ -1 +0,0 @@ - --option_name (-o) option description (multiple values allowed) diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tester/ApplicationTester.php b/core/vendor/symfony/console/Tester/ApplicationTester.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tester/ApplicationTester.php rename to core/vendor/symfony/console/Tester/ApplicationTester.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tester/CommandTester.php b/core/vendor/symfony/console/Tester/CommandTester.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tester/CommandTester.php rename to core/vendor/symfony/console/Tester/CommandTester.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/ApplicationTest.php b/core/vendor/symfony/console/Tests/ApplicationTest.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/ApplicationTest.php rename to core/vendor/symfony/console/Tests/ApplicationTest.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/CommandTest.php b/core/vendor/symfony/console/Tests/Command/CommandTest.php similarity index 98% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/CommandTest.php rename to core/vendor/symfony/console/Tests/Command/CommandTest.php index c35617d19ab3..08761163eb2d 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/CommandTest.php +++ b/core/vendor/symfony/console/Tests/Command/CommandTest.php @@ -154,8 +154,8 @@ class CommandTest extends \PHPUnit_Framework_TestCase { $command = new \TestCommand(); $command->addOption('foo'); - $command->addArgument('foo'); - $this->assertEquals('namespace:name [--foo] [foo]', $command->getSynopsis(), '->getSynopsis() returns the synopsis'); + $command->addArgument('bar'); + $this->assertEquals('namespace:name [--foo] [--] []', $command->getSynopsis(), '->getSynopsis() returns the synopsis'); } public function testGetHelper() diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/HelpCommandTest.php b/core/vendor/symfony/console/Tests/Command/HelpCommandTest.php similarity index 52% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/HelpCommandTest.php rename to core/vendor/symfony/console/Tests/Command/HelpCommandTest.php index ea69c8ba3b50..9e068587f82b 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/HelpCommandTest.php +++ b/core/vendor/symfony/console/Tests/Command/HelpCommandTest.php @@ -23,8 +23,10 @@ class HelpCommandTest extends \PHPUnit_Framework_TestCase $command = new HelpCommand(); $command->setApplication(new Application()); $commandTester = new CommandTester($command); - $commandTester->execute(array('command_name' => 'li')); - $this->assertRegExp('/list \[--xml\] \[--raw\] \[--format="\.\.\."\] \[namespace\]/', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias'); + $commandTester->execute(array('command_name' => 'li'), array('decorated' => false)); + $this->assertContains('list [options] [--] []', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias'); + $this->assertContains('format=FORMAT', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias'); + $this->assertContains('raw', $commandTester->getDisplay(), '->execute() returns a text help for the given command alias'); } public function testExecuteForCommand() @@ -32,8 +34,10 @@ class HelpCommandTest extends \PHPUnit_Framework_TestCase $command = new HelpCommand(); $commandTester = new CommandTester($command); $command->setCommand(new ListCommand()); - $commandTester->execute(array()); - $this->assertRegExp('/list \[--xml\] \[--raw\] \[--format="\.\.\."\] \[namespace\]/', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $commandTester->execute(array(), array('decorated' => false)); + $this->assertContains('list [options] [--] []', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $this->assertContains('format=FORMAT', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $this->assertContains('raw', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); } public function testExecuteForCommandWithXmlOption() @@ -42,7 +46,7 @@ class HelpCommandTest extends \PHPUnit_Framework_TestCase $commandTester = new CommandTester($command); $command->setCommand(new ListCommand()); $commandTester->execute(array('--format' => 'xml')); - $this->assertRegExp('/getDisplay(), '->execute() returns an XML help text if --xml is passed'); + $this->assertContains('getDisplay(), '->execute() returns an XML help text if --xml is passed'); } public function testExecuteForApplicationCommand() @@ -50,7 +54,9 @@ class HelpCommandTest extends \PHPUnit_Framework_TestCase $application = new Application(); $commandTester = new CommandTester($application->get('help')); $commandTester->execute(array('command_name' => 'list')); - $this->assertRegExp('/list \[--xml\] \[--raw\] \[--format="\.\.\."\] \[namespace\]/', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $this->assertContains('list [options] [--] []', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $this->assertContains('format=FORMAT', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $this->assertContains('raw', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); } public function testExecuteForApplicationCommandWithXmlOption() @@ -58,7 +64,7 @@ class HelpCommandTest extends \PHPUnit_Framework_TestCase $application = new Application(); $commandTester = new CommandTester($application->get('help')); $commandTester->execute(array('command_name' => 'list', '--format' => 'xml')); - $this->assertRegExp('/list \[--xml\] \[--raw\] \[--format="\.\.\."\] \[namespace\]/', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); - $this->assertRegExp('/getDisplay(), '->execute() returns an XML help text if --format=xml is passed'); + $this->assertContains('list [--xml] [--raw] [--format FORMAT] [--] [<namespace>]', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); + $this->assertContains('getDisplay(), '->execute() returns an XML help text if --format=xml is passed'); } } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/ListCommandTest.php b/core/vendor/symfony/console/Tests/Command/ListCommandTest.php similarity index 93% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/ListCommandTest.php rename to core/vendor/symfony/console/Tests/Command/ListCommandTest.php index fbb9feeb6873..3578d48856af 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Command/ListCommandTest.php +++ b/core/vendor/symfony/console/Tests/Command/ListCommandTest.php @@ -22,7 +22,7 @@ class ListCommandTest extends \PHPUnit_Framework_TestCase $commandTester = new CommandTester($command = $application->get('list')); $commandTester->execute(array('command' => $command->getName()), array('decorated' => false)); - $this->assertRegExp('/help Displays help for a command/', $commandTester->getDisplay(), '->execute() returns a list of available commands'); + $this->assertRegExp('/help\s{2,}Displays help for a command/', $commandTester->getDisplay(), '->execute() returns a list of available commands'); } public function testExecuteListsCommandsWithXmlOption() diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/AbstractDescriptorTest.php b/core/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php similarity index 97% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/AbstractDescriptorTest.php rename to core/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php index 406c6599ba1e..f582e7f5ad79 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/AbstractDescriptorTest.php +++ b/core/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php @@ -96,7 +96,7 @@ abstract class AbstractDescriptorTest extends \PHPUnit_Framework_TestCase return $data; } - private function assertDescription($expectedDescription, $describedObject) + protected function assertDescription($expectedDescription, $describedObject) { $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, true); $this->getDescriptor()->describe($output, $describedObject, array('raw_output' => true)); diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/JsonDescriptorTest.php b/core/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php similarity index 54% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/JsonDescriptorTest.php rename to core/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php index 943ea2956a6b..f9a15612b3f9 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/JsonDescriptorTest.php +++ b/core/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php @@ -12,6 +12,7 @@ namespace Symfony\Component\Console\Tests\Descriptor; use Symfony\Component\Console\Descriptor\JsonDescriptor; +use Symfony\Component\Console\Output\BufferedOutput; class JsonDescriptorTest extends AbstractDescriptorTest { @@ -24,4 +25,11 @@ class JsonDescriptorTest extends AbstractDescriptorTest { return 'json'; } + + protected function assertDescription($expectedDescription, $describedObject) + { + $output = new BufferedOutput(BufferedOutput::VERBOSITY_NORMAL, true); + $this->getDescriptor()->describe($output, $describedObject, array('raw_output' => true)); + $this->assertEquals(json_decode(trim($expectedDescription), true), json_decode(trim(str_replace(PHP_EOL, "\n", $output->fetch())), true)); + } } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/MarkdownDescriptorTest.php b/core/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/MarkdownDescriptorTest.php rename to core/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/ObjectsProvider.php b/core/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php similarity index 91% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/ObjectsProvider.php rename to core/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php index a3c49d74fe04..1f40d2e6a02e 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/ObjectsProvider.php +++ b/core/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php @@ -30,6 +30,7 @@ class ObjectsProvider 'input_argument_1' => new InputArgument('argument_name', InputArgument::REQUIRED), 'input_argument_2' => new InputArgument('argument_name', InputArgument::IS_ARRAY, 'argument description'), 'input_argument_3' => new InputArgument('argument_name', InputArgument::OPTIONAL, 'argument description', 'default_value'), + 'input_argument_4' => new InputArgument('argument_name', InputArgument::REQUIRED, "multiline\nargument description"), ); } @@ -40,6 +41,7 @@ class ObjectsProvider 'input_option_2' => new InputOption('option_name', 'o', InputOption::VALUE_OPTIONAL, 'option description', 'default_value'), 'input_option_3' => new InputOption('option_name', 'o', InputOption::VALUE_REQUIRED, 'option description'), 'input_option_4' => new InputOption('option_name', 'o', InputOption::VALUE_IS_ARRAY | InputOption::VALUE_OPTIONAL, 'option description', array()), + 'input_option_5' => new InputOption('option_name', 'o', InputOption::VALUE_REQUIRED, "multiline\noption description"), ); } diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/TextDescriptorTest.php b/core/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/TextDescriptorTest.php rename to core/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/XmlDescriptorTest.php b/core/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Descriptor/XmlDescriptorTest.php rename to core/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/BarBucCommand.php b/core/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/BarBucCommand.php rename to core/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorApplication1.php b/core/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorApplication1.php rename to core/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorApplication2.php b/core/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorApplication2.php rename to core/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorCommand1.php b/core/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorCommand1.php rename to core/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorCommand2.php b/core/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php similarity index 89% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorCommand2.php rename to core/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php index bc04ca914127..51106b96116a 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DescriptorCommand2.php +++ b/core/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php @@ -23,6 +23,8 @@ class DescriptorCommand2 extends Command ->setName('descriptor:command2') ->setDescription('command 2 description') ->setHelp('command 2 help') + ->addUsage('-o|--option_name ') + ->addUsage('') ->addArgument('argument_name', InputArgument::REQUIRED) ->addOption('option_name', 'o', InputOption::VALUE_NONE) ; diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DummyOutput.php b/core/vendor/symfony/console/Tests/Fixtures/DummyOutput.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/DummyOutput.php rename to core/vendor/symfony/console/Tests/Fixtures/DummyOutput.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo1Command.php b/core/vendor/symfony/console/Tests/Fixtures/Foo1Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo1Command.php rename to core/vendor/symfony/console/Tests/Fixtures/Foo1Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo2Command.php b/core/vendor/symfony/console/Tests/Fixtures/Foo2Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo2Command.php rename to core/vendor/symfony/console/Tests/Fixtures/Foo2Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo3Command.php b/core/vendor/symfony/console/Tests/Fixtures/Foo3Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo3Command.php rename to core/vendor/symfony/console/Tests/Fixtures/Foo3Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo4Command.php b/core/vendor/symfony/console/Tests/Fixtures/Foo4Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo4Command.php rename to core/vendor/symfony/console/Tests/Fixtures/Foo4Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo5Command.php b/core/vendor/symfony/console/Tests/Fixtures/Foo5Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/Foo5Command.php rename to core/vendor/symfony/console/Tests/Fixtures/Foo5Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FooCommand.php b/core/vendor/symfony/console/Tests/Fixtures/FooCommand.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FooCommand.php rename to core/vendor/symfony/console/Tests/Fixtures/FooCommand.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FooSubnamespaced1Command.php b/core/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FooSubnamespaced1Command.php rename to core/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FooSubnamespaced2Command.php b/core/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FooSubnamespaced2Command.php rename to core/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FoobarCommand.php b/core/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/FoobarCommand.php rename to core/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/TestCommand.php b/core/vendor/symfony/console/Tests/Fixtures/TestCommand.php similarity index 100% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/TestCommand.php rename to core/vendor/symfony/console/Tests/Fixtures/TestCommand.php diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_1.json b/core/vendor/symfony/console/Tests/Fixtures/application_1.json new file mode 100644 index 000000000000..aa4ae9a0dc9d --- /dev/null +++ b/core/vendor/symfony/console/Tests/Fixtures/application_1.json @@ -0,0 +1 @@ +{"commands":[{"name":"help","usage":["help [--xml] [--format FORMAT] [--raw] [--] []"],"description":"Displays help for a command","help":"The help<\/info> command displays help for a given command:\n\n php app\/console help list<\/info>\n\nYou can also output the help in other formats by using the --format<\/comment> option:\n\n php app\/console help --format=xml list<\/info>\n\nTo display the list of available commands, please use the list<\/info> command.","definition":{"arguments":{"command_name":{"name":"command_name","is_required":false,"is_array":false,"description":"The command name","default":"help"}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output help as XML","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output help in other formats","default":"txt"},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command help","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"list","usage":["list [--xml] [--raw] [--format FORMAT] [--] []"],"description":"Lists commands","help":"The list<\/info> command lists all commands:\n\n php app\/console list<\/info>\n\nYou can also display the commands for a specific namespace:\n\n php app\/console list test<\/info>\n\nYou can also output the information in other formats by using the --format<\/comment> option:\n\n php app\/console list --format=xml<\/info>\n\nIt's also possible to get raw list of commands (useful for embedding command runner):\n\n php app\/console list --raw<\/info>","definition":{"arguments":{"namespace":{"name":"namespace","is_required":false,"is_array":false,"description":"The namespace name","default":null}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output list as XML","default":false},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command list","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output list in other formats","default":"txt"}}}}],"namespaces":[{"id":"_global","commands":["help","list"]}]} diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.md b/core/vendor/symfony/console/Tests/Fixtures/application_1.md similarity index 95% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.md rename to core/vendor/symfony/console/Tests/Fixtures/application_1.md index e3804162df34..c38906138923 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.md +++ b/core/vendor/symfony/console/Tests/Fixtures/application_1.md @@ -8,8 +8,9 @@ help ---- * Description: Displays help for a command -* Usage: `help [--xml] [--format="..."] [--raw] [command_name]` -* Aliases: +* Usage: + + * `help [--xml] [--format FORMAT] [--raw] [--] []` The help command displays help for a given command: @@ -137,8 +138,9 @@ list ---- * Description: Lists commands -* Usage: `list [--xml] [--raw] [--format="..."] [namespace]` -* Aliases: +* Usage: + + * `list [--xml] [--raw] [--format FORMAT] [--] []` The list command lists all commands: diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_1.txt b/core/vendor/symfony/console/Tests/Fixtures/application_1.txt new file mode 100644 index 000000000000..c4cf8f2164cf --- /dev/null +++ b/core/vendor/symfony/console/Tests/Fixtures/application_1.txt @@ -0,0 +1,17 @@ +Console Tool + +Usage: + command [options] [arguments] + +Options: + -h, --help Display this help message + -q, --quiet Do not output any message + -V, --version Display this application version + --ansi Force ANSI output + --no-ansi Disable ANSI output + -n, --no-interaction Do not ask any interactive question + -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug + +Available commands: + help Displays help for a command + list Lists commands diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.xml b/core/vendor/symfony/console/Tests/Fixtures/application_1.xml similarity index 95% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.xml rename to core/vendor/symfony/console/Tests/Fixtures/application_1.xml index 176310886f1d..ed84905a0686 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_1.xml +++ b/core/vendor/symfony/console/Tests/Fixtures/application_1.xml @@ -2,7 +2,9 @@ - help [--xml] [--format="..."] [--raw] [command_name] + + help [--xml] [--format FORMAT] [--raw] [--] [<command_name>] + Displays help for a command The <info>help</info> command displays help for a given command: @@ -13,7 +15,6 @@ <info>php app/console help --format=xml list</info> To display the list of available commands, please use the <info>list</info> command. - The command name @@ -59,7 +60,9 @@ - list [--xml] [--raw] [--format="..."] [namespace] + + list [--xml] [--raw] [--format FORMAT] [--] [<namespace>] + Lists commands The <info>list</info> command lists all commands: @@ -76,7 +79,6 @@ It's also possible to get raw list of commands (useful for embedding command runner): <info>php app/console list --raw</info> - The namespace name diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_2.json b/core/vendor/symfony/console/Tests/Fixtures/application_2.json new file mode 100644 index 000000000000..241d4813b98b --- /dev/null +++ b/core/vendor/symfony/console/Tests/Fixtures/application_2.json @@ -0,0 +1 @@ +{"commands":[{"name":"help","usage":["help [--xml] [--format FORMAT] [--raw] [--] []"],"description":"Displays help for a command","help":"The help<\/info> command displays help for a given command:\n\n php app\/console help list<\/info>\n\nYou can also output the help in other formats by using the --format<\/comment> option:\n\n php app\/console help --format=xml list<\/info>\n\nTo display the list of available commands, please use the list<\/info> command.","definition":{"arguments":{"command_name":{"name":"command_name","is_required":false,"is_array":false,"description":"The command name","default":"help"}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output help as XML","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output help in other formats","default":"txt"},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command help","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"list","usage":["list [--xml] [--raw] [--format FORMAT] [--] []"],"description":"Lists commands","help":"The list<\/info> command lists all commands:\n\n php app\/console list<\/info>\n\nYou can also display the commands for a specific namespace:\n\n php app\/console list test<\/info>\n\nYou can also output the information in other formats by using the --format<\/comment> option:\n\n php app\/console list --format=xml<\/info>\n\nIt's also possible to get raw list of commands (useful for embedding command runner):\n\n php app\/console list --raw<\/info>","definition":{"arguments":{"namespace":{"name":"namespace","is_required":false,"is_array":false,"description":"The namespace name","default":null}},"options":{"xml":{"name":"--xml","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output list as XML","default":false},"raw":{"name":"--raw","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"To output raw command list","default":false},"format":{"name":"--format","shortcut":"","accept_value":true,"is_value_required":true,"is_multiple":false,"description":"To output list in other formats","default":"txt"}}}},{"name":"descriptor:command1","usage":["descriptor:command1", "alias1", "alias2"],"description":"command 1 description","help":"command 1 help","definition":{"arguments":[],"options":{"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}},{"name":"descriptor:command2","usage":["descriptor:command2 [-o|--option_name] [--] ", "descriptor:command2 -o|--option_name ", "descriptor:command2 "],"description":"command 2 description","help":"command 2 help","definition":{"arguments":{"argument_name":{"name":"argument_name","is_required":true,"is_array":false,"description":"","default":null}},"options":{"option_name":{"name":"--option_name","shortcut":"-o","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"","default":false},"help":{"name":"--help","shortcut":"-h","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this help message","default":false},"quiet":{"name":"--quiet","shortcut":"-q","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not output any message","default":false},"verbose":{"name":"--verbose","shortcut":"-v|-vv|-vvv","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug","default":false},"version":{"name":"--version","shortcut":"-V","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Display this application version","default":false},"ansi":{"name":"--ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Force ANSI output","default":false},"no-ansi":{"name":"--no-ansi","shortcut":"","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Disable ANSI output","default":false},"no-interaction":{"name":"--no-interaction","shortcut":"-n","accept_value":false,"is_value_required":false,"is_multiple":false,"description":"Do not ask any interactive question","default":false}}}}],"namespaces":[{"id":"_global","commands":["alias1","alias2","help","list"]},{"id":"descriptor","commands":["descriptor:command1","descriptor:command2"]}]} \ No newline at end of file diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.md b/core/vendor/symfony/console/Tests/Fixtures/application_2.md similarity index 94% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.md rename to core/vendor/symfony/console/Tests/Fixtures/application_2.md index 7492886ea3a0..8e0bfd350253 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.md +++ b/core/vendor/symfony/console/Tests/Fixtures/application_2.md @@ -15,8 +15,9 @@ help ---- * Description: Displays help for a command -* Usage: `help [--xml] [--format="..."] [--raw] [command_name]` -* Aliases: +* Usage: + + * `help [--xml] [--format FORMAT] [--raw] [--] []` The help command displays help for a given command: @@ -144,8 +145,9 @@ list ---- * Description: Lists commands -* Usage: `list [--xml] [--raw] [--format="..."] [namespace]` -* Aliases: +* Usage: + + * `list [--xml] [--raw] [--format FORMAT] [--] []` The list command lists all commands: @@ -209,8 +211,11 @@ descriptor:command1 ------------------- * Description: command 1 description -* Usage: `descriptor:command1` -* Aliases: `alias1`, `alias2` +* Usage: + + * `descriptor:command1` + * `alias1` + * `alias2` command 1 help @@ -290,8 +295,11 @@ descriptor:command2 ------------------- * Description: command 2 description -* Usage: `descriptor:command2 [-o|--option_name] argument_name` -* Aliases: +* Usage: + + * `descriptor:command2 [-o|--option_name] [--] ` + * `descriptor:command2 -o|--option_name ` + * `descriptor:command2 ` command 2 help diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_2.txt b/core/vendor/symfony/console/Tests/Fixtures/application_2.txt new file mode 100644 index 000000000000..292aa829d809 --- /dev/null +++ b/core/vendor/symfony/console/Tests/Fixtures/application_2.txt @@ -0,0 +1,22 @@ +My Symfony application version v1.0 + +Usage: + command [options] [arguments] + +Options: + -h, --help Display this help message + -q, --quiet Do not output any message + -V, --version Display this application version + --ansi Force ANSI output + --no-ansi Disable ANSI output + -n, --no-interaction Do not ask any interactive question + -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug + +Available commands: + alias1 command 1 description + alias2 command 1 description + help Displays help for a command + list Lists commands + descriptor + descriptor:command1 command 1 description + descriptor:command2 command 2 description diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.xml b/core/vendor/symfony/console/Tests/Fixtures/application_2.xml similarity index 92% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.xml rename to core/vendor/symfony/console/Tests/Fixtures/application_2.xml index a7d65b4f86ce..18e5db1f64a5 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_2.xml +++ b/core/vendor/symfony/console/Tests/Fixtures/application_2.xml @@ -2,7 +2,9 @@ - help [--xml] [--format="..."] [--raw] [command_name] + + help [--xml] [--format FORMAT] [--raw] [--] [<command_name>] + Displays help for a command The <info>help</info> command displays help for a given command: @@ -13,7 +15,6 @@ <info>php app/console help --format=xml list</info> To display the list of available commands, please use the <info>list</info> command. - The command name @@ -59,7 +60,9 @@ - list [--xml] [--raw] [--format="..."] [namespace] + + list [--xml] [--raw] [--format FORMAT] [--] [<namespace>] + Lists commands The <info>list</info> command lists all commands: @@ -76,7 +79,6 @@ It's also possible to get raw list of commands (useful for embedding command runner): <info>php app/console list --raw</info> - The namespace name @@ -99,13 +101,13 @@ - descriptor:command1 + + descriptor:command1 + alias1 + alias2 + command 1 description command 1 help - - alias1 - alias2 - - descriptor:command2 [-o|--option_name] argument_name + + descriptor:command2 [-o|--option_name] [--] <argument_name> + descriptor:command2 -o|--option_name <argument_name> + descriptor:command2 <argument_name> + command 2 description command 2 help - diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_astext1.txt b/core/vendor/symfony/console/Tests/Fixtures/application_astext1.txt new file mode 100644 index 000000000000..19dacb23bf7b --- /dev/null +++ b/core/vendor/symfony/console/Tests/Fixtures/application_astext1.txt @@ -0,0 +1,20 @@ +Console Tool + +Usage: + command [options] [arguments] + +Options: + -h, --help Display this help message + -q, --quiet Do not output any message + -V, --version Display this application version + --ansi Force ANSI output + --no-ansi Disable ANSI output + -n, --no-interaction Do not ask any interactive question + -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug + +Available commands: + afoobar The foo:bar command + help Displays help for a command + list Lists commands + foo + foo:bar The foo:bar command diff --git a/core/vendor/symfony/console/Tests/Fixtures/application_astext2.txt b/core/vendor/symfony/console/Tests/Fixtures/application_astext2.txt new file mode 100644 index 000000000000..c99ccdda7a6c --- /dev/null +++ b/core/vendor/symfony/console/Tests/Fixtures/application_astext2.txt @@ -0,0 +1,16 @@ +Console Tool + +Usage: + command [options] [arguments] + +Options: + -h, --help Display this help message + -q, --quiet Do not output any message + -V, --version Display this application version + --ansi Force ANSI output + --no-ansi Disable ANSI output + -n, --no-interaction Do not ask any interactive question + -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug + +Available commands for the "foo" namespace: + foo:bar The foo:bar command diff --git a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_asxml1.txt b/core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt similarity index 94% rename from core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_asxml1.txt rename to core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt index d9567819a17f..edc9d3f894ac 100644 --- a/core/vendor/symfony/console/Symfony/Component/Console/Tests/Fixtures/application_asxml1.txt +++ b/core/vendor/symfony/console/Tests/Fixtures/application_asxml1.txt @@ -2,7 +2,9 @@ - help [--xml] [--format="..."] [--raw] [command_name] + + help [--xml] [--format FORMAT] [--raw] [--] [<command_name>] + Displays help for a command The <info>help</info> command displays help for a given command: @@ -13,7 +15,6 @@ <info>php app/console help --format=xml list</info> To display the list of available commands, please use the <info>list</info> command. - The command name @@ -59,7 +60,9 @@ - list [--xml] [--raw] [--format="..."] [namespace] + + list [--xml] [--raw] [--format FORMAT] [--] [<namespace>] + Lists commands The <info>list</info> command lists all commands: @@ -76,7 +79,6 @@ It's also possible to get raw list of commands (useful for embedding command runner): <info>php app/console list --raw</info> - The namespace name @@ -99,12 +101,12 @@ - foo:bar + + foo:bar + afoobar + The foo:bar command - - afoobar -