diff --git a/README.md b/README.md
index 6c07d9b..66ff371 100644
--- a/README.md
+++ b/README.md
@@ -19,11 +19,19 @@ This library is the heart of the popular [Graphgen web application](http://graph
### Download the library :
```bash
-git clone https://github.com/neoxygen/neogen
+git clone https://github.com/graphaware/neo4j-neogen
cd neogen
```
+### Define your graph model in Cypher, refer to Graphgen for documentation reference :
+
+```cypher
+(p:Person:User {uuid: uuid, dob:{dateTimeBetween:["-65years","-18 years"]}} *10)
+(c:Company {name: company, slogan: catchPhrase} *5)
+(p)-[:WORKS_AT *n..1]->(c)
+```
+
### Define your graph model in YAML :
```yaml
diff --git a/composer.json b/composer.json
index 73084ec..848a7e3 100644
--- a/composer.json
+++ b/composer.json
@@ -1,29 +1,30 @@
{
- "name": "neoxygen/neogen",
+ "name": "graphaware/neo4j-neogen",
"type": "library",
- "description": "Neo4j Graph generator for PHP5.4+",
+ "description": "Neo4j Graph generation engine",
"keywords": [
"graph",
"neo4j",
- "generator"
+ "generation",
+ "faker"
],
- "homepage": "http://neoxygen.io",
+ "homepage": "http://graphaware.com",
"license": "MIT",
"authors": [
{
"name": "Christophe Willemsen",
- "email": "chris@neoxygen.io"
+ "email": "christophe@graphaware.com"
}
],
"require": {
"php": ">=5.4",
"fzaninotto/faker": "~1.4",
- "symfony/console": "~2.5",
- "symfony/yaml": "~2.5",
- "symfony/finder": "~2.5",
- "symfony/dependency-injection": "~2.5",
+ "symfony/console": "~2.7",
+ "symfony/yaml": "~2.7",
+ "symfony/finder": "~2.7",
+ "symfony/dependency-injection": "~2.7",
"doctrine/collections": "~1.2",
- "neoxygen/neoclient": "~2.1",
+ "neoxygen/neoclient": "~3.0",
"ikwattro/faker-extra": "~0.3",
"jms/serializer": "~0.16"
},
@@ -33,17 +34,14 @@
},
"autoload": {
"psr-4": {
- "Neoxygen\\Neogen\\": "src"
+ "Neoxygen\\Neogen\\": "src/",
+ "GraphAware\\Neogen\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
- "Neoxygen\\Neogen\\Tests\\": "tests/Neoxygen/Neogen/Tests"
- }
- },
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
+ "Neoxygen\\Neogen\\Tests\\": "tests/Neoxygen/Neogen/Tests",
+ "GraphAware\\Neogen\\Tests\\": "tests/"
}
},
"bin": ["bin/neogen"]
diff --git a/composer.lock b/composer.lock
index 9443733..786c99c 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1,23 +1,23 @@
{
"_readme": [
"This file locks the dependencies of your project to a known state",
- "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
- "hash": "4de7deb4e887a530315a7b7a57297a8f",
+ "hash": "3e2b7e4af81d0432e8830ea0fc5340c4",
"packages": [
{
"name": "doctrine/annotations",
- "version": "v1.2.4",
+ "version": "v1.2.7",
"source": {
"type": "git",
"url": "https://github.com/doctrine/annotations.git",
- "reference": "b5202eb9e83f8db52e0e58867e0a46e63be8332e"
+ "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/annotations/zipball/b5202eb9e83f8db52e0e58867e0a46e63be8332e",
- "reference": "b5202eb9e83f8db52e0e58867e0a46e63be8332e",
+ "url": "https://api.github.com/repos/doctrine/annotations/zipball/f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
+ "reference": "f25c8aab83e0c3e976fd7d19875f198ccf2f7535",
"shasum": ""
},
"require": {
@@ -72,7 +72,7 @@
"docblock",
"parser"
],
- "time": "2014-12-23 22:40:37"
+ "time": "2015-08-31 12:32:49"
},
{
"name": "doctrine/collections",
@@ -196,16 +196,16 @@
},
{
"name": "fzaninotto/faker",
- "version": "v1.4.0",
+ "version": "v1.5.0",
"source": {
"type": "git",
"url": "https://github.com/fzaninotto/Faker.git",
- "reference": "010c7efedd88bf31141a02719f51fb44c732d5a0"
+ "reference": "d0190b156bcca848d401fb80f31f504f37141c8d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/010c7efedd88bf31141a02719f51fb44c732d5a0",
- "reference": "010c7efedd88bf31141a02719f51fb44c732d5a0",
+ "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/d0190b156bcca848d401fb80f31f504f37141c8d",
+ "reference": "d0190b156bcca848d401fb80f31f504f37141c8d",
"shasum": ""
},
"require": {
@@ -215,14 +215,18 @@
"phpunit/phpunit": "~4.0",
"squizlabs/php_codesniffer": "~1.5"
},
+ "suggest": {
+ "ext-intl": "*"
+ },
"type": "library",
"extra": {
- "branch-alias": []
+ "branch-alias": {
+ "dev-master": "1.5.x-dev"
+ }
},
"autoload": {
- "psr-0": {
- "Faker": "src/",
- "Faker\\PHPUnit": "test/"
+ "psr-4": {
+ "Faker\\": "src/Faker/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -240,48 +244,86 @@
"faker",
"fixtures"
],
- "time": "2014-06-04 14:43:02"
+ "time": "2015-05-29 06:29:14"
+ },
+ {
+ "name": "graphaware/neo4j-response-formatter",
+ "version": "1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/graphaware/neo4j-php-response-formatter.git",
+ "reference": "a1a1bbbd445163c5dc06e5e47a8fec07b344f903"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/graphaware/neo4j-php-response-formatter/zipball/a1a1bbbd445163c5dc06e5e47a8fec07b344f903",
+ "reference": "a1a1bbbd445163c5dc06e5e47a8fec07b344f903",
+ "shasum": ""
+ },
+ "require": {
+ "psr/http-message": "^1.0"
+ },
+ "require-dev": {
+ "neoxygen/neoclient": "^3.2",
+ "phpspec/prophecy": "^1.4",
+ "phpunit/phpunit": "^4.7"
+ },
+ "type": "library",
+ "autoload": {
+ "psr-4": {
+ "GraphAware\\NeoClient\\Formatter\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Christophe Willemsen",
+ "email": "christophe@graphaware.com"
+ }
+ ],
+ "description": "Response Formatter for NeoClient",
+ "time": "2015-08-06 21:11:14"
},
{
"name": "guzzlehttp/guzzle",
- "version": "4.2.3",
+ "version": "6.0.2",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
- "reference": "66fd916e9f9130bc22c51450476823391cb2f67c"
+ "reference": "a8dfeff00eb84616a17fea7a4d72af35e750410f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/66fd916e9f9130bc22c51450476823391cb2f67c",
- "reference": "66fd916e9f9130bc22c51450476823391cb2f67c",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/a8dfeff00eb84616a17fea7a4d72af35e750410f",
+ "reference": "a8dfeff00eb84616a17fea7a4d72af35e750410f",
"shasum": ""
},
"require": {
- "ext-json": "*",
- "guzzlehttp/streams": "~2.1",
- "php": ">=5.4.0"
+ "guzzlehttp/promises": "~1.0",
+ "guzzlehttp/psr7": "~1.1",
+ "php": ">=5.5.0"
},
"require-dev": {
"ext-curl": "*",
"phpunit/phpunit": "~4.0",
"psr/log": "~1.0"
},
- "suggest": {
- "ext-curl": "Guzzle will use specific adapters if cURL is present"
- },
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.2-dev"
+ "dev-master": "6.0-dev"
}
},
"autoload": {
+ "files": [
+ "src/functions_include.php"
+ ],
"psr-4": {
"GuzzleHttp\\": "src/"
- },
- "files": [
- "src/functions.php"
- ]
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -294,7 +336,7 @@
"homepage": "https://github.com/mtdowling"
}
],
- "description": "Guzzle is a PHP HTTP client library and framework for building RESTful web service clients",
+ "description": "Guzzle is a PHP HTTP client library",
"homepage": "http://guzzlephp.org/",
"keywords": [
"client",
@@ -305,24 +347,24 @@
"rest",
"web service"
],
- "time": "2014-10-05 19:29:14"
+ "time": "2015-07-04 20:09:24"
},
{
- "name": "guzzlehttp/streams",
- "version": "2.1.0",
+ "name": "guzzlehttp/promises",
+ "version": "1.0.2",
"source": {
"type": "git",
- "url": "https://github.com/guzzle/streams.git",
- "reference": "f91b721d73f0e561410903b3b3c90a5d0e40b534"
+ "url": "https://github.com/guzzle/promises.git",
+ "reference": "97fe7210def29451ec74923b27e552238defd75a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/streams/zipball/f91b721d73f0e561410903b3b3c90a5d0e40b534",
- "reference": "f91b721d73f0e561410903b3b3c90a5d0e40b534",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/97fe7210def29451ec74923b27e552238defd75a",
+ "reference": "97fe7210def29451ec74923b27e552238defd75a",
"shasum": ""
},
"require": {
- "php": ">=5.4.0"
+ "php": ">=5.5.0"
},
"require-dev": {
"phpunit/phpunit": "~4.0"
@@ -330,15 +372,15 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "1.0-dev"
}
},
"autoload": {
"psr-4": {
- "GuzzleHttp\\Stream\\": "src/"
+ "GuzzleHttp\\Promise\\": "src/"
},
"files": [
- "src/functions.php"
+ "src/functions_include.php"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -352,13 +394,69 @@
"homepage": "https://github.com/mtdowling"
}
],
- "description": "Provides a simple abstraction over streams of data (Guzzle 4+)",
- "homepage": "http://guzzlephp.org/",
+ "description": "Guzzle promises library",
+ "keywords": [
+ "promise"
+ ],
+ "time": "2015-08-15 19:37:21"
+ },
+ {
+ "name": "guzzlehttp/psr7",
+ "version": "1.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/guzzle/psr7.git",
+ "reference": "4ef919b0cf3b1989523138b60163bbcb7ba1ff7e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/4ef919b0cf3b1989523138b60163bbcb7ba1ff7e",
+ "reference": "4ef919b0cf3b1989523138b60163bbcb7ba1ff7e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.4.0",
+ "psr/http-message": "~1.0"
+ },
+ "provide": {
+ "psr/http-message-implementation": "1.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "~4.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "GuzzleHttp\\Psr7\\": "src/"
+ },
+ "files": [
+ "src/functions_include.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Michael Dowling",
+ "email": "mtdowling@gmail.com",
+ "homepage": "https://github.com/mtdowling"
+ }
+ ],
+ "description": "PSR-7 message implementation",
"keywords": [
- "Guzzle",
- "stream"
+ "http",
+ "message",
+ "stream",
+ "uri"
],
- "time": "2014-08-17 21:15:53"
+ "time": "2015-08-15 19:32:36"
},
{
"name": "ikwattro/faker-extra",
@@ -564,16 +662,16 @@
},
{
"name": "monolog/monolog",
- "version": "1.13.1",
+ "version": "1.17.1",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
- "reference": "c31a2c4e8db5da8b46c74cf275d7f109c0f249ac"
+ "reference": "0524c87587ab85bc4c2d6f5b41253ccb930a5422"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/c31a2c4e8db5da8b46c74cf275d7f109c0f249ac",
- "reference": "c31a2c4e8db5da8b46c74cf275d7f109c0f249ac",
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/0524c87587ab85bc4c2d6f5b41253ccb930a5422",
+ "reference": "0524c87587ab85bc4c2d6f5b41253ccb930a5422",
"shasum": ""
},
"require": {
@@ -584,12 +682,14 @@
"psr/log-implementation": "1.0.0"
},
"require-dev": {
- "aws/aws-sdk-php": "~2.4, >2.4.8",
+ "aws/aws-sdk-php": "^2.4.9",
"doctrine/couchdb": "~1.0@dev",
"graylog2/gelf-php": "~1.0",
- "phpunit/phpunit": "~4.0",
- "raven/raven": "~0.5",
- "ruflin/elastica": "0.90.*",
+ "php-console/php-console": "^3.1.3",
+ "phpunit/phpunit": "~4.5",
+ "phpunit/phpunit-mock-objects": "2.3.0",
+ "raven/raven": "~0.11",
+ "ruflin/elastica": ">=0.90 <3.0",
"swiftmailer/swiftmailer": "~5.3",
"videlalvaro/php-amqplib": "~2.4"
},
@@ -599,6 +699,7 @@
"ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)",
"ext-mongo": "Allow sending log messages to a MongoDB server",
"graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server",
+ "php-console/php-console": "Allow sending log messages to Google Chrome",
"raven/raven": "Allow sending log messages to a Sentry server",
"rollbar/rollbar": "Allow sending log messages to Rollbar",
"ruflin/elastica": "Allow sending log messages to an Elastic Search server",
@@ -607,7 +708,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.13.x-dev"
+ "dev-master": "1.16.x-dev"
}
},
"autoload": {
@@ -633,31 +734,31 @@
"logging",
"psr-3"
],
- "time": "2015-03-09 09:58:04"
+ "time": "2015-08-31 09:17:37"
},
{
"name": "neoxygen/neoclient",
- "version": "2.1.13",
+ "version": "3.3.10",
"source": {
"type": "git",
"url": "https://github.com/neoxygen/neo4j-neoclient.git",
- "reference": "6ec845e536dd9409f7b4ead836fe73369198ff29"
+ "reference": "57fbd2ab5b35c3e387eafe39d43ff95478b35f23"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/neoxygen/neo4j-neoclient/zipball/6ec845e536dd9409f7b4ead836fe73369198ff29",
- "reference": "6ec845e536dd9409f7b4ead836fe73369198ff29",
+ "url": "https://api.github.com/repos/neoxygen/neo4j-neoclient/zipball/57fbd2ab5b35c3e387eafe39d43ff95478b35f23",
+ "reference": "57fbd2ab5b35c3e387eafe39d43ff95478b35f23",
"shasum": ""
},
"require": {
- "guzzlehttp/guzzle": "4.*",
+ "graphaware/neo4j-response-formatter": "^1.0",
+ "guzzlehttp/guzzle": "^6.0",
"monolog/monolog": "~1.1",
- "php": ">= 5.4",
- "symfony/config": "~2.5",
- "symfony/console": "~2.5",
- "symfony/dependency-injection": "~2.5",
- "symfony/event-dispatcher": "~2.5",
- "symfony/yaml": "~2.5"
+ "php": ">= 5.5",
+ "symfony/config": "^2.7",
+ "symfony/dependency-injection": "^2.7",
+ "symfony/event-dispatcher": "^2.7",
+ "symfony/yaml": "^2.7"
},
"require-dev": {
"behat/behat": "~3.0",
@@ -668,7 +769,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.1-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -695,7 +796,7 @@
"high-availibility",
"neo4j"
],
- "time": "2015-04-25 20:25:46"
+ "time": "2015-08-04 23:37:18"
},
{
"name": "phpcollection/phpcollection",
@@ -749,21 +850,24 @@
},
{
"name": "phpoption/phpoption",
- "version": "1.4.0",
+ "version": "1.5.0",
"source": {
"type": "git",
"url": "https://github.com/schmittjoh/php-option.git",
- "reference": "5d099bcf0393908bf4ad69cc47dafb785d51f7f5"
+ "reference": "94e644f7d2051a5f0fcf77d81605f152eecff0ed"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/5d099bcf0393908bf4ad69cc47dafb785d51f7f5",
- "reference": "5d099bcf0393908bf4ad69cc47dafb785d51f7f5",
+ "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/94e644f7d2051a5f0fcf77d81605f152eecff0ed",
+ "reference": "94e644f7d2051a5f0fcf77d81605f152eecff0ed",
"shasum": ""
},
"require": {
"php": ">=5.3.0"
},
+ "require-dev": {
+ "phpunit/phpunit": "4.7.*"
+ },
"type": "library",
"extra": {
"branch-alias": {
@@ -781,10 +885,8 @@
],
"authors": [
{
- "name": "Johannes Schmitt",
- "email": "schmittjoh@gmail.com",
- "homepage": "https://github.com/schmittjoh",
- "role": "Developer of wrapped JMSSerializerBundle"
+ "name": "Johannes M. Schmitt",
+ "email": "schmittjoh@gmail.com"
}
],
"description": "Option Type for PHP",
@@ -794,7 +896,56 @@
"php",
"type"
],
- "time": "2014-01-09 22:37:17"
+ "time": "2015-07-25 16:39:46"
+ },
+ {
+ "name": "psr/http-message",
+ "version": "1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/http-message.git",
+ "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/http-message/zipball/85d63699f0dbedb190bbd4b0d2b9dc707ea4c298",
+ "reference": "85d63699f0dbedb190bbd4b0d2b9dc707ea4c298",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Http\\Message\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common interface for HTTP messages",
+ "keywords": [
+ "http",
+ "http-message",
+ "psr",
+ "psr-7",
+ "request",
+ "response"
+ ],
+ "time": "2015-05-04 20:22:00"
},
{
"name": "psr/log",
@@ -836,21 +987,20 @@
},
{
"name": "symfony/config",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/Config",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/Config.git",
- "reference": "d91be01336605db8da21b79bc771e46a7276d1bc"
+ "reference": "6c905bbed1e728226de656e4c07d620dfe9e80d9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Config/zipball/d91be01336605db8da21b79bc771e46a7276d1bc",
- "reference": "d91be01336605db8da21b79bc771e46a7276d1bc",
+ "url": "https://api.github.com/repos/symfony/Config/zipball/6c905bbed1e728226de656e4c07d620dfe9e80d9",
+ "reference": "6c905bbed1e728226de656e4c07d620dfe9e80d9",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
+ "php": ">=5.3.9",
"symfony/filesystem": "~2.3"
},
"require-dev": {
@@ -859,11 +1009,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\Config\\": ""
}
},
@@ -872,36 +1022,35 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony Config Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-30 15:54:10"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-09 16:07:40"
},
{
"name": "symfony/console",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/Console",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/Console.git",
- "reference": "5b91dc4ed5eb08553f57f6df04c4730a73992667"
+ "reference": "d6cf02fe73634c96677e428f840704bfbcaec29e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Console/zipball/5b91dc4ed5eb08553f57f6df04c4730a73992667",
- "reference": "5b91dc4ed5eb08553f57f6df04c4730a73992667",
+ "url": "https://api.github.com/repos/symfony/Console/zipball/d6cf02fe73634c96677e428f840704bfbcaec29e",
+ "reference": "d6cf02fe73634c96677e428f840704bfbcaec29e",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"require-dev": {
"psr/log": "~1.0",
@@ -917,11 +1066,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\Console\\": ""
}
},
@@ -930,36 +1079,35 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony Console Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-30 15:54:10"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-28 15:18:12"
},
{
"name": "symfony/dependency-injection",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/DependencyInjection",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/DependencyInjection.git",
- "reference": "8e9007012226b4bd41f8afed855c452cf5edc3a6"
+ "reference": "851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/8e9007012226b4bd41f8afed855c452cf5edc3a6",
- "reference": "8e9007012226b4bd41f8afed855c452cf5edc3a6",
+ "url": "https://api.github.com/repos/symfony/DependencyInjection/zipball/851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6",
+ "reference": "851e3ffe8a366b1590bdaf3df2c1395f2d27d8a6",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"conflict": {
"symfony/expression-language": "<2.6"
@@ -978,11 +1126,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\DependencyInjection\\": ""
}
},
@@ -991,36 +1139,35 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony DependencyInjection Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-30 15:54:10"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-28 14:07:07"
},
{
"name": "symfony/event-dispatcher",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/EventDispatcher",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/EventDispatcher.git",
- "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284"
+ "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/70f7c8478739ad21e3deef0d977b38c77f1fb284",
- "reference": "70f7c8478739ad21e3deef0d977b38c77f1fb284",
+ "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/9310b5f9a87ec2ea75d20fec0b0017c77c66dac3",
+ "reference": "9310b5f9a87ec2ea75d20fec0b0017c77c66dac3",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"require-dev": {
"psr/log": "~1.0",
@@ -1037,11 +1184,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\EventDispatcher\\": ""
}
},
@@ -1050,36 +1197,35 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony EventDispatcher Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-13 17:37:22"
+ "homepage": "https://symfony.com",
+ "time": "2015-06-18 19:21:56"
},
{
"name": "symfony/filesystem",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/Filesystem",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/Filesystem.git",
- "reference": "4983964b3693e4f13449cb3800c64a9112c301b4"
+ "reference": "2d7b2ddaf3f548f4292df49a99d19c853d43f0b8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Filesystem/zipball/4983964b3693e4f13449cb3800c64a9112c301b4",
- "reference": "4983964b3693e4f13449cb3800c64a9112c301b4",
+ "url": "https://api.github.com/repos/symfony/Filesystem/zipball/2d7b2ddaf3f548f4292df49a99d19c853d43f0b8",
+ "reference": "2d7b2ddaf3f548f4292df49a99d19c853d43f0b8",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"require-dev": {
"symfony/phpunit-bridge": "~2.7"
@@ -1087,11 +1233,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\Filesystem\\": ""
}
},
@@ -1100,36 +1246,35 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony Filesystem Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-22 16:55:57"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-09 16:07:40"
},
{
"name": "symfony/finder",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/Finder",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/Finder.git",
- "reference": "5dbe2e73a580618f5b4880fda93406eed25de251"
+ "reference": "ae0f363277485094edc04c9f3cbe595b183b78e4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Finder/zipball/5dbe2e73a580618f5b4880fda93406eed25de251",
- "reference": "5dbe2e73a580618f5b4880fda93406eed25de251",
+ "url": "https://api.github.com/repos/symfony/Finder/zipball/ae0f363277485094edc04c9f3cbe595b183b78e4",
+ "reference": "ae0f363277485094edc04c9f3cbe595b183b78e4",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"require-dev": {
"symfony/phpunit-bridge": "~2.7"
@@ -1137,11 +1282,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\Finder\\": ""
}
},
@@ -1150,36 +1295,35 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony Finder Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-30 15:54:10"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-09 16:07:40"
},
{
"name": "symfony/yaml",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/Yaml",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/Yaml.git",
- "reference": "174f009ed36379a801109955fc5a71a49fe62dd4"
+ "reference": "71340e996171474a53f3d29111d046be4ad8a0ff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Yaml/zipball/174f009ed36379a801109955fc5a71a49fe62dd4",
- "reference": "174f009ed36379a801109955fc5a71a49fe62dd4",
+ "url": "https://api.github.com/repos/symfony/Yaml/zipball/71340e996171474a53f3d29111d046be4ad8a0ff",
+ "reference": "71340e996171474a53f3d29111d046be4ad8a0ff",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"require-dev": {
"symfony/phpunit-bridge": "~2.7"
@@ -1187,11 +1331,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\Yaml\\": ""
}
},
@@ -1200,33 +1344,33 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony Yaml Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-30 15:54:10"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-28 14:07:07"
}
],
"packages-dev": [
{
"name": "doctrine/instantiator",
- "version": "1.0.4",
+ "version": "1.0.5",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119"
+ "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f976e5de371104877ebc89bd8fecb0019ed9c119",
- "reference": "f976e5de371104877ebc89bd8fecb0019ed9c119",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
+ "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
"shasum": ""
},
"require": {
@@ -1237,7 +1381,7 @@
"ext-pdo": "*",
"ext-phar": "*",
"phpunit/phpunit": "~4.0",
- "squizlabs/php_codesniffer": "2.0.*@ALPHA"
+ "squizlabs/php_codesniffer": "~2.0"
},
"type": "library",
"extra": {
@@ -1246,8 +1390,8 @@
}
},
"autoload": {
- "psr-0": {
- "Doctrine\\Instantiator\\": "src"
+ "psr-4": {
+ "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1267,7 +1411,7 @@
"constructor",
"instantiate"
],
- "time": "2014-10-13 12:58:55"
+ "time": "2015-06-14 21:17:01"
},
{
"name": "phpdocumentor/reflection-docblock",
@@ -1354,16 +1498,16 @@
},
{
"name": "phpspec/phpspec",
- "version": "2.2.0",
+ "version": "2.2.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/phpspec.git",
- "reference": "9727d75919a00455433e867565bc022f0b985a39"
+ "reference": "e9a40577323e67f1de2e214abf32976a0352d8f8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/phpspec/zipball/9727d75919a00455433e867565bc022f0b985a39",
- "reference": "9727d75919a00455433e867565bc022f0b985a39",
+ "url": "https://api.github.com/repos/phpspec/phpspec/zipball/e9a40577323e67f1de2e214abf32976a0352d8f8",
+ "reference": "e9a40577323e67f1de2e214abf32976a0352d8f8",
"shasum": ""
},
"require": {
@@ -1428,20 +1572,20 @@
"testing",
"tests"
],
- "time": "2015-04-18 16:22:51"
+ "time": "2015-05-30 15:21:40"
},
{
"name": "phpspec/prophecy",
- "version": "v1.4.1",
+ "version": "v1.5.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "3132b1f44c7bf2ec4c7eb2d3cb78fdeca760d373"
+ "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/3132b1f44c7bf2ec4c7eb2d3cb78fdeca760d373",
- "reference": "3132b1f44c7bf2ec4c7eb2d3cb78fdeca760d373",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/4745ded9307786b730d7a60df5cb5a6c43cf95f7",
+ "reference": "4745ded9307786b730d7a60df5cb5a6c43cf95f7",
"shasum": ""
},
"require": {
@@ -1488,20 +1632,20 @@
"spy",
"stub"
],
- "time": "2015-04-27 22:15:08"
+ "time": "2015-08-13 10:07:40"
},
{
"name": "phpunit/php-code-coverage",
- "version": "2.0.16",
+ "version": "2.2.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "934fd03eb6840508231a7f73eb8940cf32c3b66c"
+ "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/934fd03eb6840508231a7f73eb8940cf32c3b66c",
- "reference": "934fd03eb6840508231a7f73eb8940cf32c3b66c",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2d7c03c0e4e080901b8f33b2897b0577be18a13c",
+ "reference": "2d7c03c0e4e080901b8f33b2897b0577be18a13c",
"shasum": ""
},
"require": {
@@ -1509,7 +1653,7 @@
"phpunit/php-file-iterator": "~1.3",
"phpunit/php-text-template": "~1.2",
"phpunit/php-token-stream": "~1.3",
- "sebastian/environment": "~1.0",
+ "sebastian/environment": "^1.3.2",
"sebastian/version": "~1.0"
},
"require-dev": {
@@ -1524,7 +1668,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "2.2.x-dev"
}
},
"autoload": {
@@ -1550,20 +1694,20 @@
"testing",
"xunit"
],
- "time": "2015-04-11 04:35:00"
+ "time": "2015-08-04 03:42:39"
},
{
"name": "phpunit/php-file-iterator",
- "version": "1.4.0",
+ "version": "1.4.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "a923bb15680d0089e2316f7a4af8f437046e96bb"
+ "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/a923bb15680d0089e2316f7a4af8f437046e96bb",
- "reference": "a923bb15680d0089e2316f7a4af8f437046e96bb",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+ "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
"shasum": ""
},
"require": {
@@ -1597,20 +1741,20 @@
"filesystem",
"iterator"
],
- "time": "2015-04-02 05:19:05"
+ "time": "2015-06-21 13:08:43"
},
{
"name": "phpunit/php-text-template",
- "version": "1.2.0",
+ "version": "1.2.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a"
+ "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
- "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+ "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
"shasum": ""
},
"require": {
@@ -1619,20 +1763,17 @@
"type": "library",
"autoload": {
"classmap": [
- "Text/"
+ "src/"
]
},
"notification-url": "https://packagist.org/downloads/",
- "include-path": [
- ""
- ],
"license": [
"BSD-3-Clause"
],
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sb@sebastian-bergmann.de",
+ "email": "sebastian@phpunit.de",
"role": "lead"
}
],
@@ -1641,20 +1782,20 @@
"keywords": [
"template"
],
- "time": "2014-01-30 17:20:04"
+ "time": "2015-06-21 13:50:34"
},
{
"name": "phpunit/php-timer",
- "version": "1.0.5",
+ "version": "1.0.7",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c"
+ "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
- "reference": "19689d4354b295ee3d8c54b4f42c3efb69cbc17c",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
+ "reference": "3e82f4e9fc92665fafd9157568e4dcb01d014e5b",
"shasum": ""
},
"require": {
@@ -1663,13 +1804,10 @@
"type": "library",
"autoload": {
"classmap": [
- "PHP/"
+ "src/"
]
},
"notification-url": "https://packagist.org/downloads/",
- "include-path": [
- ""
- ],
"license": [
"BSD-3-Clause"
],
@@ -1685,20 +1823,20 @@
"keywords": [
"timer"
],
- "time": "2013-08-02 07:42:54"
+ "time": "2015-06-21 08:01:12"
},
{
"name": "phpunit/php-token-stream",
- "version": "1.4.1",
+ "version": "1.4.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "eab81d02569310739373308137284e0158424330"
+ "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/eab81d02569310739373308137284e0158424330",
- "reference": "eab81d02569310739373308137284e0158424330",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3ab72c62e550370a6cd5dc873e1a04ab57562f5b",
+ "reference": "3ab72c62e550370a6cd5dc873e1a04ab57562f5b",
"shasum": ""
},
"require": {
@@ -1734,20 +1872,20 @@
"keywords": [
"tokenizer"
],
- "time": "2015-04-08 04:46:07"
+ "time": "2015-08-16 08:51:00"
},
{
"name": "phpunit/phpunit",
- "version": "4.6.4",
+ "version": "4.8.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "163232991e652e6efed2f8470326fffa61e848e2"
+ "reference": "2246830f4a1a551c67933e4171bf2126dc29d357"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/163232991e652e6efed2f8470326fffa61e848e2",
- "reference": "163232991e652e6efed2f8470326fffa61e848e2",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/2246830f4a1a551c67933e4171bf2126dc29d357",
+ "reference": "2246830f4a1a551c67933e4171bf2126dc29d357",
"shasum": ""
},
"require": {
@@ -1757,15 +1895,15 @@
"ext-reflection": "*",
"ext-spl": "*",
"php": ">=5.3.3",
- "phpspec/prophecy": "~1.3,>=1.3.1",
- "phpunit/php-code-coverage": "~2.0,>=2.0.11",
+ "phpspec/prophecy": "^1.3.1",
+ "phpunit/php-code-coverage": "~2.1",
"phpunit/php-file-iterator": "~1.4",
"phpunit/php-text-template": "~1.2",
- "phpunit/php-timer": "~1.0",
+ "phpunit/php-timer": ">=1.0.6",
"phpunit/phpunit-mock-objects": "~2.3",
"sebastian/comparator": "~1.1",
"sebastian/diff": "~1.2",
- "sebastian/environment": "~1.2",
+ "sebastian/environment": "~1.3",
"sebastian/exporter": "~1.2",
"sebastian/global-state": "~1.0",
"sebastian/version": "~1.0",
@@ -1780,7 +1918,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.6.x-dev"
+ "dev-master": "4.8.x-dev"
}
},
"autoload": {
@@ -1806,26 +1944,27 @@
"testing",
"xunit"
],
- "time": "2015-04-11 05:23:21"
+ "time": "2015-08-24 04:09:38"
},
{
"name": "phpunit/phpunit-mock-objects",
- "version": "2.3.1",
+ "version": "2.3.7",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "74ffb87f527f24616f72460e54b595f508dccb5c"
+ "reference": "5e2645ad49d196e020b85598d7c97e482725786a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/74ffb87f527f24616f72460e54b595f508dccb5c",
- "reference": "74ffb87f527f24616f72460e54b595f508dccb5c",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/5e2645ad49d196e020b85598d7c97e482725786a",
+ "reference": "5e2645ad49d196e020b85598d7c97e482725786a",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "~1.0,>=1.0.2",
+ "doctrine/instantiator": "^1.0.2",
"php": ">=5.3.3",
- "phpunit/php-text-template": "~1.2"
+ "phpunit/php-text-template": "~1.2",
+ "sebastian/exporter": "~1.2"
},
"require-dev": {
"phpunit/phpunit": "~4.4"
@@ -1861,20 +2000,20 @@
"mock",
"xunit"
],
- "time": "2015-04-02 05:36:41"
+ "time": "2015-08-19 09:14:08"
},
{
"name": "sebastian/comparator",
- "version": "1.1.1",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "1dd8869519a225f7f2b9eb663e225298fade819e"
+ "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/1dd8869519a225f7f2b9eb663e225298fade819e",
- "reference": "1dd8869519a225f7f2b9eb663e225298fade819e",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
+ "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
"shasum": ""
},
"require": {
@@ -1888,7 +2027,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1.x-dev"
+ "dev-master": "1.2.x-dev"
}
},
"autoload": {
@@ -1925,7 +2064,7 @@
"compare",
"equality"
],
- "time": "2015-01-29 16:28:08"
+ "time": "2015-07-26 15:48:44"
},
{
"name": "sebastian/diff",
@@ -1981,16 +2120,16 @@
},
{
"name": "sebastian/environment",
- "version": "1.2.2",
+ "version": "1.3.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "5a8c7d31914337b69923db26c4221b81ff5a196e"
+ "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/5a8c7d31914337b69923db26c4221b81ff5a196e",
- "reference": "5a8c7d31914337b69923db26c4221b81ff5a196e",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6324c907ce7a52478eeeaede764f48733ef5ae44",
+ "reference": "6324c907ce7a52478eeeaede764f48733ef5ae44",
"shasum": ""
},
"require": {
@@ -2027,20 +2166,20 @@
"environment",
"hhvm"
],
- "time": "2015-01-01 10:01:08"
+ "time": "2015-08-03 06:14:51"
},
{
"name": "sebastian/exporter",
- "version": "1.2.0",
+ "version": "1.2.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "84839970d05254c73cde183a721c7af13aede943"
+ "reference": "7ae5513327cb536431847bcc0c10edba2701064e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/84839970d05254c73cde183a721c7af13aede943",
- "reference": "84839970d05254c73cde183a721c7af13aede943",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e",
+ "reference": "7ae5513327cb536431847bcc0c10edba2701064e",
"shasum": ""
},
"require": {
@@ -2093,7 +2232,7 @@
"export",
"exporter"
],
- "time": "2015-01-27 07:23:06"
+ "time": "2015-06-21 07:55:53"
},
{
"name": "sebastian/global-state",
@@ -2148,16 +2287,16 @@
},
{
"name": "sebastian/recursion-context",
- "version": "1.0.0",
+ "version": "1.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "3989662bbb30a29d20d9faa04a846af79b276252"
+ "reference": "994d4a811bafe801fb06dccbee797863ba2792ba"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/3989662bbb30a29d20d9faa04a846af79b276252",
- "reference": "3989662bbb30a29d20d9faa04a846af79b276252",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/994d4a811bafe801fb06dccbee797863ba2792ba",
+ "reference": "994d4a811bafe801fb06dccbee797863ba2792ba",
"shasum": ""
},
"require": {
@@ -2197,20 +2336,20 @@
],
"description": "Provides functionality to recursively process PHP variables",
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-01-24 09:48:32"
+ "time": "2015-06-21 08:04:50"
},
{
"name": "sebastian/version",
- "version": "1.0.5",
+ "version": "1.0.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "ab931d46cd0d3204a91e1b9a40c4bc13032b58e4"
+ "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/ab931d46cd0d3204a91e1b9a40c4bc13032b58e4",
- "reference": "ab931d46cd0d3204a91e1b9a40c4bc13032b58e4",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
+ "reference": "58b3a85e7999757d6ad81c787a1fbf5ff6c628c6",
"shasum": ""
},
"type": "library",
@@ -2232,25 +2371,24 @@
],
"description": "Library that helps with managing the version number of Git-hosted PHP projects",
"homepage": "https://github.com/sebastianbergmann/version",
- "time": "2015-02-24 06:35:25"
+ "time": "2015-06-21 13:59:46"
},
{
"name": "symfony/process",
- "version": "v2.6.6",
- "target-dir": "Symfony/Component/Process",
+ "version": "v2.7.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/Process.git",
- "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552"
+ "reference": "48aeb0e48600321c272955132d7606ab0a49adb3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/Process/zipball/a8bebaec1a9dc6cde53e0250e32917579b0be552",
- "reference": "a8bebaec1a9dc6cde53e0250e32917579b0be552",
+ "url": "https://api.github.com/repos/symfony/Process/zipball/48aeb0e48600321c272955132d7606ab0a49adb3",
+ "reference": "48aeb0e48600321c272955132d7606ab0a49adb3",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=5.3.9"
},
"require-dev": {
"symfony/phpunit-bridge": "~2.7"
@@ -2258,11 +2396,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.6-dev"
+ "dev-master": "2.7-dev"
}
},
"autoload": {
- "psr-0": {
+ "psr-4": {
"Symfony\\Component\\Process\\": ""
}
},
@@ -2271,18 +2409,18 @@
"MIT"
],
"authors": [
- {
- "name": "Symfony Community",
- "homepage": "http://symfony.com/contributors"
- },
{
"name": "Fabien Potencier",
"email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
}
],
"description": "Symfony Process Component",
- "homepage": "http://symfony.com",
- "time": "2015-03-30 15:54:10"
+ "homepage": "https://symfony.com",
+ "time": "2015-07-01 11:25:50"
}
],
"aliases": [],
diff --git a/phpunit.xml b/phpunit.xml
index 881a102..557d5fe 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -3,7 +3,7 @@
- ./tests/Neoxygen/Neogen
+ ./tests
diff --git a/src/Exception/GenerationExceptionInterface.php b/src/Exception/GenerationExceptionInterface.php
new file mode 100644
index 0000000..01dc6b2
--- /dev/null
+++ b/src/Exception/GenerationExceptionInterface.php
@@ -0,0 +1,5 @@
+ $v) {
+ if ("" === $v) {
+ unset($array[$k]);
+ }
+ }
+
+ return $array;
+ }
+}
\ No newline at end of file
diff --git a/src/Parser/CypherDefinition.php b/src/Parser/CypherDefinition.php
new file mode 100644
index 0000000..6784b98
--- /dev/null
+++ b/src/Parser/CypherDefinition.php
@@ -0,0 +1,38 @@
+parts;
+ }
+
+ /**
+ * @return mixed
+ */
+ public function getNodes()
+ {
+ return $this->nodes;
+ }
+
+ /**
+ * @return mixed
+ */
+ public function getEdges()
+ {
+ return $this->edges;
+ }
+
+
+}
\ No newline at end of file
diff --git a/src/Parser/CypherPattern.php b/src/Parser/CypherPattern.php
index c6f9659..c42fe51 100644
--- a/src/Parser/CypherPattern.php
+++ b/src/Parser/CypherPattern.php
@@ -1,17 +1,21 @@
?)(?:\\[[^<^>.]*\\*[a-z0-9]+\\.\\.[a-z0-9]+\\])(?:->?))/";
+ /**
+ *
+ */
+ const PROPERTY_KEY_VALIDATION_PATTERN = "/^[!\\?]?[a-z]+_?[a-z0-9]*$/";
+
/**
*
*/
@@ -137,6 +146,83 @@ public function parseLine($cypherLineText)
return $parts;
}
+ public function matchPattern($pattern)
+ {
+ if (preg_match(self::NODE_PATTERN, $pattern, $output)) {
+ return $this->getNodePatternDefintion($output, $pattern);
+ } elseif (preg_match(self::EDGE_PATTERN, $pattern, $output)) {
+ //
+ }
+
+ throw new ParseException(sprintf('Unable to parse part "%s"', $pattern));
+
+ }
+
+ public function getNodePatternDefintion(array $pregMatchOutput, $patternPart)
+ {
+ if (!array_key_exists(1, $pregMatchOutput) || empty($pregMatchOutput[1])) {
+ throw new ParseException(sprintf('A node identifier is mandatory, none given in "%s"', $patternPart));
+ }
+
+ $identifier = trim((string) $pregMatchOutput[1]);
+
+ if (!array_key_exists(2, $pregMatchOutput) || empty($pregMatchOutput[2])) {
+ throw new ParseException(sprintf('At least one label is required in the pattern, none given in "%s"', $patternPart));
+ }
+
+ $defintion = new NodeDefinition($identifier);
+
+ $labels = ArrayUtils::cleanEmptyStrings(explode(':', trim($pregMatchOutput[2])));
+ foreach ($labels as $k => $label) {
+ $label = trim($label);
+ $model = null;
+ if (0 === strpos($label, '#')) {
+ $label = substr($label, 1);
+ $model = $label;
+ }
+
+ $defintion->addLabel($label);
+ $defintion->addModel($model);
+ }
+
+ if (array_key_exists(3, $pregMatchOutput)) {
+ $properties = Yaml::parse(trim($pregMatchOutput[3]));
+ foreach ($properties as $k => $v) {
+ if (!preg_match(self::PROPERTY_KEY_VALIDATION_PATTERN, $k, $out)) {
+ throw new ParseException(sprintf('The property key "%s" is not valid in part "%s"', $k, $patternPart));
+ }
+
+ if ($defintion->hasProperty($k)) {
+ throw new ParseException(sprintf('The property key "%s" can only be defined once in part "%s"', $k, $patternPart));
+ }
+
+ $defintion->addProperty($this->getPropertyDefinition($k, $v));
+ }
+ }
+
+ return $defintion;
+ }
+
+ public function getPropertyDefinition($key, $generator)
+ {
+ $u = false;
+ $i = false;
+ if (0 === strpos($key, '!')) {
+ $u = true;
+ $key = substr($key, 1);
+ } elseif (0 === strpos($key, '?')) {
+ $i = true;
+ $key = substr($key, 1);
+ }
+
+ return new PropertyDefinition($key, $generator, $i, $u);
+ }
+
+ public function getEdgePatternDefinition(array $pregMatchOutput, $patternPart)
+ {
+
+ }
+
/**
* @param array $nodeInfo
* @param null $part
diff --git a/src/Parser/Definition/GraphDefinition.php b/src/Parser/Definition/GraphDefinition.php
new file mode 100644
index 0000000..fef7b7f
--- /dev/null
+++ b/src/Parser/Definition/GraphDefinition.php
@@ -0,0 +1,10 @@
+identifier = (string) $identifier;
+ }
+
+ /**
+ * @param string $label
+ */
+ public function addLabel($label)
+ {
+ $this->labels[] = $label;
+ }
+
+ /**
+ * @param string $label
+ * @return bool
+ */
+ public function hasLabel($label)
+ {
+ return in_array($label, $this->labels);
+ }
+
+ /**
+ * @param string $model
+ */
+ public function addModel($model)
+ {
+ if (null === $model) { return; }
+ $this->models[] = $model;
+ }
+
+ /**
+ * @param \GraphAware\Neogen\Parser\Definition\PropertyDefinition $propertyDefinition
+ */
+ public function addProperty(PropertyDefinition $propertyDefinition)
+ {
+ $this->properties[] = $propertyDefinition;
+ }
+
+ /**
+ * @param string $key
+ * @return bool
+ */
+ public function hasProperty($key)
+ {
+ foreach ($this->properties as $property) {
+ if ($key === $property->getKey()) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * @return string
+ */
+ public function getIdentifier()
+ {
+ return $this->identifier;
+ }
+
+ /**
+ * @return array
+ */
+ public function getLabels()
+ {
+ return $this->labels;
+ }
+
+ /**
+ * @return array
+ */
+ public function getModels()
+ {
+ return $this->models;
+ }
+
+ /**
+ * @return \GraphAware\Neogen\Parser\Definition\PropertyDefinition[]
+ */
+ public function getProperties()
+ {
+ return $this->properties;
+ }
+
+
+}
\ No newline at end of file
diff --git a/src/Parser/Definition/PropertyDefinition.php b/src/Parser/Definition/PropertyDefinition.php
new file mode 100644
index 0000000..71fddbe
--- /dev/null
+++ b/src/Parser/Definition/PropertyDefinition.php
@@ -0,0 +1,48 @@
+key = $key;
+ $this->generator = $generator;
+ $this->indexed = $indexed;
+ $this->unique = $unique;
+ }
+
+ /**
+ * @return mixed
+ */
+ public function getKey()
+ {
+ return $this->key;
+ }
+
+ /**
+ * @return mixed
+ */
+ public function getGenerator()
+ {
+ return $this->generator;
+ }
+
+ public function isIndexed()
+ {
+ return $this->indexed;
+ }
+
+ public function isUnique()
+ {
+ return $this->unique;
+ }
+}
\ No newline at end of file
diff --git a/src/Parser/ParserInterface.php b/src/Parser/ParserInterface.php
index 9190bd0..d7b092c 100644
--- a/src/Parser/ParserInterface.php
+++ b/src/Parser/ParserInterface.php
@@ -1,6 +1,6 @@
preFormatPattern($pattern);
+ $this->assertEquals("(a:Node)\n(b:Node)", $cleaned);
+ }
+
+ public function testCommentedLinesAreStriped()
+ {
+ $parser = new CypherPattern();
+ $pattern = "//(a:Node)-[:RELATES_TO]->(b)\n(b:Node)";
+ $this->assertEquals("(b:Node)", $parser->preFormatPattern($pattern));
+ }
+
+ public function testLineIsParsedAndSplitted()
+ {
+ $parser = new CypherPattern();
+ $pattern = "(a:Node)-[:RELATES_TO *n..n]->(b:Node)";
+ $extract = $parser->parseLine($pattern);
+ $this->assertCount(3, $extract);
+ }
+
+ public function testMatchNodePattern()
+ {
+ $parser = new CypherPattern();
+ $str = '(a:Node:#SuperNode:Person {uuid: {randomNumber:[0,20]}} *100)';
+ $definition = $parser->matchPattern($str);
+
+ $this->assertEquals("a", $definition->getIdentifier());
+ $this->assertCount(3, $definition->getLabels());
+ $this->assertCount(1, $definition->getModels());
+ }
+
+ public function testIdentifierIsRequired()
+ {
+ $this->setExpectedException(ParseException::class);
+ $parser = new CypherPattern();
+ $str = '(:Node *1)';
+ $parser->matchPattern($str);
+ }
+
+ public function testAtLeastOneLabelIsRequired()
+ {
+ $this->setExpectedException(ParseException::class);
+ $parser = new CypherPattern();
+ $str = '(a *1)';
+ $parser->matchPattern($str);
+ }
+
+ public function testIndexMarkIsTaken()
+ {
+ $parser = new CypherPattern();
+ $str = '(a:Node {?uuid: uuid})';
+ $definition = $parser->matchPattern($str);
+
+ $this->assertCount(1, $definition->getProperties());
+ foreach ($definition->getProperties() as $prop) {
+ $this->assertTrue($prop->isIndexed());
+ }
+ }
+
+ public function testUniqueConstraintMarkIsTaken()
+ {
+ $parser = new CypherPattern();
+ $str = '(a:Node {!uuid: uuid})';
+ $definition = $parser->matchPattern($str);
+
+ $this->assertCount(1, $definition->getProperties());
+ foreach ($definition->getProperties() as $prop) {
+ $this->assertTrue($prop->isUnique());
+ }
+ }
+
+ public function testOtherMarkersThrowErrors()
+ {
+ $str = '(w:Node {;uuid: uuid})';
+ $parser = new CypherPattern();
+ $this->setExpectedException(ParseException::class);
+ $parser->matchPattern($str);
+ }
+
+ public function testTacksAreNotAllowedInPropertyKeys()
+ {
+ $str = '(w:Node {uuid-v1: uuid})';
+ $parser = new CypherPattern();
+ $this->setExpectedException(ParseException::class);
+ $parser->matchPattern($str);
+ }
+
+ public function testMarkersAreRemovedInPropertyKeys()
+ {
+ $str = '(w:Node {!uuid: uuid, ?name: word})';
+ $parser = new CypherPattern();
+ $definition = $parser->matchPattern($str);
+ $this->assertEquals('uuid', $definition->getProperties()[0]->getKey());
+ $this->assertEquals('name', $definition->getProperties()[1]->getKey());
+ }
+}
\ No newline at end of file