diff --git a/.travis.yml b/.travis.yml
index 7087e01..94f1ce6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,4 +1,5 @@
language: php
+dist: trusty
sudo: false
@@ -7,7 +8,6 @@ cache:
- vendor/
php:
- - 5.3
- 5.4
- 5.5
- 5.6
diff --git a/README.rst b/README.rst
index c6f278c..548903a 100644
--- a/README.rst
+++ b/README.rst
@@ -55,9 +55,8 @@ Several types of installations are possible:
* Using a ``.phar`` archive:
- .. sourcecode:: console
-
- $ wget --no-check-certificate https://packages.erebot.net/get/XRL-dev-master.phar
+ Download the PHAR archive for the latest release from
+ https://github.com/fpoirotte/XRL/releases/latest
* Using composer:
diff --git a/composer.json b/composer.json
index 1b81dd6..cbf636c 100644
--- a/composer.json
+++ b/composer.json
@@ -30,7 +30,7 @@
"require-dev": {
"ext-dom": "*",
"ext-SimpleXML": "*",
- "erebot/buildenv": "*",
+ "erebot/buildenv": "^1.4.0",
"erebot/plop": "*",
"fpoirotte/natives4doxygen": "*",
"pdepend/pdepend": "*",
@@ -52,7 +52,7 @@
"bin": ["bin/xrl"],
"extra": {
"branch-alias": {
- "dev-develop": "2.0.x-dev"
+ "dev-develop": "3.0.x-dev"
}
}
}
diff --git a/composer.lock b/composer.lock
index a04fb6d..cae8583 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
- "hash": "8f41165221a9207be16ffd49d3cf601c",
- "content-hash": "bf9f0877629bf99ea57dd8fca91aa344",
+ "content-hash": "2c2219586fe009c28fd899561b539b90",
"packages": [],
"packages-dev": [
{
@@ -60,27 +59,27 @@
"constructor",
"instantiate"
],
- "time": "2015-06-14 21:17:01"
+ "time": "2015-06-14T21:17:01+00:00"
},
{
"name": "erebot/buildenv",
- "version": "1.2.8",
+ "version": "1.4.0",
"source": {
"type": "git",
"url": "https://github.com/Erebot/Buildenv.git",
- "reference": "b16fc3a30bf2ebdf0a962d5e6af06e220a76ced5"
+ "reference": "cb89a65bf6ad1175f3c15abc96030ffff46e6915"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Erebot/Buildenv/zipball/b16fc3a30bf2ebdf0a962d5e6af06e220a76ced5",
- "reference": "b16fc3a30bf2ebdf0a962d5e6af06e220a76ced5",
+ "url": "https://api.github.com/repos/Erebot/Buildenv/zipball/cb89a65bf6ad1175f3c15abc96030ffff46e6915",
+ "reference": "cb89a65bf6ad1175f3c15abc96030ffff46e6915",
"shasum": ""
},
"require": {
"ext-json": "*",
"ext-phar": "*",
"ext-xsl": "*",
- "phing/phing": ">=2.9.0",
+ "phing/phing": "^2.9.0",
"php": ">=5.2.2"
},
"require-dev": {
@@ -105,11 +104,11 @@
}
],
"description": "Build environment for the Erebot project",
- "homepage": "https://github.com/Erebot/Erebot_Buildenv",
+ "homepage": "https://github.com/Erebot/Buildenv",
"keywords": [
"Erebot"
],
- "time": "2014-12-30 11:49:48"
+ "time": "2017-05-06T13:37:33+00:00"
},
{
"name": "erebot/plop",
@@ -172,7 +171,7 @@
"log",
"logging"
],
- "time": "2014-12-28 18:42:31"
+ "time": "2014-12-28T18:42:31+00:00"
},
{
"name": "fpoirotte/natives4doxygen",
@@ -214,20 +213,20 @@
"documentation",
"doxygen"
],
- "time": "2014-11-02 13:27:25"
+ "time": "2014-11-02T13:27:25+00:00"
},
{
"name": "myclabs/deep-copy",
- "version": "1.5.4",
+ "version": "1.6.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "ea74994a3dc7f8d2f65a06009348f2d63c81e61f"
+ "reference": "8e6e04167378abf1ddb4d3522d8755c5fd90d102"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/ea74994a3dc7f8d2f65a06009348f2d63c81e61f",
- "reference": "ea74994a3dc7f8d2f65a06009348f2d63c81e61f",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/8e6e04167378abf1ddb4d3522d8755c5fd90d102",
+ "reference": "8e6e04167378abf1ddb4d3522d8755c5fd90d102",
"shasum": ""
},
"require": {
@@ -256,20 +255,20 @@
"object",
"object graph"
],
- "time": "2016-09-16 13:37:59"
+ "time": "2017-04-12T18:52:22+00:00"
},
{
"name": "pdepend/pdepend",
- "version": "2.2.4",
+ "version": "2.5.0",
"source": {
"type": "git",
"url": "https://github.com/pdepend/pdepend.git",
- "reference": "b086687f3a01dc6bb92d633aef071d2c5dd0db06"
+ "reference": "0c50874333149c0dad5a2877801aed148f2767ff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/pdepend/pdepend/zipball/b086687f3a01dc6bb92d633aef071d2c5dd0db06",
- "reference": "b086687f3a01dc6bb92d633aef071d2c5dd0db06",
+ "url": "https://api.github.com/repos/pdepend/pdepend/zipball/0c50874333149c0dad5a2877801aed148f2767ff",
+ "reference": "0c50874333149c0dad5a2877801aed148f2767ff",
"shasum": ""
},
"require": {
@@ -296,28 +295,130 @@
"BSD-3-Clause"
],
"description": "Official version of pdepend to be handled with Composer",
- "time": "2016-03-10 15:15:04"
+ "time": "2017-01-19T14:23:36+00:00"
+ },
+ {
+ "name": "phar-io/manifest",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phar-io/manifest.git",
+ "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/2df402786ab5368a0169091f61a7c1e0eb6852d0",
+ "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-phar": "*",
+ "phar-io/version": "^1.0.1",
+ "php": "^5.6 || ^7.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Heuer",
+ "email": "sebastian@phpeople.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
+ "time": "2017-03-05T18:14:27+00:00"
+ },
+ {
+ "name": "phar-io/version",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/phar-io/version.git",
+ "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/a70c0ced4be299a63d32fa96d9281d03e94041df",
+ "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.6 || ^7.0"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Heuer",
+ "email": "sebastian@phpeople.de",
+ "role": "Developer"
+ },
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "Library for handling version information and constraints",
+ "time": "2017-03-05T17:38:23+00:00"
},
{
"name": "phing/phing",
- "version": "2.15.2",
+ "version": "2.16.0",
"source": {
"type": "git",
"url": "https://github.com/phingofficial/phing.git",
- "reference": "0999ab4e94e609dc00998e3d1b88df843054db7c"
+ "reference": "151a0f4d8cebf7711eccc62dde3f09bc36a00d7b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phingofficial/phing/zipball/0999ab4e94e609dc00998e3d1b88df843054db7c",
- "reference": "0999ab4e94e609dc00998e3d1b88df843054db7c",
+ "url": "https://api.github.com/repos/phingofficial/phing/zipball/151a0f4d8cebf7711eccc62dde3f09bc36a00d7b",
+ "reference": "151a0f4d8cebf7711eccc62dde3f09bc36a00d7b",
"shasum": ""
},
"require": {
- "php": ">=5.2.0"
+ "php": ">=5.2.0",
+ "symfony/yaml": "^3.1"
},
"require-dev": {
"ext-pdo_sqlite": "*",
- "lastcraft/simpletest": "@dev",
"mikey179/vfsstream": "^1.6",
"pdepend/pdepend": "2.x",
"pear/archive_tar": "1.4.x",
@@ -333,8 +434,8 @@
"sebastian/git": "~1.0",
"sebastian/phpcpd": "2.x",
"siad007/versioncontrol_hg": "^1.0",
- "squizlabs/php_codesniffer": "~2.2",
- "symfony/yaml": "~2.7"
+ "simpletest/simpletest": "^1.1",
+ "squizlabs/php_codesniffer": "~2.2"
},
"suggest": {
"pdepend/pdepend": "PHP version of JDepend",
@@ -356,7 +457,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.15.x-dev"
+ "dev-master": "2.16.x-dev"
}
},
"autoload": {
@@ -389,7 +490,7 @@
"task",
"tool"
],
- "time": "2016-10-13 09:01:45"
+ "time": "2016-12-22T20:16:33+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -443,26 +544,26 @@
"reflection",
"static analysis"
],
- "time": "2015-12-27 11:43:31"
+ "time": "2015-12-27T11:43:31+00:00"
},
{
"name": "phpdocumentor/reflection-docblock",
- "version": "3.1.1",
+ "version": "3.2.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
+ "reference": "46f7e8bb075036c92695b15a1ddb6971c751e585"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
- "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/46f7e8bb075036c92695b15a1ddb6971c751e585",
+ "reference": "46f7e8bb075036c92695b15a1ddb6971c751e585",
"shasum": ""
},
"require": {
"php": ">=5.5",
"phpdocumentor/reflection-common": "^1.0@dev",
- "phpdocumentor/type-resolver": "^0.2.0",
+ "phpdocumentor/type-resolver": "^0.4.0",
"webmozart/assert": "^1.0"
},
"require-dev": {
@@ -488,24 +589,24 @@
}
],
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2016-09-30 07:12:33"
+ "time": "2017-07-15T11:38:20+00:00"
},
{
"name": "phpdocumentor/type-resolver",
- "version": "0.2",
+ "version": "0.4.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "b39c7a5b194f9ed7bd0dd345c751007a41862443"
+ "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/b39c7a5b194f9ed7bd0dd345c751007a41862443",
- "reference": "b39c7a5b194f9ed7bd0dd345c751007a41862443",
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7",
+ "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7",
"shasum": ""
},
"require": {
- "php": ">=5.5",
+ "php": "^5.5 || ^7.0",
"phpdocumentor/reflection-common": "^1.0"
},
"require-dev": {
@@ -535,25 +636,26 @@
"email": "me@mikevanriel.com"
}
],
- "time": "2016-06-10 07:14:17"
+ "time": "2017-07-14T14:27:02+00:00"
},
{
"name": "phpmd/phpmd",
- "version": "2.4.3",
+ "version": "2.6.0",
"source": {
"type": "git",
"url": "https://github.com/phpmd/phpmd.git",
- "reference": "2b9c2417a18696dfb578b38c116cd0ddc19b256e"
+ "reference": "4e9924b2c157a3eb64395460fcf56b31badc8374"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpmd/phpmd/zipball/2b9c2417a18696dfb578b38c116cd0ddc19b256e",
- "reference": "2b9c2417a18696dfb578b38c116cd0ddc19b256e",
+ "url": "https://api.github.com/repos/phpmd/phpmd/zipball/4e9924b2c157a3eb64395460fcf56b31badc8374",
+ "reference": "4e9924b2c157a3eb64395460fcf56b31badc8374",
"shasum": ""
},
"require": {
- "pdepend/pdepend": "^2.0.4",
- "php": ">=5.3.0"
+ "ext-xml": "*",
+ "pdepend/pdepend": "^2.5",
+ "php": ">=5.3.9"
},
"require-dev": {
"phpunit/phpunit": "^4.0",
@@ -600,31 +702,32 @@
"phpmd",
"pmd"
],
- "time": "2016-04-04 11:52:04"
+ "time": "2017-01-20T14:41:10+00:00"
},
{
"name": "phpspec/prophecy",
- "version": "v1.6.1",
+ "version": "v1.7.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "58a8137754bc24b25740d4281399a4a3596058e0"
+ "reference": "93d39f1f7f9326d746203c7c056f300f7f126073"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/58a8137754bc24b25740d4281399a4a3596058e0",
- "reference": "58a8137754bc24b25740d4281399a4a3596058e0",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/93d39f1f7f9326d746203c7c056f300f7f126073",
+ "reference": "93d39f1f7f9326d746203c7c056f300f7f126073",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.0.2",
"php": "^5.3|^7.0",
"phpdocumentor/reflection-docblock": "^2.0|^3.0.2",
- "sebastian/comparator": "^1.1",
- "sebastian/recursion-context": "^1.0"
+ "sebastian/comparator": "^1.1|^2.0",
+ "sebastian/recursion-context": "^1.0|^2.0|^3.0"
},
"require-dev": {
- "phpspec/phpspec": "^2.0"
+ "phpspec/phpspec": "^2.5|^3.2",
+ "phpunit/phpunit": "^4.8 || ^5.6.5"
},
"type": "library",
"extra": {
@@ -662,44 +765,45 @@
"spy",
"stub"
],
- "time": "2016-06-07 08:13:47"
+ "time": "2017-03-02T20:05:34+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "4.0.1",
+ "version": "5.2.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "5f3f7e736d6319d5f1fc402aff8b026da26709a3"
+ "reference": "dc421f9ca5082a0c0cb04afb171c765f79add85b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/5f3f7e736d6319d5f1fc402aff8b026da26709a3",
- "reference": "5f3f7e736d6319d5f1fc402aff8b026da26709a3",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/dc421f9ca5082a0c0cb04afb171c765f79add85b",
+ "reference": "dc421f9ca5082a0c0cb04afb171c765f79add85b",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0",
- "phpunit/php-file-iterator": "~1.3",
- "phpunit/php-text-template": "~1.2",
- "phpunit/php-token-stream": "^1.4.2",
- "sebastian/code-unit-reverse-lookup": "~1.0",
- "sebastian/environment": "^1.3.2 || ^2.0",
- "sebastian/version": "~1.0|~2.0"
+ "ext-dom": "*",
+ "ext-xmlwriter": "*",
+ "php": "^7.0",
+ "phpunit/php-file-iterator": "^1.3",
+ "phpunit/php-text-template": "^1.2",
+ "phpunit/php-token-stream": "^1.4.11 || ^2.0",
+ "sebastian/code-unit-reverse-lookup": "^1.0",
+ "sebastian/environment": "^3.0",
+ "sebastian/version": "^2.0",
+ "theseer/tokenizer": "^1.1"
},
"require-dev": {
- "ext-xdebug": ">=2.1.4",
- "phpunit/phpunit": "^5.4"
+ "ext-xdebug": "^2.5",
+ "phpunit/phpunit": "^6.0"
},
"suggest": {
- "ext-dom": "*",
- "ext-xdebug": ">=2.4.0",
- "ext-xmlwriter": "*"
+ "ext-xdebug": "^2.5.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0.x-dev"
+ "dev-master": "5.2.x-dev"
}
},
"autoload": {
@@ -725,20 +829,20 @@
"testing",
"xunit"
],
- "time": "2016-07-26 14:39:29"
+ "time": "2017-04-21T08:03:57+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "1.4.1",
+ "version": "1.4.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0"
+ "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
- "reference": "6150bf2c35d3fc379e50c7602b75caceaa39dbf0",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
+ "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5",
"shasum": ""
},
"require": {
@@ -772,7 +876,7 @@
"filesystem",
"iterator"
],
- "time": "2015-06-21 13:08:43"
+ "time": "2016-10-03T07:40:28+00:00"
},
{
"name": "phpunit/php-text-template",
@@ -813,29 +917,34 @@
"keywords": [
"template"
],
- "time": "2015-06-21 13:50:34"
+ "time": "2015-06-21T13:50:34+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "1.0.8",
+ "version": "1.0.9",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260"
+ "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/38e9124049cf1a164f1e4537caf19c99bf1eb260",
- "reference": "38e9124049cf1a164f1e4537caf19c99bf1eb260",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
+ "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^5.3.3 || ^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4|~5"
+ "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -857,20 +966,20 @@
"keywords": [
"timer"
],
- "time": "2016-05-12 18:03:57"
+ "time": "2017-02-26T11:10:40+00:00"
},
{
"name": "phpunit/php-token-stream",
- "version": "1.4.8",
+ "version": "1.4.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da"
+ "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
- "reference": "3144ae21711fb6cac0b1ab4cbe63b75ce3d4e8da",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/e03f8f67534427a787e21a385a67ec3ca6978ea7",
+ "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7",
"shasum": ""
},
"require": {
@@ -906,20 +1015,20 @@
"keywords": [
"tokenizer"
],
- "time": "2015-09-15 10:49:45"
+ "time": "2017-02-27T10:12:30+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "5.6.2",
+ "version": "6.2.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "cd13b23ac5a519a4708e00736c26ee0bb28b2e01"
+ "reference": "fa5711d0559fc4b64deba0702be52d41434cbcb7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/cd13b23ac5a519a4708e00736c26ee0bb28b2e01",
- "reference": "cd13b23ac5a519a4708e00736c26ee0bb28b2e01",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fa5711d0559fc4b64deba0702be52d41434cbcb7",
+ "reference": "fa5711d0559fc4b64deba0702be52d41434cbcb7",
"shasum": ""
},
"require": {
@@ -928,33 +1037,35 @@
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
- "myclabs/deep-copy": "~1.3",
- "php": "^5.6 || ^7.0",
- "phpspec/prophecy": "^1.3.1",
- "phpunit/php-code-coverage": "^4.0.1",
- "phpunit/php-file-iterator": "~1.4",
- "phpunit/php-text-template": "~1.2",
+ "myclabs/deep-copy": "^1.3",
+ "phar-io/manifest": "^1.0.1",
+ "phar-io/version": "^1.0",
+ "php": "^7.0",
+ "phpspec/prophecy": "^1.7",
+ "phpunit/php-code-coverage": "^5.2",
+ "phpunit/php-file-iterator": "^1.4",
+ "phpunit/php-text-template": "^1.2",
"phpunit/php-timer": "^1.0.6",
- "phpunit/phpunit-mock-objects": "^3.2",
- "sebastian/comparator": "~1.1",
- "sebastian/diff": "~1.2",
- "sebastian/environment": "^1.3 || ^2.0",
- "sebastian/exporter": "~1.2",
- "sebastian/global-state": "~1.0",
- "sebastian/object-enumerator": "~1.0",
- "sebastian/resource-operations": "~1.0",
- "sebastian/version": "~1.0|~2.0",
- "symfony/yaml": "~2.1|~3.0"
+ "phpunit/phpunit-mock-objects": "^4.0",
+ "sebastian/comparator": "^2.0",
+ "sebastian/diff": "^1.4.3 || ^2.0",
+ "sebastian/environment": "^3.0.2",
+ "sebastian/exporter": "^3.1",
+ "sebastian/global-state": "^1.1 || ^2.0",
+ "sebastian/object-enumerator": "^3.0.2",
+ "sebastian/resource-operations": "^1.0",
+ "sebastian/version": "^2.0"
},
"conflict": {
- "phpdocumentor/reflection-docblock": "3.0.2"
+ "phpdocumentor/reflection-docblock": "3.0.2",
+ "phpunit/dbunit": "<3.0"
},
"require-dev": {
"ext-pdo": "*"
},
"suggest": {
"ext-xdebug": "*",
- "phpunit/php-invoker": "~1.1"
+ "phpunit/php-invoker": "^1.1"
},
"bin": [
"phpunit"
@@ -962,7 +1073,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.6.x-dev"
+ "dev-master": "6.2.x-dev"
}
},
"autoload": {
@@ -988,33 +1099,33 @@
"testing",
"xunit"
],
- "time": "2016-10-25 07:40:25"
+ "time": "2017-07-03T15:54:24+00:00"
},
{
"name": "phpunit/phpunit-mock-objects",
- "version": "3.4.0",
+ "version": "4.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
- "reference": "238d7a2723bce689c79eeac9c7d5e1d623bb9dc2"
+ "reference": "d8833b396dce9162bb2eb5d59aee5a3ab3cfa5b4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/238d7a2723bce689c79eeac9c7d5e1d623bb9dc2",
- "reference": "238d7a2723bce689c79eeac9c7d5e1d623bb9dc2",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/d8833b396dce9162bb2eb5d59aee5a3ab3cfa5b4",
+ "reference": "d8833b396dce9162bb2eb5d59aee5a3ab3cfa5b4",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.0.2",
- "php": "^5.6 || ^7.0",
+ "php": "^7.0",
"phpunit/php-text-template": "^1.2",
- "sebastian/exporter": "^1.2"
+ "sebastian/exporter": "^3.0"
},
"conflict": {
- "phpunit/phpunit": "<5.4.0"
+ "phpunit/phpunit": "<6.0"
},
"require-dev": {
- "phpunit/phpunit": "^5.4"
+ "phpunit/phpunit": "^6.0"
},
"suggest": {
"ext-soap": "*"
@@ -1022,7 +1133,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.2.x-dev"
+ "dev-master": "4.0.x-dev"
}
},
"autoload": {
@@ -1047,7 +1158,56 @@
"mock",
"xunit"
],
- "time": "2016-10-09 07:01:45"
+ "time": "2017-06-30T08:15:21+00:00"
+ },
+ {
+ "name": "psr/container",
+ "version": "1.0.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/container.git",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Container\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common Container Interface (PHP FIG PSR-11)",
+ "homepage": "https://github.com/php-fig/container",
+ "keywords": [
+ "PSR-11",
+ "container",
+ "container-interface",
+ "container-interop",
+ "psr"
+ ],
+ "time": "2017-02-14T16:28:37+00:00"
},
{
"name": "psr/log",
@@ -1094,27 +1254,27 @@
"psr",
"psr-3"
],
- "time": "2016-10-10 12:19:37"
+ "time": "2016-10-10T12:19:37+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
- "version": "1.0.0",
+ "version": "1.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe"
+ "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
- "reference": "c36f5e7cfce482fde5bf8d10d41a53591e0198fe",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
+ "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
"shasum": ""
},
"require": {
- "php": ">=5.6"
+ "php": "^5.6 || ^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~5"
+ "phpunit/phpunit": "^5.7 || ^6.0"
},
"type": "library",
"extra": {
@@ -1139,34 +1299,34 @@
],
"description": "Looks up which function or method a line of code belongs to",
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2016-02-13 06:45:14"
+ "time": "2017-03-04T06:30:41+00:00"
},
{
"name": "sebastian/comparator",
- "version": "1.2.0",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "937efb279bd37a375bcadf584dec0726f84dbf22"
+ "reference": "20f84f468cb67efee293246e6a09619b891f55f0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/937efb279bd37a375bcadf584dec0726f84dbf22",
- "reference": "937efb279bd37a375bcadf584dec0726f84dbf22",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/20f84f468cb67efee293246e6a09619b891f55f0",
+ "reference": "20f84f468cb67efee293246e6a09619b891f55f0",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
- "sebastian/diff": "~1.2",
- "sebastian/exporter": "~1.2"
+ "php": "^7.0",
+ "sebastian/diff": "^1.2",
+ "sebastian/exporter": "^3.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.4"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -1203,27 +1363,27 @@
"compare",
"equality"
],
- "time": "2015-07-26 15:48:44"
+ "time": "2017-03-03T06:26:08+00:00"
},
{
"name": "sebastian/diff",
- "version": "1.4.1",
+ "version": "1.4.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
+ "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
- "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4",
+ "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^5.3.3 || ^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.8"
+ "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
},
"type": "library",
"extra": {
@@ -1255,32 +1415,32 @@
"keywords": [
"diff"
],
- "time": "2015-12-08 07:14:41"
+ "time": "2017-05-22T07:24:03+00:00"
},
{
"name": "sebastian/environment",
- "version": "1.3.8",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea"
+ "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/be2c607e43ce4c89ecd60e75c6a85c126e754aea",
- "reference": "be2c607e43ce4c89ecd60e75c6a85c126e754aea",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/cd0871b3975fb7fc44d11314fd1ee20925fce4f5",
+ "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0"
+ "php": "^7.0"
},
"require-dev": {
- "phpunit/phpunit": "^4.8 || ^5.0"
+ "phpunit/phpunit": "^6.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3.x-dev"
+ "dev-master": "3.1.x-dev"
}
},
"autoload": {
@@ -1305,34 +1465,34 @@
"environment",
"hhvm"
],
- "time": "2016-08-18 05:49:44"
+ "time": "2017-07-01T08:51:00+00:00"
},
{
"name": "sebastian/exporter",
- "version": "1.2.2",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4"
+ "reference": "234199f4528de6d12aaa58b612e98f7d36adb937"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4",
- "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/234199f4528de6d12aaa58b612e98f7d36adb937",
+ "reference": "234199f4528de6d12aaa58b612e98f7d36adb937",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
- "sebastian/recursion-context": "~1.0"
+ "php": "^7.0",
+ "sebastian/recursion-context": "^3.0"
},
"require-dev": {
"ext-mbstring": "*",
- "phpunit/phpunit": "~4.4"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.3.x-dev"
+ "dev-master": "3.1.x-dev"
}
},
"autoload": {
@@ -1372,7 +1532,7 @@
"export",
"exporter"
],
- "time": "2016-06-17 09:04:28"
+ "time": "2017-04-03T13:19:02+00:00"
},
{
"name": "sebastian/finder-facade",
@@ -1411,27 +1571,27 @@
],
"description": "FinderFacade is a convenience wrapper for Symfony's Finder component.",
"homepage": "https://github.com/sebastianbergmann/finder-facade",
- "time": "2016-02-17 07:02:23"
+ "time": "2016-02-17T07:02:23+00:00"
},
{
"name": "sebastian/global-state",
- "version": "1.1.1",
+ "version": "2.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4"
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bc37d50fea7d017d3d340f230811c9f1d7280af4",
- "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.2"
+ "phpunit/phpunit": "^6.0"
},
"suggest": {
"ext-uopz": "*"
@@ -1439,7 +1599,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -1462,33 +1622,34 @@
"keywords": [
"global state"
],
- "time": "2015-10-12 03:26:01"
+ "time": "2017-04-27T15:39:26+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "1.0.0",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "d4ca2fb70344987502567bc50081c03e6192fb26"
+ "reference": "31dd3379d16446c5d86dec32ab1ad1f378581ad8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/d4ca2fb70344987502567bc50081c03e6192fb26",
- "reference": "d4ca2fb70344987502567bc50081c03e6192fb26",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/31dd3379d16446c5d86dec32ab1ad1f378581ad8",
+ "reference": "31dd3379d16446c5d86dec32ab1ad1f378581ad8",
"shasum": ""
},
"require": {
- "php": ">=5.6",
- "sebastian/recursion-context": "~1.0"
+ "php": "^7.0",
+ "sebastian/object-reflector": "^1.0",
+ "sebastian/recursion-context": "^3.0"
},
"require-dev": {
- "phpunit/phpunit": "~5"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "3.0.x-dev"
}
},
"autoload": {
@@ -1508,29 +1669,73 @@
],
"description": "Traverses array structures and object graphs to enumerate all referenced objects",
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2016-01-28 13:25:10"
+ "time": "2017-03-12T15:17:29+00:00"
+ },
+ {
+ "name": "sebastian/object-reflector",
+ "version": "1.1.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/object-reflector.git",
+ "reference": "773f97c67f28de00d397be301821b06708fca0be"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be",
+ "reference": "773f97c67f28de00d397be301821b06708fca0be",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.0"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^6.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.1-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ }
+ ],
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
+ "time": "2017-03-29T09:07:27+00:00"
},
{
"name": "sebastian/phpcpd",
- "version": "2.0.4",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpcpd.git",
- "reference": "24d9a880deadb0b8c9680e9cfe78e30b704225db"
+ "reference": "d7006078b75a34c9250831c3453a2e256a687615"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpcpd/zipball/24d9a880deadb0b8c9680e9cfe78e30b704225db",
- "reference": "24d9a880deadb0b8c9680e9cfe78e30b704225db",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpcpd/zipball/d7006078b75a34c9250831c3453a2e256a687615",
+ "reference": "d7006078b75a34c9250831c3453a2e256a687615",
"shasum": ""
},
"require": {
- "php": ">=5.3.3",
- "phpunit/php-timer": ">=1.0.6",
- "sebastian/finder-facade": "~1.1",
- "sebastian/version": "~1.0|~2.0",
- "symfony/console": "~2.7|^3.0",
- "theseer/fdomdocument": "~1.4"
+ "php": "^5.6|^7.0",
+ "phpunit/php-timer": "^1.0.6",
+ "sebastian/finder-facade": "^1.1",
+ "sebastian/version": "^2.0",
+ "symfony/console": "^3.0"
},
"bin": [
"phpcpd"
@@ -1538,7 +1743,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -1559,32 +1764,32 @@
],
"description": "Copy/Paste Detector (CPD) for PHP code.",
"homepage": "https://github.com/sebastianbergmann/phpcpd",
- "time": "2016-04-17 19:32:49"
+ "time": "2017-02-05T07:48:01+00:00"
},
{
"name": "sebastian/recursion-context",
- "version": "1.0.2",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791"
+ "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/913401df809e99e4f47b27cdd781f4a258d58791",
- "reference": "913401df809e99e4f47b27cdd781f4a258d58791",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
+ "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": "^7.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.4"
+ "phpunit/phpunit": "^6.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "3.0.x-dev"
}
},
"autoload": {
@@ -1612,7 +1817,7 @@
],
"description": "Provides functionality to recursively process PHP variables",
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2015-11-11 19:50:13"
+ "time": "2017-03-03T06:23:57+00:00"
},
{
"name": "sebastian/resource-operations",
@@ -1654,20 +1859,20 @@
],
"description": "Provides a list of PHP built-in functions that operate on resources",
"homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2015-07-28 20:34:47"
+ "time": "2015-07-28T20:34:47+00:00"
},
{
"name": "sebastian/version",
- "version": "2.0.0",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "c829badbd8fdf16a0bad8aa7fa7971c029f1b9c5"
+ "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c829badbd8fdf16a0bad8aa7fa7971c029f1b9c5",
- "reference": "c829badbd8fdf16a0bad8aa7fa7971c029f1b9c5",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
+ "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
"shasum": ""
},
"require": {
@@ -1697,68 +1902,41 @@
],
"description": "Library that helps with managing the version number of Git-hosted PHP projects",
"homepage": "https://github.com/sebastianbergmann/version",
- "time": "2016-02-04 12:56:52"
+ "time": "2016-10-03T07:35:21+00:00"
},
{
"name": "squizlabs/php_codesniffer",
- "version": "2.7.0",
+ "version": "3.0.1",
"source": {
"type": "git",
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
- "reference": "571e27b6348e5b3a637b2abc82ac0d01e6d7bbed"
+ "reference": "f9eaf037edf22fdfccf04cb0ab57ebcb1e166219"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/571e27b6348e5b3a637b2abc82ac0d01e6d7bbed",
- "reference": "571e27b6348e5b3a637b2abc82ac0d01e6d7bbed",
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/f9eaf037edf22fdfccf04cb0ab57ebcb1e166219",
+ "reference": "f9eaf037edf22fdfccf04cb0ab57ebcb1e166219",
"shasum": ""
},
"require": {
"ext-simplexml": "*",
"ext-tokenizer": "*",
"ext-xmlwriter": "*",
- "php": ">=5.1.2"
+ "php": ">=5.4.0"
},
"require-dev": {
"phpunit/phpunit": "~4.0"
},
"bin": [
- "scripts/phpcs",
- "scripts/phpcbf"
+ "bin/phpcs",
+ "bin/phpcbf"
],
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.x-dev"
+ "dev-master": "3.x-dev"
}
},
- "autoload": {
- "classmap": [
- "CodeSniffer.php",
- "CodeSniffer/CLI.php",
- "CodeSniffer/Exception.php",
- "CodeSniffer/File.php",
- "CodeSniffer/Fixer.php",
- "CodeSniffer/Report.php",
- "CodeSniffer/Reporting.php",
- "CodeSniffer/Sniff.php",
- "CodeSniffer/Tokens.php",
- "CodeSniffer/Reports/",
- "CodeSniffer/Tokenizers/",
- "CodeSniffer/DocGenerators/",
- "CodeSniffer/Standards/AbstractPatternSniff.php",
- "CodeSniffer/Standards/AbstractScopeSniff.php",
- "CodeSniffer/Standards/AbstractVariableSniff.php",
- "CodeSniffer/Standards/IncorrectPatternException.php",
- "CodeSniffer/Standards/Generic/Sniffs/",
- "CodeSniffer/Standards/MySource/Sniffs/",
- "CodeSniffer/Standards/PEAR/Sniffs/",
- "CodeSniffer/Standards/PSR1/Sniffs/",
- "CodeSniffer/Standards/PSR2/Sniffs/",
- "CodeSniffer/Standards/Squiz/Sniffs/",
- "CodeSniffer/Standards/Zend/Sniffs/"
- ]
- },
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-3-Clause"
@@ -1775,33 +1953,42 @@
"phpcs",
"standards"
],
- "time": "2016-09-01 23:53:02"
+ "time": "2017-06-14T01:23:49+00:00"
},
{
"name": "symfony/config",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "949e7e846743a7f9e46dc50eb639d5fde1f53341"
+ "reference": "a094618deb9a3fe1c3cf500a796e167d0495a274"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/949e7e846743a7f9e46dc50eb639d5fde1f53341",
- "reference": "949e7e846743a7f9e46dc50eb639d5fde1f53341",
+ "url": "https://api.github.com/repos/symfony/config/zipball/a094618deb9a3fe1c3cf500a796e167d0495a274",
+ "reference": "a094618deb9a3fe1c3cf500a796e167d0495a274",
"shasum": ""
},
"require": {
"php": ">=5.5.9",
"symfony/filesystem": "~2.8|~3.0"
},
+ "conflict": {
+ "symfony/dependency-injection": "<3.3",
+ "symfony/finder": "<3.3"
+ },
+ "require-dev": {
+ "symfony/dependency-injection": "~3.3",
+ "symfony/finder": "~3.3",
+ "symfony/yaml": "~3.0"
+ },
"suggest": {
"symfony/yaml": "To use the yaml reference dumper"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -1828,20 +2015,20 @@
],
"description": "Symfony Config Component",
"homepage": "https://symfony.com",
- "time": "2016-09-25 08:27:07"
+ "time": "2017-06-16T12:40:34+00:00"
},
{
"name": "symfony/console",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "c99da1119ae61e15de0e4829196b9fba6f73d065"
+ "reference": "a97e45d98c59510f085fa05225a1acb74dfe0546"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/c99da1119ae61e15de0e4829196b9fba6f73d065",
- "reference": "c99da1119ae61e15de0e4829196b9fba6f73d065",
+ "url": "https://api.github.com/repos/symfony/console/zipball/a97e45d98c59510f085fa05225a1acb74dfe0546",
+ "reference": "a97e45d98c59510f085fa05225a1acb74dfe0546",
"shasum": ""
},
"require": {
@@ -1849,20 +2036,28 @@
"symfony/debug": "~2.8|~3.0",
"symfony/polyfill-mbstring": "~1.0"
},
+ "conflict": {
+ "symfony/dependency-injection": "<3.3"
+ },
"require-dev": {
"psr/log": "~1.0",
+ "symfony/config": "~3.3",
+ "symfony/dependency-injection": "~3.3",
"symfony/event-dispatcher": "~2.8|~3.0",
+ "symfony/filesystem": "~2.8|~3.0",
+ "symfony/http-kernel": "~2.8|~3.0",
"symfony/process": "~2.8|~3.0"
},
"suggest": {
"psr/log": "For using the console logger",
"symfony/event-dispatcher": "",
+ "symfony/filesystem": "",
"symfony/process": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -1889,20 +2084,20 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2016-10-06 01:44:51"
+ "time": "2017-07-03T13:19:36+00:00"
},
{
"name": "symfony/debug",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/debug.git",
- "reference": "e2b3f74a67fc928adc3c1b9027f73e1bc01190a8"
+ "reference": "63b85a968486d95ff9542228dc2e4247f16f9743"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/debug/zipball/e2b3f74a67fc928adc3c1b9027f73e1bc01190a8",
- "reference": "e2b3f74a67fc928adc3c1b9027f73e1bc01190a8",
+ "url": "https://api.github.com/repos/symfony/debug/zipball/63b85a968486d95ff9542228dc2e4247f16f9743",
+ "reference": "63b85a968486d95ff9542228dc2e4247f16f9743",
"shasum": ""
},
"require": {
@@ -1913,13 +2108,12 @@
"symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2"
},
"require-dev": {
- "symfony/class-loader": "~2.8|~3.0",
"symfony/http-kernel": "~2.8|~3.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -1946,40 +2140,50 @@
],
"description": "Symfony Debug Component",
"homepage": "https://symfony.com",
- "time": "2016-09-06 11:02:40"
+ "time": "2017-07-05T13:02:37+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "c578891216090069cd6d2e573402e13e39b3ad5c"
+ "reference": "986a633c92220ecb22ad06820a1df126c7a4f9eb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/c578891216090069cd6d2e573402e13e39b3ad5c",
- "reference": "c578891216090069cd6d2e573402e13e39b3ad5c",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/986a633c92220ecb22ad06820a1df126c7a4f9eb",
+ "reference": "986a633c92220ecb22ad06820a1df126c7a4f9eb",
"shasum": ""
},
"require": {
- "php": ">=5.5.9"
+ "php": ">=5.5.9",
+ "psr/container": "^1.0"
+ },
+ "conflict": {
+ "symfony/config": "<3.3.1",
+ "symfony/finder": "<3.3",
+ "symfony/yaml": "<3.3"
+ },
+ "provide": {
+ "psr/container-implementation": "1.0"
},
"require-dev": {
- "symfony/config": "~2.8|~3.0",
+ "symfony/config": "~3.3",
"symfony/expression-language": "~2.8|~3.0",
- "symfony/yaml": "~2.8.7|~3.0.7|~3.1.1|~3.2"
+ "symfony/yaml": "~3.3"
},
"suggest": {
"symfony/config": "",
"symfony/expression-language": "For using expressions in service container configuration",
+ "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required",
"symfony/proxy-manager-bridge": "Generate service proxies to lazy load them",
"symfony/yaml": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -2006,20 +2210,20 @@
],
"description": "Symfony DependencyInjection Component",
"homepage": "https://symfony.com",
- "time": "2016-10-24 15:52:44"
+ "time": "2017-06-20T14:01:46+00:00"
},
{
"name": "symfony/filesystem",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "0565b61bf098cb4dc09f4f103f033138ae4f42c6"
+ "reference": "311fa718389efbd8b627c272b9324a62437018cc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/0565b61bf098cb4dc09f4f103f033138ae4f42c6",
- "reference": "0565b61bf098cb4dc09f4f103f033138ae4f42c6",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/311fa718389efbd8b627c272b9324a62437018cc",
+ "reference": "311fa718389efbd8b627c272b9324a62437018cc",
"shasum": ""
},
"require": {
@@ -2028,7 +2232,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -2055,20 +2259,20 @@
],
"description": "Symfony Filesystem Component",
"homepage": "https://symfony.com",
- "time": "2016-10-18 04:30:12"
+ "time": "2017-06-24T09:29:48+00:00"
},
{
"name": "symfony/finder",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "205b5ffbb518a98ba2ae60a52656c4a31ab00c6f"
+ "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/205b5ffbb518a98ba2ae60a52656c4a31ab00c6f",
- "reference": "205b5ffbb518a98ba2ae60a52656c4a31ab00c6f",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/baea7f66d30854ad32988c11a09d7ffd485810c4",
+ "reference": "baea7f66d30854ad32988c11a09d7ffd485810c4",
"shasum": ""
},
"require": {
@@ -2077,7 +2281,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -2104,20 +2308,20 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
- "time": "2016-09-28 00:11:12"
+ "time": "2017-06-01T21:01:25+00:00"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.2.0",
+ "version": "v1.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "dff51f72b0706335131b00a7f49606168c582594"
+ "reference": "f29dca382a6485c3cbe6379f0c61230167681937"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/dff51f72b0706335131b00a7f49606168c582594",
- "reference": "dff51f72b0706335131b00a7f49606168c582594",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f29dca382a6485c3cbe6379f0c61230167681937",
+ "reference": "f29dca382a6485c3cbe6379f0c61230167681937",
"shasum": ""
},
"require": {
@@ -2129,7 +2333,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2-dev"
+ "dev-master": "1.4-dev"
}
},
"autoload": {
@@ -2163,29 +2367,35 @@
"portable",
"shim"
],
- "time": "2016-05-18 14:26:46"
+ "time": "2017-06-09T14:24:12+00:00"
},
{
"name": "symfony/yaml",
- "version": "v3.1.6",
+ "version": "v3.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "7ff51b06c6c3d5cc6686df69004a42c69df09e27"
+ "reference": "1f93a8d19b8241617f5074a123e282575b821df8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/7ff51b06c6c3d5cc6686df69004a42c69df09e27",
- "reference": "7ff51b06c6c3d5cc6686df69004a42c69df09e27",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/1f93a8d19b8241617f5074a123e282575b821df8",
+ "reference": "1f93a8d19b8241617f5074a123e282575b821df8",
"shasum": ""
},
"require": {
"php": ">=5.5.9"
},
+ "require-dev": {
+ "symfony/console": "~2.8|~3.0"
+ },
+ "suggest": {
+ "symfony/console": "For validating YAML files using the lint command"
+ },
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "3.3-dev"
}
},
"autoload": {
@@ -2212,20 +2422,20 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2016-10-24 18:41:13"
+ "time": "2017-06-15T12:58:50+00:00"
},
{
"name": "theseer/fdomdocument",
- "version": "1.6.1",
+ "version": "1.6.6",
"source": {
"type": "git",
"url": "https://github.com/theseer/fDOMDocument.git",
- "reference": "d9ad139d6c2e8edf5e313ffbe37ff13344cf0684"
+ "reference": "6e8203e40a32a9c770bcb62fe37e68b948da6dca"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theseer/fDOMDocument/zipball/d9ad139d6c2e8edf5e313ffbe37ff13344cf0684",
- "reference": "d9ad139d6c2e8edf5e313ffbe37ff13344cf0684",
+ "url": "https://api.github.com/repos/theseer/fDOMDocument/zipball/6e8203e40a32a9c770bcb62fe37e68b948da6dca",
+ "reference": "6e8203e40a32a9c770bcb62fe37e68b948da6dca",
"shasum": ""
},
"require": {
@@ -2252,24 +2462,64 @@
],
"description": "The classes contained within this repository extend the standard DOM to use exceptions at all occasions of errors instead of PHP warnings or notices. They also add various custom methods and shortcuts for convenience and to simplify the usage of DOM.",
"homepage": "https://github.com/theseer/fDOMDocument",
- "time": "2015-05-27 22:58:02"
+ "time": "2017-06-30T11:53:12+00:00"
},
{
- "name": "webmozart/assert",
+ "name": "theseer/tokenizer",
"version": "1.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/theseer/tokenizer.git",
+ "reference": "cb2f008f3f05af2893a87208fe6a6c4985483f8b"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/cb2f008f3f05af2893a87208fe6a6c4985483f8b",
+ "reference": "cb2f008f3f05af2893a87208fe6a6c4985483f8b",
+ "shasum": ""
+ },
+ "require": {
+ "ext-dom": "*",
+ "ext-tokenizer": "*",
+ "ext-xmlwriter": "*",
+ "php": "^7.0"
+ },
+ "type": "library",
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Arne Blankerts",
+ "email": "arne@blankerts.de",
+ "role": "Developer"
+ }
+ ],
+ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
+ "time": "2017-04-07T12:08:54+00:00"
+ },
+ {
+ "name": "webmozart/assert",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/webmozart/assert.git",
- "reference": "bb2d123231c095735130cc8f6d31385a44c7b308"
+ "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/bb2d123231c095735130cc8f6d31385a44c7b308",
- "reference": "bb2d123231c095735130cc8f6d31385a44c7b308",
+ "url": "https://api.github.com/repos/webmozart/assert/zipball/2db61e59ff05fe5126d152bd0655c9ea113e550f",
+ "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f",
"shasum": ""
},
"require": {
- "php": "^5.3.3|^7.0"
+ "php": "^5.3.3 || ^7.0"
},
"require-dev": {
"phpunit/phpunit": "^4.6",
@@ -2278,7 +2528,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2-dev"
+ "dev-master": "1.3-dev"
}
},
"autoload": {
@@ -2302,7 +2552,7 @@
"check",
"validate"
],
- "time": "2016-08-09 15:02:57"
+ "time": "2016-11-23T20:04:58+00:00"
}
],
"aliases": [],
diff --git a/data/common.rng b/data/common.rng
index a24c14c..8103260 100644
--- a/data/common.rng
+++ b/data/common.rng
@@ -72,15 +72,29 @@
-
-
+
+ (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)
+
-
-
-
+
+
+
+
+ -?([0-9]{4})(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])T(([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])
+
+
+
+
+
+
+
diff --git a/docs/src/conf.py b/docs/src/conf.py
index e70745c..40a57b2 100644
--- a/docs/src/conf.py
+++ b/docs/src/conf.py
@@ -1,131 +1,34 @@
# -*- coding: utf-8 -*-
import os
-import sys
-import glob
-import shutil
-from datetime import datetime
-from subprocess import call, Popen, PIPE
-
-try:
- import simplejson as json
-except ImportError:
- import json
+import stat
+from os.path import join, abspath
+from subprocess import call
def prepare(globs, locs):
- # Where are we?
+ # RTD defaults the current working directory to where conf.py resides.
+ # In our case, that means /docs/src/.
cwd = os.getcwd()
- root = os.path.abspath(os.path.join(cwd, '..', '..'))
-
- git = Popen('which git 2> %s' % os.devnull, shell=True, stdout=PIPE
- ).stdout.read().strip()
- doxygen = Popen('which doxygen 2> %s' % os.devnull, shell=True, stdout=PIPE
- ).stdout.read().strip()
- pybabel = Popen('which pybabel 2> %s' % os.devnull, shell=True, stdout=PIPE
- ).stdout.read().strip()
-
- print "git version:",
- sys.stdout.flush()
- call([git, '--version'])
-
- print "doxygen version:",
- sys.stdout.flush()
- call([doxygen, '--version'])
-
- print "pybabel version:",
- sys.stdout.flush()
- call([pybabel, '--version'])
-
- print "environment:", repr(os.environ)
-
- print "Running from %s..." % (root, )
+ root = abspath(join(cwd, '..', '..'))
os.chdir(root)
- # Figure several configuration values from git.
- origin = Popen([git, 'config', '--local', 'remote.origin.url'],
- stdout=PIPE).stdout.read().strip()
- git_tag = Popen([git, 'describe', '--tags', '--exact', '--first-parent'],
- stdout=PIPE).communicate()[0].strip()
- git_hash = Popen([git, 'rev-parse', 'HEAD'],
- stdout=PIPE).communicate()[0].strip()
- gh_project = ('/'.join(origin.split('/')[-2:])).rpartition(':')[2]
- if gh_project.endswith('.git'):
- gh_project = gh_project[:-4]
- project = gh_project.rpartition('/')[2]
- os.environ['SPHINX_PROJECT'] = project
- if git_tag:
- os.environ['SPHINX_VERSION'] = os.environ['SPHINX_RELEASE'] = git_tag
- else:
- os.environ['SPHINX_VERSION'] = os.environ['SPHINX_RELEASE'] = 'latest'
- locs['tags'].add('devel')
+ # Download the PHP binary & composer.phar if necessary
+ base = 'https://github.com/Erebot/Buildenv/releases/download/1.4.0'
+ for f in ('php', 'composer.phar'):
+ call(['curl', '-L', '-z', f, '-o', f, '%s/%s' % (base, f)])
- # Clone or update dependencies
- buildenv = os.path.join(root, 'vendor', 'erebot', 'buildenv')
- natives = os.path.join(root, 'vendor', 'fpoirotte', 'natives4doxygen')
- for repository, path in (
- ('git://github.com/Erebot/Buildenv.git', buildenv),
- ('git://github.com/fpoirotte/PHPNatives4Doxygen', natives),
- ):
- if not os.path.isdir(path):
- os.makedirs(path)
- print "Cloning %s into %s..." % (repository, path)
- call([git, 'clone', repository, path])
- elif os.path.isdir(os.path.join(path, '.git')):
- os.chdir(path)
- print "Updating clone of %s in %s..." % (repository, path)
- call([git, 'checkout', 'master'])
- call([git, 'pull'])
- os.chdir(root)
+ # Make sure the PHP interpreter is executable
+ os.chmod('./php', stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR)
- composer = json.load(open(os.path.join(root, 'composer.json'), 'r'))
+ # Call composer to download/update dependencies as necessary
+ os.environ['COMPOSER_CACHE_DIR'] = './cache'
+ call(['./php', 'composer.phar', 'update', '-n', '--ignore-platform-reqs',
+ '--no-progress'], env=os.environ)
- # Run doxygen
- call([doxygen, os.path.join(root, 'Doxyfile')], env={
- 'COMPONENT_NAME': os.environ['SPHINX_PROJECT'],
- 'COMPONENT_VERSION': os.environ['SPHINX_VERSION'],
- 'COMPONENT_BRIEF': composer.get('description', ''),
- })
-
- # Remove extra files/folders.
- try:
- shutil.rmtree(os.path.join(root, 'build'))
- except OSError:
- pass
- shutil.move(
- os.path.join(root, 'docs', 'api', 'html'),
- os.path.join(root, 'build', 'apidoc'),
- )
-
- # Compile translation catalogs.
- for po in glob.iglob(os.path.join(root, 'docs', 'i18n', '*', 'LC_MESSAGES', '*.po')):
- mo = po[:-3] + '.mo'
- call([pybabel, 'compile', '-f', '--statistics', '-i', po, '-o', mo])
-
- # Load the real Sphinx configuration file.
+ # Load the second-stage configuration file.
os.chdir(cwd)
- real_conf = os.path.join(buildenv, 'sphinx', 'conf.py')
- print "Including real configuration file (%s)..." % (real_conf, )
- execfile(real_conf, globs, locs)
-
- # Patch configuration afterwards.
- locs['copyright'] = u'2012-%d, XRL Team. All rights reserved' % \
- datetime.now().year
- if 'html_extra_path' not in locs:
- locs['html_extra_path'] = []
- locs['html_extra_path'].append(os.path.join(root, 'build'))
- locs['html_theme'] = 'haiku'
- if 'locale_dirs' not in locs:
- locs['locale_dirs'] = []
- locs['locale_dirs'].insert(0, os.path.join(root, 'docs', 'i18n'))
- if 'rst_prolog' not in locs:
- locs['rst_prolog'] = ''
- locs['rst_prolog'] += '\n .. _`this_commit`: https://github.com/%s/commit/%s\n' % (
- gh_project,
- git_hash,
- )
-
- globs['RTD_NEW_THEME'] = False
- globs['RTD_OLD_THEME'] = False
-
+ conf = join(root, 'vendor', 'erebot', 'buildenv', 'sphinx', 'rtd.py')
+ print "Including the second configuration file (%s)..." % (conf, )
+ execfile(conf, globs, locs)
prepare(globals(), locals())
diff --git a/src/CLI.php b/src/CLI.php
index a042350..d91e322 100644
--- a/src/CLI.php
+++ b/src/CLI.php
@@ -30,25 +30,34 @@ class CLI
*/
public static function getVersion()
{
+ static $version = null;
+
+ // Return cached version if possible.
+ if (null !== $version) {
+ return $version;
+ }
+
// From a phar release.
if (!strncmp('phar://', __FILE__, 7)) {
$phar = new \Phar(__FILE__);
$md = $phar->getMetadata();
- return $md['version'];
- }
-
- // From a composer install.
- $getver = dirname(__DIR__) .
- DIRECTORY_SEPARATOR . 'vendor' .
- DIRECTORY_SEPARATOR . 'erebot' .
- DIRECTORY_SEPARATOR . 'buildenv' .
- DIRECTORY_SEPARATOR . 'get_version.php';
- if (file_exists($getver)) {
- return trim(shell_exec($getver));
+ $version = $md['version'];
+ } else {
+ // From a composer install.
+ $getver = dirname(__DIR__) .
+ DIRECTORY_SEPARATOR . 'vendor' .
+ DIRECTORY_SEPARATOR . 'erebot' .
+ DIRECTORY_SEPARATOR . 'buildenv' .
+ DIRECTORY_SEPARATOR . 'get_version.php';
+ if (file_exists($getver)) {
+ $version = trim(shell_exec($getver));
+ } else {
+ // Default guess
+ $version = 'dev';
+ }
}
- // Default guess.
- return 'dev';
+ return $version;
}
/**
diff --git a/src/Client.php b/src/Client.php
index 7b0f138..c4429aa 100644
--- a/src/Client.php
+++ b/src/Client.php
@@ -150,11 +150,17 @@ public function __call($method, array $args)
$newArgs = array_map('\\fpoirotte\\XRL\\NativeEncoder::convert', $args);
$request = new \fpoirotte\XRL\Request($method, $newArgs);
$xml = $this->encoder->encodeRequest($request);
+
+ $headers = array(
+ 'Content-Type: text/xml',
+ 'User-Agent: XRL/' . \fpoirotte\XRL\CLI::getVersion(),
+ );
+
$options = array(
'http' => array(
- 'method' => 'POST',
- 'content' => $xml,
- 'header' => 'Content-Type: text/xml',
+ 'method' => 'POST',
+ 'content' => $xml,
+ 'header' => $headers,
),
);
diff --git a/src/Node.php b/src/Node.php
index c140ca7..39d8a94 100644
--- a/src/Node.php
+++ b/src/Node.php
@@ -92,7 +92,21 @@ public function __construct(\XMLReader $reader, $validate, $subtrees)
}
if ($validate && !$reader->isValid()) {
- throw new \fpoirotte\XRL\Faults\InvalidXmlRpcException();
+ $errors = '';
+ foreach (libxml_get_errors() as $error) {
+ $message = trim($error->message);
+ $file = $error->file;
+ $line = $error->line;
+ $column = $error->column;
+ $errors .= "$message in '$file' on line $line, column $column\n";
+ }
+ if ($errors) {
+ throw new \fpoirotte\XRL\Faults\InvalidXmlRpcException(trim($errors));
+ } else {
+ // Use a generic error message in case the specific reason
+ // for the error cannot be pin-pointed.
+ throw new \fpoirotte\XRL\Faults\InvalidXmlRpcException();
+ }
}
$subtrees = true;
diff --git a/src/Types/AbstractDateTime.php b/src/Types/AbstractDateTime.php
index e847440..f279cb1 100644
--- a/src/Types/AbstractDateTime.php
+++ b/src/Types/AbstractDateTime.php
@@ -58,7 +58,7 @@ protected static function parse($value, \DateTimeZone $timezone = null)
$result = \DateTime::createFromFormat(static::XMLRPC_FORMAT, $value, $timezone);
- if (strcasecmp($value, $result->format(static::XMLRPC_FORMAT))) {
+ if (!is_object($result) || strcasecmp($value, $result->format(static::XMLRPC_FORMAT))) {
throw new \InvalidArgumentException('Invalid date/time');
}
diff --git a/src/Types/ArrayType.php b/src/Types/ArrayType.php
index 4577801..1abbc4d 100644
--- a/src/Types/ArrayType.php
+++ b/src/Types/ArrayType.php
@@ -33,7 +33,7 @@ public function get()
public function set($value)
{
if (!is_array($value)) {
- throw new \InvalidArgumentException('Expected array value');
+ throw new \InvalidArgumentException('Expected an array');
}
$keys = array_keys($value);
@@ -47,9 +47,9 @@ public function set($value)
sort($keys);
}
- // Hash / associative array.
- if ($keys != $numeric) {
- throw new \InvalidArgumentException('Expected array value2');
+ // Detect associative arrays (which are invalid for this type).
+ if ($keys !== $numeric) {
+ throw new \InvalidArgumentException('Expected an indexed array');
}
foreach ($value as $val) {
diff --git a/src/Types/DateTimeIso8601.php b/src/Types/DateTimeIso8601.php
index eda07c9..8a962b5 100644
--- a/src/Types/DateTimeIso8601.php
+++ b/src/Types/DateTimeIso8601.php
@@ -26,7 +26,7 @@ class DateTimeIso8601 extends \fpoirotte\XRL\Types\AbstractDateTime
* We can't just use DateTime::ISO8601 (= "Y-m-d\\TH:i:sO")
* because the XML-RPC specification forbids timezones.
*/
- const XMLRPC_FORMAT = 'Y-m-d\\TH:i:s';
+ const XMLRPC_FORMAT = 'Ymd\\TH:i:s';
/// XML-RPC type for this class.
const XMLRPC_TYPE = 'dateTime.iso8601';
diff --git a/tests/AttacksTest.php b/tests/AttacksTest.php
index 5c8dd17..9dbf1aa 100644
--- a/tests/AttacksTest.php
+++ b/tests/AttacksTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Attacks extends \PHPUnit_Framework_TestCase
+class Attacks extends \PHPUnit\Framework\TestCase
{
//
// Server
diff --git a/tests/AutoloadTest.php b/tests/AutoloadTest.php
index dea10e8..627844c 100644
--- a/tests/AutoloadTest.php
+++ b/tests/AutoloadTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Autoload extends \PHPUnit_Framework_TestCase
+class Autoload extends \PHPUnit\Framework\TestCase
{
public function setUp()
{
@@ -34,26 +34,17 @@ public function testAutoload2()
$this->assertFalse(class_exists('\\fpoirotte\\some_inexistent_class'));
}
- /**
- * @covers \fpoirotte\XRL\Autoload
- * @expectedException \PHPUnit_Framework_Error
- */
- public function testAutoload3()
- {
- $dummy = class_exists('\\fpoirotte\\XRL\\some_inexistent_class');
- }
-
/**
* See https://bugs.php.net/bug.php?id=55475
* for more information about the meaning of this test.
*
* @covers \fpoirotte\XRL\Autoload
*/
- public function testAutoload4()
+ public function testAutoload3()
{
if (version_compare(PHP_VERSION, '5.3.7', '<') ||
version_compare(PHP_VERSION, '5.3.8', '>')) {
- return;
+ return $this->assertTrue(true);
}
$this->setExpectedException(
'\\Exception',
diff --git a/tests/CallableObjectTest.php b/tests/CallableObjectTest.php
index 8aeed12..3f61194 100644
--- a/tests/CallableObjectTest.php
+++ b/tests/CallableObjectTest.php
@@ -42,7 +42,7 @@ public function __invoke($s)
}
-class CallableObject extends \PHPUnit_Framework_TestCase
+class CallableObject extends \PHPUnit\Framework\TestCase
{
public function referenceProvider()
{
diff --git a/tests/CapableServerTest.php b/tests/CapableServerTest.php
index 37a51d1..9c0bfed 100644
--- a/tests/CapableServerTest.php
+++ b/tests/CapableServerTest.php
@@ -69,7 +69,7 @@ public function invalidMarkup($foo)
}
}
-class CapableServer extends \PHPUnit_Framework_TestCase
+class CapableServer extends \PHPUnit\Framework\TestCase
{
protected $server;
protected $capableServer;
diff --git a/tests/ClientTest.php b/tests/ClientTest.php
index 8aab0bd..1e11c31 100644
--- a/tests/ClientTest.php
+++ b/tests/ClientTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Client extends \PHPUnit_Framework_TestCase
+class Client extends \PHPUnit\Framework\TestCase
{
public function setUp()
{
diff --git a/tests/DecoderTest.php b/tests/DecoderTest.php
index b5b75db..e1d80f6 100644
--- a/tests/DecoderTest.php
+++ b/tests/DecoderTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Decoder extends \PHPUnit_Framework_TestCase
+class Decoder extends \PHPUnit\Framework\TestCase
{
public function getRequest($path)
{
diff --git a/tests/EncoderTest.php b/tests/EncoderTest.php
index 571fc88..957e829 100644
--- a/tests/EncoderTest.php
+++ b/tests/EncoderTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Encoder extends \PHPUnit_Framework_TestCase
+class Encoder extends \PHPUnit\Framework\TestCase
{
protected $encoder;
diff --git a/tests/FaultsTest.php b/tests/FaultsTest.php
index 4306694..e801d37 100644
--- a/tests/FaultsTest.php
+++ b/tests/FaultsTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Faults extends \PHPUnit_Framework_TestCase
+class Faults extends \PHPUnit\Framework\TestCase
{
public function setUp()
{
@@ -92,17 +92,13 @@ public function testInvalidCharacter()
*/
public function testInvalidXmlRpc()
{
- $res = $this->server->handle(
- 'data://;base64,' .
- base64_encode(
- ''
- )
- );
+ $url = 'data://;base64,' . base64_encode('');
+ $res = $this->server->handle($url);
$expected =<<faultCode
-32600faultString
fpoirotte\XRL\Faults\InvalidXmlRpcException:
- server error. invalid xml-rpc. not conforming to spec
+ Did not expect element foo there in '$url' on line 1, column 0
EXPECTED;
$this->assertSame(
diff --git a/tests/NativeDecoderTest.php b/tests/NativeDecoderTest.php
index d1ec35b..23dbee8 100644
--- a/tests/NativeDecoderTest.php
+++ b/tests/NativeDecoderTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class NativeDecoder extends \PHPUnit_Framework_TestCase
+class NativeDecoder extends \PHPUnit\Framework\TestCase
{
public function setUp()
{
diff --git a/tests/NativeEncoderTest.php b/tests/NativeEncoderTest.php
index 1554ee0..8cfbcd2 100644
--- a/tests/NativeEncoderTest.php
+++ b/tests/NativeEncoderTest.php
@@ -49,7 +49,7 @@ class NonSerialClass
{
}
-class NativeEncoder extends \PHPUnit_Framework_TestCase
+class NativeEncoder extends \PHPUnit\Framework\TestCase
{
public function setUp()
{
diff --git a/tests/NodeTest.php b/tests/NodeTest.php
index 8160335..373ffd6 100644
--- a/tests/NodeTest.php
+++ b/tests/NodeTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Node extends \PHPUnit_Framework_TestCase
+class Node extends \PHPUnit\Framework\TestCase
{
protected $reader;
protected $data;
diff --git a/tests/OutputTest.php b/tests/OutputTest.php
index 694a5f5..25e02af 100644
--- a/tests/OutputTest.php
+++ b/tests/OutputTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Output extends \PHPUnit_Framework_TestCase
+class Output extends \PHPUnit\Framework\TestCase
{
protected $stream;
diff --git a/tests/RequestTest.php b/tests/RequestTest.php
index 337d0b2..183052a 100644
--- a/tests/RequestTest.php
+++ b/tests/RequestTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Request extends \PHPUnit_Framework_TestCase
+class Request extends \PHPUnit\Framework\TestCase
{
/**
* @covers \fpoirotte\XRL\Request::__construct
diff --git a/tests/ResponseTest.php b/tests/ResponseTest.php
index 72c02fc..de11338 100644
--- a/tests/ResponseTest.php
+++ b/tests/ResponseTest.php
@@ -28,7 +28,7 @@ protected function finalize($result)
}
}
-class Response extends \PHPUnit_Framework_TestCase
+class Response extends \PHPUnit\Framework\TestCase
{
/**
* @covers \fpoirotte\XRL\Response::__construct
diff --git a/tests/ServerTest.php b/tests/ServerTest.php
index ad3d200..8fb6bfa 100644
--- a/tests/ServerTest.php
+++ b/tests/ServerTest.php
@@ -11,7 +11,7 @@
namespace fpoirotte\XRL\tests;
-class Server extends \PHPUnit_Framework_TestCase
+class Server extends \PHPUnit\Framework\TestCase
{
protected $server;
protected $cls;
diff --git a/tests/bootstrap.php b/tests/bootstrap.php
index 20d77e0..7de7c51 100644
--- a/tests/bootstrap.php
+++ b/tests/bootstrap.php
@@ -29,3 +29,11 @@
DIRECTORY_SEPARATOR . 'Test' . $stub . '.php'
);
}
+
+// HACK: backward compatibility with PHPUnit releases that lacked namespaces.
+if (!class_exists('PHPUnit\\Framework\\TestResult')) {
+ class_alias('PHPUnit_Framework_TestResult', 'PHPUnit\\Framework\\TestResult');
+}
+if (!class_exists('PHPUnit\\Framework\\TestCase')) {
+ class_alias('PHPUnit_Framework_TestCase', 'PHPUnit\\Framework\\TestCase');
+}
diff --git a/tests/testdata/requests/datetime.xml b/tests/testdata/requests/datetime.xml
index d4be08c..54eb30c 100644
--- a/tests/testdata/requests/datetime.xml
+++ b/tests/testdata/requests/datetime.xml
@@ -4,7 +4,7 @@
- 1985-11-28T13:00:00
+ 19851128T13:00:00