diff --git a/composer.json b/composer.json index 71c714f49b1b1307bd9d3f9f83704119fde1d2f3..974dc0e52ca1fc56d64c0153cc12ae2e876050b7 100644 --- a/composer.json +++ b/composer.json @@ -20,7 +20,7 @@ "doctrine/common": "dev-master#a45d110f71c323e29f41eb0696fa230e3fa1b1b5", "doctrine/annotations": "1.2.*", "guzzlehttp/guzzle": "~5.0", - "symfony-cmf/routing": "1.2.*", + "symfony-cmf/routing": "1.3.*", "easyrdf/easyrdf": "0.8.*", "phpunit/phpunit": "4.1.*", "phpunit/phpunit-mock-objects": "dev-master#e60bb929c50ae4237aaf680a4f6773f4ee17f0a2", diff --git a/composer.lock b/composer.lock index f933c55868b9f98c4f57386eff2cbb8cd0824999..698a46528ed624c99d156b12ba2b04b4c5121212 100644 --- a/composer.lock +++ b/composer.lock @@ -1586,17 +1586,16 @@ }, { "name": "symfony-cmf/routing", - "version": "1.2.0", - "target-dir": "Symfony/Cmf/Component/Routing", + "version": "1.3.0", "source": { "type": "git", "url": "https://github.com/symfony-cmf/Routing.git", - "reference": "c67258b875eef3cb08009bf1428499d0f01ce5e7" + "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/c67258b875eef3cb08009bf1428499d0f01ce5e7", - "reference": "c67258b875eef3cb08009bf1428499d0f01ce5e7", + "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/8e87981d72c6930a27585dcd3119f3199f6cb2a6", + "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6", "shasum": "" }, "require": { @@ -1607,7 +1606,7 @@ }, "require-dev": { "symfony/config": "~2.2", - "symfony/dependency-injection": "~2.0", + "symfony/dependency-injection": "~2.0@stable", "symfony/event-dispatcher": "~2.1" }, "suggest": { @@ -1616,12 +1615,12 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.3-dev" } }, "autoload": { - "psr-0": { - "Symfony\\Cmf\\Component\\Routing": "" + "psr-4": { + "Symfony\\Cmf\\Component\\Routing\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1640,7 +1639,7 @@ "database", "routing" ], - "time": "2014-05-08 19:37:14" + "time": "2014-10-20 20:55:17" }, { "name": "symfony/class-loader", diff --git a/core/lib/Drupal/Core/Routing/LazyLoadingRouteCollection.php b/core/lib/Drupal/Core/Routing/LazyLoadingRouteCollection.php deleted file mode 100644 index c1aa4a2f9319e3d264d592257b0ae80496c53244..0000000000000000000000000000000000000000 --- a/core/lib/Drupal/Core/Routing/LazyLoadingRouteCollection.php +++ /dev/null @@ -1,147 +0,0 @@ -<?php - -/** - * @file - * Contains \Drupal\Core\Routing\LazyLoadingRouteCollection. - */ - -namespace Drupal\Core\Routing; - -use Drupal\Core\Database\Connection; -use Iterator; - -/** - * Provides a route collection that lists all routes of drupal. - * - * Internally this does load multiple routes over time, so it never have all the - * routes stored in memory. - */ -class LazyLoadingRouteCollection implements Iterator { - - /** - * Stores the current loaded routes. - * - * @var \Symfony\Component\Routing\Route[] - */ - protected $elements; - - /** - * Contains the amount of route which are loaded on each sql query. - */ - const ROUTE_LOADED_PER_TIME = 50; - - /** - * Contains the current item the iterator points to. - * - * @var int - */ - protected $currentRoute = 0; - - /** - * The database connection. - * - * @var \Drupal\Core\Database\Connection - */ - protected $database; - - /** - * The name of the SQL table from which to read the routes. - * - * @var string - */ - protected $tableName; - - /** - * The number of routes in the router table. - * - * @var int - */ - protected $count; - - /** - * Creates a LazyLoadingRouteCollection instance. - * - * @param \Drupal\Core\Database\Connection $database - * The database connection. - * @param string $table - * (optional) The table to retrieve the route information. - */ - public function __construct(Connection $database, $table = 'router') { - $this->database = $database; - $this->tableName = $table; - } - - /** - * Loads the next routes into the elements array. - * - * @param int $offset - * The offset used in the db query. - */ - protected function loadNextElements($offset) { - $this->elements = array(); - - $query = $this->database->select($this->tableName); - $query->addField($this->tableName, 'name'); - $query->addField($this->tableName, 'route'); - $query->orderBy('name', 'ASC'); - $query->range($offset, static::ROUTE_LOADED_PER_TIME); - $result = $query->execute()->fetchAllKeyed(); - - $routes = array(); - foreach ($result as $name => $route) { - $routes[$name] = unserialize($route); - } - $this->elements = $routes; - } - - /** - * {@inheritdoc} - */ - public function count() { - if (!isset($this->count)) { - $this->count = (int) $this->database->select($this->tableName)->countQuery()->execute(); - } - return $this->count; - } - - /** - * {@inheritdoc} - */ - public function current() { - return current($this->elements); - } - - /** - * {@inheritdoc} - */ - public function next() { - $result = next($this->elements); - if ($result === FALSE) { - $this->loadNextElements($this->currentRoute + 1); - } - $this->currentRoute++; - } - - /** - * {@inheritdoc} - */ - public function key() { - return key($this->elements); - } - - /** - * {@inheritdoc} - */ - public function valid() { - return key($this->elements); - } - - /** - * {@inheritdoc} - */ - public function rewind() { - $this->currentRoute = 0; - $this->loadNextElements($this->currentRoute); - } - -} diff --git a/core/lib/Drupal/Core/Routing/RouteProvider.php b/core/lib/Drupal/Core/Routing/RouteProvider.php index cc0682a43a2099bf0dac52f308d861575ed63832..da9dc1bcd83fbecf7b226c572330d172102bba87 100644 --- a/core/lib/Drupal/Core/Routing/RouteProvider.php +++ b/core/lib/Drupal/Core/Routing/RouteProvider.php @@ -9,6 +9,8 @@ use Drupal\Component\Utility\String; use Drupal\Core\State\StateInterface; +use Symfony\Cmf\Component\Routing\PagedRouteCollection; +use Symfony\Cmf\Component\Routing\PagedRouteProviderInterface; use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Routing\Exception\RouteNotFoundException; @@ -20,7 +22,7 @@ /** * A Route Provider front-end for all Drupal-stored routes. */ -class RouteProvider implements RouteProviderInterface, EventSubscriberInterface { +class RouteProvider implements RouteProviderInterface, PagedRouteProviderInterface, EventSubscriberInterface { /** * The database connection from which to read route information. @@ -306,7 +308,7 @@ protected function getRoutesByPath($path) { * {@inheritdoc} */ public function getAllRoutes() { - return new LazyLoadingRouteCollection($this->connection, $this->tableName); + return new PagedRouteCollection($this); } /** @@ -324,4 +326,32 @@ static function getSubscribedEvents() { return $events; } + /** + * {@inheritdoc} + */ + public function getRoutesPaged($offset, $length = NULL) { + $select = $this->connection->select($this->tableName, 'router') + ->fields('router', ['name', 'route']); + + if (isset($length)) { + $select->range($offset, $length); + } + + $routes = $select->execute()->fetchAllKeyed(); + + $result = []; + foreach ($routes as $name => $route) { + $result[$name] = unserialize($route); + } + + return $result; + } + + /** + * {@inheritdoc} + */ + public function getRoutesCount() { + return $this->connection->query("SELECT COUNT(*) FROM {" . $this->connection->escapeTable($this->tableName) . "}")->fetchField(); + } + } diff --git a/core/modules/system/src/Tests/Routing/RouteProviderTest.php b/core/modules/system/src/Tests/Routing/RouteProviderTest.php index b453febaea8ce76c4510d591bdf8c7835192887f..be8862c6724fef08e20c0bb4ad328c9a04709dde 100644 --- a/core/modules/system/src/Tests/Routing/RouteProviderTest.php +++ b/core/modules/system/src/Tests/Routing/RouteProviderTest.php @@ -461,4 +461,31 @@ public function testGetRoutesByPatternWithLongPatterns() { $this->assertEqual(count($candidates), 7); } + /** + * Tests getRoutesPaged(). + */ + public function testGetRoutesPaged() { + $connection = Database::getConnection(); + $provider = new RouteProvider($connection, $this->routeBuilder, $this->state, 'test_routes'); + + $this->fixtures->createTables($connection); + $dumper = new MatcherDumper($connection, $this->state, 'test_routes'); + $dumper->addRoutes($this->fixtures->sampleRouteCollection()); + $dumper->dump(); + + $fixture_routes = $this->fixtures->staticSampleRouteCollection(); + + // Query all the routes. + $routes = $provider->getRoutesPaged(0); + $this->assertEqual(array_keys($routes), array_keys($fixture_routes)); + + // Query non routes. + $routes = $provider->getRoutesPaged(0, 0); + $this->assertEqual(array_keys($routes), []); + + // Query a limited sets of routes. + $routes = $provider->getRoutesPaged(1, 2); + $this->assertEqual(array_keys($routes), array_slice(array_keys($fixture_routes), 1, 2)); + } + } diff --git a/core/tests/Drupal/Tests/Core/Routing/LazyLoadingRouteCollectionTest.php b/core/tests/Drupal/Tests/Core/Routing/LazyLoadingRouteCollectionTest.php deleted file mode 100644 index 46f59955b376b94d322b22860fc2ecf5ed505c0f..0000000000000000000000000000000000000000 --- a/core/tests/Drupal/Tests/Core/Routing/LazyLoadingRouteCollectionTest.php +++ /dev/null @@ -1,102 +0,0 @@ -<?php - -/** - * @file - * Contains \Drupal\Tests\Core\Routing\LazyLoadingRouteCollectionTest. - */ - -namespace Drupal\Tests\Core\Routing; - -use Drupal\Core\Routing\LazyLoadingRouteCollection; -use Drupal\Tests\UnitTestCase; -use Symfony\Component\Routing\Route; - -/** - * @coversDefaultClass \Drupal\Core\Routing\LazyLoadingRouteCollection - * @group Routing - */ -class LazyLoadingRouteCollectionTest extends UnitTestCase { - - /** - * Stores all the routes used in the test. - * - * @var array - */ - protected $routes = array(); - - /** - * The tested route collection. - * - * @var \Drupal\Core\Routing\LazyLoadingRouteCollection - */ - protected $routeCollection; - - protected function setUp() { - for ($i = 0; $i < 20; $i++) { - $this->routes['test_route_' . $i] = new Route('/test-route-' . $i); - } - - $this->routeCollection = new TestRouteCollection($this->routes); - } - - /** - * Tests iterating the lazy loading route collection. - * - * @see \Drupal\Core\Routing\LazyLoadingRouteCollection::current() - * @see \Drupal\Core\Routing\LazyLoadingRouteCollection::key() - * @see \Drupal\Core\Routing\LazyLoadingRouteCollection::rewind() - */ - public function testIterating() { - // Execute the foreach loop twice to ensure that rewind is called. - for ($i = 0; $i < 2; $i++) { - $route_names = array_keys($this->routes); - $count = 0; - foreach ($this->routeCollection as $route_name => $route) { - $this->assertEquals($route_names[$count], $route_name); - $this->assertEquals($this->routes[$route_names[$count]], $route); - - $count++; - } - } - } - -} - -/** - * Wrapper class to "inject" loaded routes. - */ -class TestRouteCollection extends LazyLoadingRouteCollection { - - /** - * {@inheritdoc} - */ - const ROUTE_LOADED_PER_TIME = 2; - - /** - * Stores all elements. - * - * @var \Symfony\Component\Routing\Route[] - */ - protected $allRoutes; - - /** - * Creates a TestCollection instance. - * - * @param \Symfony\Component\Routing\Route[] $all_routes - * Contains all the routes used in the test. - */ - public function __construct(array $all_routes) { - $this->allRoutes = $all_routes; - $this->loadNextElements($this->currentRoute); - } - - /** - * {@inheritdoc} - */ - protected function loadNextElements($offset) { - $elements = array_slice($this->allRoutes, $offset, static::ROUTE_LOADED_PER_TIME); - - $this->elements = $elements; - } - -} diff --git a/core/vendor/composer/autoload_namespaces.php b/core/vendor/composer/autoload_namespaces.php index 58e53470903f24492a5bad661d803fafb2b9f848..54e2998cc44cc37844dae599815aa74afaea8ded 100644 --- a/core/vendor/composer/autoload_namespaces.php +++ b/core/vendor/composer/autoload_namespaces.php @@ -24,7 +24,6 @@ 'Symfony\\Component\\Debug\\' => array($vendorDir . '/symfony/debug'), 'Symfony\\Component\\CssSelector\\' => array($vendorDir . '/symfony/css-selector'), 'Symfony\\Component\\ClassLoader\\' => array($vendorDir . '/symfony/class-loader'), - 'Symfony\\Cmf\\Component\\Routing' => array($vendorDir . '/symfony-cmf/routing'), 'Stack' => array($vendorDir . '/stack/builder/src'), 'Psr\\Log\\' => array($vendorDir . '/psr/log'), 'Gliph' => array($vendorDir . '/sdboyer/gliph/src'), diff --git a/core/vendor/composer/autoload_psr4.php b/core/vendor/composer/autoload_psr4.php index c26aa268de598286379805d854efabf58fdcac97..1b053f1695a7ba6f2e2ea40aa070f650138a90af 100644 --- a/core/vendor/composer/autoload_psr4.php +++ b/core/vendor/composer/autoload_psr4.php @@ -6,6 +6,7 @@ $baseDir = dirname(dirname($vendorDir)); return array( + 'Symfony\\Cmf\\Component\\Routing\\' => array($vendorDir . '/symfony-cmf/routing'), 'React\\Promise\\' => array($vendorDir . '/react/promise/src'), 'GuzzleHttp\\Stream\\' => array($vendorDir . '/guzzlehttp/streams/src'), 'GuzzleHttp\\Ring\\' => array($vendorDir . '/guzzlehttp/ringphp/src'), diff --git a/core/vendor/composer/installed.json b/core/vendor/composer/installed.json index db7fa29b30ce7ef0beaa800af12c4e701e750893..da1b838221d74e4749f96a79f3e1776682417c93 100644 --- a/core/vendor/composer/installed.json +++ b/core/vendor/composer/installed.json @@ -1,25 +1,28 @@ [ { - "name": "psr/log", - "version": "1.0.0", + "name": "doctrine/lexer", + "version": "v1.0", "version_normalized": "1.0.0.0", "source": { "type": "git", - "url": "https://github.com/php-fig/log", - "reference": "1.0.0" + "url": "https://github.com/doctrine/lexer.git", + "reference": "v1.0" }, "dist": { "type": "zip", - "url": "https://github.com/php-fig/log/archive/1.0.0.zip", - "reference": "1.0.0", + "url": "https://github.com/doctrine/lexer/archive/v1.0.zip", + "reference": "v1.0", "shasum": "" }, - "time": "2012-12-21 11:40:51", + "require": { + "php": ">=5.3.2" + }, + "time": "2013-01-12 18:59:04", "type": "library", "installation-source": "dist", "autoload": { "psr-0": { - "Psr\\Log\\": "" + "Doctrine\\Common\\Lexer\\": "lib/" } }, "notification-url": "https://packagist.org/downloads/", @@ -28,41 +31,52 @@ ], "authors": [ { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com", + "homepage": "http://www.instaclick.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh", + "role": "Developer of wrapped JMSSerializerBundle" } ], - "description": "Common interface for logging libraries", + "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "http://www.doctrine-project.org", "keywords": [ - "log", - "psr", - "psr-3" + "lexer", + "parser" ] }, { - "name": "doctrine/lexer", + "name": "doctrine/inflector", "version": "v1.0", "version_normalized": "1.0.0.0", "source": { "type": "git", - "url": "https://github.com/doctrine/lexer.git", + "url": "https://github.com/doctrine/inflector.git", "reference": "v1.0" }, "dist": { "type": "zip", - "url": "https://github.com/doctrine/lexer/archive/v1.0.zip", + "url": "https://github.com/doctrine/inflector/archive/v1.0.zip", "reference": "v1.0", "shasum": "" }, "require": { "php": ">=5.3.2" }, - "time": "2013-01-12 18:59:04", + "time": "2013-01-10 21:49:15", "type": "library", "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Common\\Lexer\\": "lib/" + "Doctrine\\Common\\Inflector\\": "lib/" } }, "notification-url": "https://packagist.org/downloads/", @@ -70,6 +84,11 @@ "MIT" ], "authors": [ + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com", + "homepage": "http://www.jwage.com/" + }, { "name": "Guilherme Blanco", "email": "guilhermeblanco@gmail.com", @@ -79,6 +98,10 @@ "name": "Roman Borschel", "email": "roman@code-factory.org" }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, { "name": "Johannes M. Schmitt", "email": "schmittjoh@gmail.com", @@ -86,37 +109,44 @@ "role": "Developer of wrapped JMSSerializerBundle" } ], - "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", + "description": "Common String Manipulations with regard to casing and singular/plural rules.", "homepage": "http://www.doctrine-project.org", "keywords": [ - "lexer", - "parser" + "inflection", + "pluarlize", + "singuarlize", + "string" ] }, { - "name": "doctrine/inflector", - "version": "v1.0", - "version_normalized": "1.0.0.0", + "name": "doctrine/collections", + "version": "v1.2", + "version_normalized": "1.2.0.0", "source": { "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "v1.0" + "url": "https://github.com/doctrine/collections.git", + "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2" }, "dist": { "type": "zip", - "url": "https://github.com/doctrine/inflector/archive/v1.0.zip", - "reference": "v1.0", + "url": "https://api.github.com/repos/doctrine/collections/zipball/b99c5c46c87126201899afe88ec490a25eedd6a2", + "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2", "shasum": "" }, "require": { "php": ">=5.3.2" }, - "time": "2013-01-10 21:49:15", + "time": "2014-02-03 23:07:43", "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev" + } + }, "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Common\\Inflector\\": "lib/" + "Doctrine\\Common\\Collections\\": "lib/" } }, "notification-url": "https://packagist.org/downloads/", @@ -127,7 +157,8 @@ { "name": "Jonathan Wage", "email": "jonwage@gmail.com", - "homepage": "http://www.jwage.com/" + "homepage": "http://www.jwage.com/", + "role": "Creator" }, { "name": "Guilherme Blanco", @@ -143,19 +174,159 @@ "email": "kontakt@beberlei.de" }, { - "name": "Johannes M. Schmitt", + "name": "Johannes Schmitt", "email": "schmittjoh@gmail.com", "homepage": "https://github.com/schmittjoh", "role": "Developer of wrapped JMSSerializerBundle" } ], - "description": "Common String Manipulations with regard to casing and singular/plural rules.", + "description": "Collections Abstraction library", "homepage": "http://www.doctrine-project.org", "keywords": [ - "inflection", - "pluarlize", - "singuarlize", - "string" + "array", + "collections", + "iterator" + ] + }, + { + "name": "doctrine/cache", + "version": "v1.3.1", + "version_normalized": "1.3.1.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", + "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/cache/zipball/cf483685798a72c93bf4206e3dd6358ea07d64e7", + "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" + }, + "require-dev": { + "phpunit/phpunit": ">=3.7", + "satooshi/php-coveralls": "~0.6" + }, + "time": "2014-09-17 14:24:04", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Doctrine\\Common\\Cache\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Caching library offering an object-oriented API for many cache backends", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "cache", + "caching" + ] + }, + { + "name": "doctrine/annotations", + "version": "v1.2.1", + "version_normalized": "1.2.1.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/annotations.git", + "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/6a6bec0670bb6e71a263b08bc1b98ea242928633", + "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633", + "shasum": "" + }, + "require": { + "doctrine/lexer": "1.*", + "php": ">=5.3.2" + }, + "require-dev": { + "doctrine/cache": "1.*", + "phpunit/phpunit": "4.*" + }, + "time": "2014-09-25 16:45:30", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.3.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-0": { + "Doctrine\\Common\\Annotations\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "http://www.doctrine-project.org", + "keywords": [ + "annotations", + "docblock", + "parser" ] }, { @@ -299,84 +470,90 @@ ] }, { - "name": "sebastian/version", - "version": "1.0.3", - "version_normalized": "1.0.3.0", + "name": "egulias/email-validator", + "version": "1.2.2", + "version_normalized": "1.2.2.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43" - }, + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5" + }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43", - "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/39b451bb2bb0655d83d82a38a0bba7189298cfc5", + "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5", "shasum": "" }, - "time": "2014-03-07 15:35:33", + "require": { + "doctrine/lexer": "~1.0", + "php": ">= 5.3.3" + }, + "require-dev": { + "satooshi/php-coveralls": "dev-master" + }, + "time": "2014-09-01 22:35:48", "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-0": { + "Egulias\\": "src/" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "name": "Eduardo Gulias Davis" } ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version" + "description": "A library for validating emails", + "homepage": "https://github.com/egulias/EmailValidator", + "keywords": [ + "email", + "validation", + "validator" + ] }, { - "name": "symfony-cmf/routing", - "version": "1.2.0", - "version_normalized": "1.2.0.0", - "target-dir": "Symfony/Cmf/Component/Routing", + "name": "react/promise", + "version": "v2.1.0", + "version_normalized": "2.1.0.0", "source": { "type": "git", - "url": "https://github.com/symfony-cmf/Routing.git", - "reference": "c67258b875eef3cb08009bf1428499d0f01ce5e7" + "url": "https://github.com/reactphp/promise.git", + "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/c67258b875eef3cb08009bf1428499d0f01ce5e7", - "reference": "c67258b875eef3cb08009bf1428499d0f01ce5e7", + "url": "https://api.github.com/repos/reactphp/promise/zipball/937b04f1b0ee8f6d180e75a0830aac778ca4bcd6", + "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6", "shasum": "" }, "require": { - "php": ">=5.3.3", - "psr/log": "~1.0", - "symfony/http-kernel": "~2.2", - "symfony/routing": "~2.2" - }, - "require-dev": { - "symfony/config": "~2.2", - "symfony/dependency-injection": "~2.0", - "symfony/event-dispatcher": "~2.1" - }, - "suggest": { - "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1" + "php": ">=5.4.0" }, - "time": "2014-05-08 19:37:14", + "time": "2014-10-15 20:05:57", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "2.0-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Cmf\\Component\\Routing": "" - } + "psr-4": { + "React\\Promise\\": "src/" + }, + "files": [ + "src/functions.php" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -384,51 +561,44 @@ ], "authors": [ { - "name": "Symfony CMF Community", - "homepage": "https://github.com/symfony-cmf/Routing/contributors" + "name": "Jan Sorgalla", + "email": "jsorgalla@googlemail.com" } ], - "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers", - "homepage": "http://cmf.symfony.com", - "keywords": [ - "database", - "routing" - ] + "description": "A lightweight implementation of CommonJS Promises/A for PHP" }, { - "name": "stack/builder", - "version": "v1.0.2", - "version_normalized": "1.0.2.0", + "name": "guzzlehttp/streams", + "version": "3.0.0", + "version_normalized": "3.0.0.0", "source": { "type": "git", - "url": "https://github.com/stackphp/builder.git", - "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7" + "url": "https://github.com/guzzle/streams.git", + "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/stackphp/builder/zipball/b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7", - "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7", + "url": "https://api.github.com/repos/guzzle/streams/zipball/47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5", + "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5", "shasum": "" }, "require": { - "php": ">=5.3.0", - "symfony/http-foundation": "~2.1", - "symfony/http-kernel": "~2.1" + "php": ">=5.4.0" }, "require-dev": { - "silex/silex": "~1.0" + "phpunit/phpunit": "~4.0" }, - "time": "2014-01-28 19:42:24", + "time": "2014-10-12 19:18:40", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "3.0-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Stack": "src" + "psr-4": { + "GuzzleHttp\\Stream\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -437,49 +607,56 @@ ], "authors": [ { - "name": "Igor Wiedler", - "email": "igor@wiedler.ch", - "homepage": "http://wiedler.ch/igor/" + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" } ], - "description": "Builder for stack middlewares based on HttpKernelInterface.", + "description": "Provides a simple abstraction over streams of data", + "homepage": "http://guzzlephp.org/", "keywords": [ - "stack" + "Guzzle", + "stream" ] }, { - "name": "egulias/email-validator", - "version": "1.2.2", - "version_normalized": "1.2.2.0", + "name": "guzzlehttp/ringphp", + "version": "1.0.0", + "version_normalized": "1.0.0.0", "source": { "type": "git", - "url": "https://github.com/egulias/EmailValidator.git", - "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5" + "url": "https://github.com/guzzle/RingPHP.git", + "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/39b451bb2bb0655d83d82a38a0bba7189298cfc5", - "reference": "39b451bb2bb0655d83d82a38a0bba7189298cfc5", + "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/9e44b565d726d9614cd970319e6eea70ee15bff3", + "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3", "shasum": "" }, "require": { - "doctrine/lexer": "~1.0", - "php": ">= 5.3.3" + "guzzlehttp/streams": "~3.0", + "php": ">=5.4.0", + "react/promise": "~2.0" }, "require-dev": { - "satooshi/php-coveralls": "dev-master" + "ext-curl": "*", + "phpunit/phpunit": "~4.0" }, - "time": "2014-09-01 22:35:48", + "suggest": { + "ext-curl": "Guzzle will use specific adapters if cURL is present" + }, + "time": "2014-10-13 00:59:38", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.0-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Egulias\\": "src/" + "psr-4": { + "GuzzleHttp\\Ring\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -488,50 +665,47 @@ ], "authors": [ { - "name": "Eduardo Gulias Davis" + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" } - ], - "description": "A library for validating emails", - "homepage": "https://github.com/egulias/EmailValidator", - "keywords": [ - "email", - "validation", - "validator" ] }, { - "name": "symfony/class-loader", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/ClassLoader", + "name": "guzzlehttp/guzzle", + "version": "5.0.0", + "version_normalized": "5.0.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/ClassLoader.git", - "reference": "432561f655123b003b32f370ca812fed9a9340c6" + "url": "https://github.com/guzzle/guzzle.git", + "reference": "28b51e11237f25cdb0efaea8e45af26007831aa9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/432561f655123b003b32f370ca812fed9a9340c6", - "reference": "432561f655123b003b32f370ca812fed9a9340c6", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/28b51e11237f25cdb0efaea8e45af26007831aa9", + "reference": "28b51e11237f25cdb0efaea8e45af26007831aa9", "shasum": "" }, "require": { - "php": ">=5.3.3" + "guzzlehttp/ringphp": "~1.0", + "php": ">=5.4.0" }, "require-dev": { - "symfony/finder": "~2.0" + "ext-curl": "*", + "phpunit/phpunit": "~4.0", + "psr/log": "~1.0" }, - "time": "2014-09-22 09:14:18", + "time": "2014-10-13 03:05:51", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-ring": "5.0-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\ClassLoader\\": "" + "psr-4": { + "GuzzleHttp\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -540,167 +714,144 @@ ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" } ], - "description": "Symfony ClassLoader Component", - "homepage": "http://symfony.com" + "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients", + "homepage": "http://guzzlephp.org/", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "rest", + "web service" + ] }, { - "name": "symfony/css-selector", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/CssSelector", + "name": "mikey179/vfsStream", + "version": "v1.4.0", + "version_normalized": "1.4.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/CssSelector.git", - "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976" + "url": "https://github.com/mikey179/vfsStream.git", + "reference": "61b12172292cf539685507aa65b076c1530e83c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/CssSelector/zipball/caf5ecc3face1f22884fb74b8edab65ac5ba9976", - "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976", + "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/61b12172292cf539685507aa65b076c1530e83c1", + "reference": "61b12172292cf539685507aa65b076c1530e83c1", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.0" }, - "time": "2014-09-22 09:14:18", + "require-dev": { + "phpunit/phpunit": "~4.2" + }, + "time": "2014-09-14 10:18:53", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.4.x-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\CssSelector\\": "" + "org\\bovigo\\vfs\\": "src/main/php" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD" ], - "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" + "homepage": "http://vfs.bovigo.org/" }, { - "name": "symfony/dependency-injection", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/DependencyInjection", + "name": "phpunit/php-token-stream", + "version": "1.3.0", + "version_normalized": "1.3.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/DependencyInjection.git", - "reference": "1f01a64c9047909e40700a14ee34e8c446300618" + "url": "https://github.com/sebastianbergmann/php-token-stream.git", + "reference": "f8d5d08c56de5cfd592b3340424a81733259a876" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/1f01a64c9047909e40700a14ee34e8c446300618", - "reference": "1f01a64c9047909e40700a14ee34e8c446300618", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/f8d5d08c56de5cfd592b3340424a81733259a876", + "reference": "f8d5d08c56de5cfd592b3340424a81733259a876", "shasum": "" }, "require": { + "ext-tokenizer": "*", "php": ">=5.3.3" }, "require-dev": { - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/yaml": "~2.0" - }, - "suggest": { - "symfony/config": "", - "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", - "symfony/yaml": "" + "phpunit/phpunit": "~4.2" }, - "time": "2014-09-27 08:35:39", + "time": "2014-08-31 06:12:13", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.3-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\DependencyInjection\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" } ], - "description": "Symfony DependencyInjection Component", - "homepage": "http://symfony.com" + "description": "Wrapper around PHP's tokenizer extension.", + "homepage": "https://github.com/sebastianbergmann/php-token-stream/", + "keywords": [ + "tokenizer" + ] }, { - "name": "symfony/debug", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/Debug", + "name": "symfony/yaml", + "version": "dev-master", + "version_normalized": "9999999-dev", + "target-dir": "Symfony/Component/Yaml", "source": { "type": "git", - "url": "https://github.com/symfony/Debug.git", - "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648" + "url": "https://github.com/symfony/Yaml.git", + "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Debug/zipball/4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648", - "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/499f7d7aa96747ad97940089bd7a1fb24ad8182a", + "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "require-dev": { - "symfony/http-foundation": "~2.1", - "symfony/http-kernel": "~2.1" - }, - "suggest": { - "symfony/http-foundation": "", - "symfony/http-kernel": "" - }, - "time": "2014-09-28 15:22:14", + "time": "2014-10-05 13:53:50", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "2.6-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Debug\\": "" + "Symfony\\Component\\Yaml\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -717,426 +868,367 @@ "email": "fabien@symfony.com" } ], - "description": "Symfony Debug Component", + "description": "Symfony Yaml Component", "homepage": "http://symfony.com" }, { - "name": "symfony/http-foundation", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/HttpFoundation", + "name": "sebastian/version", + "version": "1.0.3", + "version_normalized": "1.0.3.0", "source": { "type": "git", - "url": "https://github.com/symfony/HttpFoundation.git", - "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4" + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/650e115af152d7a5e857d01c2cdb9a22809de9b4", - "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43", + "reference": "b6e1f0cf6b9e1ec409a0d3e2f2a5fb0998e36b43", "shasum": "" }, - "require": { - "php": ">=5.3.3" - }, - "require-dev": { - "symfony/expression-language": "~2.4" - }, - "time": "2014-09-25 09:52:29", + "time": "2014-03-07 15:35:33", "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.5-dev" - } - }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\HttpFoundation\\": "" - }, "classmap": [ - "Symfony/Component/HttpFoundation/Resources/stubs" + "src/" ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" } ], - "description": "Symfony HttpFoundation Component", - "homepage": "http://symfony.com" + "description": "Library that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version" }, { - "name": "symfony/event-dispatcher", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/EventDispatcher", + "name": "sebastian/exporter", + "version": "1.0.2", + "version_normalized": "1.0.2.0", "source": { "type": "git", - "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46" + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/f6281337bf5f985f585d1db6a83adb05ce531f46", - "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/c7d59948d6e82818e1bdff7cadb6c34710eb7dc0", + "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.0", - "symfony/dependency-injection": "~2.0,<2.6.0", - "symfony/stopwatch": "~2.2" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" + "phpunit/phpunit": "~4.0" }, - "time": "2014-09-28 15:56:11", + "time": "2014-09-10 00:51:36", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.0.x-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\EventDispatcher\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" }, { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" } ], - "description": "Symfony EventDispatcher Component", - "homepage": "http://symfony.com" + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "http://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ] }, { - "name": "symfony/http-kernel", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/HttpKernel", + "name": "sebastian/environment", + "version": "1.1.0", + "version_normalized": "1.1.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/HttpKernel.git", - "reference": "6a3595611229def14d5e644f060cf372235532ec" + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/6a3595611229def14d5e644f060cf372235532ec", - "reference": "6a3595611229def14d5e644f060cf372235532ec", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7", + "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7", "shasum": "" }, "require": { - "php": ">=5.3.3", - "psr/log": "~1.0", - "symfony/debug": "~2.5", - "symfony/event-dispatcher": "~2.5", - "symfony/http-foundation": "~2.5" + "php": ">=5.3.3" }, "require-dev": { - "symfony/browser-kit": "~2.2", - "symfony/class-loader": "~2.1", - "symfony/config": "~2.0", - "symfony/console": "~2.2", - "symfony/dependency-injection": "~2.0", - "symfony/expression-language": "~2.4", - "symfony/finder": "~2.0", - "symfony/process": "~2.0", - "symfony/routing": "~2.2", - "symfony/stopwatch": "~2.2", - "symfony/templating": "~2.2" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/class-loader": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/finder": "" + "phpunit/phpunit": "~4.3" }, - "time": "2014-09-28 17:33:53", + "time": "2014-10-07 09:23:16", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.1.x-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\HttpKernel\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" } ], - "description": "Symfony HttpKernel Component", - "homepage": "http://symfony.com" + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "http://www.github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ] }, { - "name": "symfony/routing", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/Routing", + "name": "sebastian/diff", + "version": "1.2.0", + "version_normalized": "1.2.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/Routing.git", - "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36" + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "5843509fed39dee4b356a306401e9dd1a931fec7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Routing/zipball/9bc38fe72e0eff61611e7cd4df3accbce20b1d36", - "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/5843509fed39dee4b356a306401e9dd1a931fec7", + "reference": "5843509fed39dee4b356a306401e9dd1a931fec7", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "doctrine/annotations": "~1.0", - "psr/log": "~1.0", - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/http-foundation": "~2.3", - "symfony/yaml": "~2.0" - }, - "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" + "phpunit/phpunit": "~4.2" }, - "time": "2014-09-22 15:28:36", + "time": "2014-08-15 10:29:00", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.2-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\Routing\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" }, { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" } ], - "description": "Symfony Routing Component", - "homepage": "http://symfony.com", + "description": "Diff implementation", + "homepage": "http://www.github.com/sebastianbergmann/diff", "keywords": [ - "router", - "routing", - "uri", - "url" + "diff" ] }, { - "name": "symfony/serializer", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/Serializer", + "name": "sebastian/comparator", + "version": "1.0.1", + "version_normalized": "1.0.1.0", "source": { "type": "git", - "url": "https://github.com/symfony/Serializer.git", - "reference": "a95c0471682778da2e02169fb2644d3b08d4470f" + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Serializer/zipball/a95c0471682778da2e02169fb2644d3b08d4470f", - "reference": "a95c0471682778da2e02169fb2644d3b08d4470f", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e54a01c0da1b87db3c5a3c4c5277ddf331da4aef", + "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.3", + "sebastian/diff": "~1.1", + "sebastian/exporter": "~1.0" }, - "time": "2014-09-22 09:14:18", + "require-dev": { + "phpunit/phpunit": "~4.1" + }, + "time": "2014-05-11 23:00:21", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.0.x-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\Serializer\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" }, { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" } ], - "description": "Symfony Serializer Component", - "homepage": "http://symfony.com" + "description": "Provides the functionality to compare PHP values for equality", + "homepage": "http://www.github.com/sebastianbergmann/comparator", + "keywords": [ + "comparator", + "compare", + "equality" + ] }, { - "name": "symfony/translation", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/Translation", + "name": "phpunit/php-text-template", + "version": "1.2.0", + "version_normalized": "1.2.0.0", "source": { "type": "git", - "url": "https://github.com/symfony/Translation.git", - "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928" + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Translation/zipball/170c0d895616e1a6a35681ffb0b9e339f58ab928", - "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", + "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "require-dev": { - "symfony/config": "~2.0", - "symfony/intl": "~2.3", - "symfony/yaml": "~2.2" - }, - "suggest": { - "symfony/config": "", - "symfony/yaml": "" - }, - "time": "2014-09-23 05:25:11", + "time": "2014-01-30 17:20:04", "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.5-dev" - } - }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\Translation\\": "" - } + "classmap": [ + "Text/" + ] }, "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "" + ], "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sb@sebastian-bergmann.de", + "role": "lead" } ], - "description": "Symfony Translation Component", - "homepage": "http://symfony.com" + "description": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "keywords": [ + "template" + ] }, { - "name": "symfony/validator", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/Validator", + "name": "doctrine/instantiator", + "version": "1.0.4", + "version_normalized": "1.0.4.0", "source": { "type": "git", - "url": "https://github.com/symfony/Validator.git", - "reference": "64f61505843ca5e6c647244f5a4b6812c1279427" + "url": "https://github.com/doctrine/instantiator.git", + "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Validator/zipball/64f61505843ca5e6c647244f5a4b6812c1279427", - "reference": "64f61505843ca5e6c647244f5a4b6812c1279427", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119", + "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/translation": "~2.0" + "php": ">=5.3,<8.0-DEV" }, "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/cache": "~1.0", - "egulias/email-validator": "~1.0", - "symfony/config": "~2.2", - "symfony/expression-language": "~2.4", - "symfony/http-foundation": "~2.1", - "symfony/intl": "~2.3", - "symfony/property-access": "~2.2", - "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.", - "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": "" + "athletic/athletic": "~0.1.8", + "ext-pdo": "*", + "ext-phar": "*", + "phpunit/phpunit": "~4.0", + "squizlabs/php_codesniffer": "2.0.*@ALPHA" }, - "time": "2014-09-28 15:22:14", + "time": "2014-10-13 12:58:55", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "1.0.x-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Symfony\\Component\\Validator\\": "" + "Doctrine\\Instantiator\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1145,449 +1237,513 @@ ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "http://ocramius.github.com/" } ], - "description": "Symfony Validator Component", - "homepage": "http://symfony.com" + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://github.com/doctrine/instantiator", + "keywords": [ + "constructor", + "instantiate" + ] }, { - "name": "symfony/process", - "version": "v2.5.5", - "version_normalized": "2.5.5.0", - "target-dir": "Symfony/Component/Process", + "name": "phpunit/phpunit-mock-objects", + "version": "dev-master", + "version_normalized": "9999999-dev", "source": { "type": "git", - "url": "https://github.com/symfony/Process.git", - "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b" + "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", + "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Process/zipball/8a1ec96c4e519cee0fb971ea48a1eb7369dda54b", - "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/96c5b81f9842f38fe6c73ad0020306cc4862a9e3", + "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2", "shasum": "" }, "require": { - "php": ">=5.3.3" + "doctrine/instantiator": "~1.0,>=1.0.2", + "php": ">=5.3.3", + "phpunit/php-text-template": "~1.2" }, - "time": "2014-09-23 05:25:11", + "require-dev": { + "phpunit/phpunit": "4.4.*@dev" + }, + "suggest": { + "ext-soap": "*" + }, + "time": "2014-10-04 10:04:20", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.5-dev" + "dev-master": "2.4.x-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\Process\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sb@sebastian-bergmann.de", + "role": "lead" } ], - "description": "Symfony Process Component", - "homepage": "http://symfony.com" + "description": "Mock Object library for PHPUnit", + "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/", + "keywords": [ + "mock", + "xunit" + ] }, { - "name": "symfony/yaml", - "version": "dev-master", - "version_normalized": "9999999-dev", - "target-dir": "Symfony/Component/Yaml", + "name": "phpunit/php-timer", + "version": "1.0.5", + "version_normalized": "1.0.5.0", "source": { "type": "git", - "url": "https://github.com/symfony/Yaml.git", - "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a" + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/499f7d7aa96747ad97940089bd7a1fb24ad8182a", - "reference": "499f7d7aa96747ad97940089bd7a1fb24ad8182a", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c", + "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "time": "2014-10-05 13:53:50", + "time": "2013-08-02 07:42:54", "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.6-dev" - } - }, - "installation-source": "source", + "installation-source": "dist", "autoload": { - "psr-0": { - "Symfony\\Component\\Yaml\\": "" - } + "classmap": [ + "PHP/" + ] }, "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "" + ], "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Sebastian Bergmann", + "email": "sb@sebastian-bergmann.de", + "role": "lead" } ], - "description": "Symfony Yaml Component", - "homepage": "http://symfony.com" + "description": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", + "keywords": [ + "timer" + ] }, { - "name": "sdboyer/gliph", - "version": "0.1.8", - "version_normalized": "0.1.8.0", + "name": "phpunit/php-file-iterator", + "version": "1.3.4", + "version_normalized": "1.3.4.0", "source": { "type": "git", - "url": "https://github.com/sdboyer/gliph.git", - "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e" + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sdboyer/gliph/zipball/db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e", - "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb", + "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb", "shasum": "" }, "require": { - "php": ">=5.3" - }, - "require-dev": { - "phpunit/phpunit": "3.7.*", - "satooshi/php-coveralls": "0.6.*" + "php": ">=5.3.3" }, - "time": "2014-08-03 14:34:47", + "time": "2013-10-10 15:34:57", "type": "library", "installation-source": "dist", "autoload": { - "psr-0": { - "Gliph": "src/" - } + "classmap": [ + "File/" + ] }, "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "" + ], "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Sam Boyer", - "email": "tech@samboyer.org" + "name": "Sebastian Bergmann", + "email": "sb@sebastian-bergmann.de", + "role": "lead" } ], - "description": "A graph library for PHP.", - "homepage": "http://github.com/sdboyer/gliph", + "description": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", "keywords": [ - "gliph", - "graph", - "library", - "php", - "spl" + "filesystem", + "iterator" ] }, { - "name": "doctrine/annotations", - "version": "v1.2.1", - "version_normalized": "1.2.1.0", + "name": "phpunit/php-code-coverage", + "version": "2.0.11", + "version_normalized": "2.0.11.0", "source": { "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633" + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/6a6bec0670bb6e71a263b08bc1b98ea242928633", - "reference": "6a6bec0670bb6e71a263b08bc1b98ea242928633", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/53603b3c995f5aab6b59c8e08c3a663d2cc810b7", + "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7", "shasum": "" }, "require": { - "doctrine/lexer": "1.*", - "php": ">=5.3.2" + "php": ">=5.3.3", + "phpunit/php-file-iterator": "~1.3", + "phpunit/php-text-template": "~1.2", + "phpunit/php-token-stream": "~1.3", + "sebastian/environment": "~1.0", + "sebastian/version": "~1.0" }, "require-dev": { - "doctrine/cache": "1.*", - "phpunit/phpunit": "4.*" + "ext-xdebug": ">=2.1.4", + "phpunit/phpunit": "~4.1" }, - "time": "2014-09-25 16:45:30", + "suggest": { + "ext-dom": "*", + "ext-xdebug": ">=2.2.1", + "ext-xmlwriter": "*" + }, + "time": "2014-08-31 06:33:04", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3.x-dev" + "dev-master": "2.0.x-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Doctrine\\Common\\Annotations\\": "lib/" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "" + ], "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" + "name": "Sebastian Bergmann", + "email": "sb@sebastian-bergmann.de", + "role": "lead" } ], - "description": "Docblock Annotations Parser", - "homepage": "http://www.doctrine-project.org", + "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", + "homepage": "https://github.com/sebastianbergmann/php-code-coverage", "keywords": [ - "annotations", - "docblock", - "parser" + "coverage", + "testing", + "xunit" ] }, { - "name": "zendframework/zend-stdlib", - "version": "2.2.6", - "version_normalized": "2.2.6.0", - "target-dir": "Zend/Stdlib", + "name": "phpunit/phpunit", + "version": "4.1.4", + "version_normalized": "4.1.4.0", "source": { "type": "git", - "url": "https://github.com/zendframework/Component_ZendStdlib.git", - "reference": "e646729f2274f4552b6a92e38d8e458efe08ebc5" + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zendframework/Component_ZendStdlib/zipball/e646729f2274f4552b6a92e38d8e458efe08ebc5", - "reference": "e646729f2274f4552b6a92e38d8e458efe08ebc5", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a71c4842c5fb836d8b200624583b859ec34e8a26", + "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26", "shasum": "" }, "require": { - "php": ">=5.3.3" - }, - "suggest": { - "zendframework/zend-eventmanager": "To support aggregate hydrator usage", - "zendframework/zend-servicemanager": "To support hydrator plugin manager usage" + "ext-dom": "*", + "ext-json": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=5.3.3", + "phpunit/php-code-coverage": "~2.0", + "phpunit/php-file-iterator": "~1.3.1", + "phpunit/php-text-template": "~1.2", + "phpunit/php-timer": "~1.0.2", + "phpunit/phpunit-mock-objects": "~2.1", + "sebastian/comparator": "~1.0", + "sebastian/diff": "~1.1", + "sebastian/environment": "~1.0", + "sebastian/exporter": "~1.0", + "sebastian/version": "~1.0", + "symfony/yaml": "~2.0" }, - "time": "2014-01-04 13:00:28", + "suggest": { + "phpunit/php-invoker": "~1.1" + }, + "time": "2014-07-18 07:15:58", + "bin": [ + "phpunit" + ], "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev", - "dev-develop": "2.3-dev" + "dev-master": "4.1.x-dev" } }, "installation-source": "dist", "autoload": { - "psr-0": { - "Zend\\Stdlib\\": "" - } + "classmap": [ + "src/" + ] }, "notification-url": "https://packagist.org/downloads/", + "include-path": [ + "", + "../../symfony/yaml/" + ], "license": [ "BSD-3-Clause" ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "The PHP Unit Testing framework.", + "homepage": "http://www.phpunit.de/", "keywords": [ - "stdlib", - "zf2" + "phpunit", + "testing", + "xunit" ] }, { - "name": "zendframework/zend-escaper", - "version": "2.2.6", - "version_normalized": "2.2.6.0", - "target-dir": "Zend/Escaper", + "name": "sdboyer/gliph", + "version": "0.1.8", + "version_normalized": "0.1.8.0", "source": { "type": "git", - "url": "https://github.com/zendframework/Component_ZendEscaper.git", - "reference": "80abc4bc1f48b9fe8ed603aaa9eebd6e6f30fd0f" + "url": "https://github.com/sdboyer/gliph.git", + "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zendframework/Component_ZendEscaper/zipball/80abc4bc1f48b9fe8ed603aaa9eebd6e6f30fd0f", - "reference": "80abc4bc1f48b9fe8ed603aaa9eebd6e6f30fd0f", + "url": "https://api.github.com/repos/sdboyer/gliph/zipball/db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e", + "reference": "db9e4b77622f91e2d338cc45f83c2cd0e3cf0e1e", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3" }, - "time": "2014-01-04 13:00:13", - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2-dev", - "dev-develop": "2.3-dev" - } + "require-dev": { + "phpunit/phpunit": "3.7.*", + "satooshi/php-coveralls": "0.6.*" }, + "time": "2014-08-03 14:34:47", + "type": "library", "installation-source": "dist", "autoload": { "psr-0": { - "Zend\\Escaper\\": "" + "Gliph": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" + ], + "authors": [ + { + "name": "Sam Boyer", + "email": "tech@samboyer.org" + } ], + "description": "A graph library for PHP.", + "homepage": "http://github.com/sdboyer/gliph", "keywords": [ - "escaper", - "zf2" + "gliph", + "graph", + "library", + "php", + "spl" ] }, { - "name": "zendframework/zend-feed", - "version": "2.2.6", - "version_normalized": "2.2.6.0", - "target-dir": "Zend/Feed", + "name": "symfony/http-foundation", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/HttpFoundation", "source": { "type": "git", - "url": "https://github.com/zendframework/Component_ZendFeed.git", - "reference": "8acb562d99dd0786d25c990530980d2d92b67b35" + "url": "https://github.com/symfony/HttpFoundation.git", + "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zendframework/Component_ZendFeed/zipball/8acb562d99dd0786d25c990530980d2d92b67b35", - "reference": "8acb562d99dd0786d25c990530980d2d92b67b35", + "url": "https://api.github.com/repos/symfony/HttpFoundation/zipball/650e115af152d7a5e857d01c2cdb9a22809de9b4", + "reference": "650e115af152d7a5e857d01c2cdb9a22809de9b4", "shasum": "" }, "require": { - "php": ">=5.3.3", - "zendframework/zend-escaper": "self.version", - "zendframework/zend-stdlib": "self.version" + "php": ">=5.3.3" }, - "suggest": { - "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader", - "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations", - "zendframework/zend-validator": "Zend\\Validator component" + "require-dev": { + "symfony/expression-language": "~2.4" }, - "time": "2014-01-04 13:00:14", + "time": "2014-09-25 09:52:29", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev", - "dev-develop": "2.3-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Zend\\Feed\\": "" - } + "Symfony\\Component\\HttpFoundation\\": "" + }, + "classmap": [ + "Symfony/Component/HttpFoundation/Resources/stubs" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], - "description": "provides functionality for consuming RSS and Atom feeds", - "keywords": [ - "feed", - "zf2" - ] + "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": "mikey179/vfsStream", - "version": "v1.4.0", - "version_normalized": "1.4.0.0", + "name": "symfony/event-dispatcher", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/EventDispatcher", "source": { "type": "git", - "url": "https://github.com/mikey179/vfsStream.git", - "reference": "61b12172292cf539685507aa65b076c1530e83c1" + "url": "https://github.com/symfony/EventDispatcher.git", + "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mikey179/vfsStream/zipball/61b12172292cf539685507aa65b076c1530e83c1", - "reference": "61b12172292cf539685507aa65b076c1530e83c1", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/f6281337bf5f985f585d1db6a83adb05ce531f46", + "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=5.3.3" }, "require-dev": { - "phpunit/phpunit": "~4.2" + "psr/log": "~1.0", + "symfony/config": "~2.0", + "symfony/dependency-injection": "~2.0,<2.6.0", + "symfony/stopwatch": "~2.2" }, - "time": "2014-09-14 10:18:53", + "suggest": { + "symfony/dependency-injection": "", + "symfony/http-kernel": "" + }, + "time": "2014-09-28 15:56:11", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.4.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "org\\bovigo\\vfs\\": "src/main/php" + "Symfony\\Component\\EventDispatcher\\": "" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD" + "MIT" ], - "homepage": "http://vfs.bovigo.org/" + "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": "doctrine/cache", - "version": "v1.3.1", - "version_normalized": "1.3.1.0", + "name": "symfony/debug", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/Debug", "source": { "type": "git", - "url": "https://github.com/doctrine/cache.git", - "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7" + "url": "https://github.com/symfony/Debug.git", + "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/cf483685798a72c93bf4206e3dd6358ea07d64e7", - "reference": "cf483685798a72c93bf4206e3dd6358ea07d64e7", + "url": "https://api.github.com/repos/symfony/Debug/zipball/4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648", + "reference": "4a3dd4ef3fc0cee2fd9faaae12bd7af43afcf648", "shasum": "" }, "require": { - "php": ">=5.3.2" - }, - "conflict": { - "doctrine/common": ">2.2,<2.4" + "php": ">=5.3.3" }, "require-dev": { - "phpunit/phpunit": ">=3.7", - "satooshi/php-coveralls": "~0.6" + "symfony/http-foundation": "~2.1", + "symfony/http-kernel": "~2.1" }, - "time": "2014-09-17 14:24:04", + "suggest": { + "symfony/http-foundation": "", + "symfony/http-kernel": "" + }, + "time": "2014-09-28 15:22:14", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.4.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Common\\Cache\\": "lib/" + "Symfony\\Component\\Debug\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1596,62 +1752,38 @@ ], "authors": [ { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" }, { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Caching library offering an object-oriented API for many cache backends", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "cache", - "caching" - ] + "description": "Symfony Debug Component", + "homepage": "http://symfony.com" }, { - "name": "doctrine/collections", - "version": "v1.2", - "version_normalized": "1.2.0.0", + "name": "psr/log", + "version": "1.0.0", + "version_normalized": "1.0.0.0", "source": { "type": "git", - "url": "https://github.com/doctrine/collections.git", - "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2" + "url": "https://github.com/php-fig/log", + "reference": "1.0.0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/collections/zipball/b99c5c46c87126201899afe88ec490a25eedd6a2", - "reference": "b99c5c46c87126201899afe88ec490a25eedd6a2", + "url": "https://github.com/php-fig/log/archive/1.0.0.zip", + "reference": "1.0.0", "shasum": "" }, - "require": { - "php": ">=5.3.2" - }, - "time": "2014-02-03 23:07:43", + "time": "2012-12-21 11:40:51", "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Common\\Collections\\": "lib/" + "Psr\\Log\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1660,75 +1792,72 @@ ], "authors": [ { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com", - "homepage": "http://www.jwage.com/", - "role": "Creator" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com", - "homepage": "http://www.instaclick.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com", - "homepage": "https://github.com/schmittjoh", - "role": "Developer of wrapped JMSSerializerBundle" + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" } ], - "description": "Collections Abstraction library", - "homepage": "http://www.doctrine-project.org", + "description": "Common interface for logging libraries", "keywords": [ - "array", - "collections", - "iterator" + "log", + "psr", + "psr-3" ] }, { - "name": "doctrine/instantiator", - "version": "1.0.4", - "version_normalized": "1.0.4.0", + "name": "symfony/http-kernel", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/HttpKernel", "source": { "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119" + "url": "https://github.com/symfony/HttpKernel.git", + "reference": "6a3595611229def14d5e644f060cf372235532ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119", - "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119", + "url": "https://api.github.com/repos/symfony/HttpKernel/zipball/6a3595611229def14d5e644f060cf372235532ec", + "reference": "6a3595611229def14d5e644f060cf372235532ec", "shasum": "" }, "require": { - "php": ">=5.3,<8.0-DEV" + "php": ">=5.3.3", + "psr/log": "~1.0", + "symfony/debug": "~2.5", + "symfony/event-dispatcher": "~2.5", + "symfony/http-foundation": "~2.5" }, "require-dev": { - "athletic/athletic": "~0.1.8", - "ext-pdo": "*", - "ext-phar": "*", - "phpunit/phpunit": "~4.0", - "squizlabs/php_codesniffer": "2.0.*@ALPHA" + "symfony/browser-kit": "~2.2", + "symfony/class-loader": "~2.1", + "symfony/config": "~2.0", + "symfony/console": "~2.2", + "symfony/dependency-injection": "~2.0", + "symfony/expression-language": "~2.4", + "symfony/finder": "~2.0", + "symfony/process": "~2.0", + "symfony/routing": "~2.2", + "symfony/stopwatch": "~2.2", + "symfony/templating": "~2.2" }, - "time": "2014-10-13 12:58:55", + "suggest": { + "symfony/browser-kit": "", + "symfony/class-loader": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "", + "symfony/finder": "" + }, + "time": "2014-09-28 17:33:53", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Doctrine\\Instantiator\\": "src" + "Symfony\\Component\\HttpKernel\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -1737,680 +1866,571 @@ ], "authors": [ { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.com/" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://github.com/doctrine/instantiator", - "keywords": [ - "constructor", - "instantiate" - ] + "description": "Symfony HttpKernel Component", + "homepage": "http://symfony.com" }, { - "name": "phpunit/php-text-template", - "version": "1.2.0", - "version_normalized": "1.2.0.0", + "name": "stack/builder", + "version": "v1.0.2", + "version_normalized": "1.0.2.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a" + "url": "https://github.com/stackphp/builder.git", + "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", - "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", + "url": "https://api.github.com/repos/stackphp/builder/zipball/b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7", + "reference": "b4af43e7b7f3f7fac919ff475b29f7c5dc7b23b7", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.0", + "symfony/http-foundation": "~2.1", + "symfony/http-kernel": "~2.1" }, - "time": "2014-01-30 17:20:04", + "require-dev": { + "silex/silex": "~1.0" + }, + "time": "2014-01-28 19:42:24", "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, "installation-source": "dist", "autoload": { - "classmap": [ - "Text/" - ] + "psr-0": { + "Stack": "src" + } }, "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" + "name": "Igor Wiedler", + "email": "igor@wiedler.ch", + "homepage": "http://wiedler.ch/igor/" } ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "description": "Builder for stack middlewares based on HttpKernelInterface.", "keywords": [ - "template" + "stack" ] }, { - "name": "phpunit/phpunit-mock-objects", - "version": "dev-master", - "version_normalized": "9999999-dev", + "name": "symfony/routing", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/Routing", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2" + "url": "https://github.com/symfony/Routing.git", + "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/96c5b81f9842f38fe6c73ad0020306cc4862a9e3", - "reference": "e60bb929c50ae4237aaf680a4f6773f4ee17f0a2", + "url": "https://api.github.com/repos/symfony/Routing/zipball/9bc38fe72e0eff61611e7cd4df3accbce20b1d36", + "reference": "9bc38fe72e0eff61611e7cd4df3accbce20b1d36", "shasum": "" }, "require": { - "doctrine/instantiator": "~1.0,>=1.0.2", - "php": ">=5.3.3", - "phpunit/php-text-template": "~1.2" + "php": ">=5.3.3" }, "require-dev": { - "phpunit/phpunit": "4.4.*@dev" + "doctrine/annotations": "~1.0", + "psr/log": "~1.0", + "symfony/config": "~2.2", + "symfony/expression-language": "~2.4", + "symfony/http-foundation": "~2.3", + "symfony/yaml": "~2.0" }, "suggest": { - "ext-soap": "*" + "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": "2014-10-04 10:04:20", + "time": "2014-09-22 15:28:36", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.4.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-0": { + "Symfony\\Component\\Routing\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Mock Object library for PHPUnit", - "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/", + "description": "Symfony Routing Component", + "homepage": "http://symfony.com", "keywords": [ - "mock", - "xunit" + "router", + "routing", + "uri", + "url" ] }, { - "name": "sebastian/exporter", - "version": "1.0.2", - "version_normalized": "1.0.2.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0" + "name": "symfony-cmf/routing", + "version": "1.3.0", + "version_normalized": "1.3.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony-cmf/Routing.git", + "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/c7d59948d6e82818e1bdff7cadb6c34710eb7dc0", - "reference": "c7d59948d6e82818e1bdff7cadb6c34710eb7dc0", + "url": "https://api.github.com/repos/symfony-cmf/Routing/zipball/8e87981d72c6930a27585dcd3119f3199f6cb2a6", + "reference": "8e87981d72c6930a27585dcd3119f3199f6cb2a6", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=5.3.3", + "psr/log": "~1.0", + "symfony/http-kernel": "~2.2", + "symfony/routing": "~2.2" }, "require-dev": { - "phpunit/phpunit": "~4.0" + "symfony/config": "~2.2", + "symfony/dependency-injection": "~2.0@stable", + "symfony/event-dispatcher": "~2.1" }, - "time": "2014-09-10 00:51:36", + "suggest": { + "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1" + }, + "time": "2014-10-20 20:55:17", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "1.3-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-4": { + "Symfony\\Cmf\\Component\\Routing\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" + "name": "Symfony CMF Community", + "homepage": "https://github.com/symfony-cmf/Routing/contributors" } ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "http://www.github.com/sebastianbergmann/exporter", + "description": "Extends the Symfony2 routing component for dynamic routes and chaining several routers", + "homepage": "http://cmf.symfony.com", "keywords": [ - "export", - "exporter" + "database", + "routing" ] }, { - "name": "sebastian/environment", - "version": "1.1.0", - "version_normalized": "1.1.0.0", + "name": "symfony/class-loader", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/ClassLoader", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7" + "url": "https://github.com/symfony/ClassLoader.git", + "reference": "432561f655123b003b32f370ca812fed9a9340c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7", - "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7", + "url": "https://api.github.com/repos/symfony/ClassLoader/zipball/432561f655123b003b32f370ca812fed9a9340c6", + "reference": "432561f655123b003b32f370ca812fed9a9340c6", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "phpunit/phpunit": "~4.3" + "symfony/finder": "~2.0" }, - "time": "2014-10-07 09:23:16", + "time": "2014-09-22 09:14:18", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-0": { + "Symfony\\Component\\ClassLoader\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ] + "description": "Symfony ClassLoader Component", + "homepage": "http://symfony.com" }, { - "name": "sebastian/diff", - "version": "1.2.0", - "version_normalized": "1.2.0.0", + "name": "symfony/css-selector", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/CssSelector", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "5843509fed39dee4b356a306401e9dd1a931fec7" + "url": "https://github.com/symfony/CssSelector.git", + "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/5843509fed39dee4b356a306401e9dd1a931fec7", - "reference": "5843509fed39dee4b356a306401e9dd1a931fec7", + "url": "https://api.github.com/repos/symfony/CssSelector/zipball/caf5ecc3face1f22884fb74b8edab65ac5ba9976", + "reference": "caf5ecc3face1f22884fb74b8edab65ac5ba9976", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "require-dev": { - "phpunit/phpunit": "~4.2" - }, - "time": "2014-08-15 10:29:00", + "time": "2014-09-22 09:14:18", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-0": { + "Symfony\\Component\\CssSelector\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" }, { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Diff implementation", - "homepage": "http://www.github.com/sebastianbergmann/diff", - "keywords": [ - "diff" - ] + "description": "Symfony CssSelector Component", + "homepage": "http://symfony.com" }, { - "name": "sebastian/comparator", - "version": "1.0.1", - "version_normalized": "1.0.1.0", + "name": "symfony/dependency-injection", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/DependencyInjection", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef" + "url": "https://github.com/symfony/DependencyInjection.git", + "reference": "1f01a64c9047909e40700a14ee34e8c446300618" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e54a01c0da1b87db3c5a3c4c5277ddf331da4aef", - "reference": "e54a01c0da1b87db3c5a3c4c5277ddf331da4aef", + "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/1f01a64c9047909e40700a14ee34e8c446300618", + "reference": "1f01a64c9047909e40700a14ee34e8c446300618", "shasum": "" }, "require": { - "php": ">=5.3.3", - "sebastian/diff": "~1.1", - "sebastian/exporter": "~1.0" + "php": ">=5.3.3" }, "require-dev": { - "phpunit/phpunit": "~4.1" + "symfony/config": "~2.2", + "symfony/expression-language": "~2.4", + "symfony/yaml": "~2.0" }, - "time": "2014-05-11 23:00:21", + "suggest": { + "symfony/config": "", + "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", + "symfony/yaml": "" + }, + "time": "2014-09-27 08:35:39", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-0": { + "Symfony\\Component\\DependencyInjection\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" }, { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "http://www.github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ] + "description": "Symfony DependencyInjection Component", + "homepage": "http://symfony.com" }, { - "name": "phpunit/php-timer", - "version": "1.0.5", - "version_normalized": "1.0.5.0", + "name": "symfony/process", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/Process", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c" + "url": "https://github.com/symfony/Process.git", + "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c", - "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c", + "url": "https://api.github.com/repos/symfony/Process/zipball/8a1ec96c4e519cee0fb971ea48a1eb7369dda54b", + "reference": "8a1ec96c4e519cee0fb971ea48a1eb7369dda54b", "shasum": "" }, "require": { "php": ">=5.3.3" }, - "time": "2013-08-02 07:42:54", + "time": "2014-09-23 05:25:11", "type": "library", - "installation-source": "dist", - "autoload": { - "classmap": [ - "PHP/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" + "extra": { + "branch-alias": { + "dev-master": "2.5-dev" } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ] - }, - { - "name": "phpunit/php-file-iterator", - "version": "1.3.4", - "version_normalized": "1.3.4.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb", - "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" }, - "time": "2013-10-10 15:34:57", - "type": "library", "installation-source": "dist", "autoload": { - "classmap": [ - "File/" - ] + "psr-0": { + "Symfony\\Component\\Process\\": "" + } }, "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ] + "description": "Symfony Process Component", + "homepage": "http://symfony.com" }, { - "name": "phpunit/php-token-stream", - "version": "1.3.0", - "version_normalized": "1.3.0.0", + "name": "symfony/serializer", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/Serializer", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "f8d5d08c56de5cfd592b3340424a81733259a876" + "url": "https://github.com/symfony/Serializer.git", + "reference": "a95c0471682778da2e02169fb2644d3b08d4470f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/f8d5d08c56de5cfd592b3340424a81733259a876", - "reference": "f8d5d08c56de5cfd592b3340424a81733259a876", + "url": "https://api.github.com/repos/symfony/Serializer/zipball/a95c0471682778da2e02169fb2644d3b08d4470f", + "reference": "a95c0471682778da2e02169fb2644d3b08d4470f", "shasum": "" }, "require": { - "ext-tokenizer": "*", "php": ">=5.3.3" }, - "require-dev": { - "phpunit/phpunit": "~4.2" - }, - "time": "2014-08-31 06:12:13", + "time": "2014-09-22 09:14:18", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.3-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] + "psr-0": { + "Symfony\\Component\\Serializer\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "Wrapper around PHP's tokenizer extension.", - "homepage": "https://github.com/sebastianbergmann/php-token-stream/", - "keywords": [ - "tokenizer" - ] + "description": "Symfony Serializer Component", + "homepage": "http://symfony.com" }, { - "name": "phpunit/php-code-coverage", - "version": "2.0.11", - "version_normalized": "2.0.11.0", + "name": "symfony/translation", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/Translation", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7" + "url": "https://github.com/symfony/Translation.git", + "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/53603b3c995f5aab6b59c8e08c3a663d2cc810b7", - "reference": "53603b3c995f5aab6b59c8e08c3a663d2cc810b7", + "url": "https://api.github.com/repos/symfony/Translation/zipball/170c0d895616e1a6a35681ffb0b9e339f58ab928", + "reference": "170c0d895616e1a6a35681ffb0b9e339f58ab928", "shasum": "" }, "require": { - "php": ">=5.3.3", - "phpunit/php-file-iterator": "~1.3", - "phpunit/php-text-template": "~1.2", - "phpunit/php-token-stream": "~1.3", - "sebastian/environment": "~1.0", - "sebastian/version": "~1.0" + "php": ">=5.3.3" }, "require-dev": { - "ext-xdebug": ">=2.1.4", - "phpunit/phpunit": "~4.1" + "symfony/config": "~2.0", + "symfony/intl": "~2.3", + "symfony/yaml": "~2.2" }, "suggest": { - "ext-dom": "*", - "ext-xdebug": ">=2.2.1", - "ext-xmlwriter": "*" + "symfony/config": "", + "symfony/yaml": "" }, - "time": "2014-08-31 06:33:04", + "time": "2014-09-23 05:25:11", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0.x-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "" - ], - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ] - }, - { - "name": "phpunit/phpunit", - "version": "4.1.4", - "version_normalized": "4.1.4.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a71c4842c5fb836d8b200624583b859ec34e8a26", - "reference": "a71c4842c5fb836d8b200624583b859ec34e8a26", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-json": "*", - "ext-pcre": "*", - "ext-reflection": "*", - "ext-spl": "*", - "php": ">=5.3.3", - "phpunit/php-code-coverage": "~2.0", - "phpunit/php-file-iterator": "~1.3.1", - "phpunit/php-text-template": "~1.2", - "phpunit/php-timer": "~1.0.2", - "phpunit/phpunit-mock-objects": "~2.1", - "sebastian/comparator": "~1.0", - "sebastian/diff": "~1.1", - "sebastian/environment": "~1.0", - "sebastian/exporter": "~1.0", - "sebastian/version": "~1.0", - "symfony/yaml": "~2.0" - }, - "suggest": { - "phpunit/php-invoker": "~1.1" - }, - "time": "2014-07-18 07:15:58", - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.1.x-dev" + "psr-0": { + "Symfony\\Component\\Translation\\": "" } }, - "installation-source": "dist", - "autoload": { - "classmap": [ - "src/" - ] - }, "notification-url": "https://packagist.org/downloads/", - "include-path": [ - "", - "../../symfony/yaml/" - ], "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "The PHP Unit Testing framework.", - "homepage": "http://www.phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ] + "description": "Symfony Translation Component", + "homepage": "http://symfony.com" }, { - "name": "react/promise", - "version": "v2.1.0", - "version_normalized": "2.1.0.0", + "name": "symfony/validator", + "version": "v2.5.5", + "version_normalized": "2.5.5.0", + "target-dir": "Symfony/Component/Validator", "source": { "type": "git", - "url": "https://github.com/reactphp/promise.git", - "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6" + "url": "https://github.com/symfony/Validator.git", + "reference": "64f61505843ca5e6c647244f5a4b6812c1279427" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/promise/zipball/937b04f1b0ee8f6d180e75a0830aac778ca4bcd6", - "reference": "937b04f1b0ee8f6d180e75a0830aac778ca4bcd6", + "url": "https://api.github.com/repos/symfony/Validator/zipball/64f61505843ca5e6c647244f5a4b6812c1279427", + "reference": "64f61505843ca5e6c647244f5a4b6812c1279427", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=5.3.3", + "symfony/translation": "~2.0" }, - "time": "2014-10-15 20:05:57", + "require-dev": { + "doctrine/annotations": "~1.0", + "doctrine/cache": "~1.0", + "egulias/email-validator": "~1.0", + "symfony/config": "~2.2", + "symfony/expression-language": "~2.4", + "symfony/http-foundation": "~2.1", + "symfony/intl": "~2.3", + "symfony/property-access": "~2.2", + "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.", + "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": "2014-09-28 15:22:14", "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-master": "2.5-dev" } }, "installation-source": "dist", "autoload": { - "psr-4": { - "React\\Promise\\": "src/" - }, - "files": [ - "src/functions.php" - ] + "psr-0": { + "Symfony\\Component\\Validator\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2418,233 +2438,212 @@ ], "authors": [ { - "name": "Jan Sorgalla", - "email": "jsorgalla@googlemail.com" + "name": "Symfony Community", + "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], - "description": "A lightweight implementation of CommonJS Promises/A for PHP" + "description": "Symfony Validator Component", + "homepage": "http://symfony.com" }, { - "name": "guzzlehttp/streams", - "version": "3.0.0", - "version_normalized": "3.0.0.0", + "name": "twig/twig", + "version": "v1.16.2", + "version_normalized": "1.16.2.0", "source": { "type": "git", - "url": "https://github.com/guzzle/streams.git", - "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5" + "url": "https://github.com/fabpot/Twig.git", + "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/streams/zipball/47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5", - "reference": "47aaa48e27dae43d39fc1cea0ccf0d84ac1a2ba5", + "url": "https://api.github.com/repos/fabpot/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc", + "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc", "shasum": "" }, "require": { - "php": ">=5.4.0" - }, - "require-dev": { - "phpunit/phpunit": "~4.0" + "php": ">=5.2.4" }, - "time": "2014-10-12 19:18:40", + "time": "2014-10-17 12:53:44", "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-master": "1.16-dev" } }, "installation-source": "dist", "autoload": { - "psr-4": { - "GuzzleHttp\\Stream\\": "src/" + "psr-0": { + "Twig_": "lib/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" + "name": "Fabien Potencier", + "email": "fabien@symfony.com", + "homepage": "http://fabien.potencier.org", + "role": "Lead Developer" + }, + { + "name": "Armin Ronacher", + "email": "armin.ronacher@active-4.com", + "role": "Project Founder" + }, + { + "name": "Twig Team", + "homepage": "https://github.com/fabpot/Twig/graphs/contributors", + "role": "Contributors" } ], - "description": "Provides a simple abstraction over streams of data", - "homepage": "http://guzzlephp.org/", + "description": "Twig, the flexible, fast, and secure template language for PHP", + "homepage": "http://twig.sensiolabs.org", "keywords": [ - "Guzzle", - "stream" + "templating" ] }, { - "name": "guzzlehttp/ringphp", - "version": "1.0.0", - "version_normalized": "1.0.0.0", + "name": "zendframework/zend-stdlib", + "version": "2.2.6", + "version_normalized": "2.2.6.0", + "target-dir": "Zend/Stdlib", "source": { "type": "git", - "url": "https://github.com/guzzle/RingPHP.git", - "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3" + "url": "https://github.com/zendframework/Component_ZendStdlib.git", + "reference": "e646729f2274f4552b6a92e38d8e458efe08ebc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/RingPHP/zipball/9e44b565d726d9614cd970319e6eea70ee15bff3", - "reference": "9e44b565d726d9614cd970319e6eea70ee15bff3", + "url": "https://api.github.com/repos/zendframework/Component_ZendStdlib/zipball/e646729f2274f4552b6a92e38d8e458efe08ebc5", + "reference": "e646729f2274f4552b6a92e38d8e458efe08ebc5", "shasum": "" }, "require": { - "guzzlehttp/streams": "~3.0", - "php": ">=5.4.0", - "react/promise": "~2.0" - }, - "require-dev": { - "ext-curl": "*", - "phpunit/phpunit": "~4.0" + "php": ">=5.3.3" }, "suggest": { - "ext-curl": "Guzzle will use specific adapters if cURL is present" + "zendframework/zend-eventmanager": "To support aggregate hydrator usage", + "zendframework/zend-servicemanager": "To support hydrator plugin manager usage" }, - "time": "2014-10-13 00:59:38", + "time": "2014-01-04 13:00:28", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "2.2-dev", + "dev-develop": "2.3-dev" } }, "installation-source": "dist", "autoload": { - "psr-4": { - "GuzzleHttp\\Ring\\": "src/" + "psr-0": { + "Zend\\Stdlib\\": "" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } + "keywords": [ + "stdlib", + "zf2" ] }, { - "name": "guzzlehttp/guzzle", - "version": "5.0.0", - "version_normalized": "5.0.0.0", + "name": "zendframework/zend-escaper", + "version": "2.2.6", + "version_normalized": "2.2.6.0", + "target-dir": "Zend/Escaper", "source": { "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "28b51e11237f25cdb0efaea8e45af26007831aa9" + "url": "https://github.com/zendframework/Component_ZendEscaper.git", + "reference": "80abc4bc1f48b9fe8ed603aaa9eebd6e6f30fd0f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/28b51e11237f25cdb0efaea8e45af26007831aa9", - "reference": "28b51e11237f25cdb0efaea8e45af26007831aa9", + "url": "https://api.github.com/repos/zendframework/Component_ZendEscaper/zipball/80abc4bc1f48b9fe8ed603aaa9eebd6e6f30fd0f", + "reference": "80abc4bc1f48b9fe8ed603aaa9eebd6e6f30fd0f", "shasum": "" }, "require": { - "guzzlehttp/ringphp": "~1.0", - "php": ">=5.4.0" - }, - "require-dev": { - "ext-curl": "*", - "phpunit/phpunit": "~4.0", - "psr/log": "~1.0" + "php": ">=5.3.3" }, - "time": "2014-10-13 03:05:51", + "time": "2014-01-04 13:00:13", "type": "library", "extra": { "branch-alias": { - "dev-ring": "5.0-dev" + "dev-master": "2.2-dev", + "dev-develop": "2.3-dev" } }, "installation-source": "dist", "autoload": { - "psr-4": { - "GuzzleHttp\\": "src/" + "psr-0": { + "Zend\\Escaper\\": "" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } + "BSD-3-Clause" ], - "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients", - "homepage": "http://guzzlephp.org/", "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "rest", - "web service" + "escaper", + "zf2" ] }, { - "name": "twig/twig", - "version": "v1.16.2", - "version_normalized": "1.16.2.0", + "name": "zendframework/zend-feed", + "version": "2.2.6", + "version_normalized": "2.2.6.0", + "target-dir": "Zend/Feed", "source": { "type": "git", - "url": "https://github.com/fabpot/Twig.git", - "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc" + "url": "https://github.com/zendframework/Component_ZendFeed.git", + "reference": "8acb562d99dd0786d25c990530980d2d92b67b35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fabpot/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc", - "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc", + "url": "https://api.github.com/repos/zendframework/Component_ZendFeed/zipball/8acb562d99dd0786d25c990530980d2d92b67b35", + "reference": "8acb562d99dd0786d25c990530980d2d92b67b35", "shasum": "" }, "require": { - "php": ">=5.2.4" + "php": ">=5.3.3", + "zendframework/zend-escaper": "self.version", + "zendframework/zend-stdlib": "self.version" }, - "time": "2014-10-17 12:53:44", + "suggest": { + "zendframework/zend-http": "Zend\\Http for PubSubHubbub, and optionally for use with Zend\\Feed\\Reader", + "zendframework/zend-servicemanager": "Zend\\ServiceManager component, for default/recommended ExtensionManager implementations", + "zendframework/zend-validator": "Zend\\Validator component" + }, + "time": "2014-01-04 13:00:14", "type": "library", "extra": { "branch-alias": { - "dev-master": "1.16-dev" + "dev-master": "2.2-dev", + "dev-develop": "2.3-dev" } }, "installation-source": "dist", "autoload": { "psr-0": { - "Twig_": "lib/" + "Zend\\Feed\\": "" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com", - "homepage": "http://fabien.potencier.org", - "role": "Lead Developer" - }, - { - "name": "Armin Ronacher", - "email": "armin.ronacher@active-4.com", - "role": "Project Founder" - }, - { - "name": "Twig Team", - "homepage": "https://github.com/fabpot/Twig/graphs/contributors", - "role": "Contributors" - } - ], - "description": "Twig, the flexible, fast, and secure template language for PHP", - "homepage": "http://twig.sensiolabs.org", + "description": "provides functionality for consuming RSS and Atom feeds", "keywords": [ - "templating" + "feed", + "zf2" ] } ] diff --git a/core/vendor/symfony-cmf/routing/.travis.yml b/core/vendor/symfony-cmf/routing/.travis.yml new file mode 100644 index 0000000000000000000000000000000000000000..c0eae5c1523877b5848846bfc9ac31312d03fbb8 --- /dev/null +++ b/core/vendor/symfony-cmf/routing/.travis.yml @@ -0,0 +1,31 @@ +language: php + +php: + - 5.3 + - 5.4 + - 5.5 + - 5.6 + - hhvm + +env: + - SYMFONY_VERSION=2.5.* + +matrix: + allow_failures: + - php: hhvm + include: + - php: 5.5 + env: SYMFONY_VERSION=2.3.* + - php: 5.5 + env: SYMFONY_VERSION=2.4.* + - php: 5.5 + env: SYMFONY_VERSION=2.* + +before_install: + - composer require symfony/routing:${SYMFONY_VERSION} --prefer-source + +script: phpunit --coverage-text + +notifications: + irc: "irc.freenode.org#symfony-cmf" + email: "symfony-cmf-devs@googlegroups.com" diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/CHANGELOG.md b/core/vendor/symfony-cmf/routing/CHANGELOG.md similarity index 71% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/CHANGELOG.md rename to core/vendor/symfony-cmf/routing/CHANGELOG.md index 3b0f7bea3040864f88b2a77c1d3205fead11ab45..e8e8542d17b98f6fb0e855b292358ff04153d5ca 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/CHANGELOG.md +++ b/core/vendor/symfony-cmf/routing/CHANGELOG.md @@ -1,6 +1,17 @@ Changelog ========= +* **2014-09-29**: ChainRouter does not require a RouterInterface, as a + RequestMatcher and UrlGenerator is fine too. Fixed chain router interface to + not force a RouterInterface. +* **2014-09-29**: Deprecated DynamicRouter::match in favor of matchRequest. + +1.3.0-RC1 +--------- + +* **2014-08-20**: Added an interface for the ChainRouter +* **2014-06-06**: Updated to PSR-4 autoloading + 1.2.0 ----- diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/CONTRIBUTING.md b/core/vendor/symfony-cmf/routing/CONTRIBUTING.md similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/CONTRIBUTING.md rename to core/vendor/symfony-cmf/routing/CONTRIBUTING.md diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Candidates/Candidates.php b/core/vendor/symfony-cmf/routing/Candidates/Candidates.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Candidates/Candidates.php rename to core/vendor/symfony-cmf/routing/Candidates/Candidates.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Candidates/CandidatesInterface.php b/core/vendor/symfony-cmf/routing/Candidates/CandidatesInterface.php similarity index 96% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Candidates/CandidatesInterface.php rename to core/vendor/symfony-cmf/routing/Candidates/CandidatesInterface.php index 54e6811367fcb2230d9e6c95136a6c2e7b2115ae..9ce22a97ef060058d91e090b8fba00a6d376ec32 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Candidates/CandidatesInterface.php +++ b/core/vendor/symfony-cmf/routing/Candidates/CandidatesInterface.php @@ -24,7 +24,7 @@ interface CandidatesInterface /** * @param Request $request * - * @return array a list of PHPCR-ODM ids + * @return array a list of paths */ public function getCandidates(Request $request); diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainRouteCollection.php b/core/vendor/symfony-cmf/routing/ChainRouteCollection.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainRouteCollection.php rename to core/vendor/symfony-cmf/routing/ChainRouteCollection.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainRouter.php b/core/vendor/symfony-cmf/routing/ChainRouter.php similarity index 83% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainRouter.php rename to core/vendor/symfony-cmf/routing/ChainRouter.php index 44ca2ee7067835f3ff63c92ee3c0dcb99ece1e71..89c2c15a91234bacbec4695e73f7e9e11fdf076f 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainRouter.php +++ b/core/vendor/symfony-cmf/routing/ChainRouter.php @@ -12,6 +12,7 @@ namespace Symfony\Cmf\Component\Routing; use Symfony\Component\Routing\RouterInterface; +use Symfony\Component\Routing\Generator\UrlGeneratorInterface; use Symfony\Component\Routing\Matcher\RequestMatcherInterface; use Symfony\Component\Routing\RequestContext; use Symfony\Component\Routing\RequestContextAwareInterface; @@ -24,17 +25,15 @@ use Psr\Log\LoggerInterface; /** - * ChainRouter - * - * Allows access to a lot of different routers. + * The ChainRouter allows to combine several routers to try in a defined order. * * @author Henrik Bjornskov <henrik@bjrnskov.dk> * @author Magnus Nordlander <magnus@e-butik.se> */ -class ChainRouter implements RouterInterface, RequestMatcherInterface, WarmableInterface +class ChainRouter implements ChainRouterInterface, WarmableInterface { /** - * @var \Symfony\Component\Routing\RequestContext + * @var RequestContext */ private $context; @@ -45,17 +44,17 @@ class ChainRouter implements RouterInterface, RequestMatcherInterface, WarmableI private $routers = array(); /** - * @var \Symfony\Component\Routing\RouterInterface[] Array of routers, sorted by priority + * @var RouterInterface[] Array of routers, sorted by priority */ private $sortedRouters; /** - * @var \Symfony\Component\Routing\RouteCollection + * @var RouteCollection */ private $routeCollection; /** - * @var null|\Psr\Log\LoggerInterface + * @var null|LoggerInterface */ protected $logger; @@ -76,13 +75,15 @@ public function getContext() } /** - * Add a Router to the index - * - * @param RouterInterface $router The router instance - * @param integer $priority The priority + * {@inheritdoc} */ - public function add(RouterInterface $router, $priority = 0) + public function add($router, $priority = 0) { + if (!$router instanceof RouterInterface + && !($router instanceof RequestMatcherInterface && $router instanceof UrlGeneratorInterface) + ) { + throw new \InvalidArgumentException(sprintf('%s is not a valid router.', get_class($router))); + } if (empty($this->routers[$priority])) { $this->routers[$priority] = array(); } @@ -92,9 +93,7 @@ public function add(RouterInterface $router, $priority = 0) } /** - * Sorts the routers and flattens them. - * - * @return RouterInterface[] + * {@inheritdoc} */ public function all() { @@ -164,21 +163,26 @@ public function matchRequest(Request $request) * * @param string $url * @param Request $request + * + * @return array An array of parameters + * + * @throws ResourceNotFoundException If no router matched. */ private function doMatch($url, Request $request = null) { $methodNotAllowed = null; + $requestForMatching = $request; foreach ($this->all() as $router) { try { // the request/url match logic is the same as in Symfony/Component/HttpKernel/EventListener/RouterListener.php // matching requests is more powerful than matching URLs only, so try that first if ($router instanceof RequestMatcherInterface) { - if (null === $request) { - $request = Request::create($url); + if (empty($requestForMatching)) { + $requestForMatching = Request::create($url); } - return $router->matchRequest($request); + return $router->matchRequest($requestForMatching); } // every router implements the match method return $router->match($url); @@ -212,15 +216,14 @@ public function generate($name, $parameters = array(), $absolute = false) $debug = array(); foreach ($this->all() as $router) { - // if $router does not implement ChainedRouterInterface and $name is not a string, continue - if ($name && !$router instanceof ChainedRouterInterface) { - if (! is_string($name)) { - continue; - } + // if $router does not announce it is capable of handling + // non-string routes and $name is not a string, continue + if ($name && !is_string($name) && !$router instanceof VersatileGeneratorInterface) { + continue; } - // If $router implements ChainedRouterInterface but doesn't support this route name, continue - if ($router instanceof ChainedRouterInterface && !$router->supports($name)) { + // If $router is versatile and doesn't support this route name, continue + if ($router instanceof VersatileGeneratorInterface && !$router->supports($name)) { continue; } diff --git a/core/vendor/symfony-cmf/routing/ChainRouterInterface.php b/core/vendor/symfony-cmf/routing/ChainRouterInterface.php new file mode 100644 index 0000000000000000000000000000000000000000..9a7a003d5ca5a06448fd4a0280719315112ed9f4 --- /dev/null +++ b/core/vendor/symfony-cmf/routing/ChainRouterInterface.php @@ -0,0 +1,39 @@ +<?php + +/* + * This file is part of the Symfony CMF package. + * + * (c) 2011-2014 Symfony CMF + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Cmf\Component\Routing; + +use Symfony\Component\Routing\RouterInterface; +use Symfony\Component\Routing\Matcher\RequestMatcherInterface; + +/** + * Interface for a router that proxies routing to other routers. + * + * @author Daniel Wehner <dawehner@googlemail.com> + */ +interface ChainRouterInterface extends RouterInterface, RequestMatcherInterface +{ + /** + * Add a Router to the index. + * + * @param RouterInterface $router The router instance. Instead of RouterInterface, may also + * be RequestMatcherInterface and UrlGeneratorInterface. + * @param integer $priority The priority + */ + public function add($router, $priority = 0); + + /** + * Sorts the routers and flattens them. + * + * @return RouterInterface[] or RequestMatcherInterface and UrlGeneratorInterface. + */ + public function all(); +} diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainedRouterInterface.php b/core/vendor/symfony-cmf/routing/ChainedRouterInterface.php similarity index 96% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainedRouterInterface.php rename to core/vendor/symfony-cmf/routing/ChainedRouterInterface.php index b0c40caaae72da33a453ae8d5e8321b8043a1722..a4ece6c45660c9ea21c847b589f065f602926b7d 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ChainedRouterInterface.php +++ b/core/vendor/symfony-cmf/routing/ChainedRouterInterface.php @@ -14,7 +14,7 @@ use Symfony\Component\Routing\RouterInterface; /** - * Interface to combine the VersatileGeneratorInterface with the RouterInterface + * Interface to combine the VersatileGeneratorInterface with the RouterInterface. */ interface ChainedRouterInterface extends RouterInterface, VersatileGeneratorInterface { diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ContentAwareGenerator.php b/core/vendor/symfony-cmf/routing/ContentAwareGenerator.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ContentAwareGenerator.php rename to core/vendor/symfony-cmf/routing/ContentAwareGenerator.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ContentRepositoryInterface.php b/core/vendor/symfony-cmf/routing/ContentRepositoryInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ContentRepositoryInterface.php rename to core/vendor/symfony-cmf/routing/ContentRepositoryInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DependencyInjection/Compiler/RegisterRouteEnhancersPass.php b/core/vendor/symfony-cmf/routing/DependencyInjection/Compiler/RegisterRouteEnhancersPass.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DependencyInjection/Compiler/RegisterRouteEnhancersPass.php rename to core/vendor/symfony-cmf/routing/DependencyInjection/Compiler/RegisterRouteEnhancersPass.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DependencyInjection/Compiler/RegisterRoutersPass.php b/core/vendor/symfony-cmf/routing/DependencyInjection/Compiler/RegisterRoutersPass.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DependencyInjection/Compiler/RegisterRoutersPass.php rename to core/vendor/symfony-cmf/routing/DependencyInjection/Compiler/RegisterRoutersPass.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DynamicRouter.php b/core/vendor/symfony-cmf/routing/DynamicRouter.php similarity index 99% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DynamicRouter.php rename to core/vendor/symfony-cmf/routing/DynamicRouter.php index 03eaefaad132d3692e3531208d76abc76e9c072c..944a94bb18b85ff4a1032ce9d7d24cad3b898e86 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/DynamicRouter.php +++ b/core/vendor/symfony-cmf/routing/DynamicRouter.php @@ -198,6 +198,7 @@ public function supports($name) * @throws MethodNotAllowedException If the resource was found but the * request method is not allowed * + * @deprecated Use matchRequest exclusively to avoid problems. This method will be removed in version 2.0 * @api */ public function match($pathinfo) diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/FieldByClassEnhancer.php b/core/vendor/symfony-cmf/routing/Enhancer/FieldByClassEnhancer.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/FieldByClassEnhancer.php rename to core/vendor/symfony-cmf/routing/Enhancer/FieldByClassEnhancer.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/FieldMapEnhancer.php b/core/vendor/symfony-cmf/routing/Enhancer/FieldMapEnhancer.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/FieldMapEnhancer.php rename to core/vendor/symfony-cmf/routing/Enhancer/FieldMapEnhancer.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/FieldPresenceEnhancer.php b/core/vendor/symfony-cmf/routing/Enhancer/FieldPresenceEnhancer.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/FieldPresenceEnhancer.php rename to core/vendor/symfony-cmf/routing/Enhancer/FieldPresenceEnhancer.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/RouteContentEnhancer.php b/core/vendor/symfony-cmf/routing/Enhancer/RouteContentEnhancer.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/RouteContentEnhancer.php rename to core/vendor/symfony-cmf/routing/Enhancer/RouteContentEnhancer.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/RouteEnhancerInterface.php b/core/vendor/symfony-cmf/routing/Enhancer/RouteEnhancerInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Enhancer/RouteEnhancerInterface.php rename to core/vendor/symfony-cmf/routing/Enhancer/RouteEnhancerInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Event/Events.php b/core/vendor/symfony-cmf/routing/Event/Events.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Event/Events.php rename to core/vendor/symfony-cmf/routing/Event/Events.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Event/RouterMatchEvent.php b/core/vendor/symfony-cmf/routing/Event/RouterMatchEvent.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Event/RouterMatchEvent.php rename to core/vendor/symfony-cmf/routing/Event/RouterMatchEvent.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/LICENSE b/core/vendor/symfony-cmf/routing/LICENSE similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/LICENSE rename to core/vendor/symfony-cmf/routing/LICENSE diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/LazyRouteCollection.php b/core/vendor/symfony-cmf/routing/LazyRouteCollection.php similarity index 91% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/LazyRouteCollection.php rename to core/vendor/symfony-cmf/routing/LazyRouteCollection.php index 28b02acd32d554f7b5f098e63992fb43ad2353cf..4011f9ac8648926bf274fb36d461d2ab45e8bd67 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/LazyRouteCollection.php +++ b/core/vendor/symfony-cmf/routing/LazyRouteCollection.php @@ -29,6 +29,14 @@ public function __construct(RouteProviderInterface $provider) $this->provider = $provider; } + /** + * {@inheritdoc} + */ + public function getIterator() + { + return new \ArrayIterator($this->all()); + } + /** * Gets the number of Routes in this collection. * diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/FinalMatcherInterface.php b/core/vendor/symfony-cmf/routing/NestedMatcher/FinalMatcherInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/FinalMatcherInterface.php rename to core/vendor/symfony-cmf/routing/NestedMatcher/FinalMatcherInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/NestedMatcher.php b/core/vendor/symfony-cmf/routing/NestedMatcher/NestedMatcher.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/NestedMatcher.php rename to core/vendor/symfony-cmf/routing/NestedMatcher/NestedMatcher.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/RouteFilterInterface.php b/core/vendor/symfony-cmf/routing/NestedMatcher/RouteFilterInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/RouteFilterInterface.php rename to core/vendor/symfony-cmf/routing/NestedMatcher/RouteFilterInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/UrlMatcher.php b/core/vendor/symfony-cmf/routing/NestedMatcher/UrlMatcher.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/NestedMatcher/UrlMatcher.php rename to core/vendor/symfony-cmf/routing/NestedMatcher/UrlMatcher.php diff --git a/core/vendor/symfony-cmf/routing/PagedRouteCollection.php b/core/vendor/symfony-cmf/routing/PagedRouteCollection.php new file mode 100644 index 0000000000000000000000000000000000000000..dba573e047c5dc83670e2be718a2e958b00f28b7 --- /dev/null +++ b/core/vendor/symfony-cmf/routing/PagedRouteCollection.php @@ -0,0 +1,126 @@ +<?php + +/** + * This file is part of the Symfony CMF package. + * + * (c) 2011-2014 Symfony CMF + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Cmf\Component\Routing; + +/** + * Provides a route collection which avoids having all routes in memory. + * + * Internally, this does load multiple routes over time using a + * PagedRouteProviderInterface $route_provider. + */ +class PagedRouteCollection implements \Iterator, \Countable +{ + /** + * @var PagedRouteProviderInterface + */ + protected $provider; + + /** + * Stores the amount of routes which are loaded in parallel and kept in + * memory. + * + * @var int + */ + protected $routesBatchSize; + + /** + * Contains the current item the iterator points to. + * + * @var int + */ + protected $current = -1; + + /** + * Stores the current loaded routes. + * + * @var \Symfony\Component\Routing\Route[] + */ + protected $currentRoutes; + + public function __construct(PagedRouteProviderInterface $pagedRouteProvider, $routesBatchSize = 50) + { + $this->provider = $pagedRouteProvider; + $this->routesBatchSize = $routesBatchSize; + } + + /** + * Loads the next routes into the elements array. + * + * @param int $offset The offset used in the db query. + */ + protected function loadNextElements($offset) + { + // If the last batch was smaller than the batch size, this means there + // are no more routes available. + if (isset($this->currentRoutes) && count($this->currentRoutes) < $this->routesBatchSize) { + $this->currentRoutes = array(); + } else { + $this->currentRoutes = $this->provider->getRoutesPaged($offset, $this->routesBatchSize); + } + } + + /** + * {@inheritdoc} + */ + public function current() + { + return current($this->currentRoutes); + } + + /** + * {@inheritdoc} + */ + public function next() + { + $result = next($this->currentRoutes); + if (false === $result) { + $this->loadNextElements($this->current + 1); + } + $this->current++; + } + + /** + * {@inheritdoc} + */ + public function key() + { + return key($this->currentRoutes); + } + + /** + * {@inheritdoc} + */ + public function valid() + { + return key($this->currentRoutes); + } + + /** + * {@inheritdoc} + */ + public function rewind() + { + $this->current = 0; + $this->currentRoutes = NULL; + $this->loadNextElements($this->current); + } + + /** + * Gets the number of Routes in this collection. + * + * @return int The number of routes + */ + public function count() + { + return $this->provider->getRoutesCount(); + } +} diff --git a/core/vendor/symfony-cmf/routing/PagedRouteProviderInterface.php b/core/vendor/symfony-cmf/routing/PagedRouteProviderInterface.php new file mode 100644 index 0000000000000000000000000000000000000000..970ec781b148db0807ebe31c093d00c1e3c64479 --- /dev/null +++ b/core/vendor/symfony-cmf/routing/PagedRouteProviderInterface.php @@ -0,0 +1,42 @@ +<?php + +/** + * This file is part of the Symfony CMF package. + * + * (c) 2011-2014 Symfony CMF + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Cmf\Component\Routing; + +/** + * Interface for a provider which allows to retrieve a limited amount of routes. + */ +interface PagedRouteProviderInterface extends RouteProviderInterface +{ + /** + * Find an amount of routes with an offset and possible a limit. + * + * In case you want to iterate over all routes, you want to avoid to load + * all routes at once. + * + * @param int $offset + * The sequence will start with that offset in the list of all routes. + * @param int $length [optional] + * The sequence will have that many routes in it. If no length is + * specified all routes are returned. + * + * @return \Symfony\Component\Routing\Route[] + * Routes keyed by the route name. + */ + public function getRoutesPaged($offset, $length = null); + + /** + * Determines the total amount of routes. + * + * @return int + */ + public function getRoutesCount(); +} diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ProviderBasedGenerator.php b/core/vendor/symfony-cmf/routing/ProviderBasedGenerator.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/ProviderBasedGenerator.php rename to core/vendor/symfony-cmf/routing/ProviderBasedGenerator.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/README.md b/core/vendor/symfony-cmf/routing/README.md similarity index 98% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/README.md rename to core/vendor/symfony-cmf/routing/README.md index 509d86b436499bf72634d404fdeb02e22b4290a5..2a18ed161dae29152fab3a69d67db0aa4af37664 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/README.md +++ b/core/vendor/symfony-cmf/routing/README.md @@ -14,7 +14,7 @@ It provides: Even though it has Symfony in its name, the Routing component does not need the full Symfony2 Framework and can be used in standalone projects. -For Symfon2 projects, an optional +For Symfony 2 projects, an optional [RoutingBundle](https://github.com/symfony-cmf/RoutingBundle) is also available. diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RedirectRouteInterface.php b/core/vendor/symfony-cmf/routing/RedirectRouteInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RedirectRouteInterface.php rename to core/vendor/symfony-cmf/routing/RedirectRouteInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteObjectInterface.php b/core/vendor/symfony-cmf/routing/RouteObjectInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteObjectInterface.php rename to core/vendor/symfony-cmf/routing/RouteObjectInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteProviderInterface.php b/core/vendor/symfony-cmf/routing/RouteProviderInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteProviderInterface.php rename to core/vendor/symfony-cmf/routing/RouteProviderInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteReferrersInterface.php b/core/vendor/symfony-cmf/routing/RouteReferrersInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteReferrersInterface.php rename to core/vendor/symfony-cmf/routing/RouteReferrersInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteReferrersReadInterface.php b/core/vendor/symfony-cmf/routing/RouteReferrersReadInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/RouteReferrersReadInterface.php rename to core/vendor/symfony-cmf/routing/RouteReferrersReadInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/.gitignore b/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/.gitignore deleted file mode 100644 index c089b09520c224f7fedcfcef90e5cbd3e4199c33..0000000000000000000000000000000000000000 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -phpunit.xml -composer.lock -/vendor/ diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/.travis.yml b/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/.travis.yml deleted file mode 100644 index 8d4dde4ee5c961fb61d4dfdd8bc36201fd49f968..0000000000000000000000000000000000000000 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/.travis.yml +++ /dev/null @@ -1,25 +0,0 @@ -language: php - -php: - - 5.3 - - 5.4 - - 5.5 - -env: - - SYMFONY_VERSION=2.2.* - - SYMFONY_VERSION=2.3.* - - SYMFONY_VERSION=2.4.* - - SYMFONY_VERSION=dev-master - -before_script: - - composer require symfony/routing:${SYMFONY_VERSION} --prefer-source - -script: phpunit --coverage-text - -notifications: - irc: "irc.freenode.org#symfony-cmf" - email: "symfony-cmf-devs@googlegroups.com" - -matrix: - allow_failures: - - env: SYMFONY_VERSION=dev-master diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Test/CmfUnitTestCase.php b/core/vendor/symfony-cmf/routing/Test/CmfUnitTestCase.php similarity index 99% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Test/CmfUnitTestCase.php rename to core/vendor/symfony-cmf/routing/Test/CmfUnitTestCase.php index 367c6932767c5d3c6a493b1fab30a50b391ae6b8..f0e9ea1584017ac6725b63ae24605efeb1a425de 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Test/CmfUnitTestCase.php +++ b/core/vendor/symfony-cmf/routing/Test/CmfUnitTestCase.php @@ -13,7 +13,6 @@ class CmfUnitTestCase extends \PHPUnit_Framework_TestCase { - protected function buildMock($class, array $methods = array()) { return $this->getMockBuilder($class) @@ -21,5 +20,4 @@ protected function buildMock($class, array $methods = array()) ->setMethods($methods) ->getMock(); } - } diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Candidates/CandidatesTest.php b/core/vendor/symfony-cmf/routing/Tests/Candidates/CandidatesTest.php similarity index 99% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Candidates/CandidatesTest.php rename to core/vendor/symfony-cmf/routing/Tests/Candidates/CandidatesTest.php index 654711a9be2147c251092c1c3ff7e6129da954ed..322c052dea1f284fb43c894f27da8fbdf85f83dd 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Candidates/CandidatesTest.php +++ b/core/vendor/symfony-cmf/routing/Tests/Candidates/CandidatesTest.php @@ -101,6 +101,5 @@ public function testGetCandidatesLimit() ), $paths ); - } } diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php b/core/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php rename to core/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php b/core/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php rename to core/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRoutersPassTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/FieldByClassEnhancerTest.php b/core/vendor/symfony-cmf/routing/Tests/Enhancer/FieldByClassEnhancerTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/FieldByClassEnhancerTest.php rename to core/vendor/symfony-cmf/routing/Tests/Enhancer/FieldByClassEnhancerTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/FieldMapEnhancerTest.php b/core/vendor/symfony-cmf/routing/Tests/Enhancer/FieldMapEnhancerTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/FieldMapEnhancerTest.php rename to core/vendor/symfony-cmf/routing/Tests/Enhancer/FieldMapEnhancerTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/FieldPresenceEnhancerTest.php b/core/vendor/symfony-cmf/routing/Tests/Enhancer/FieldPresenceEnhancerTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/FieldPresenceEnhancerTest.php rename to core/vendor/symfony-cmf/routing/Tests/Enhancer/FieldPresenceEnhancerTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/RouteContentEnhancerTest.php b/core/vendor/symfony-cmf/routing/Tests/Enhancer/RouteContentEnhancerTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/RouteContentEnhancerTest.php rename to core/vendor/symfony-cmf/routing/Tests/Enhancer/RouteContentEnhancerTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/RouteObject.php b/core/vendor/symfony-cmf/routing/Tests/Enhancer/RouteObject.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Enhancer/RouteObject.php rename to core/vendor/symfony-cmf/routing/Tests/Enhancer/RouteObject.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/NestedMatcher/NestedMatcherTest.php b/core/vendor/symfony-cmf/routing/Tests/NestedMatcher/NestedMatcherTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/NestedMatcher/NestedMatcherTest.php rename to core/vendor/symfony-cmf/routing/Tests/NestedMatcher/NestedMatcherTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/NestedMatcher/UrlMatcherTest.php b/core/vendor/symfony-cmf/routing/Tests/NestedMatcher/UrlMatcherTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/NestedMatcher/UrlMatcherTest.php rename to core/vendor/symfony-cmf/routing/Tests/NestedMatcher/UrlMatcherTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ChainRouterTest.php b/core/vendor/symfony-cmf/routing/Tests/Routing/ChainRouterTest.php similarity index 91% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ChainRouterTest.php rename to core/vendor/symfony-cmf/routing/Tests/Routing/ChainRouterTest.php index 63a1fbf26d02bd9007c2d3727341cb14835a860c..e8b8e3c7b320d0a1756d11b60addd7ba7f54fa6a 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ChainRouterTest.php +++ b/core/vendor/symfony-cmf/routing/Tests/Routing/ChainRouterTest.php @@ -11,17 +11,31 @@ namespace Symfony\Cmf\Component\Routing\Tests\Routing; +use Symfony\Cmf\Component\Routing\VersatileGeneratorInterface; +use Symfony\Component\HttpKernel\CacheWarmer\WarmableInterface; use Symfony\Component\Routing\Exception\MethodNotAllowedException; use Symfony\Component\Routing\Exception\ResourceNotFoundException; use Symfony\Component\Routing\Exception\RouteNotFoundException; +use Symfony\Component\Routing\Matcher\RequestMatcherInterface; +use Symfony\Component\Routing\RequestContext; use Symfony\Component\Routing\RouteCollection; use Symfony\Component\HttpFoundation\Request; use Symfony\Cmf\Component\Routing\ChainRouter; use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase; +use Symfony\Component\Routing\RouterInterface; class ChainRouterTest extends CmfUnitTestCase { + /** + * @var ChainRouter + */ + private $router; + /** + * @var RequestContext|\PHPUnit_Framework_MockObject_MockObject + */ + private $context; + public function setUp() { $this->router = new ChainRouter($this->getMock('Psr\Log\LoggerInterface')); @@ -54,6 +68,7 @@ public function testSortRouters() { list($low, $medium, $high) = $this->createRouterMocks(); // We're using a mock here and not $this->router because we need to ensure that the sorting operation is done only once. + /** @var $router ChainRouter|\PHPUnit_Framework_MockObject_MockObject */ $router = $this->buildMock('Symfony\Cmf\Component\Routing\ChainRouter', array('sortRouters')); $router ->expects($this->once()) @@ -87,6 +102,7 @@ public function testReSortRouters() list($low, $medium, $high) = $this->createRouterMocks(); $highest = clone $high; // We're using a mock here and not $this->router because we need to ensure that the sorting operation is done only once. + /** @var $router ChainRouter|\PHPUnit_Framework_MockObject_MockObject */ $router = $this->buildMock('Symfony\Cmf\Component\Routing\ChainRouter', array('sortRouters')); $router ->expects($this->at(0)) @@ -253,7 +269,6 @@ public function testMatchRequest() public function testMatchWithRequestMatchers() { $url = '/test'; - $request = Request::create('/test'); list($low) = $this->createRouterMocks(); @@ -262,7 +277,9 @@ public function testMatchWithRequestMatchers() $high ->expects($this->once()) ->method('matchRequest') - ->with($request) + ->with($this->callback(function (Request $r) use ($url) { + return $r->getPathInfo() === $url; + })) ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException)) ; $low @@ -385,6 +402,31 @@ public function testMatchRequestNotFound() $this->router->matchRequest(Request::create('/test')); } + /** + * Call match on ChainRouter that has RequestMatcher in the chain. + * + * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException + * @expectedExceptionMessage None of the routers in the chain matched url '/test' + */ + public function testMatchWithRequestMatchersNotFound() + { + $url = '/test'; + $request = Request::create('/test'); + + $high = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\RequestMatcher'); + + $high + ->expects($this->once()) + ->method('matchRequest') + ->with($request) + ->will($this->throwException(new \Symfony\Component\Routing\Exception\ResourceNotFoundException)) + ; + + $this->router->add($high, 20); + + $this->router->match($url); + } + /** * If any of the routers throws a not allowed exception and no other matches, we need to see this * @@ -530,7 +572,7 @@ public function testGenerateObjectNotFoundVersatile() $name = new \stdClass(); $parameters = array('test' => 'value'); - $chainedRouter = $this->getMock('Symfony\Cmf\Component\Routing\ChainedRouterInterface'); + $chainedRouter = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\VersatileRouter'); $chainedRouter ->expects($this->once()) ->method('supports') @@ -558,7 +600,7 @@ public function testGenerateObjectName() $parameters = array('test' => 'value'); $defaultRouter = $this->getMock('Symfony\Component\Routing\RouterInterface'); - $chainedRouter = $this->getMock('Symfony\Cmf\Component\Routing\ChainedRouterInterface'); + $chainedRouter = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\VersatileRouter'); $defaultRouter ->expects($this->never()) @@ -644,7 +686,7 @@ public function testRouteCollection() public function testSupport() { - $router = $this->getMock('Symfony\Cmf\Component\Routing\ChainedRouterInterface'); + $router = $this->getMock('Symfony\Cmf\Component\Routing\Tests\Routing\VersatileRouter'); $router ->expects($this->once()) ->method('supports') @@ -662,6 +704,9 @@ public function testSupport() $this->router->generate('foobar'); } + /** + * @return RouterInterface[]|\PHPUnit_Framework_MockObject_MockObject[] + */ protected function createRouterMocks() { return array( @@ -672,10 +717,14 @@ protected function createRouterMocks() } } -abstract class WarmableRouterMock implements \Symfony\Component\Routing\RouterInterface, \Symfony\Component\HttpKernel\CacheWarmer\WarmableInterface +abstract class WarmableRouterMock implements RouterInterface, WarmableInterface +{ +} + +abstract class RequestMatcher implements RouterInterface, RequestMatcherInterface { } -abstract class RequestMatcher implements \Symfony\Component\Routing\RouterInterface, \Symfony\Component\Routing\Matcher\RequestMatcherInterface +abstract class VersatileRouter implements VersatileGeneratorInterface, RequestMatcherInterface { } diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ContentAwareGeneratorTest.php b/core/vendor/symfony-cmf/routing/Tests/Routing/ContentAwareGeneratorTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ContentAwareGeneratorTest.php rename to core/vendor/symfony-cmf/routing/Tests/Routing/ContentAwareGeneratorTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/DynamicRouterTest.php b/core/vendor/symfony-cmf/routing/Tests/Routing/DynamicRouterTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/DynamicRouterTest.php rename to core/vendor/symfony-cmf/routing/Tests/Routing/DynamicRouterTest.php diff --git a/core/vendor/symfony-cmf/routing/Tests/Routing/LazyRouteCollectionTest.php b/core/vendor/symfony-cmf/routing/Tests/Routing/LazyRouteCollectionTest.php new file mode 100644 index 0000000000000000000000000000000000000000..95d3ad227608856cc7178fe352c13b2b35a88fa7 --- /dev/null +++ b/core/vendor/symfony-cmf/routing/Tests/Routing/LazyRouteCollectionTest.php @@ -0,0 +1,42 @@ +<?php + +/* + * This file is part of the Symfony CMF package. + * + * (c) 2011-2014 Symfony CMF + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Cmf\Component\Routing; + +use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase; +use Symfony\Component\Routing\Route; + +/** + * Tests the lazy route collection. + * + * @group cmf/routing + */ +class LazyRouteCollectionTest extends CmfUnitTestCase +{ + /** + * Tests the iterator without a paged route provider. + */ + public function testGetIterator() + { + $routeProvider = $this->getMock('Symfony\Cmf\Component\Routing\RouteProviderInterface'); + $testRoutes = array( + 'route_1' => new Route('/route-1'), + 'route_2"' => new Route('/route-2'), + ); + $routeProvider->expects($this->exactly(2)) + ->method('getRoutesByNames') + ->with(null) + ->will($this->returnValue($testRoutes)); + $lazyRouteCollection = new LazyRouteCollection($routeProvider); + $this->assertEquals($testRoutes, iterator_to_array($lazyRouteCollection->getIterator())); + $this->assertEquals($testRoutes, $lazyRouteCollection->all()); + } +} diff --git a/core/vendor/symfony-cmf/routing/Tests/Routing/PagedRouteCollectionTest.php b/core/vendor/symfony-cmf/routing/Tests/Routing/PagedRouteCollectionTest.php new file mode 100644 index 0000000000000000000000000000000000000000..741beaa531de18200b23796a5840cc40749af33e --- /dev/null +++ b/core/vendor/symfony-cmf/routing/Tests/Routing/PagedRouteCollectionTest.php @@ -0,0 +1,132 @@ +<?php + +/* + * This file is part of the Symfony CMF package. + * + * (c) 2011-2014 Symfony CMF + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Cmf\Component\Routing; + +use Symfony\Cmf\Component\Routing\Test\CmfUnitTestCase; +use Symfony\Component\Routing\Route; + +/** + * Tests the page route collection. + * + * @group cmf/routing + */ +class PagedRouteCollectionTest extends CmfUnitTestCase +{ + /** + * Contains a mocked route provider. + * + * @var \Symfony\Cmf\Component\Routing\PagedRouteProviderInterface|\PHPUnit_Framework_MockObject_MockObject + */ + protected $routeProvider; + + protected function setUp() + { + $this->routeProvider = $this->getMock('Symfony\Cmf\Component\Routing\PagedRouteProviderInterface'); + } + + /** + * Tests iterating a small amount of routes. + * + * @dataProvider providerIterator + */ + public function testIterator($amountRoutes, $routesLoadedInParallel, $expectedCalls = array()) + { + $routes = array(); + for ($i = 0; $i < $amountRoutes; $i++) { + $routes['test_' . $i] = new Route("/example-$i"); + } + $names = array_keys($routes); + + foreach ($expectedCalls as $i => $range) + { + $this->routeProvider->expects($this->at($i)) + ->method('getRoutesPaged') + ->with($range[0], $range[1]) + ->will($this->returnValue(array_slice($routes, $range[0], $range[1]))); + } + + $route_collection = new PagedRouteCollection($this->routeProvider, $routesLoadedInParallel); + + $counter = 0; + foreach ($route_collection as $route_name => $route) { + // Ensure the route did not changed. + $this->assertEquals($routes[$route_name], $route); + // Ensure that the order did not changed. + $this->assertEquals($route_name, $names[$counter]); + $counter++; + } + } + + /** + * Provides test data for testIterator(). + */ + public function providerIterator() + { + $data = array(); + // Non total routes. + $data[] = array(0, 20, array(array(0, 20))); + // Less total routes than loaded in parallel. + $data[] = array(10, 20, array(array(0, 20))); + // Exact the same amount of routes then loaded in parallel. + $data[] = array(20, 20, array(array(0, 20), array(20, 20))); + // Less than twice the amount. + $data[] = array(39, 20, array(array(0, 20), array(20, 20))); + // More total routes than loaded in parallel. + $data[] = array(40, 20, array(array(0, 20), array(20, 20), array(40, 20))); + $data[] = array(41, 20, array(array(0, 20), array(20, 20), array(40, 20))); + // why not. + $data[] = array(42, 23, array(array(0, 23), array(23, 23))); + return $data; + } + + /** + * Tests the count() method. + */ + public function testCount() + { + $this->routeProvider->expects($this->once()) + ->method('getRoutesCount') + ->will($this->returnValue(12)); + $routeCollection = new PagedRouteCollection($this->routeProvider); + $this->assertEquals(12, $routeCollection->count()); + } + + /** + * Tests the rewind method once the iterator is at the end. + */ + public function testIteratingAndRewind() + { + $routes = array(); + for ($i = 0; $i < 30; $i++) { + $routes['test_' . $i] = new Route("/example-$i"); + } + $this->routeProvider->expects($this->any()) + ->method('getRoutesPaged') + ->will($this->returnValueMap(array( + array(0, 10, array_slice($routes, 0, 10)), + array(10, 10, array_slice($routes, 9, 10)), + array(20, 10, array()), + ))); + + $routeCollection = new PagedRouteCollection($this->routeProvider, 10); + + // Force the iterating process. + $routeCollection->rewind(); + for ($i = 0; $i < 29; $i++) { + $routeCollection->next(); + } + $routeCollection->rewind(); + + $this->assertEquals('test_0', $routeCollection->key()); + $this->assertEquals($routes['test_0'], $routeCollection->current()); + } +} diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ProviderBasedGeneratorTest.php b/core/vendor/symfony-cmf/routing/Tests/Routing/ProviderBasedGeneratorTest.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/ProviderBasedGeneratorTest.php rename to core/vendor/symfony-cmf/routing/Tests/Routing/ProviderBasedGeneratorTest.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/RouteMock.php b/core/vendor/symfony-cmf/routing/Tests/Routing/RouteMock.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/Routing/RouteMock.php rename to core/vendor/symfony-cmf/routing/Tests/Routing/RouteMock.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/bootstrap.php b/core/vendor/symfony-cmf/routing/Tests/bootstrap.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/Tests/bootstrap.php rename to core/vendor/symfony-cmf/routing/Tests/bootstrap.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/VersatileGeneratorInterface.php b/core/vendor/symfony-cmf/routing/VersatileGeneratorInterface.php similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/VersatileGeneratorInterface.php rename to core/vendor/symfony-cmf/routing/VersatileGeneratorInterface.php diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/composer.json b/core/vendor/symfony-cmf/routing/composer.json similarity index 83% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/composer.json rename to core/vendor/symfony-cmf/routing/composer.json index 768a7a1ab76445e84fdf744b1aefa0eb78a142f7..8594e3872920b347f89d3b881d6a7d74a3872526 100644 --- a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/composer.json +++ b/core/vendor/symfony-cmf/routing/composer.json @@ -19,7 +19,7 @@ "psr/log": "~1.0" }, "require-dev": { - "symfony/dependency-injection": "~2.0", + "symfony/dependency-injection": "~2.0@stable", "symfony/config": "~2.2", "symfony/event-dispatcher": "~2.1" }, @@ -27,12 +27,13 @@ "symfony/event-dispatcher": "DynamicRouter can optionally trigger an event at the start of matching. Minimal version ~2.1" }, "autoload": { - "psr-0": { "Symfony\\Cmf\\Component\\Routing": "" } + "psr-4": { + "Symfony\\Cmf\\Component\\Routing\\": "" + } }, - "target-dir": "Symfony/Cmf/Component/Routing", "extra": { "branch-alias": { - "dev-master": "1.2-dev" + "dev-master": "1.3-dev" } } } diff --git a/core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/phpunit.xml.dist b/core/vendor/symfony-cmf/routing/phpunit.xml.dist similarity index 100% rename from core/vendor/symfony-cmf/routing/Symfony/Cmf/Component/Routing/phpunit.xml.dist rename to core/vendor/symfony-cmf/routing/phpunit.xml.dist