diff --git a/.gitignore b/.gitignore index de8c5d2..9c29ce5 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ vendor/ *.local.php build/ .vagrant/ +.idea/ diff --git a/composer.json b/composer.json index 3a9fc0b..13b74de 100644 --- a/composer.json +++ b/composer.json @@ -20,7 +20,7 @@ }, "require-dev": { "phpunit/phpunit": "3.7.*", - "apigen/apigen": "dev-master", + "apigen/apigen": "2.*", "satooshi/php-coveralls": "dev-master" }, "autoload": { diff --git a/composer.lock b/composer.lock index 9892696..d2b7071 100644 --- a/composer.lock +++ b/composer.lock @@ -1,25 +1,24 @@ { "_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" - ], - "hash": "b497d1a91324299c22c9b2bbab0c875c", - "packages": [ - + "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "This file is @generated automatically" ], + "hash": "6743449505b7213d482f786470e6da52", + "packages": [], "packages-dev": [ { "name": "andrewsville/php-token-reflection", "version": "1.3.1", "source": { "type": "git", - "url": "git://github.com/Andrewsville/PHP-Token-Reflection.git", - "reference": "1.3.1" + "url": "https://github.com/Andrewsville/PHP-Token-Reflection.git", + "reference": "3e3a36de17f32889fd2d4b8108af16d3033ce9bf" }, "dist": { "type": "zip", - "url": "https://github.com/Andrewsville/PHP-Token-Reflection/zipball/1.3.1", - "reference": "1.3.1", + "url": "https://api.github.com/repos/Andrewsville/PHP-Token-Reflection/zipball/3e3a36de17f32889fd2d4b8108af16d3033ce9bf", + "reference": "3e3a36de17f32889fd2d4b8108af16d3033ce9bf", "shasum": "" }, "require": { @@ -38,7 +37,7 @@ "authors": [ { "name": "Ondřej Nešpor", - "homepage": "https://github.com/Andrewsville" + "homepage": "https://github.com/andrewsville" }, { "name": "Jaroslav Hanslík", @@ -52,28 +51,30 @@ "reflection", "tokenizer" ], - "time": "2012-08-25 14:26:44" + "time": "2012-08-25 21:26:44" }, { "name": "apigen/apigen", - "version": "dev-master", + "version": "v2.8.1", "source": { "type": "git", - "url": "https://github.com/apigen/apigen", - "reference": "c6c0af2b5ac8128320f82e971b19756439fac42c" + "url": "https://github.com/apigen/apigen.git", + "reference": "bca0954e92621a48c6870be57115026a8d032706" }, "dist": { "type": "zip", - "url": "https://github.com/apigen/apigen/zipball/c6c0af2b5ac8128320f82e971b19756439fac42c", - "reference": "c6c0af2b5ac8128320f82e971b19756439fac42c", + "url": "https://api.github.com/repos/apigen/apigen/zipball/bca0954e92621a48c6870be57115026a8d032706", + "reference": "bca0954e92621a48c6870be57115026a8d032706", "shasum": "" }, "require": { - "andrewsville/php-token-reflection": ">=1.3.1", - "dg/texy": ">=2.1.0", - "kukulich/fshl": ">=2.1.0", - "nette/nette": ">=2.0.5", - "php": ">=5.3.0" + "andrewsville/php-token-reflection": "~1.3.1", + "ext-json": "*", + "ext-mbstring": "*", + "kukulich/fshl": "~2.1.0", + "nette/nette": "~2.1.1", + "php": ">=5.3.0", + "texy/texy": "~2.4.0" }, "suggest": { "ext-bz2": "*", @@ -82,9 +83,9 @@ "ext-zlib": "*" }, "bin": [ - "apigen.php" + "apigen" ], - "type": "library", + "type": "project", "extra": { "branch-alias": { "dev-develop": "3.0.0-dev" @@ -106,7 +107,7 @@ }, { "name": "Ondřej Nešpor", - "homepage": "https://github.com/Andrewsville" + "homepage": "https://github.com/andrewsville" }, { "name": "Jaroslav Hanslík", @@ -123,79 +124,26 @@ "phpDocumentor", "phpdoc" ], - "time": "2012-09-29 20:17:32" - }, - { - "name": "dg/texy", - "version": "v2.3", - "source": { - "type": "git", - "url": "https://github.com/dg/texy.git", - "reference": "11c34e6df7846ff1e02e6ef7c0ef4a1e3af40847" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/dg/texy/zipball/11c34e6df7846ff1e02e6ef7c0ef4a1e3af40847", - "reference": "11c34e6df7846ff1e02e6ef7c0ef4a1e3af40847", - "shasum": "" - }, - "require": { - "php": ">=5.0.0" - }, - "require-dev": { - "nette/tester": "0.9.*" - }, - "type": "library", - "autoload": { - "files": [ - "src/texy.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause", - "GPL-2.0", - "GPL-3.0" - ], - "authors": [ - { - "name": "David Grudl", - "homepage": "http://davidgrudl.com" - } - ], - "description": "Texy converts plain text in easy to read Texy syntax into structurally valid (X)HTML. It supports adding of images, links, nested lists, tables and has full support for CSS. Texy supports hyphenation of long words (which reflects language rules), clickable emails and URL (emails are obfuscated against spambots), national typographic single and double quotation marks, ellipses, em dashes, dimension sign, nonbreakable spaces (e.g. in phone numbers), acronyms, arrows and many others. Texy code can optionally contain HTML tags.", - "homepage": "http://texy.info", - "keywords": [ - "html", - "markdown", - "markup language", - "plain text", - "text", - "textile", - "texy", - "wiki", - "xhtml" - ], - "time": "2013-07-19 22:05:37" + "time": "2014-09-01 18:06:36" }, { "name": "guzzle/guzzle", - "version": "v3.7.4", + "version": "v3.9.2", "source": { "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "b170b028c6bb5799640e46c8803015b0f9a45ed9" + "url": "https://github.com/guzzle/guzzle3.git", + "reference": "54991459675c1a2924122afbb0e5609ade581155" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b170b028c6bb5799640e46c8803015b0f9a45ed9", - "reference": "b170b028c6bb5799640e46c8803015b0f9a45ed9", + "url": "https://api.github.com/repos/guzzle/guzzle3/zipball/54991459675c1a2924122afbb0e5609ade581155", + "reference": "54991459675c1a2924122afbb0e5609ade581155", "shasum": "" }, "require": { "ext-curl": "*", "php": ">=5.3.3", - "symfony/event-dispatcher": ">=2.1" + "symfony/event-dispatcher": "~2.1" }, "replace": { "guzzle/batch": "self.version", @@ -222,24 +170,24 @@ "guzzle/stream": "self.version" }, "require-dev": { - "doctrine/cache": "*", - "monolog/monolog": "1.*", + "doctrine/cache": "~1.3", + "monolog/monolog": "~1.0", "phpunit/phpunit": "3.7.*", - "psr/log": "1.0.*", - "symfony/class-loader": "*", - "zendframework/zend-cache": "2.0.*", - "zendframework/zend-log": "2.0.*" + "psr/log": "~1.0", + "symfony/class-loader": "~2.1", + "zendframework/zend-cache": "2.*,<2.3", + "zendframework/zend-log": "2.*,<2.3" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.7-dev" + "dev-master": "3.9-dev" } }, "autoload": { "psr-0": { - "Guzzle\\Tests": "tests/", - "Guzzle": "src/" + "Guzzle": "src/", + "Guzzle\\Tests": "tests/" } }, "notification-url": "https://packagist.org/downloads/", @@ -268,20 +216,20 @@ "rest", "web service" ], - "time": "2013-10-02 20:47:00" + "time": "2014-08-11 04:32:36" }, { "name": "kukulich/fshl", "version": "2.1.0", "source": { "type": "git", - "url": "https://github.com/kukulich/fshl", - "reference": "2.1.0" + "url": "https://github.com/kukulich/fshl.git", + "reference": "974c294ade5d76c0c16b6fe3fd3a584ba999b24f" }, "dist": { "type": "zip", - "url": "https://github.com/kukulich/fshl/zipball/2.1.0", - "reference": "2.1.0", + "url": "https://api.github.com/repos/kukulich/fshl/zipball/974c294ade5d76c0c16b6fe3fd3a584ba999b24f", + "reference": "974c294ade5d76c0c16b6fe3fd3a584ba999b24f", "shasum": "" }, "require": { @@ -310,46 +258,43 @@ "library", "syntax" ], - "time": "2012-09-08 12:00:07" + "time": "2012-09-08 19:00:07" }, { "name": "nette/nette", - "version": "v2.0.12", + "version": "v2.1.8", "source": { "type": "git", "url": "https://github.com/nette/nette.git", - "reference": "80a7e460badc3d71b1469bb23810ebf235b06b11" + "reference": "0fa5750d1660113ebcf07aed70666e8e2c61575c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/nette/zipball/80a7e460badc3d71b1469bb23810ebf235b06b11", - "reference": "80a7e460badc3d71b1469bb23810ebf235b06b11", + "url": "https://api.github.com/repos/nette/nette/zipball/0fa5750d1660113ebcf07aed70666e8e2c61575c", + "reference": "0fa5750d1660113ebcf07aed70666e8e2c61575c", "shasum": "" }, "require": { "ext-iconv": "*", "ext-tokenizer": "*", - "php": ">=5.3.0" + "php": ">=5.3.1" }, "require-dev": { - "nette/tester": "0.9.*" + "nette/tester": "~1.3" }, "suggest": { - "ext-fileinfo": "*", - "ext-gd": "*", - "ext-mbstring": "*", - "ext-memcache": "*", - "ext-pdo": "*" + "ext-fileinfo": "", + "ext-gd": "", + "ext-mbstring": "", + "ext-pdo": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.1-dev" - } - }, "autoload": { + "classmap": [ + "Nette/" + ], "files": [ - "Nette/loader.php" + "Nette/common/shortcuts.php" ] }, "notification-url": "https://packagist.org/downloads/", @@ -373,38 +318,33 @@ "keywords": [ "Forms", "database", - "dbal", "debugging", "framework", - "images", - "latte", "mailing", - "micro", "mvc", - "neon", "templating" ], - "time": "2013-08-07 23:14:19" + "time": "2014-11-16 13:51:36" }, { "name": "phpunit/php-code-coverage", - "version": "1.2.13", + "version": "1.2.18", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "466e7cd2554b4e264c9e3f31216d25ac0e5f3d94" + "reference": "fe2466802556d3fe4e4d1d58ffd3ccfd0a19be0b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/466e7cd2554b4e264c9e3f31216d25ac0e5f3d94", - "reference": "466e7cd2554b4e264c9e3f31216d25ac0e5f3d94", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/fe2466802556d3fe4e4d1d58ffd3ccfd0a19be0b", + "reference": "fe2466802556d3fe4e4d1d58ffd3ccfd0a19be0b", "shasum": "" }, "require": { "php": ">=5.3.3", "phpunit/php-file-iterator": ">=1.3.0@stable", - "phpunit/php-text-template": ">=1.1.1@stable", - "phpunit/php-token-stream": ">=1.1.3@stable" + "phpunit/php-text-template": ">=1.2.0@stable", + "phpunit/php-token-stream": ">=1.1.3,<1.3.0" }, "require-dev": { "phpunit/phpunit": "3.7.*@dev" @@ -445,20 +385,20 @@ "testing", "xunit" ], - "time": "2013-09-10 08:14:32" + "time": "2014-09-02 10:13:14" }, { "name": "phpunit/php-file-iterator", - "version": "1.3.3", + "version": "1.3.4", "source": { "type": "git", - "url": "git://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "1.3.3" + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb" }, "dist": { "type": "zip", - "url": "https://github.com/sebastianbergmann/php-file-iterator/zipball/1.3.3", - "reference": "1.3.3", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/acd690379117b042d1c8af1fafd61bde001bf6bb", + "reference": "acd690379117b042d1c8af1fafd61bde001bf6bb", "shasum": "" }, "require": { @@ -485,25 +425,25 @@ } ], "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "http://www.phpunit.de/", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", "keywords": [ "filesystem", "iterator" ], - "time": "2012-10-11 04:44:38" + "time": "2013-10-10 15:34:57" }, { "name": "phpunit/php-text-template", - "version": "1.1.4", + "version": "1.2.0", "source": { "type": "git", - "url": "git://github.com/sebastianbergmann/php-text-template.git", - "reference": "1.1.4" + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a" }, "dist": { "type": "zip", - "url": "https://github.com/sebastianbergmann/php-text-template/zipball/1.1.4", - "reference": "1.1.4", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", + "reference": "206dfefc0ffe9cebf65c413e3d0e809c82fbf00a", "shasum": "" }, "require": { @@ -534,7 +474,7 @@ "keywords": [ "template" ], - "time": "2012-10-31 11:15:28" + "time": "2014-01-30 17:20:04" }, { "name": "phpunit/php-timer", @@ -582,16 +522,16 @@ }, { "name": "phpunit/php-token-stream", - "version": "1.2.1", + "version": "1.2.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "5220af2a7929aa35cf663d97c89ad3d50cf5fa3e" + "reference": "ad4e1e23ae01b483c16f600ff1bebec184588e32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/5220af2a7929aa35cf663d97c89ad3d50cf5fa3e", - "reference": "5220af2a7929aa35cf663d97c89ad3d50cf5fa3e", + "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/ad4e1e23ae01b483c16f600ff1bebec184588e32", + "reference": "ad4e1e23ae01b483c16f600ff1bebec184588e32", "shasum": "" }, "require": { @@ -628,43 +568,42 @@ "keywords": [ "tokenizer" ], - "time": "2013-09-13 04:58:23" + "time": "2014-03-03 05:10:30" }, { "name": "phpunit/phpunit", - "version": "3.7.27", + "version": "3.7.38", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "4b024e753e3421837afbcca962c8724c58b39376" + "reference": "38709dc22d519a3d1be46849868aa2ddf822bcf6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/4b024e753e3421837afbcca962c8724c58b39376", - "reference": "4b024e753e3421837afbcca962c8724c58b39376", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/38709dc22d519a3d1be46849868aa2ddf822bcf6", + "reference": "38709dc22d519a3d1be46849868aa2ddf822bcf6", "shasum": "" }, "require": { + "ext-ctype": "*", "ext-dom": "*", + "ext-json": "*", "ext-pcre": "*", "ext-reflection": "*", "ext-spl": "*", "php": ">=5.3.3", - "phpunit/php-code-coverage": "~1.2.1", - "phpunit/php-file-iterator": ">=1.3.1", - "phpunit/php-text-template": ">=1.1.1", - "phpunit/php-timer": ">=1.0.4", - "phpunit/phpunit-mock-objects": "~1.2.0", + "phpunit/php-code-coverage": "~1.2", + "phpunit/php-file-iterator": "~1.3", + "phpunit/php-text-template": "~1.1", + "phpunit/php-timer": "~1.0", + "phpunit/phpunit-mock-objects": "~1.2", "symfony/yaml": "~2.0" }, "require-dev": { - "pear-pear/pear": "1.9.4" + "pear-pear.php.net/pear": "1.9.4" }, "suggest": { - "ext-json": "*", - "ext-simplexml": "*", - "ext-tokenizer": "*", - "phpunit/php-invoker": ">=1.1.0,<1.2.0" + "phpunit/php-invoker": "~1.1" }, "bin": [ "composer/bin/phpunit" @@ -702,20 +641,20 @@ "testing", "xunit" ], - "time": "2013-09-16 03:09:52" + "time": "2014-10-17 09:04:17" }, { "name": "phpunit/phpunit-mock-objects", "version": "1.2.3", "source": { "type": "git", - "url": "git://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "1.2.3" + "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", + "reference": "5794e3c5c5ba0fb037b11d8151add2a07fa82875" }, "dist": { "type": "zip", - "url": "https://github.com/sebastianbergmann/phpunit-mock-objects/archive/1.2.3.zip", - "reference": "1.2.3", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/5794e3c5c5ba0fb037b11d8151add2a07fa82875", + "reference": "5794e3c5c5ba0fb037b11d8151add2a07fa82875", "shasum": "" }, "require": { @@ -758,13 +697,13 @@ "version": "1.0.0", "source": { "type": "git", - "url": "https://github.com/php-fig/log", - "reference": "1.0.0" + "url": "https://github.com/php-fig/log.git", + "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b" }, "dist": { "type": "zip", - "url": "https://github.com/php-fig/log/archive/1.0.0.zip", - "reference": "1.0.0", + "url": "https://api.github.com/repos/php-fig/log/zipball/fe0936ee26643249e916849d48e3a51d5f5e278b", + "reference": "fe0936ee26643249e916849d48e3a51d5f5e278b", "shasum": "" }, "type": "library", @@ -797,18 +736,18 @@ "source": { "type": "git", "url": "https://github.com/satooshi/php-coveralls.git", - "reference": "c95c07e971e4b687718f54fc3447a260fb989e16" + "reference": "2fbf803803d179ab1082807308a67bbd5a760c70" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/satooshi/php-coveralls/zipball/c95c07e971e4b687718f54fc3447a260fb989e16", - "reference": "c95c07e971e4b687718f54fc3447a260fb989e16", + "url": "https://api.github.com/repos/satooshi/php-coveralls/zipball/2fbf803803d179ab1082807308a67bbd5a760c70", + "reference": "2fbf803803d179ab1082807308a67bbd5a760c70", "shasum": "" }, "require": { "ext-json": "*", "ext-simplexml": "*", - "guzzle/guzzle": ">=3.0", + "guzzle/guzzle": ">=2.7", "php": ">=5.3", "psr/log": "1.0.0", "symfony/config": ">=2.0", @@ -818,7 +757,7 @@ }, "require-dev": { "apigen/apigen": "2.8.*@stable", - "pdepend/pdepend": "dev-master", + "pdepend/pdepend": "dev-master as 2.0.0", "phpmd/phpmd": "dev-master", "phpunit/php-invoker": ">=1.1.0,<1.2.0", "phpunit/phpunit": "3.7.*@stable", @@ -834,6 +773,11 @@ "composer/bin/coveralls" ], "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.7-dev" + } + }, "autoload": { "psr-0": { "Satooshi\\Component": "src/", @@ -859,21 +803,21 @@ "github", "test" ], - "time": "2013-07-25 11:22:39" + "time": "2014-11-11 15:35:34" }, { "name": "symfony/config", - "version": "v2.3.5", + "version": "v2.5.7", "target-dir": "Symfony/Component/Config", "source": { "type": "git", "url": "https://github.com/symfony/Config.git", - "reference": "1ced3d6c88b22df8cd1fe5209dbd6a89df362a29" + "reference": "7b11dceebaaf877b75bc1aedfd831a2ddc326de9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Config/zipball/1ced3d6c88b22df8cd1fe5209dbd6a89df362a29", - "reference": "1ced3d6c88b22df8cd1fe5209dbd6a89df362a29", + "url": "https://api.github.com/repos/symfony/Config/zipball/7b11dceebaaf877b75bc1aedfd831a2ddc326de9", + "reference": "7b11dceebaaf877b75bc1aedfd831a2ddc326de9", "shasum": "" }, "require": { @@ -883,7 +827,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.5-dev" } }, "autoload": { @@ -896,47 +840,49 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Symfony Community", "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], "description": "Symfony Config Component", "homepage": "http://symfony.com", - "time": "2013-09-19 09:45:20" + "time": "2014-11-20 13:22:25" }, { "name": "symfony/console", - "version": "v2.3.5", + "version": "v2.5.7", "target-dir": "Symfony/Component/Console", "source": { "type": "git", "url": "https://github.com/symfony/Console.git", - "reference": "f880062d56edefb25b36f2defa65aafe65959dc7" + "reference": "61b13c27c9258e97009249d4ef193c964bf346b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Console/zipball/f880062d56edefb25b36f2defa65aafe65959dc7", - "reference": "f880062d56edefb25b36f2defa65aafe65959dc7", + "url": "https://api.github.com/repos/symfony/Console/zipball/61b13c27c9258e97009249d4ef193c964bf346b7", + "reference": "61b13c27c9258e97009249d4ef193c964bf346b7", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { + "psr/log": "~1.0", "symfony/event-dispatcher": "~2.1" }, "suggest": { + "psr/log": "For using the console logger", "symfony/event-dispatcher": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.5-dev" } }, "autoload": { @@ -949,39 +895,42 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Symfony Community", "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], "description": "Symfony Console Component", "homepage": "http://symfony.com", - "time": "2013-09-25 06:04:15" + "time": "2014-11-20 13:22:25" }, { "name": "symfony/event-dispatcher", - "version": "v2.3.5", + "version": "v2.5.7", "target-dir": "Symfony/Component/EventDispatcher", "source": { "type": "git", "url": "https://github.com/symfony/EventDispatcher.git", - "reference": "7fc72a7a346a1887d3968cc1ce5642a15cd182e9" + "reference": "bb6fc12085cd195dceaf48016087b12b632df497" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/7fc72a7a346a1887d3968cc1ce5642a15cd182e9", - "reference": "7fc72a7a346a1887d3968cc1ce5642a15cd182e9", + "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/bb6fc12085cd195dceaf48016087b12b632df497", + "reference": "bb6fc12085cd195dceaf48016087b12b632df497", "shasum": "" }, "require": { "php": ">=5.3.3" }, "require-dev": { - "symfony/dependency-injection": "~2.0" + "psr/log": "~1.0", + "symfony/config": "~2.0", + "symfony/dependency-injection": "~2.0,<2.6.0", + "symfony/stopwatch": "~2.2" }, "suggest": { "symfony/dependency-injection": "", @@ -990,7 +939,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.5-dev" } }, "autoload": { @@ -1003,32 +952,32 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Symfony Community", "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], "description": "Symfony EventDispatcher Component", "homepage": "http://symfony.com", - "time": "2013-09-19 09:45:20" + "time": "2014-10-30 20:17:55" }, { "name": "symfony/filesystem", - "version": "v2.3.5", + "version": "v2.5.7", "target-dir": "Symfony/Component/Filesystem", "source": { "type": "git", "url": "https://github.com/symfony/Filesystem.git", - "reference": "2b8995042086c5552c94d33b5553c492e9cfc00e" + "reference": "3c3e382bd869b3ec10008a3d9ef455b1cc2868db" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Filesystem/zipball/2b8995042086c5552c94d33b5553c492e9cfc00e", - "reference": "2b8995042086c5552c94d33b5553c492e9cfc00e", + "url": "https://api.github.com/repos/symfony/Filesystem/zipball/3c3e382bd869b3ec10008a3d9ef455b1cc2868db", + "reference": "3c3e382bd869b3ec10008a3d9ef455b1cc2868db", "shasum": "" }, "require": { @@ -1037,7 +986,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.5-dev" } }, "autoload": { @@ -1050,32 +999,32 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Symfony Community", "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], "description": "Symfony Filesystem Component", "homepage": "http://symfony.com", - "time": "2013-09-19 09:45:20" + "time": "2014-11-16 17:28:00" }, { "name": "symfony/stopwatch", - "version": "v2.3.5", + "version": "v2.5.7", "target-dir": "Symfony/Component/Stopwatch", "source": { "type": "git", "url": "https://github.com/symfony/Stopwatch.git", - "reference": "1f951fa881d2e661525e81ee0afc97261ad43459" + "reference": "9f8a33a24f2378c0ec5f372a8d50b2d43069c050" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/1f951fa881d2e661525e81ee0afc97261ad43459", - "reference": "1f951fa881d2e661525e81ee0afc97261ad43459", + "url": "https://api.github.com/repos/symfony/Stopwatch/zipball/9f8a33a24f2378c0ec5f372a8d50b2d43069c050", + "reference": "9f8a33a24f2378c0ec5f372a8d50b2d43069c050", "shasum": "" }, "require": { @@ -1084,7 +1033,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.5-dev" } }, "autoload": { @@ -1097,32 +1046,32 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Symfony Community", "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], "description": "Symfony Stopwatch Component", "homepage": "http://symfony.com", - "time": "2013-09-19 09:45:20" + "time": "2014-09-22 09:14:18" }, { "name": "symfony/yaml", - "version": "v2.3.5", + "version": "v2.5.7", "target-dir": "Symfony/Component/Yaml", "source": { "type": "git", "url": "https://github.com/symfony/Yaml.git", - "reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3" + "reference": "900d38bc8f74a50343ce65dd1c1e9819658ee56b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/Yaml/zipball/6bb881b948368482e1abf1a75c08bcf88a1c5fc3", - "reference": "6bb881b948368482e1abf1a75c08bcf88a1c5fc3", + "url": "https://api.github.com/repos/symfony/Yaml/zipball/900d38bc8f74a50343ce65dd1c1e9819658ee56b", + "reference": "900d38bc8f74a50343ce65dd1c1e9819658ee56b", "shasum": "" }, "require": { @@ -1131,7 +1080,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "2.5-dev" } }, "autoload": { @@ -1144,32 +1093,84 @@ "MIT" ], "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, { "name": "Symfony Community", "homepage": "http://symfony.com/contributors" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" } ], "description": "Symfony Yaml Component", "homepage": "http://symfony.com", - "time": "2013-09-22 18:04:39" + "time": "2014-11-20 13:22:25" + }, + { + "name": "texy/texy", + "version": "v2.4", + "source": { + "type": "git", + "url": "https://github.com/dg/texy.git", + "reference": "67d02cd95e4aaa7dae96b24a7d04ba924d641015" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dg/texy/zipball/67d02cd95e4aaa7dae96b24a7d04ba924d641015", + "reference": "67d02cd95e4aaa7dae96b24a7d04ba924d641015", + "shasum": "" + }, + "require": { + "php": ">=5.2.0" + }, + "replace": { + "dg/texy": "self.version" + }, + "require-dev": { + "nette/tester": "~1.0.0" + }, + "type": "library", + "autoload": { + "files": [ + "src/texy.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0", + "GPL-3.0" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "http://davidgrudl.com" + } + ], + "description": "Texy converts plain text in easy to read Texy syntax into structurally valid (X)HTML. It supports adding of images, links, nested lists, tables and has full support for CSS. Texy supports hyphenation of long words (which reflects language rules), clickable emails and URL (emails are obfuscated against spambots), national typographic single and double quotation marks, ellipses, em dashes, dimension sign, nonbreakable spaces (e.g. in phone numbers), acronyms, arrows and many others. Texy code can optionally contain HTML tags.", + "homepage": "http://texy.info", + "keywords": [ + "html", + "markdown", + "markup language", + "plain text", + "text", + "textile", + "texy", + "wiki", + "xhtml" + ], + "time": "2014-02-10 02:34:57" } ], - "aliases": [ - - ], + "aliases": [], "minimum-stability": "stable", "stability-flags": { - "apigen/apigen": 20, "satooshi/php-coveralls": 20 }, + "prefer-stable": false, "platform": { "php": ">=5.3.3" }, - "platform-dev": [ - - ] + "platform-dev": [] } diff --git a/composer.phar b/composer.phar index 3bc7917..6b6916c 100755 Binary files a/composer.phar and b/composer.phar differ diff --git a/src/ApiAxle/Api/Api.php b/src/ApiAxle/Api/Api.php index 5ecf34e..1382f6d 100644 --- a/src/ApiAxle/Api/Api.php +++ b/src/ApiAxle/Api/Api.php @@ -49,13 +49,6 @@ class Api */ protected $updatedAt; - /** - * (default: 0) The time in seconds that every call under this API should be cached. - * - * @var integer - */ - protected $globalCache = 0; - /** * The endpoint for the API. For example; `graph.facebook.com` * @@ -85,13 +78,6 @@ class Api */ protected $endPointTimeout = '2'; - /** - * (default: 2) Max redirects that are allowed when endpoint called. - * - * @var integer - */ - protected $endPointMaxRedirects = '2'; - /** * (optional) Regular expression used to extract API key from url. Axle will * use the **first** matched grouping and then apply that as the key. Using @@ -123,6 +109,56 @@ class Api */ protected $strictSSL = 'true'; + /** + * (default: false) If true then the api_key parameter will be passed through in the request. + * + * @var boolean + */ + protected $sendThroughApiKey = 'false'; + + /** + * (default: false) If true then the api_sig parameter will be passed through in the request. + * + * @var boolean + */ + protected $sendThroughApiSig = 'false'; + + /** + * (default: false) When true ApiAxle will parse and capture bits of + * information about the API being called. + * + * @var boolean + */ + protected $hasCapturePaths = 'false'; + + /** + * (default: false) (optional) If true then allow for keyless access to this + * API. Also see keylessQps and keylessQpd. + * + * @var boolean + */ + protected $allowKeylessUse = 'false'; + + /** + * (default: 2) How many queries per second an anonymous key should have + * when it's created. Note that changing this will not affect on temporary + * keys that have already been created. However, as temprary keys only live + * for 24 hours, this limit will be applied when that period expires. + * + * @var boolean + */ + protected $keylessQps = 2; + + /** + * (default: 172800) How many queries per day an anonymous key should have + * when it's created. Note that changing this will not affect on temporary + * keys that have already been created. However, as temprary keys only live + * for 24 hours, this limit will be applied when that period expires. + * + * @var boolean + */ + protected $keylessQpd = 172800; + /** * (default: 3) Allows configuration of window size for valid signatures. * When using signed requests, ApiAxle will calculate valid signature for @@ -132,6 +168,13 @@ class Api * @var integer */ protected $tokenSkewProtectionCount = 3; + + /** + * Whether or not to return CORS headers for this API. + * + * @var bool + */ + protected $corsEnabled = false; /** * Construct new Api object. @@ -167,17 +210,22 @@ public function setData($data) */ $this->createdAt = isset($data->createdAt) ? $data->createdAt : null; $this->updatedAt = isset($data->updatedAt) ? $data->updatedAt : null; - $this->globalCache = isset($data->globalCache) ? $data->globalCache : null; $this->endPoint = isset($data->endPoint) ? $data->endPoint : null; $this->protocol = isset($data->protocol) ? $data->protocol : null; $this->apiFormat = isset($data->apiFormat) ? $data->apiFormat : null; $this->endPointTimeout = isset($data->endPointTimeout) ? $data->endPointTimeout : null; - $this->endPointMaxRedirects = isset($data->endPointMaxRedirects) ? $data->endPointMaxRedirects : null; $this->extractKeyRegex = isset($data->extractKeyRegex) ? $data->extractKeyRegex : null; $this->defaultPath = isset($data->defaultPath) ? $data->defaultPath : null; $this->disabled = isset($data->disabled) ? $data->disabled : false; $this->strictSSL = isset($data->strictSSL) ? $data->strictSSL : true; + $this->sendThroughApiKey = isset($data->sendThroughApiKey) ? $data->sendThroughApiKey : false; + $this->sendThroughApiSig = isset($data->sendThroughApiSig) ? $data->sendThroughApiSig : false; + $this->hasCapturePaths = isset($data->hasCapturePaths) ? $data->hasCapturePaths : false; + $this->allowKeylessUse = isset($data->allowKeylessUse) ? $data->allowKeylessUse : false; + $this->keylessQps = isset($data->keylessQps) ? $data->keylessQps : false; + $this->keylessQpd = isset($data->keylessQpd) ? $data->keylessQpd : false; $this->tokenSkewProtectionCount = isset($data->tokenSkewProtectionCount) ? $data->tokenSkewProtectionCount : $this->tokenSkewProtectionCount; + $this->corsEnabled = isset($data->corsEnabled) ? $data->corsEnabled : $this->corsEnabled; return $this; } @@ -192,17 +240,22 @@ public function getData() $data = array( 'createdAt' => $this->createdAt, 'updatedAt' => $this->updatedAt, - 'globalCache' => $this->globalCache, 'endPoint' => $this->endPoint, 'protocol' => $this->protocol, 'apiFormat' => $this->apiFormat, 'endPointTimeout' => $this->endPointTimeout, - 'endPointMaxRedirects' => $this->endPointMaxRedirects, 'extractKeyRegex' => $this->extractKeyRegex, 'defaultPath' => $this->defaultPath, 'disabled' => $this->disabled, 'strictSSL' => $this->strictSSL, + 'sendThroughApiKey' => $this->sendThroughApiKey, + 'sendThroughApiSig' => $this->sendThroughApiSig, + 'hasCapturePaths' => $this->hasCapturePaths, + 'allowKeylessUse' => $this->allowKeylessUse, + 'keylessQps' => $this->keylessQps, + 'keylessQpd' => $this->keylessQpd, 'tokenSkewProtectionCount' => (int)$this->tokenSkewProtectionCount, + 'corsEnabled' => $this->corsEnabled, ); return $data; diff --git a/src/ApiAxle/Shared/HttpRequest.php b/src/ApiAxle/Shared/HttpRequest.php index 8f20547..b5d350f 100644 --- a/src/ApiAxle/Shared/HttpRequest.php +++ b/src/ApiAxle/Shared/HttpRequest.php @@ -49,6 +49,8 @@ public static function request($uri,$method='GET',$postfields=false,$headers=fal if(!is_null($config->getSslCapath())){ curl_setopt($ch, CURLOPT_CAPATH, $config->getSslCapath()); } + } else { + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); } if($config->getProxyEnable()){ diff --git a/tests/Api/ApiTest.php b/tests/Api/ApiTest.php index 0366296..5fd83cb 100644 --- a/tests/Api/ApiTest.php +++ b/tests/Api/ApiTest.php @@ -103,7 +103,19 @@ public function testCreateDeleteApi() { $apiName = 'test-'.str_replace(array(' ','.'),'',microtime()); $data = array( - 'endPoint' => 'localhost' + 'endPoint' => 'localhost', + 'protocol' => 'https', + 'apiFormat' => 'json', + 'endPointTimeout' => 2, + 'strictSSL' => true, + 'tokenSkewProtectionCount' => 3, + 'sendThroughApiKey' => true, + 'sendThroughApiSig' => true, + 'hasCapturePaths' => true, + 'allowKeylessUse' => true, + 'keylessQps' => 2, + 'keylessQpd' => 1000, + 'corsEnabled' => true, ); $api = new Api(); try{ @@ -296,5 +308,22 @@ public function testMethodsWithoutName() $this->assertTrue(true); } } - + + public function testIsValidMethod() + { + $api = new Api(); + try{ + $api->isValid(); + $this->assertTrue(false,'Api is valid without an endpoint'); + } catch (\Exception $e) { + $this->assertTrue(true); + } + try{ + $api->setData(array('endPoint'=>'https://domain.com')); + $api->isValid(); + $this->assertTrue(false,'Api is valid with an invalid endpoint'); + } catch (\Exception $e) { + $this->assertTrue(true); + } + } } \ No newline at end of file