diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml
index bf5e0183..9cd0f7f7 100644
--- a/.github/workflows/continuous-integration.yml
+++ b/.github/workflows/continuous-integration.yml
@@ -7,14 +7,14 @@ on:
- "push"
jobs:
-
+
init-php-doc:
name: "Init the php documentation cache"
runs-on: "ubuntu-latest"
steps:
- name: "Checkout"
uses: "actions/checkout@v2.0.0"
-
+
- name: "Cache PHP documentation checked out with svn"
id: cache-svn
uses: "actions/cache@v1.0.3"
@@ -26,7 +26,7 @@ jobs:
if: steps.cache-svn.outputs.cache-hit != 'true'
run: svn co https://svn.php.net/repository/phpdoc/modules/doc-en doc-en
working-directory: "generator/doc"
-
+
continuous-integration:
name: "Continuous Integration"
@@ -49,7 +49,7 @@ jobs:
- name: "Install PHP with extensions"
uses: "shivammathur/setup-php@1.8.2"
with:
- coverage: "none"
+ coverage: "pcov"
php-version: "${{ matrix.php-version }}"
- name: "Cache PHP documentation checked out with svn"
@@ -120,12 +120,16 @@ jobs:
run: "composer install && composer rector && composer test"
working-directory: "generator/tests/rector/0.6"
- #- name: "Archive code coverage results"
- # uses: "actions/upload-artifact@v1"
- # with:
- # name: "build"
- # path: "generator/build"
- #
- #- name: "Upload test coverage to coveralls"
- # run: "php vendor/bin/php-coveralls -v"
- # working-directory: "generator"
+ - name: "Archive code coverage results"
+ uses: "actions/upload-artifact@v1"
+ with:
+ name: "build"
+ path: "generator/build"
+
+ - name: "Upload test coverage to coveralls"
+ continue-on-error: true
+ run: "php vendor/bin/php-coveralls -v"
+ working-directory: "generator"
+ env:
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
+ COVERALLS_RUN_LOCALLY: 1
diff --git a/.gitignore b/.gitignore
index dc834d4a..bafd321f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
vendor/
/generator/tests/rector/0.5/composer.lock
/generator/tests/rector/0.6/composer.lock
+.phpunit.result.cache
diff --git a/generator/composer.json b/generator/composer.json
index d4c11301..982c83c8 100644
--- a/generator/composer.json
+++ b/generator/composer.json
@@ -7,7 +7,7 @@
}
},
"require": {
- "php": ">=7.1",
+ "php": "^7.2",
"ext-simplexml": "*",
"ext-json": "^1.5",
"symfony/console": "^4.1.4",
@@ -15,7 +15,7 @@
"symfony/finder": "^4.1"
},
"require-dev": {
- "phpunit/phpunit": "^7",
+ "phpunit/phpunit": "^8.5.2",
"phpstan/phpstan": "^0.12",
"thecodingmachine/phpstan-strict-rules": "^0.12",
"squizlabs/php_codesniffer": "^3.2",
diff --git a/generator/composer.lock b/generator/composer.lock
index f2a9e1eb..4ec0e195 100644
--- a/generator/composer.lock
+++ b/generator/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "bd5e44c6f5e095f3aad94746c650977f",
+ "content-hash": "5b2fd244ca0f4141fb0af3af1176ad29",
"packages": [
{
"name": "psr/container",
@@ -653,16 +653,16 @@
},
{
"name": "myclabs/deep-copy",
- "version": "1.9.3",
+ "version": "1.9.5",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "007c053ae6f31bba39dfa19a7726f56e9763bbea"
+ "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/007c053ae6f31bba39dfa19a7726f56e9763bbea",
- "reference": "007c053ae6f31bba39dfa19a7726f56e9763bbea",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef",
+ "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef",
"shasum": ""
},
"require": {
@@ -697,7 +697,7 @@
"object",
"object graph"
],
- "time": "2019-08-09T12:45:53+00:00"
+ "time": "2020-01-17T21:11:47+00:00"
},
{
"name": "nikic/php-parser",
@@ -990,40 +990,38 @@
},
{
"name": "phpdocumentor/reflection-docblock",
- "version": "4.3.2",
+ "version": "5.0.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "b83ff7cfcfee7827e1e78b637a5904fe6a96698e"
+ "reference": "a48807183a4b819072f26e347bbd0b5199a9d15f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/b83ff7cfcfee7827e1e78b637a5904fe6a96698e",
- "reference": "b83ff7cfcfee7827e1e78b637a5904fe6a96698e",
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/a48807183a4b819072f26e347bbd0b5199a9d15f",
+ "reference": "a48807183a4b819072f26e347bbd0b5199a9d15f",
"shasum": ""
},
"require": {
- "php": "^7.0",
- "phpdocumentor/reflection-common": "^1.0.0 || ^2.0.0",
- "phpdocumentor/type-resolver": "~0.4 || ^1.0.0",
- "webmozart/assert": "^1.0"
+ "ext-filter": "^7.1",
+ "php": "^7.2",
+ "phpdocumentor/reflection-common": "^2.0",
+ "phpdocumentor/type-resolver": "^1.0",
+ "webmozart/assert": "^1"
},
"require-dev": {
- "doctrine/instantiator": "^1.0.5",
- "mockery/mockery": "^1.0",
- "phpunit/phpunit": "^6.4"
+ "doctrine/instantiator": "^1",
+ "mockery/mockery": "^1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.x-dev"
+ "dev-master": "5.x-dev"
}
},
"autoload": {
"psr-4": {
- "phpDocumentor\\Reflection\\": [
- "src/"
- ]
+ "phpDocumentor\\Reflection\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1034,10 +1032,14 @@
{
"name": "Mike van Riel",
"email": "me@mikevanriel.com"
+ },
+ {
+ "name": "Jaap van Otterdijk",
+ "email": "account@ijaap.nl"
}
],
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2019-09-12T14:27:41+00:00"
+ "time": "2020-02-09T09:16:15+00:00"
},
{
"name": "phpdocumentor/type-resolver",
@@ -1088,33 +1090,33 @@
},
{
"name": "phpspec/prophecy",
- "version": "1.9.0",
+ "version": "v1.10.2",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "f6811d96d97bdf400077a0cc100ae56aa32b9203"
+ "reference": "b4400efc9d206e83138e2bb97ed7f5b14b831cd9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/f6811d96d97bdf400077a0cc100ae56aa32b9203",
- "reference": "f6811d96d97bdf400077a0cc100ae56aa32b9203",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/b4400efc9d206e83138e2bb97ed7f5b14b831cd9",
+ "reference": "b4400efc9d206e83138e2bb97ed7f5b14b831cd9",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.0.2",
"php": "^5.3|^7.0",
"phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0",
- "sebastian/comparator": "^1.1|^2.0|^3.0",
- "sebastian/recursion-context": "^1.0|^2.0|^3.0"
+ "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0",
+ "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0"
},
"require-dev": {
- "phpspec/phpspec": "^2.5|^3.2",
+ "phpspec/phpspec": "^2.5 || ^3.2",
"phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.8.x-dev"
+ "dev-master": "1.10.x-dev"
}
},
"autoload": {
@@ -1147,7 +1149,7 @@
"spy",
"stub"
],
- "time": "2019-10-03T11:07:50+00:00"
+ "time": "2020-01-20T15:57:02+00:00"
},
{
"name": "phpstan/phpstan",
@@ -1191,40 +1193,40 @@
},
{
"name": "phpunit/php-code-coverage",
- "version": "6.1.4",
+ "version": "7.0.10",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d"
+ "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
- "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1884187926fbb755a9aaf0b3836ad3165b478bf",
+ "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-xmlwriter": "*",
- "php": "^7.1",
- "phpunit/php-file-iterator": "^2.0",
+ "php": "^7.2",
+ "phpunit/php-file-iterator": "^2.0.2",
"phpunit/php-text-template": "^1.2.1",
- "phpunit/php-token-stream": "^3.0",
+ "phpunit/php-token-stream": "^3.1.1",
"sebastian/code-unit-reverse-lookup": "^1.0.1",
- "sebastian/environment": "^3.1 || ^4.0",
+ "sebastian/environment": "^4.2.2",
"sebastian/version": "^2.0.1",
- "theseer/tokenizer": "^1.1"
+ "theseer/tokenizer": "^1.1.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.0"
+ "phpunit/phpunit": "^8.2.2"
},
"suggest": {
- "ext-xdebug": "^2.6.0"
+ "ext-xdebug": "^2.7.2"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "6.1-dev"
+ "dev-master": "7.0-dev"
}
},
"autoload": {
@@ -1250,7 +1252,7 @@
"testing",
"xunit"
],
- "time": "2018-10-31T16:06:48+00:00"
+ "time": "2019-11-20T13:55:58+00:00"
},
{
"name": "phpunit/php-file-iterator",
@@ -1443,53 +1445,52 @@
},
{
"name": "phpunit/phpunit",
- "version": "7.5.18",
+ "version": "8.5.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "fcf6c4bfafaadc07785528b06385cce88935474d"
+ "reference": "018b6ac3c8ab20916db85fa91bf6465acb64d1e0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fcf6c4bfafaadc07785528b06385cce88935474d",
- "reference": "fcf6c4bfafaadc07785528b06385cce88935474d",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/018b6ac3c8ab20916db85fa91bf6465acb64d1e0",
+ "reference": "018b6ac3c8ab20916db85fa91bf6465acb64d1e0",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.1",
+ "doctrine/instantiator": "^1.2.0",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
- "myclabs/deep-copy": "^1.7",
- "phar-io/manifest": "^1.0.2",
- "phar-io/version": "^2.0",
- "php": "^7.1",
- "phpspec/prophecy": "^1.7",
- "phpunit/php-code-coverage": "^6.0.7",
- "phpunit/php-file-iterator": "^2.0.1",
+ "ext-xmlwriter": "*",
+ "myclabs/deep-copy": "^1.9.1",
+ "phar-io/manifest": "^1.0.3",
+ "phar-io/version": "^2.0.1",
+ "php": "^7.2",
+ "phpspec/prophecy": "^1.8.1",
+ "phpunit/php-code-coverage": "^7.0.7",
+ "phpunit/php-file-iterator": "^2.0.2",
"phpunit/php-text-template": "^1.2.1",
- "phpunit/php-timer": "^2.1",
- "sebastian/comparator": "^3.0",
- "sebastian/diff": "^3.0",
- "sebastian/environment": "^4.0",
- "sebastian/exporter": "^3.1",
- "sebastian/global-state": "^2.0",
+ "phpunit/php-timer": "^2.1.2",
+ "sebastian/comparator": "^3.0.2",
+ "sebastian/diff": "^3.0.2",
+ "sebastian/environment": "^4.2.2",
+ "sebastian/exporter": "^3.1.1",
+ "sebastian/global-state": "^3.0.0",
"sebastian/object-enumerator": "^3.0.3",
- "sebastian/resource-operations": "^2.0",
+ "sebastian/resource-operations": "^2.0.1",
+ "sebastian/type": "^1.1.3",
"sebastian/version": "^2.0.1"
},
- "conflict": {
- "phpunit/phpunit-mock-objects": "*"
- },
"require-dev": {
"ext-pdo": "*"
},
"suggest": {
"ext-soap": "*",
"ext-xdebug": "*",
- "phpunit/php-invoker": "^2.0"
+ "phpunit/php-invoker": "^2.0.0"
},
"bin": [
"phpunit"
@@ -1497,7 +1498,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.5-dev"
+ "dev-master": "8.5-dev"
}
},
"autoload": {
@@ -1523,7 +1524,7 @@
"testing",
"xunit"
],
- "time": "2019-12-06T05:14:37+00:00"
+ "time": "2020-01-08T08:49:49+00:00"
},
{
"name": "psr/http-message",
@@ -1949,23 +1950,26 @@
},
{
"name": "sebastian/global-state",
- "version": "2.0.0",
+ "version": "3.0.0",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4"
+ "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
- "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4",
+ "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": "^7.2",
+ "sebastian/object-reflector": "^1.1.1",
+ "sebastian/recursion-context": "^3.0"
},
"require-dev": {
- "phpunit/phpunit": "^6.0"
+ "ext-dom": "*",
+ "phpunit/phpunit": "^8.0"
},
"suggest": {
"ext-uopz": "*"
@@ -1973,7 +1977,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -1996,7 +2000,7 @@
"keywords": [
"global state"
],
- "time": "2017-04-27T15:39:26+00:00"
+ "time": "2019-02-01T05:30:01+00:00"
},
{
"name": "sebastian/object-enumerator",
@@ -2185,6 +2189,52 @@
"homepage": "https://www.github.com/sebastianbergmann/resource-operations",
"time": "2018-10-04T04:07:39+00:00"
},
+ {
+ "name": "sebastian/type",
+ "version": "1.1.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/type.git",
+ "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/3aaaa15fa71d27650d62a948be022fe3b48541a3",
+ "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.2"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^8.2"
+ },
+ "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",
+ "role": "lead"
+ }
+ ],
+ "description": "Collection of value objects that represent the types of the PHP type system",
+ "homepage": "https://github.com/sebastianbergmann/type",
+ "time": "2019-07-02T08:10:15+00:00"
+ },
{
"name": "sebastian/version",
"version": "2.0.1",
@@ -2395,16 +2445,16 @@
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.13.1",
+ "version": "v1.14.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "f8f0b461be3385e56d6de3dbb5a0df24c0c275e3"
+ "reference": "fbdeaec0df06cf3d51c93de80c7eb76e271f5a38"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/f8f0b461be3385e56d6de3dbb5a0df24c0c275e3",
- "reference": "f8f0b461be3385e56d6de3dbb5a0df24c0c275e3",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/fbdeaec0df06cf3d51c93de80c7eb76e271f5a38",
+ "reference": "fbdeaec0df06cf3d51c93de80c7eb76e271f5a38",
"shasum": ""
},
"require": {
@@ -2416,7 +2466,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.13-dev"
+ "dev-master": "1.14-dev"
}
},
"autoload": {
@@ -2449,7 +2499,7 @@
"polyfill",
"portable"
],
- "time": "2019-11-27T13:56:44+00:00"
+ "time": "2020-01-13T11:15:53+00:00"
},
{
"name": "symfony/stopwatch",
@@ -2653,16 +2703,16 @@
},
{
"name": "webmozart/assert",
- "version": "1.6.0",
+ "version": "1.7.0",
"source": {
"type": "git",
"url": "https://github.com/webmozart/assert.git",
- "reference": "573381c0a64f155a0d9a23f4b0c797194805b925"
+ "reference": "aed98a490f9a8f78468232db345ab9cf606cf598"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/573381c0a64f155a0d9a23f4b0c797194805b925",
- "reference": "573381c0a64f155a0d9a23f4b0c797194805b925",
+ "url": "https://api.github.com/repos/webmozart/assert/zipball/aed98a490f9a8f78468232db345ab9cf606cf598",
+ "reference": "aed98a490f9a8f78468232db345ab9cf606cf598",
"shasum": ""
},
"require": {
@@ -2697,7 +2747,7 @@
"check",
"validate"
],
- "time": "2019-11-24T13:36:37+00:00"
+ "time": "2020-02-14T12:15:55+00:00"
}
],
"aliases": [],
@@ -2706,7 +2756,7 @@
"prefer-stable": false,
"prefer-lowest": false,
"platform": {
- "php": ">=7.1",
+ "php": "^7.2",
"ext-simplexml": "*",
"ext-json": "^1.5"
},
diff --git a/generator/phpunit.xml.dist b/generator/phpunit.xml.dist
index a51e5f49..8ade109b 100644
--- a/generator/phpunit.xml.dist
+++ b/generator/phpunit.xml.dist
@@ -13,9 +13,7 @@
./tests/
-
- ./tests/rector
-
+ ./tests/rector
@@ -27,4 +25,4 @@
-
\ No newline at end of file
+
diff --git a/generator/tests/DateTimeImmutableTest.php b/generator/tests/DateTimeImmutableTest.php
index b4c49e7e..3c89a691 100644
--- a/generator/tests/DateTimeImmutableTest.php
+++ b/generator/tests/DateTimeImmutableTest.php
@@ -9,7 +9,7 @@
class DateTimeImmutableTest extends TestCase
{
- protected function setUp()
+ protected function setUp(): void
{
require_once __DIR__ . '/../../lib/Exceptions/SafeExceptionInterface.php';
require_once __DIR__ . '/../../generated/Exceptions/DatetimeException.php';
@@ -142,7 +142,7 @@ public function testSerialize()
$this->assertEquals($safeDatetime->getTimestamp(), $newDatetime->getTimestamp());
$this->assertEquals($safeDatetime->getTimezone(), $newDatetime->getTimezone());
}
-
+
public function testComparaison(): void
{
$safeDateTime = new \Safe\DateTimeImmutable();
@@ -165,4 +165,4 @@ public function testEquals(): void
$this->assertEquals($phpDateTime, $safeDateTime2);
$this->assertEquals($safeDateTime1, $safeDateTime2);
}
-}
\ No newline at end of file
+}
diff --git a/generator/tests/DateTimeTest.php b/generator/tests/DateTimeTest.php
index fc12eb29..ce4bf502 100644
--- a/generator/tests/DateTimeTest.php
+++ b/generator/tests/DateTimeTest.php
@@ -9,7 +9,7 @@
class DateTimeTest extends TestCase
{
- protected function setUp()
+ protected function setUp(): void
{
require_once __DIR__ . '/../../lib/Exceptions/SafeExceptionInterface.php';
require_once __DIR__ . '/../../generated/Exceptions/DatetimeException.php';
@@ -51,4 +51,4 @@ public function testModify(): void
$this->assertInstanceOf(DateTime::class, $datetime);
$this->assertEquals('7-4-2017', $datetime->format('j-n-Y'));
}
-}
\ No newline at end of file
+}