diff --git a/.github/workflows/release-phar.yml b/.github/workflows/release-phar.yml
index 30408ca..1231275 100644
--- a/.github/workflows/release-phar.yml
+++ b/.github/workflows/release-phar.yml
@@ -1,7 +1,7 @@
on:
- release:
- types:
- - created
+ push:
+ tags:
+ - '*'
name: Upload Phar to Release
@@ -22,11 +22,6 @@ jobs:
run: test -e phalcon-migrations.phar && exit 0 || exit 10
- name: Upload to Release
- uses: actions/upload-release-asset@v1
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ uses: softprops/action-gh-release@v1
with:
- upload_url: ${{ github.event.release.upload_url }}
- asset_path: ./phalcon-migrations.phar
- asset_name: phalcon-migrations.phar
- asset_content_type: application/octet-stream
+ files: phalcon-migrations.phar
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index fbd154e..3357cb5 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -3,11 +3,11 @@ name: "Tests"
on: [push, pull_request]
jobs:
- run-tests:
- name: PHP ${{ matrix.php-versions }}
+ run-tests-php7:
+ name: PHP ${{ matrix.php-versions }} with Phalcon ${{ matrix.phalcon-versions }}
runs-on: ubuntu-latest
env:
- extensions: mbstring, intl, json, phalcon-4.0.6, mysql, pgsql
+ extensions: mbstring, intl, json, phalcon-${{ matrix.phalcon-versions }}, mysql, pgsql
key: cache-v2.2~17.05.2020
services:
mysql:
@@ -26,10 +26,11 @@ jobs:
strategy:
fail-fast: false
matrix:
- php-versions: ['7.2', '7.3', '7.4']
+ php-versions: ['7.3', '7.4']
+ # There is no 4.1.1 version due release bug
+ phalcon-versions: ['4.0.5', '4.0.6', '4.1.0', '4.1.2']
steps:
- uses: actions/checkout@v1
-
- name: Setup cache environment
id: cache-env
uses: shivammathur/cache-extensions@v1
@@ -82,3 +83,4 @@ jobs:
with:
token: ${{secrets.CODECOV_TOKEN}}
file: ./tests/_output/coverage-*.xml
+
diff --git a/.github/workflows/validations.yml b/.github/workflows/validations.yml
index d9e0d60..294adc1 100644
--- a/.github/workflows/validations.yml
+++ b/.github/workflows/validations.yml
@@ -37,7 +37,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- php-versions: ['7.2', '7.3', '7.4']
+ php-versions: ['7.3', '7.4']
steps:
- name: Checkout the code
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a9bea01..d66e930 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,21 @@
+# [2.2.4](https://github.com/phalcon/migrations/releases/tag/v2.2.4) (2021-12-10)
+- Changed column modification behaviour during table morph ([#126](https://github.com/phalcon/migrations/issues/126))
+
+# [2.2.3](https://github.com/phalcon/migrations/releases/tag/v2.2.3) (2021-08-11)
+- Changed column modification behaviour during table morph ([#97](https://github.com/phalcon/migrations/issues/97))
+- Updated composer packages ([#124](https://github.com/phalcon/migrations/pull/124))
+
+# [2.2.2](https://github.com/phalcon/migrations/releases/tag/v2.2.2) (2021-08-08)
+- Integrated nette/php-generator, changed algorithm of migrations generation ([#90](https://github.com/phalcon/migrations/issues/90))
+
+# [2.2.1](https://github.com/phalcon/migrations/releases/tag/v2.2.1) (2021-08-03)
+- Fixed types and indexes definition on pgsql adapter ([#111](https://github.com/phalcon/migrations/issues/111), [#112](https://github.com/phalcon/migrations/issues/112), [#118](https://github.com/phalcon/migrations/issues/118))
+
+# [2.2.0](https://github.com/phalcon/migrations/releases/tag/v2.2.0) (2021-08-03)
+Supported Versions: 7.3, 7.4, 8.0
+
+- This release provides initial PHP 8 support.
+
# [2.1.6](https://github.com/phalcon/migrations/releases/tag/v2.1.6) (2021-03-22)
- Fixed duplicated table `phalcon_migrations` in PostgreSQL ([#104](https://github.com/phalcon/migrations/issues/104))
- Fixed morphing when column attribute `unsiged` is changed ([#109](https://github.com/phalcon/migrations/issues/109))
diff --git a/README.md b/README.md
index 4fee3d1..4ea90c1 100644
--- a/README.md
+++ b/README.md
@@ -42,7 +42,7 @@ Configuration filename can be whatever you want.
```php
[
diff --git a/composer.json b/composer.json
index 916200b..4c524ff 100644
--- a/composer.json
+++ b/composer.json
@@ -26,15 +26,16 @@
"forum": "https://forum.phalcon.io"
},
"require": {
- "php": ">=7.2",
- "ext-phalcon": "^4.0.5",
- "phalcon/cli-options-parser": "^1.2"
+ "php": ">=7.3",
+ "ext-phalcon": ">=4.0.5",
+ "phalcon/cli-options-parser": "^1.2",
+ "nette/php-generator": "^3.5"
},
"require-dev": {
"ext-pdo": "*",
"phalcon/ide-stubs": "^4.0.0",
"squizlabs/php_codesniffer": "^3.5",
- "fzaninotto/faker": "^1.9",
+ "fakerphp/faker": "^1.15",
"humbug/box": "^3.8",
"codeception/codeception": "^4.1",
"codeception/module-asserts": "^1.0.0",
diff --git a/composer.lock b/composer.lock
index 57eca0e..23b2dd4 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,27 +4,180 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "e8ae03aef59804d15dc136da549ce6af",
+ "content-hash": "10776056dc7a5c07b8d6e21a20cb3f5b",
"packages": [
+ {
+ "name": "nette/php-generator",
+ "version": "v3.6.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/nette/php-generator.git",
+ "reference": "bce6abcd4090ab5eec24b78f26c753c6525a425c"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/nette/php-generator/zipball/bce6abcd4090ab5eec24b78f26c753c6525a425c",
+ "reference": "bce6abcd4090ab5eec24b78f26c753c6525a425c",
+ "shasum": ""
+ },
+ "require": {
+ "nette/utils": "^3.1.2",
+ "php": ">=7.2 <8.2"
+ },
+ "require-dev": {
+ "nette/tester": "^2.4",
+ "nikic/php-parser": "^4.11",
+ "phpstan/phpstan": "^0.12",
+ "tracy/tracy": "^2.3"
+ },
+ "suggest": {
+ "nikic/php-parser": "to use ClassType::withBodiesFrom() & GlobalFunction::withBodyFrom()"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.6-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause",
+ "GPL-2.0-only",
+ "GPL-3.0-only"
+ ],
+ "authors": [
+ {
+ "name": "David Grudl",
+ "homepage": "https://davidgrudl.com"
+ },
+ {
+ "name": "Nette Community",
+ "homepage": "https://nette.org/contributors"
+ }
+ ],
+ "description": "🐘 Nette PHP Generator: generates neat PHP code for you. Supports new PHP 8.1 features.",
+ "homepage": "https://nette.org",
+ "keywords": [
+ "code",
+ "nette",
+ "php",
+ "scaffolding"
+ ],
+ "support": {
+ "issues": "https://github.com/nette/php-generator/issues",
+ "source": "https://github.com/nette/php-generator/tree/v3.6.2"
+ },
+ "time": "2021-09-23T21:48:24+00:00"
+ },
+ {
+ "name": "nette/utils",
+ "version": "v3.2.5",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/nette/utils.git",
+ "reference": "9cd80396ca58d7969ab44fc7afcf03624dfa526e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/nette/utils/zipball/9cd80396ca58d7969ab44fc7afcf03624dfa526e",
+ "reference": "9cd80396ca58d7969ab44fc7afcf03624dfa526e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2 <8.2"
+ },
+ "conflict": {
+ "nette/di": "<3.0.6"
+ },
+ "require-dev": {
+ "nette/tester": "~2.0",
+ "phpstan/phpstan": "^0.12",
+ "tracy/tracy": "^2.3"
+ },
+ "suggest": {
+ "ext-gd": "to use Image",
+ "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()",
+ "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()",
+ "ext-json": "to use Nette\\Utils\\Json",
+ "ext-mbstring": "to use Strings::lower() etc...",
+ "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()",
+ "ext-xml": "to use Strings::length() etc. when mbstring is not available"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.2-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause",
+ "GPL-2.0-only",
+ "GPL-3.0-only"
+ ],
+ "authors": [
+ {
+ "name": "David Grudl",
+ "homepage": "https://davidgrudl.com"
+ },
+ {
+ "name": "Nette Community",
+ "homepage": "https://nette.org/contributors"
+ }
+ ],
+ "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.",
+ "homepage": "https://nette.org",
+ "keywords": [
+ "array",
+ "core",
+ "datetime",
+ "images",
+ "json",
+ "nette",
+ "paginator",
+ "password",
+ "slugify",
+ "string",
+ "unicode",
+ "utf-8",
+ "utility",
+ "validation"
+ ],
+ "support": {
+ "issues": "https://github.com/nette/utils/issues",
+ "source": "https://github.com/nette/utils/tree/v3.2.5"
+ },
+ "time": "2021-09-20T10:50:11+00:00"
+ },
{
"name": "phalcon/cli-options-parser",
- "version": "v1.2.1",
+ "version": "v1.3.0",
"source": {
"type": "git",
"url": "https://github.com/phalcon/cli-options-parser.git",
- "reference": "9487c84fb320c6b6882c76d4388d039316d234b9"
+ "reference": "1c5a7d0db23a88d8ba14646af75464cbbd115251"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phalcon/cli-options-parser/zipball/9487c84fb320c6b6882c76d4388d039316d234b9",
- "reference": "9487c84fb320c6b6882c76d4388d039316d234b9",
+ "url": "https://api.github.com/repos/phalcon/cli-options-parser/zipball/1c5a7d0db23a88d8ba14646af75464cbbd115251",
+ "reference": "1c5a7d0db23a88d8ba14646af75464cbbd115251",
"shasum": ""
},
"require": {
- "php": ">=7.0 <8.0"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": ">=5.3 <8.0",
+ "phpunit/phpunit": "^9.5.8",
"squizlabs/php_codesniffer": "3.*"
},
"type": "library",
@@ -82,33 +235,33 @@
"type": "open_collective"
}
],
- "time": "2020-03-14T18:48:08+00:00"
+ "time": "2021-08-03T02:44:01+00:00"
}
],
"packages-dev": [
{
"name": "amphp/amp",
- "version": "v2.5.0",
+ "version": "v2.6.1",
"source": {
"type": "git",
"url": "https://github.com/amphp/amp.git",
- "reference": "f220a51458bf4dd0dedebb171ac3457813c72bbc"
+ "reference": "c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/amphp/amp/zipball/f220a51458bf4dd0dedebb171ac3457813c72bbc",
- "reference": "f220a51458bf4dd0dedebb171ac3457813c72bbc",
+ "url": "https://api.github.com/repos/amphp/amp/zipball/c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae",
+ "reference": "c5fc66a78ee38d7ac9195a37bacaf940eb3f65ae",
"shasum": ""
},
"require": {
- "php": ">=7"
+ "php": ">=7.1"
},
"require-dev": {
"amphp/php-cs-fixer-config": "dev-master",
"amphp/phpunit-util": "^1",
"ext-json": "*",
"jetbrains/phpstorm-stubs": "^2019.3",
- "phpunit/phpunit": "^6.0.9 | ^7",
+ "phpunit/phpunit": "^7 | ^8 | ^9",
"psalm/phar": "^3.11@dev",
"react/promise": "^2"
},
@@ -165,7 +318,7 @@
"support": {
"irc": "irc://irc.freenode.org/amphp",
"issues": "https://github.com/amphp/amp/issues",
- "source": "https://github.com/amphp/amp/tree/master"
+ "source": "https://github.com/amphp/amp/tree/v2.6.1"
},
"funding": [
{
@@ -173,20 +326,20 @@
"type": "github"
}
],
- "time": "2020-07-14T21:47:18+00:00"
+ "time": "2021-09-23T18:43:08+00:00"
},
{
"name": "amphp/byte-stream",
- "version": "v1.8.0",
+ "version": "v1.8.1",
"source": {
"type": "git",
"url": "https://github.com/amphp/byte-stream.git",
- "reference": "f0c20cf598a958ba2aa8c6e5a71c697d652c7088"
+ "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/amphp/byte-stream/zipball/f0c20cf598a958ba2aa8c6e5a71c697d652c7088",
- "reference": "f0c20cf598a958ba2aa8c6e5a71c697d652c7088",
+ "url": "https://api.github.com/repos/amphp/byte-stream/zipball/acbd8002b3536485c997c4e019206b3f10ca15bd",
+ "reference": "acbd8002b3536485c997c4e019206b3f10ca15bd",
"shasum": ""
},
"require": {
@@ -242,9 +395,15 @@
"support": {
"irc": "irc://irc.freenode.org/amphp",
"issues": "https://github.com/amphp/byte-stream/issues",
- "source": "https://github.com/amphp/byte-stream/tree/master"
+ "source": "https://github.com/amphp/byte-stream/tree/v1.8.1"
},
- "time": "2020-06-29T18:35:05+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/amphp",
+ "type": "github"
+ }
+ ],
+ "time": "2021-03-30T17:13:30+00:00"
},
{
"name": "amphp/parallel",
@@ -316,21 +475,21 @@
},
{
"name": "amphp/parallel-functions",
- "version": "v0.1.3",
+ "version": "v1.0.0",
"source": {
"type": "git",
"url": "https://github.com/amphp/parallel-functions.git",
- "reference": "12e6c602e067b02f78ddf5b720c17e9aa01ad4b4"
+ "reference": "af9795d51abfafc3676cbe7e17965479491abaad"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/amphp/parallel-functions/zipball/12e6c602e067b02f78ddf5b720c17e9aa01ad4b4",
- "reference": "12e6c602e067b02f78ddf5b720c17e9aa01ad4b4",
+ "url": "https://api.github.com/repos/amphp/parallel-functions/zipball/af9795d51abfafc3676cbe7e17965479491abaad",
+ "reference": "af9795d51abfafc3676cbe7e17965479491abaad",
"shasum": ""
},
"require": {
"amphp/amp": "^2.0.3",
- "amphp/parallel": "^0.1.8 || ^0.2 || ^1",
+ "amphp/parallel": "^1.1",
"opis/closure": "^3.0.7",
"php": ">=7"
},
@@ -363,7 +522,13 @@
"issues": "https://github.com/amphp/parallel-functions/issues",
"source": "https://github.com/amphp/parallel-functions/tree/master"
},
- "time": "2018-10-28T15:29:02+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/amphp",
+ "type": "github"
+ }
+ ],
+ "time": "2020-07-10T17:05:35+00:00"
},
{
"name": "amphp/parser",
@@ -422,16 +587,16 @@
},
{
"name": "amphp/process",
- "version": "v1.1.0",
+ "version": "v1.1.1",
"source": {
"type": "git",
"url": "https://github.com/amphp/process.git",
- "reference": "355b1e561b01c16ab3d78fada1ad47ccc96df70e"
+ "reference": "b88c6aef75c0b22f6f021141dd2d5e7c5db4c124"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/amphp/process/zipball/355b1e561b01c16ab3d78fada1ad47ccc96df70e",
- "reference": "355b1e561b01c16ab3d78fada1ad47ccc96df70e",
+ "url": "https://api.github.com/repos/amphp/process/zipball/b88c6aef75c0b22f6f021141dd2d5e7c5db4c124",
+ "reference": "b88c6aef75c0b22f6f021141dd2d5e7c5db4c124",
"shasum": ""
},
"require": {
@@ -462,22 +627,28 @@
"name": "Bob Weinand",
"email": "bobwei9@hotmail.com"
},
- {
- "name": "Niklas Keller",
- "email": "me@kelunik.com"
- },
{
"name": "Aaron Piotrowski",
"email": "aaron@trowski.com"
+ },
+ {
+ "name": "Niklas Keller",
+ "email": "me@kelunik.com"
}
],
"description": "Asynchronous process manager.",
"homepage": "https://github.com/amphp/process",
"support": {
"issues": "https://github.com/amphp/process/issues",
- "source": "https://github.com/amphp/process/tree/master"
+ "source": "https://github.com/amphp/process/tree/v1.1.1"
},
- "time": "2019-02-26T16:33:03+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/amphp",
+ "type": "github"
+ }
+ ],
+ "time": "2021-03-30T20:04:22+00:00"
},
{
"name": "amphp/serialization",
@@ -599,93 +770,28 @@
},
"time": "2020-05-07T18:57:50+00:00"
},
- {
- "name": "beberlei/assert",
- "version": "v3.2.7",
- "source": {
- "type": "git",
- "url": "https://github.com/beberlei/assert.git",
- "reference": "d63a6943fc4fd1a2aedb65994e3548715105abcf"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/beberlei/assert/zipball/d63a6943fc4fd1a2aedb65994e3548715105abcf",
- "reference": "d63a6943fc4fd1a2aedb65994e3548715105abcf",
- "shasum": ""
- },
- "require": {
- "ext-ctype": "*",
- "ext-json": "*",
- "ext-mbstring": "*",
- "ext-simplexml": "*",
- "php": "^7"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "*",
- "phpstan/phpstan-shim": "*",
- "phpunit/phpunit": ">=6.0.0 <8"
- },
- "suggest": {
- "ext-intl": "Needed to allow Assertion::count(), Assertion::isCountable(), Assertion::minCount(), and Assertion::maxCount() to operate on ResourceBundles"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Assert\\": "lib/Assert"
- },
- "files": [
- "lib/Assert/functions.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-2-Clause"
- ],
- "authors": [
- {
- "name": "Benjamin Eberlei",
- "email": "kontakt@beberlei.de",
- "role": "Lead Developer"
- },
- {
- "name": "Richard Quadling",
- "email": "rquadling@gmail.com",
- "role": "Collaborator"
- }
- ],
- "description": "Thin assertion library for input validation in business models.",
- "keywords": [
- "assert",
- "assertion",
- "validation"
- ],
- "support": {
- "issues": "https://github.com/beberlei/assert/issues",
- "source": "https://github.com/beberlei/assert/tree/v3"
- },
- "time": "2019-12-19T17:51:41+00:00"
- },
{
"name": "behat/gherkin",
- "version": "v4.6.2",
+ "version": "v4.8.0",
"source": {
"type": "git",
"url": "https://github.com/Behat/Gherkin.git",
- "reference": "51ac4500c4dc30cbaaabcd2f25694299df666a31"
+ "reference": "2391482cd003dfdc36b679b27e9f5326bd656acd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Behat/Gherkin/zipball/51ac4500c4dc30cbaaabcd2f25694299df666a31",
- "reference": "51ac4500c4dc30cbaaabcd2f25694299df666a31",
+ "url": "https://api.github.com/repos/Behat/Gherkin/zipball/2391482cd003dfdc36b679b27e9f5326bd656acd",
+ "reference": "2391482cd003dfdc36b679b27e9f5326bd656acd",
"shasum": ""
},
"require": {
- "php": ">=5.3.1"
+ "php": "~7.2|~8.0"
},
"require-dev": {
- "phpunit/phpunit": "~4.5|~5",
- "symfony/phpunit-bridge": "~2.7|~3|~4",
- "symfony/yaml": "~2.3|~3|~4"
+ "cucumber/cucumber": "dev-gherkin-16.0.0",
+ "phpunit/phpunit": "~8|~9",
+ "symfony/phpunit-bridge": "~3|~4|~5",
+ "symfony/yaml": "~3|~4|~5"
},
"suggest": {
"symfony/yaml": "If you want to parse features, represented in YAML files"
@@ -712,7 +818,7 @@
"homepage": "http://everzet.com"
}
],
- "description": "Gherkin DSL parser for PHP 5.3",
+ "description": "Gherkin DSL parser for PHP",
"homepage": "http://behat.org/",
"keywords": [
"BDD",
@@ -724,22 +830,22 @@
],
"support": {
"issues": "https://github.com/Behat/Gherkin/issues",
- "source": "https://github.com/Behat/Gherkin/tree/master"
+ "source": "https://github.com/Behat/Gherkin/tree/v4.8.0"
},
- "time": "2020-03-17T14:03:26+00:00"
+ "time": "2021-02-04T12:44:21+00:00"
},
{
"name": "codeception/codeception",
- "version": "4.1.9",
+ "version": "4.1.22",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Codeception.git",
- "reference": "5782e342b978a3efd0b7a776b7808902840b8213"
+ "reference": "9777ec3690ceedc4bce2ed13af7af4ca4ee3088f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/Codeception/zipball/5782e342b978a3efd0b7a776b7808902840b8213",
- "reference": "5782e342b978a3efd0b7a776b7808902840b8213",
+ "url": "https://api.github.com/repos/Codeception/Codeception/zipball/9777ec3690ceedc4bce2ed13af7af4ca4ee3088f",
+ "reference": "9777ec3690ceedc4bce2ed13af7af4ca4ee3088f",
"shasum": ""
},
"require": {
@@ -750,7 +856,7 @@
"ext-curl": "*",
"ext-json": "*",
"ext-mbstring": "*",
- "guzzlehttp/psr7": "~1.4",
+ "guzzlehttp/psr7": "^1.4 | ^2.0",
"php": ">=5.6.0 <9.0",
"symfony/console": ">=2.7 <6.0",
"symfony/css-selector": ">=2.7 <6.0",
@@ -759,17 +865,17 @@
"symfony/yaml": ">=2.7 <6.0"
},
"require-dev": {
- "codeception/module-asserts": "*@dev",
- "codeception/module-cli": "*@dev",
- "codeception/module-db": "*@dev",
- "codeception/module-filesystem": "*@dev",
- "codeception/module-phpbrowser": "*@dev",
+ "codeception/module-asserts": "1.*@dev",
+ "codeception/module-cli": "1.*@dev",
+ "codeception/module-db": "1.*@dev",
+ "codeception/module-filesystem": "1.*@dev",
+ "codeception/module-phpbrowser": "1.*@dev",
"codeception/specify": "~0.3",
"codeception/util-universalframework": "*@dev",
"monolog/monolog": "~1.8",
"squizlabs/php_codesniffer": "~2.0",
"symfony/process": ">=2.7 <6.0",
- "vlucas/phpdotenv": "^2.0 | ^3.0 | ^4.0"
+ "vlucas/phpdotenv": "^2.0 | ^3.0 | ^4.0 | ^5.0"
},
"suggest": {
"codeception/specify": "BDD-style code blocks",
@@ -813,7 +919,7 @@
],
"support": {
"issues": "https://github.com/Codeception/Codeception/issues",
- "source": "https://github.com/Codeception/Codeception/tree/4.1.9"
+ "source": "https://github.com/Codeception/Codeception/tree/4.1.22"
},
"funding": [
{
@@ -821,7 +927,7 @@
"type": "open_collective"
}
],
- "time": "2020-10-23T17:59:47+00:00"
+ "time": "2021-08-06T17:15:34+00:00"
},
{
"name": "codeception/lib-asserts",
@@ -879,20 +985,20 @@
},
{
"name": "codeception/lib-innerbrowser",
- "version": "1.3.4",
+ "version": "1.5.1",
"source": {
"type": "git",
"url": "https://github.com/Codeception/lib-innerbrowser.git",
- "reference": "fd921e089147057b456ca3660de72112167e40a4"
+ "reference": "31b4b56ad53c3464fcb2c0a14d55a51a201bd3c2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/fd921e089147057b456ca3660de72112167e40a4",
- "reference": "fd921e089147057b456ca3660de72112167e40a4",
+ "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/31b4b56ad53c3464fcb2c0a14d55a51a201bd3c2",
+ "reference": "31b4b56ad53c3464fcb2c0a14d55a51a201bd3c2",
"shasum": ""
},
"require": {
- "codeception/codeception": "*@dev",
+ "codeception/codeception": "4.*@dev",
"ext-dom": "*",
"ext-json": "*",
"ext-mbstring": "*",
@@ -933,9 +1039,9 @@
],
"support": {
"issues": "https://github.com/Codeception/lib-innerbrowser/issues",
- "source": "https://github.com/Codeception/lib-innerbrowser/tree/1.3.4"
+ "source": "https://github.com/Codeception/lib-innerbrowser/tree/1.5.1"
},
- "time": "2020-10-22T05:45:03+00:00"
+ "time": "2021-08-30T15:21:42+00:00"
},
{
"name": "codeception/module-asserts",
@@ -996,20 +1102,20 @@
},
{
"name": "codeception/module-cli",
- "version": "1.0.4",
+ "version": "1.1.1",
"source": {
"type": "git",
"url": "https://github.com/Codeception/module-cli.git",
- "reference": "69a2b8d435c55eaaf004fc5d5dd00e29c05e2003"
+ "reference": "1f841ad4a1d43e5d9e60a43c4cc9e5af8008024f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/module-cli/zipball/69a2b8d435c55eaaf004fc5d5dd00e29c05e2003",
- "reference": "69a2b8d435c55eaaf004fc5d5dd00e29c05e2003",
+ "url": "https://api.github.com/repos/Codeception/module-cli/zipball/1f841ad4a1d43e5d9e60a43c4cc9e5af8008024f",
+ "reference": "1f841ad4a1d43e5d9e60a43c4cc9e5af8008024f",
"shasum": ""
},
"require": {
- "codeception/codeception": "^4.0",
+ "codeception/codeception": "*@dev",
"php": ">=5.6.0 <9.0"
},
"conflict": {
@@ -1037,26 +1143,26 @@
],
"support": {
"issues": "https://github.com/Codeception/module-cli/issues",
- "source": "https://github.com/Codeception/module-cli/tree/1.0.4"
+ "source": "https://github.com/Codeception/module-cli/tree/1.1.1"
},
- "time": "2020-10-23T17:37:39+00:00"
+ "time": "2020-12-26T16:56:19+00:00"
},
{
"name": "codeception/module-db",
- "version": "1.0.2",
+ "version": "1.1.0",
"source": {
"type": "git",
"url": "https://github.com/Codeception/module-db.git",
- "reference": "d5f1def43c1f0ebdd57d506224c4a4632e3a6059"
+ "reference": "8c8076cd05d4db95798acd7dba2a56578210982c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/module-db/zipball/d5f1def43c1f0ebdd57d506224c4a4632e3a6059",
- "reference": "d5f1def43c1f0ebdd57d506224c4a4632e3a6059",
+ "url": "https://api.github.com/repos/Codeception/module-db/zipball/8c8076cd05d4db95798acd7dba2a56578210982c",
+ "reference": "8c8076cd05d4db95798acd7dba2a56578210982c",
"shasum": ""
},
"require": {
- "codeception/codeception": "^4.0",
+ "codeception/codeception": "*@dev",
"php": ">=5.6.0 <9.0"
},
"conflict": {
@@ -1089,9 +1195,9 @@
],
"support": {
"issues": "https://github.com/Codeception/module-db/issues",
- "source": "https://github.com/Codeception/module-db/tree/1.0.2"
+ "source": "https://github.com/Codeception/module-db/tree/1.1.0"
},
- "time": "2020-10-23T18:21:20+00:00"
+ "time": "2020-12-20T13:37:07+00:00"
},
{
"name": "codeception/module-phpbrowser",
@@ -1155,27 +1261,25 @@
},
{
"name": "codeception/phpunit-wrapper",
- "version": "8.1.3",
+ "version": "9.0.6",
"source": {
"type": "git",
"url": "https://github.com/Codeception/phpunit-wrapper.git",
- "reference": "8c2c9b49d20b6e2d61e926a16b1bf2cee5f4db9c"
+ "reference": "b0c06abb3181eedca690170f7ed0fd26a70bfacc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/8c2c9b49d20b6e2d61e926a16b1bf2cee5f4db9c",
- "reference": "8c2c9b49d20b6e2d61e926a16b1bf2cee5f4db9c",
+ "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/b0c06abb3181eedca690170f7ed0fd26a70bfacc",
+ "reference": "b0c06abb3181eedca690170f7ed0fd26a70bfacc",
"shasum": ""
},
"require": {
"php": ">=7.2",
- "phpunit/php-code-coverage": "^7.0",
- "phpunit/phpunit": "^8.0",
- "sebastian/comparator": "^3.0",
- "sebastian/diff": "^3.0"
+ "phpunit/phpunit": "^9.0"
},
"require-dev": {
"codeception/specify": "*",
+ "consolidation/robo": "^3.0.0-alpha3",
"vlucas/phpdotenv": "^3.0"
},
"type": "library",
@@ -1192,14 +1296,17 @@
{
"name": "Davert",
"email": "davert.php@resend.cc"
+ },
+ {
+ "name": "Naktibalda"
}
],
"description": "PHPUnit classes used by Codeception",
"support": {
"issues": "https://github.com/Codeception/phpunit-wrapper/issues",
- "source": "https://github.com/Codeception/phpunit-wrapper/tree/8.1.3"
+ "source": "https://github.com/Codeception/phpunit-wrapper/tree/9.0.6"
},
- "time": "2020-10-11T18:16:48+00:00"
+ "time": "2020-12-28T13:59:47+00:00"
},
{
"name": "codeception/stub",
@@ -1237,16 +1344,16 @@
},
{
"name": "composer/package-versions-deprecated",
- "version": "1.11.99",
+ "version": "1.11.99.4",
"source": {
"type": "git",
"url": "https://github.com/composer/package-versions-deprecated.git",
- "reference": "c8c9aa8a14cc3d3bec86d0a8c3fa52ea79936855"
+ "reference": "b174585d1fe49ceed21928a945138948cb394600"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/c8c9aa8a14cc3d3bec86d0a8c3fa52ea79936855",
- "reference": "c8c9aa8a14cc3d3bec86d0a8c3fa52ea79936855",
+ "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b174585d1fe49ceed21928a945138948cb394600",
+ "reference": "b174585d1fe49ceed21928a945138948cb394600",
"shasum": ""
},
"require": {
@@ -1290,7 +1397,7 @@
"description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)",
"support": {
"issues": "https://github.com/composer/package-versions-deprecated/issues",
- "source": "https://github.com/composer/package-versions-deprecated/tree/master"
+ "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.4"
},
"funding": [
{
@@ -1306,27 +1413,27 @@
"type": "tidelift"
}
],
- "time": "2020-08-25T05:50:16+00:00"
+ "time": "2021-09-13T08:41:34+00:00"
},
{
"name": "composer/semver",
- "version": "3.2.2",
+ "version": "3.2.5",
"source": {
"type": "git",
"url": "https://github.com/composer/semver.git",
- "reference": "4089fddb67bcf6bf860d91b979e95be303835002"
+ "reference": "31f3ea725711245195f62e54ffa402d8ef2fdba9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/semver/zipball/4089fddb67bcf6bf860d91b979e95be303835002",
- "reference": "4089fddb67bcf6bf860d91b979e95be303835002",
+ "url": "https://api.github.com/repos/composer/semver/zipball/31f3ea725711245195f62e54ffa402d8ef2fdba9",
+ "reference": "31f3ea725711245195f62e54ffa402d8ef2fdba9",
"shasum": ""
},
"require": {
"php": "^5.3.2 || ^7.0 || ^8.0"
},
"require-dev": {
- "phpstan/phpstan": "^0.12.19",
+ "phpstan/phpstan": "^0.12.54",
"symfony/phpunit-bridge": "^4.2 || ^5"
},
"type": "library",
@@ -1371,7 +1478,7 @@
"support": {
"irc": "irc://irc.freenode.org/composer",
"issues": "https://github.com/composer/semver/issues",
- "source": "https://github.com/composer/semver/tree/3.2.2"
+ "source": "https://github.com/composer/semver/tree/3.2.5"
},
"funding": [
{
@@ -1387,28 +1494,29 @@
"type": "tidelift"
}
],
- "time": "2020-10-14T08:51:15+00:00"
+ "time": "2021-05-24T12:41:47+00:00"
},
{
"name": "composer/xdebug-handler",
- "version": "1.4.4",
+ "version": "2.0.2",
"source": {
"type": "git",
"url": "https://github.com/composer/xdebug-handler.git",
- "reference": "6e076a124f7ee146f2487554a94b6a19a74887ba"
+ "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6e076a124f7ee146f2487554a94b6a19a74887ba",
- "reference": "6e076a124f7ee146f2487554a94b6a19a74887ba",
+ "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/84674dd3a7575ba617f5a76d7e9e29a7d3891339",
+ "reference": "84674dd3a7575ba617f5a76d7e9e29a7d3891339",
"shasum": ""
},
"require": {
"php": "^5.3.2 || ^7.0 || ^8.0",
- "psr/log": "^1.0"
+ "psr/log": "^1 || ^2 || ^3"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7 || 6.5 - 8"
+ "phpstan/phpstan": "^0.12.55",
+ "symfony/phpunit-bridge": "^4.2 || ^5"
},
"type": "library",
"autoload": {
@@ -1434,7 +1542,7 @@
"support": {
"irc": "irc://irc.freenode.org/composer",
"issues": "https://github.com/composer/xdebug-handler/issues",
- "source": "https://github.com/composer/xdebug-handler/tree/1.4.4"
+ "source": "https://github.com/composer/xdebug-handler/tree/2.0.2"
},
"funding": [
{
@@ -1450,7 +1558,7 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T12:39:10+00:00"
+ "time": "2021-07-31T17:03:58+00:00"
},
{
"name": "dnoegel/php-xdg-base-dir",
@@ -1491,36 +1599,31 @@
},
{
"name": "doctrine/instantiator",
- "version": "1.3.1",
+ "version": "1.4.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "f350df0268e904597e3bd9c4685c53e0e333feea"
+ "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea",
- "reference": "f350df0268e904597e3bd9c4685c53e0e333feea",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b",
+ "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b",
"shasum": ""
},
"require": {
"php": "^7.1 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^6.0",
+ "doctrine/coding-standard": "^8.0",
"ext-pdo": "*",
"ext-phar": "*",
- "phpbench/phpbench": "^0.13",
- "phpstan/phpstan-phpunit": "^0.11",
- "phpstan/phpstan-shim": "^0.11",
- "phpunit/phpunit": "^7.0"
+ "phpbench/phpbench": "^0.13 || 1.0.0-alpha2",
+ "phpstan/phpstan": "^0.12",
+ "phpstan/phpstan-phpunit": "^0.12",
+ "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.2.x-dev"
- }
- },
"autoload": {
"psr-4": {
"Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
@@ -1534,7 +1637,7 @@
{
"name": "Marco Pivetta",
"email": "ocramius@gmail.com",
- "homepage": "http://ocramius.github.com/"
+ "homepage": "https://ocramius.github.io/"
}
],
"description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
@@ -1545,7 +1648,7 @@
],
"support": {
"issues": "https://github.com/doctrine/instantiator/issues",
- "source": "https://github.com/doctrine/instantiator/tree/1.3.x"
+ "source": "https://github.com/doctrine/instantiator/tree/1.4.0"
},
"funding": [
{
@@ -1561,84 +1664,99 @@
"type": "tidelift"
}
],
- "time": "2020-05-29T17:27:14+00:00"
+ "time": "2020-11-10T18:47:58+00:00"
},
{
- "name": "felixfbecker/advanced-json-rpc",
- "version": "v3.1.1",
+ "name": "fakerphp/faker",
+ "version": "v1.16.0",
"source": {
"type": "git",
- "url": "https://github.com/felixfbecker/php-advanced-json-rpc.git",
- "reference": "0ed363f8de17d284d479ec813c9ad3f6834b5c40"
+ "url": "https://github.com/FakerPHP/Faker.git",
+ "reference": "271d384d216e5e5c468a6b28feedf95d49f83b35"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/felixfbecker/php-advanced-json-rpc/zipball/0ed363f8de17d284d479ec813c9ad3f6834b5c40",
- "reference": "0ed363f8de17d284d479ec813c9ad3f6834b5c40",
+ "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/271d384d216e5e5c468a6b28feedf95d49f83b35",
+ "reference": "271d384d216e5e5c468a6b28feedf95d49f83b35",
"shasum": ""
},
"require": {
- "netresearch/jsonmapper": "^1.0 || ^2.0",
- "php": ">=7.0",
- "phpdocumentor/reflection-docblock": "^4.0.0 || ^5.0.0"
+ "php": "^7.1 || ^8.0",
+ "psr/container": "^1.0 || ^2.0",
+ "symfony/deprecation-contracts": "^2.2"
+ },
+ "conflict": {
+ "fzaninotto/faker": "*"
},
"require-dev": {
- "phpunit/phpunit": "^6.0.0"
+ "bamarni/composer-bin-plugin": "^1.4.1",
+ "ext-intl": "*",
+ "symfony/phpunit-bridge": "^4.4 || ^5.2"
+ },
+ "suggest": {
+ "ext-curl": "Required by Faker\\Provider\\Image to download images.",
+ "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.",
+ "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.",
+ "ext-mbstring": "Required for multibyte Unicode string functionality."
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "v1.16-dev"
+ }
+ },
"autoload": {
"psr-4": {
- "AdvancedJsonRpc\\": "lib/"
+ "Faker\\": "src/Faker/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "ISC"
+ "MIT"
],
"authors": [
{
- "name": "Felix Becker",
- "email": "felix.b@outlook.com"
+ "name": "François Zaninotto"
}
],
- "description": "A more advanced JSONRPC implementation",
+ "description": "Faker is a PHP library that generates fake data for you.",
+ "keywords": [
+ "data",
+ "faker",
+ "fixtures"
+ ],
"support": {
- "issues": "https://github.com/felixfbecker/php-advanced-json-rpc/issues",
- "source": "https://github.com/felixfbecker/php-advanced-json-rpc/tree/master"
+ "issues": "https://github.com/FakerPHP/Faker/issues",
+ "source": "https://github.com/FakerPHP/Faker/tree/v1.16.0"
},
- "time": "2020-03-11T15:21:41+00:00"
+ "time": "2021-09-06T14:53:37+00:00"
},
{
- "name": "felixfbecker/language-server-protocol",
- "version": "v1.5.0",
+ "name": "felixfbecker/advanced-json-rpc",
+ "version": "v3.2.1",
"source": {
"type": "git",
- "url": "https://github.com/felixfbecker/php-language-server-protocol.git",
- "reference": "85e83cacd2ed573238678c6875f8f0d7ec699541"
+ "url": "https://github.com/felixfbecker/php-advanced-json-rpc.git",
+ "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/85e83cacd2ed573238678c6875f8f0d7ec699541",
- "reference": "85e83cacd2ed573238678c6875f8f0d7ec699541",
+ "url": "https://api.github.com/repos/felixfbecker/php-advanced-json-rpc/zipball/b5f37dbff9a8ad360ca341f3240dc1c168b45447",
+ "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0",
+ "php": "^7.1 || ^8.0",
+ "phpdocumentor/reflection-docblock": "^4.3.4 || ^5.0.0"
},
"require-dev": {
- "phpstan/phpstan": "*",
- "squizlabs/php_codesniffer": "^3.1",
- "vimeo/psalm": "^4.0"
+ "phpunit/phpunit": "^7.0 || ^8.0"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
"autoload": {
"psr-4": {
- "LanguageServerProtocol\\": "src/"
+ "AdvancedJsonRpc\\": "lib/"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1651,92 +1769,87 @@
"email": "felix.b@outlook.com"
}
],
- "description": "PHP classes for the Language Server Protocol",
- "keywords": [
- "language",
- "microsoft",
- "php",
- "server"
- ],
+ "description": "A more advanced JSONRPC implementation",
"support": {
- "issues": "https://github.com/felixfbecker/php-language-server-protocol/issues",
- "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.0"
+ "issues": "https://github.com/felixfbecker/php-advanced-json-rpc/issues",
+ "source": "https://github.com/felixfbecker/php-advanced-json-rpc/tree/v3.2.1"
},
- "time": "2020-10-23T13:55:30+00:00"
+ "time": "2021-06-11T22:34:44+00:00"
},
{
- "name": "fzaninotto/faker",
- "version": "v1.9.1",
+ "name": "felixfbecker/language-server-protocol",
+ "version": "1.5.1",
"source": {
"type": "git",
- "url": "https://github.com/fzaninotto/Faker.git",
- "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f"
+ "url": "https://github.com/felixfbecker/php-language-server-protocol.git",
+ "reference": "9d846d1f5cf101deee7a61c8ba7caa0a975cd730"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f",
- "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f",
+ "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/9d846d1f5cf101deee7a61c8ba7caa0a975cd730",
+ "reference": "9d846d1f5cf101deee7a61c8ba7caa0a975cd730",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0"
+ "php": ">=7.1"
},
"require-dev": {
- "ext-intl": "*",
- "phpunit/phpunit": "^4.8.35 || ^5.7",
- "squizlabs/php_codesniffer": "^2.9.2"
+ "phpstan/phpstan": "*",
+ "squizlabs/php_codesniffer": "^3.1",
+ "vimeo/psalm": "^4.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.9-dev"
+ "dev-master": "1.x-dev"
}
},
"autoload": {
"psr-4": {
- "Faker\\": "src/Faker/"
+ "LanguageServerProtocol\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "MIT"
+ "ISC"
],
"authors": [
{
- "name": "François Zaninotto"
+ "name": "Felix Becker",
+ "email": "felix.b@outlook.com"
}
],
- "description": "Faker is a PHP library that generates fake data for you.",
+ "description": "PHP classes for the Language Server Protocol",
"keywords": [
- "data",
- "faker",
- "fixtures"
+ "language",
+ "microsoft",
+ "php",
+ "server"
],
"support": {
- "issues": "https://github.com/fzaninotto/Faker/issues",
- "source": "https://github.com/fzaninotto/Faker/tree/v1.9.1"
+ "issues": "https://github.com/felixfbecker/php-language-server-protocol/issues",
+ "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/1.5.1"
},
- "abandoned": true,
- "time": "2019-12-12T13:22:17+00:00"
+ "time": "2021-02-22T14:02:09+00:00"
},
{
"name": "guzzlehttp/guzzle",
- "version": "7.2.0",
+ "version": "7.3.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
- "reference": "0aa74dfb41ae110835923ef10a9d803a22d50e79"
+ "reference": "7008573787b430c1c1f650e3722d9bba59967628"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/0aa74dfb41ae110835923ef10a9d803a22d50e79",
- "reference": "0aa74dfb41ae110835923ef10a9d803a22d50e79",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/7008573787b430c1c1f650e3722d9bba59967628",
+ "reference": "7008573787b430c1c1f650e3722d9bba59967628",
"shasum": ""
},
"require": {
"ext-json": "*",
"guzzlehttp/promises": "^1.4",
- "guzzlehttp/psr7": "^1.7",
+ "guzzlehttp/psr7": "^1.7 || ^2.0",
"php": "^7.2.5 || ^8.0",
"psr/http-client": "^1.0"
},
@@ -1744,6 +1857,7 @@
"psr/http-client-implementation": "1.0"
},
"require-dev": {
+ "bamarni/composer-bin-plugin": "^1.4.1",
"ext-curl": "*",
"php-http/client-integration-tests": "^3.0",
"phpunit/phpunit": "^8.5.5 || ^9.3.5",
@@ -1757,7 +1871,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.1-dev"
+ "dev-master": "7.3-dev"
}
},
"autoload": {
@@ -1799,7 +1913,7 @@
],
"support": {
"issues": "https://github.com/guzzle/guzzle/issues",
- "source": "https://github.com/guzzle/guzzle/tree/7.2.0"
+ "source": "https://github.com/guzzle/guzzle/tree/7.3.0"
},
"funding": [
{
@@ -1819,20 +1933,20 @@
"type": "github"
}
],
- "time": "2020-10-10T11:47:56+00:00"
+ "time": "2021-03-23T11:33:13+00:00"
},
{
"name": "guzzlehttp/promises",
- "version": "1.4.0",
+ "version": "1.4.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
- "reference": "60d379c243457e073cff02bc323a2a86cb355631"
+ "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/60d379c243457e073cff02bc323a2a86cb355631",
- "reference": "60d379c243457e073cff02bc323a2a86cb355631",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/8e7d04f1f6450fef59366c399cfad4b9383aa30d",
+ "reference": "8e7d04f1f6450fef59366c399cfad4b9383aa30d",
"shasum": ""
},
"require": {
@@ -1872,35 +1986,38 @@
],
"support": {
"issues": "https://github.com/guzzle/promises/issues",
- "source": "https://github.com/guzzle/promises/tree/1.4.0"
+ "source": "https://github.com/guzzle/promises/tree/1.4.1"
},
- "time": "2020-09-30T07:37:28+00:00"
+ "time": "2021-03-07T09:25:29+00:00"
},
{
"name": "guzzlehttp/psr7",
- "version": "1.7.0",
+ "version": "2.2.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
- "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3"
+ "reference": "c94a94f120803a18554c1805ef2e539f8285f9a2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/53330f47520498c0ae1f61f7e2c90f55690c06a3",
- "reference": "53330f47520498c0ae1f61f7e2c90f55690c06a3",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/c94a94f120803a18554c1805ef2e539f8285f9a2",
+ "reference": "c94a94f120803a18554c1805ef2e539f8285f9a2",
"shasum": ""
},
"require": {
- "php": ">=5.4.0",
- "psr/http-message": "~1.0",
- "ralouphie/getallheaders": "^2.0.5 || ^3.0.0"
+ "php": "^7.2.5 || ^8.0",
+ "psr/http-factory": "^1.0",
+ "psr/http-message": "^1.0",
+ "ralouphie/getallheaders": "^3.0"
},
"provide": {
+ "psr/http-factory-implementation": "1.0",
"psr/http-message-implementation": "1.0"
},
"require-dev": {
- "ext-zlib": "*",
- "phpunit/phpunit": "~4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.10"
+ "bamarni/composer-bin-plugin": "^1.4.1",
+ "http-interop/http-factory-tests": "^0.9",
+ "phpunit/phpunit": "^8.5.8 || ^9.3.10"
},
"suggest": {
"laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
@@ -1908,978 +2025,130 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.7-dev"
+ "dev-master": "2.2-dev"
}
},
"autoload": {
"psr-4": {
"GuzzleHttp\\Psr7\\": "src/"
- },
- "files": [
- "src/functions_include.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Michael Dowling",
- "email": "mtdowling@gmail.com",
- "homepage": "https://github.com/mtdowling"
- },
- {
- "name": "Tobias Schultze",
- "homepage": "https://github.com/Tobion"
- }
- ],
- "description": "PSR-7 message implementation that also provides common utility methods",
- "keywords": [
- "http",
- "message",
- "psr-7",
- "request",
- "response",
- "stream",
- "uri",
- "url"
- ],
- "support": {
- "issues": "https://github.com/guzzle/psr7/issues",
- "source": "https://github.com/guzzle/psr7/tree/1.7.0"
- },
- "time": "2020-09-30T07:37:11+00:00"
- },
- {
- "name": "hoa/compiler",
- "version": "3.17.08.08",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Compiler.git",
- "reference": "aa09caf0bf28adae6654ca6ee415ee2f522672de"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Compiler/zipball/aa09caf0bf28adae6654ca6ee415ee2f522672de",
- "reference": "aa09caf0bf28adae6654ca6ee415ee2f522672de",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0",
- "hoa/file": "~1.0",
- "hoa/iterator": "~2.0",
- "hoa/math": "~1.0",
- "hoa/protocol": "~1.0",
- "hoa/regex": "~1.0",
- "hoa/visitor": "~2.0"
- },
- "require-dev": {
- "hoa/json": "~2.0",
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "3.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Compiler\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Compiler library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "algebraic",
- "ast",
- "compiler",
- "context-free",
- "coverage",
- "exhaustive",
- "grammar",
- "isotropic",
- "language",
- "lexer",
- "library",
- "ll1",
- "llk",
- "parser",
- "pp",
- "random",
- "regular",
- "rule",
- "sampler",
- "syntax",
- "token",
- "trace",
- "uniform"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Compiler",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Compiler/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Compiler"
- },
- "time": "2017-08-08T07:44:07+00:00"
- },
- {
- "name": "hoa/consistency",
- "version": "1.17.05.02",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Consistency.git",
- "reference": "fd7d0adc82410507f332516faf655b6ed22e4c2f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Consistency/zipball/fd7d0adc82410507f332516faf655b6ed22e4c2f",
- "reference": "fd7d0adc82410507f332516faf655b6ed22e4c2f",
- "shasum": ""
- },
- "require": {
- "hoa/exception": "~1.0",
- "php": ">=5.5.0"
- },
- "require-dev": {
- "hoa/stream": "~1.0",
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Consistency\\": "."
- },
- "files": [
- "Prelude.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Consistency library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "autoloader",
- "callable",
- "consistency",
- "entity",
- "flex",
- "keyword",
- "library"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Consistency",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Consistency/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Consistency"
- },
- "time": "2017-05-02T12:18:12+00:00"
- },
- {
- "name": "hoa/event",
- "version": "1.17.01.13",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Event.git",
- "reference": "6c0060dced212ffa3af0e34bb46624f990b29c54"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Event/zipball/6c0060dced212ffa3af0e34bb46624f990b29c54",
- "reference": "6c0060dced212ffa3af0e34bb46624f990b29c54",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Event\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Event library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "event",
- "library",
- "listener",
- "observer"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Event",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Event/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Event"
- },
- "time": "2017-01-13T15:30:50+00:00"
- },
- {
- "name": "hoa/exception",
- "version": "1.17.01.16",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Exception.git",
- "reference": "091727d46420a3d7468ef0595651488bfc3a458f"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Exception/zipball/091727d46420a3d7468ef0595651488bfc3a458f",
- "reference": "091727d46420a3d7468ef0595651488bfc3a458f",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/event": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Exception\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Exception library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "exception",
- "library"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Exception",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Exception/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Exception"
- },
- "time": "2017-01-16T07:53:27+00:00"
- },
- {
- "name": "hoa/file",
- "version": "1.17.07.11",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/File.git",
- "reference": "35cb979b779bc54918d2f9a4e02ed6c7a1fa67ca"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/File/zipball/35cb979b779bc54918d2f9a4e02ed6c7a1fa67ca",
- "reference": "35cb979b779bc54918d2f9a4e02ed6c7a1fa67ca",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/event": "~1.0",
- "hoa/exception": "~1.0",
- "hoa/iterator": "~2.0",
- "hoa/stream": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\File\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\File library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "Socket",
- "directory",
- "file",
- "finder",
- "library",
- "link",
- "temporary"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/File",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/File/issues",
- "source": "https://central.hoa-project.net/Resource/Library/File"
- },
- "time": "2017-07-11T07:42:15+00:00"
- },
- {
- "name": "hoa/iterator",
- "version": "2.17.01.10",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Iterator.git",
- "reference": "d1120ba09cb4ccd049c86d10058ab94af245f0cc"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Iterator/zipball/d1120ba09cb4ccd049c86d10058ab94af245f0cc",
- "reference": "d1120ba09cb4ccd049c86d10058ab94af245f0cc",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Iterator\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Iterator library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "iterator",
- "library"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Iterator",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Iterator/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Iterator"
- },
- "time": "2017-01-10T10:34:47+00:00"
- },
- {
- "name": "hoa/math",
- "version": "1.17.05.16",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Math.git",
- "reference": "7150785d30f5d565704912116a462e9f5bc83a0c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Math/zipball/7150785d30f5d565704912116a462e9f5bc83a0c",
- "reference": "7150785d30f5d565704912116a462e9f5bc83a0c",
- "shasum": ""
- },
- "require": {
- "hoa/compiler": "~3.0",
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0",
- "hoa/iterator": "~2.0",
- "hoa/protocol": "~1.0",
- "hoa/zformat": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Math\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Math library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "arrangement",
- "combination",
- "combinatorics",
- "counting",
- "library",
- "math",
- "permutation",
- "sampler",
- "set"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Math",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Math/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Math"
- },
- "time": "2017-05-16T08:02:17+00:00"
- },
- {
- "name": "hoa/protocol",
- "version": "1.17.01.14",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Protocol.git",
- "reference": "5c2cf972151c45f373230da170ea015deecf19e2"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Protocol/zipball/5c2cf972151c45f373230da170ea015deecf19e2",
- "reference": "5c2cf972151c45f373230da170ea015deecf19e2",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Protocol\\": "."
- },
- "files": [
- "Wrapper.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
- },
- {
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Protocol library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "library",
- "protocol",
- "resource",
- "stream",
- "wrapper"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Protocol",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Protocol/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Protocol"
- },
- "time": "2017-01-14T12:26:10+00:00"
- },
- {
- "name": "hoa/regex",
- "version": "1.17.01.13",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Regex.git",
- "reference": "7e263a61b6fb45c1d03d8e5ef77668518abd5bec"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Regex/zipball/7e263a61b6fb45c1d03d8e5ef77668518abd5bec",
- "reference": "7e263a61b6fb45c1d03d8e5ef77668518abd5bec",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0",
- "hoa/math": "~1.0",
- "hoa/protocol": "~1.0",
- "hoa/ustring": "~4.0",
- "hoa/visitor": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Regex\\": "."
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
- "BSD-3-Clause"
+ "MIT"
],
"authors": [
{
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
+ "name": "Graham Campbell",
+ "email": "hello@gjcampbell.co.uk",
+ "homepage": "https://github.com/GrahamCampbell"
},
{
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Regex library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "compiler",
- "library",
- "regex"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Regex",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Regex/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Regex"
- },
- "time": "2017-01-13T16:10:24+00:00"
- },
- {
- "name": "hoa/stream",
- "version": "1.17.02.21",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Stream.git",
- "reference": "3293cfffca2de10525df51436adf88a559151d82"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Stream/zipball/3293cfffca2de10525df51436adf88a559151d82",
- "reference": "3293cfffca2de10525df51436adf88a559151d82",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/event": "~1.0",
- "hoa/exception": "~1.0",
- "hoa/protocol": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Stream\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
+ "name": "Michael Dowling",
+ "email": "mtdowling@gmail.com",
+ "homepage": "https://github.com/mtdowling"
},
{
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Stream library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "Context",
- "bucket",
- "composite",
- "filter",
- "in",
- "library",
- "out",
- "protocol",
- "stream",
- "wrapper"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Stream",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Stream/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Stream"
- },
- "time": "2017-02-21T16:01:06+00:00"
- },
- {
- "name": "hoa/ustring",
- "version": "4.17.01.16",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Ustring.git",
- "reference": "e6326e2739178799b1fe3fdd92029f9517fa17a0"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Ustring/zipball/e6326e2739178799b1fe3fdd92029f9517fa17a0",
- "reference": "e6326e2739178799b1fe3fdd92029f9517fa17a0",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "suggest": {
- "ext-iconv": "ext/iconv must be present (or a third implementation) to use Hoa\\Ustring::transcode().",
- "ext-intl": "To get a better Hoa\\Ustring::toAscii() and Hoa\\Ustring::compareTo()."
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Ustring\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
+ "name": "George Mponos",
+ "email": "gmponos@gmail.com",
+ "homepage": "https://github.com/gmponos"
+ },
{
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
+ "name": "Tobias Nyholm",
+ "email": "tobias.nyholm@gmail.com",
+ "homepage": "https://github.com/Nyholm"
},
{
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
- }
- ],
- "description": "The Hoa\\Ustring library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "library",
- "search",
- "string",
- "unicode"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Ustring",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Ustring/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Ustring"
- },
- "time": "2017-01-16T07:08:25+00:00"
- },
- {
- "name": "hoa/visitor",
- "version": "2.17.01.16",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Visitor.git",
- "reference": "c18fe1cbac98ae449e0d56e87469103ba08f224a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Visitor/zipball/c18fe1cbac98ae449e0d56e87469103ba08f224a",
- "reference": "c18fe1cbac98ae449e0d56e87469103ba08f224a",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0"
- },
- "require-dev": {
- "hoa/test": "~2.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Visitor\\": "."
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
+ "name": "Márk Sági-Kazár",
+ "email": "mark.sagikazar@gmail.com",
+ "homepage": "https://github.com/sagikazarmark"
+ },
{
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
+ "name": "Tobias Schultze",
+ "email": "webmaster@tubo-world.de",
+ "homepage": "https://github.com/Tobion"
},
{
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
+ "name": "Márk Sági-Kazár",
+ "email": "mark.sagikazar@gmail.com",
+ "homepage": "https://sagikazarmark.hu"
}
],
- "description": "The Hoa\\Visitor library.",
- "homepage": "https://hoa-project.net/",
+ "description": "PSR-7 message implementation that also provides common utility methods",
"keywords": [
- "library",
- "structure",
- "visit",
- "visitor"
+ "http",
+ "message",
+ "psr-7",
+ "request",
+ "response",
+ "stream",
+ "uri",
+ "url"
],
"support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Visitor",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Visitor/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Visitor"
- },
- "time": "2017-01-16T07:02:03+00:00"
- },
- {
- "name": "hoa/zformat",
- "version": "1.17.01.10",
- "source": {
- "type": "git",
- "url": "https://github.com/hoaproject/Zformat.git",
- "reference": "522c381a2a075d4b9dbb42eb4592dd09520e4ac2"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/hoaproject/Zformat/zipball/522c381a2a075d4b9dbb42eb4592dd09520e4ac2",
- "reference": "522c381a2a075d4b9dbb42eb4592dd09520e4ac2",
- "shasum": ""
- },
- "require": {
- "hoa/consistency": "~1.0",
- "hoa/exception": "~1.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Hoa\\Zformat\\": "."
- }
+ "issues": "https://github.com/guzzle/psr7/issues",
+ "source": "https://github.com/guzzle/psr7/tree/2.2.1"
},
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
+ "funding": [
+ {
+ "url": "https://github.com/GrahamCampbell",
+ "type": "github"
+ },
{
- "name": "Ivan Enderlin",
- "email": "ivan.enderlin@hoa-project.net"
+ "url": "https://github.com/Nyholm",
+ "type": "github"
},
{
- "name": "Hoa community",
- "homepage": "https://hoa-project.net/"
+ "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7",
+ "type": "tidelift"
}
],
- "description": "The Hoa\\Zformat library.",
- "homepage": "https://hoa-project.net/",
- "keywords": [
- "library",
- "parameter",
- "zformat"
- ],
- "support": {
- "docs": "https://central.hoa-project.net/Documentation/Library/Zformat",
- "email": "support@hoa-project.net",
- "forum": "https://users.hoa-project.net/",
- "irc": "irc://chat.freenode.net/hoaproject",
- "issues": "https://github.com/hoaproject/Zformat/issues",
- "source": "https://central.hoa-project.net/Resource/Library/Zformat"
- },
- "time": "2017-01-10T10:39:54+00:00"
+ "time": "2022-03-20T21:55:58+00:00"
},
{
"name": "humbug/box",
- "version": "3.9.0",
+ "version": "3.13.0",
"source": {
"type": "git",
"url": "https://github.com/box-project/box.git",
- "reference": "412da7174f63a9485acff366d5c6d68356be0315"
+ "reference": "275b09154c2871240e5dad16782b16b107c975e9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/box-project/box/zipball/412da7174f63a9485acff366d5c6d68356be0315",
- "reference": "412da7174f63a9485acff366d5c6d68356be0315",
+ "url": "https://api.github.com/repos/box-project/box/zipball/275b09154c2871240e5dad16782b16b107c975e9",
+ "reference": "275b09154c2871240e5dad16782b16b107c975e9",
"shasum": ""
},
"require": {
- "amphp/parallel-functions": "^0.1.3",
- "beberlei/assert": "^3.2",
+ "amphp/parallel-functions": "^1.0",
+ "composer-plugin-api": "^1.0 || ^2.0",
"composer/package-versions-deprecated": "^1.8",
"composer/semver": "^3.2",
- "composer/xdebug-handler": "^1.3.2",
+ "composer/xdebug-handler": "^2.0",
"ext-phar": "*",
- "hoa/compiler": "^3.17",
- "humbug/php-scoper": "^0.13",
+ "humbug/php-scoper": "^0.13.10 || ^0.14",
"justinrainbow/json-schema": "^5.2.9",
"nikic/iter": "^2.0",
"nikic/php-parser": "^4.2",
"opis/closure": "^3.2",
- "paragonie/pharaoh": "^0.5",
- "php": "^7.2",
+ "paragonie/pharaoh": "^0.6",
+ "php": "^7.3 || ^8.0",
+ "phpdocumentor/reflection-docblock": "^5.2",
"psr/log": "^1.0",
"seld/jsonlint": "^1.7",
- "symfony/console": "^4.3.5",
- "symfony/filesystem": "^4.2",
- "symfony/finder": "^4.0",
- "symfony/process": "^4.2",
- "symfony/var-dumper": "^4.2",
+ "symfony/console": "^4.3.5 || ^5.2",
+ "symfony/filesystem": "^4.4 || ^5.2",
+ "symfony/finder": "^4.4 || ^5.2",
+ "symfony/process": "^4.4 || ^5.2",
+ "symfony/var-dumper": "^4.4 || ^5.2",
+ "webmozart/assert": "^1.9",
"webmozart/path-util": "^2.3"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.3",
"mikey179/vfsstream": "^1.6",
- "phpunit/phpunit": "^8.1",
+ "phpspec/prophecy-phpunit": "^2.0",
+ "phpunit/phpunit": "^9.0",
"symfony/phpunit-bridge": "^4.2 || ^5.0"
},
"suggest": {
@@ -2931,7 +2200,7 @@
],
"support": {
"issues": "https://github.com/box-project/box/issues",
- "source": "https://github.com/box-project/box/tree/3.9.0"
+ "source": "https://github.com/box-project/box/tree/3.13.0"
},
"funding": [
{
@@ -2939,27 +2208,27 @@
"type": "github"
}
],
- "time": "2020-09-29T20:14:44+00:00"
+ "time": "2021-05-15T19:10:03+00:00"
},
{
"name": "humbug/php-scoper",
- "version": "0.13.8",
+ "version": "0.14.1",
"source": {
"type": "git",
"url": "https://github.com/humbug/php-scoper.git",
- "reference": "e4a8d139a7baec975daea24e7f903f74f510ab2a"
+ "reference": "023b2318224d30f7a9496cdb3a3e475b9444e6b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/humbug/php-scoper/zipball/e4a8d139a7baec975daea24e7f903f74f510ab2a",
- "reference": "e4a8d139a7baec975daea24e7f903f74f510ab2a",
+ "url": "https://api.github.com/repos/humbug/php-scoper/zipball/023b2318224d30f7a9496cdb3a3e475b9444e6b7",
+ "reference": "023b2318224d30f7a9496cdb3a3e475b9444e6b7",
"shasum": ""
},
"require": {
"composer/package-versions-deprecated": "^1.8",
"jetbrains/phpstorm-stubs": "dev-master",
"nikic/php-parser": "^4.0",
- "php": "^7.2",
+ "php": "^7.3 || ^8.0",
"symfony/console": "^3.2 || ^4.0",
"symfony/filesystem": "^3.2 || ^4.0",
"symfony/finder": "^3.2 || ^4.0"
@@ -2969,8 +2238,9 @@
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.1",
- "humbug/box": "^3.8",
- "phpunit/phpunit": "^8.0"
+ "humbug/box": "^3.11",
+ "phpspec/prophecy-phpunit": "^2.0",
+ "phpunit/phpunit": "^9.0"
},
"bin": [
"bin/php-scoper"
@@ -3014,7 +2284,7 @@
"description": "Prefixes all PHP namespaces in a file or directory.",
"support": {
"issues": "https://github.com/humbug/php-scoper/issues",
- "source": "https://github.com/humbug/php-scoper/tree/0.13.8"
+ "source": "https://github.com/humbug/php-scoper/tree/0.14.1"
},
"funding": [
{
@@ -3022,7 +2292,7 @@
"type": "github"
}
],
- "time": "2020-10-29T16:16:22+00:00"
+ "time": "2021-04-12T21:44:51+00:00"
},
{
"name": "jetbrains/phpstorm-stubs",
@@ -3030,17 +2300,17 @@
"source": {
"type": "git",
"url": "https://github.com/JetBrains/phpstorm-stubs.git",
- "reference": "5b7def27af1f88c009f137b4c4a38bb4732a3713"
+ "reference": "ed968991205fa37eb33fe6d1534e9a7d7e6360bf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/5b7def27af1f88c009f137b4c4a38bb4732a3713",
- "reference": "5b7def27af1f88c009f137b4c4a38bb4732a3713",
+ "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/ed968991205fa37eb33fe6d1534e9a7d7e6360bf",
+ "reference": "ed968991205fa37eb33fe6d1534e9a7d7e6360bf",
"shasum": ""
},
"require-dev": {
- "friendsofphp/php-cs-fixer": "@stable",
- "nikic/php-parser": "dev-master",
+ "friendsofphp/php-cs-fixer": "dev-master",
+ "nikic/php-parser": "@stable",
"php": "^8.0",
"phpdocumentor/reflection-docblock": "@stable",
"phpunit/phpunit": "@stable"
@@ -3071,20 +2341,20 @@
"support": {
"source": "https://github.com/JetBrains/phpstorm-stubs/tree/master"
},
- "time": "2020-09-14T12:37:46+00:00"
+ "time": "2021-10-03T14:29:10+00:00"
},
{
"name": "justinrainbow/json-schema",
- "version": "5.2.10",
+ "version": "5.2.11",
"source": {
"type": "git",
"url": "https://github.com/justinrainbow/json-schema.git",
- "reference": "2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b"
+ "reference": "2ab6744b7296ded80f8cc4f9509abbff393399aa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b",
- "reference": "2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b",
+ "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/2ab6744b7296ded80f8cc4f9509abbff393399aa",
+ "reference": "2ab6744b7296ded80f8cc4f9509abbff393399aa",
"shasum": ""
},
"require": {
@@ -3139,22 +2409,22 @@
],
"support": {
"issues": "https://github.com/justinrainbow/json-schema/issues",
- "source": "https://github.com/justinrainbow/json-schema/tree/5.2.10"
+ "source": "https://github.com/justinrainbow/json-schema/tree/5.2.11"
},
- "time": "2020-05-27T16:41:55+00:00"
+ "time": "2021-07-22T09:24:00+00:00"
},
{
"name": "myclabs/deep-copy",
- "version": "1.10.1",
+ "version": "1.10.2",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "969b211f9a51aa1f6c01d1d2aef56d3bd91598e5"
+ "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/969b211f9a51aa1f6c01d1d2aef56d3bd91598e5",
- "reference": "969b211f9a51aa1f6c01d1d2aef56d3bd91598e5",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220",
+ "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220",
"shasum": ""
},
"require": {
@@ -3191,7 +2461,7 @@
],
"support": {
"issues": "https://github.com/myclabs/DeepCopy/issues",
- "source": "https://github.com/myclabs/DeepCopy/tree/1.x"
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.10.2"
},
"funding": [
{
@@ -3199,20 +2469,20 @@
"type": "tidelift"
}
],
- "time": "2020-06-29T13:22:24+00:00"
+ "time": "2020-11-13T09:40:50+00:00"
},
{
"name": "netresearch/jsonmapper",
- "version": "v2.1.0",
+ "version": "v4.0.0",
"source": {
"type": "git",
"url": "https://github.com/cweiske/jsonmapper.git",
- "reference": "e0f1e33a71587aca81be5cffbb9746510e1fe04e"
+ "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/e0f1e33a71587aca81be5cffbb9746510e1fe04e",
- "reference": "e0f1e33a71587aca81be5cffbb9746510e1fe04e",
+ "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d",
+ "reference": "8bbc021a8edb2e4a7ea2f8ad4fa9ec9dce2fcb8d",
"shasum": ""
},
"require": {
@@ -3220,10 +2490,10 @@
"ext-pcre": "*",
"ext-reflection": "*",
"ext-spl": "*",
- "php": ">=5.6"
+ "php": ">=7.1"
},
"require-dev": {
- "phpunit/phpunit": "~4.8.35 || ~5.7 || ~6.4 || ~7.0",
+ "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0",
"squizlabs/php_codesniffer": "~3.5"
},
"type": "library",
@@ -3248,36 +2518,31 @@
"support": {
"email": "cweiske@cweiske.de",
"issues": "https://github.com/cweiske/jsonmapper/issues",
- "source": "https://github.com/cweiske/jsonmapper/tree/master"
+ "source": "https://github.com/cweiske/jsonmapper/tree/v4.0.0"
},
- "time": "2020-04-16T18:48:43+00:00"
+ "time": "2020-12-01T19:48:11+00:00"
},
{
"name": "nikic/iter",
- "version": "v2.1.0",
+ "version": "v2.2.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/iter.git",
- "reference": "a7f3aa313c1315e14cf1d7e520c0f781f584a42f"
+ "reference": "d1323929952ddcb0b06439991f93bde3816a39e9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/iter/zipball/a7f3aa313c1315e14cf1d7e520c0f781f584a42f",
- "reference": "a7f3aa313c1315e14cf1d7e520c0f781f584a42f",
+ "url": "https://api.github.com/repos/nikic/iter/zipball/d1323929952ddcb0b06439991f93bde3816a39e9",
+ "reference": "d1323929952ddcb0b06439991f93bde3816a39e9",
"shasum": ""
},
"require": {
"php": ">=7.1"
},
"require-dev": {
- "phpunit/phpunit": "~7.0"
+ "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.0-dev"
- }
- },
"autoload": {
"files": [
"src/iter.func.php",
@@ -3303,22 +2568,22 @@
],
"support": {
"issues": "https://github.com/nikic/iter/issues",
- "source": "https://github.com/nikic/iter/tree/v2.1.0"
+ "source": "https://github.com/nikic/iter/tree/v2.2.0"
},
- "time": "2020-09-19T15:58:13+00:00"
+ "time": "2021-08-02T15:04:32+00:00"
},
{
"name": "nikic/php-parser",
- "version": "v4.10.2",
+ "version": "v4.13.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "658f1be311a230e0907f5dfe0213742aff0596de"
+ "reference": "50953a2691a922aa1769461637869a0a2faa3f53"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/658f1be311a230e0907f5dfe0213742aff0596de",
- "reference": "658f1be311a230e0907f5dfe0213742aff0596de",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/50953a2691a922aa1769461637869a0a2faa3f53",
+ "reference": "50953a2691a922aa1769461637869a0a2faa3f53",
"shasum": ""
},
"require": {
@@ -3359,9 +2624,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v4.10.2"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.0"
},
- "time": "2020-09-26T10:30:38+00:00"
+ "time": "2021-09-20T12:20:58+00:00"
},
{
"name": "openlss/lib-array2xml",
@@ -3418,16 +2683,16 @@
},
{
"name": "opis/closure",
- "version": "3.6.0",
+ "version": "3.6.2",
"source": {
"type": "git",
"url": "https://github.com/opis/closure.git",
- "reference": "c547f8262a5fa9ff507bd06cc394067b83a75085"
+ "reference": "06e2ebd25f2869e54a306dda991f7db58066f7f6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/opis/closure/zipball/c547f8262a5fa9ff507bd06cc394067b83a75085",
- "reference": "c547f8262a5fa9ff507bd06cc394067b83a75085",
+ "url": "https://api.github.com/repos/opis/closure/zipball/06e2ebd25f2869e54a306dda991f7db58066f7f6",
+ "reference": "06e2ebd25f2869e54a306dda991f7db58066f7f6",
"shasum": ""
},
"require": {
@@ -3477,30 +2742,30 @@
],
"support": {
"issues": "https://github.com/opis/closure/issues",
- "source": "https://github.com/opis/closure/tree/3.6.0"
+ "source": "https://github.com/opis/closure/tree/3.6.2"
},
- "time": "2020-10-11T21:42:15+00:00"
+ "time": "2021-04-09T13:42:10+00:00"
},
{
"name": "paragonie/constant_time_encoding",
- "version": "v2.3.0",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/paragonie/constant_time_encoding.git",
- "reference": "47a1cedd2e4d52688eb8c96469c05ebc8fd28fa2"
+ "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/47a1cedd2e4d52688eb8c96469c05ebc8fd28fa2",
- "reference": "47a1cedd2e4d52688eb8c96469c05ebc8fd28fa2",
+ "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c",
+ "reference": "f34c2b11eb9d2c9318e13540a1dbc2a3afbd939c",
"shasum": ""
},
"require": {
"php": "^7|^8"
},
"require-dev": {
- "phpunit/phpunit": "^6|^7",
- "vimeo/psalm": "^1|^2|^3"
+ "phpunit/phpunit": "^6|^7|^8|^9",
+ "vimeo/psalm": "^1|^2|^3|^4"
},
"type": "library",
"autoload": {
@@ -3546,30 +2811,30 @@
"issues": "https://github.com/paragonie/constant_time_encoding/issues",
"source": "https://github.com/paragonie/constant_time_encoding"
},
- "time": "2019-11-06T19:20:29+00:00"
+ "time": "2020-12-06T15:14:20+00:00"
},
{
"name": "paragonie/pharaoh",
- "version": "v0.5.0",
+ "version": "v0.6.0",
"source": {
"type": "git",
"url": "https://github.com/paragonie/pharaoh.git",
- "reference": "060418e946de2f39a3618ad70d9b6d0a61437b83"
+ "reference": "d33976a45429edc9c4282e7b0f2b6c3a3a5783fc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paragonie/pharaoh/zipball/060418e946de2f39a3618ad70d9b6d0a61437b83",
- "reference": "060418e946de2f39a3618ad70d9b6d0a61437b83",
+ "url": "https://api.github.com/repos/paragonie/pharaoh/zipball/d33976a45429edc9c4282e7b0f2b6c3a3a5783fc",
+ "reference": "d33976a45429edc9c4282e7b0f2b6c3a3a5783fc",
"shasum": ""
},
"require": {
"paragonie/constant_time_encoding": "^2",
"paragonie/sodium_compat": "^1.3",
- "php": "^7",
+ "php": "^7|^8",
"ulrichsg/getopt-php": "^3"
},
"require-dev": {
- "vimeo/psalm": "^1|^2"
+ "vimeo/psalm": "^1|^2|^3"
},
"bin": [
"pharaoh"
@@ -3606,7 +2871,7 @@
"issues": "https://github.com/paragonie/pharaoh/issues",
"source": "https://github.com/paragonie/pharaoh"
},
- "time": "2018-11-02T16:45:56+00:00"
+ "time": "2020-12-03T04:57:05+00:00"
},
{
"name": "paragonie/random_compat",
@@ -3660,16 +2925,16 @@
},
{
"name": "paragonie/sodium_compat",
- "version": "v1.13.0",
+ "version": "v1.17.0",
"source": {
"type": "git",
"url": "https://github.com/paragonie/sodium_compat.git",
- "reference": "bbade402cbe84c69b718120911506a3aa2bae653"
+ "reference": "c59cac21abbcc0df06a3dd18076450ea4797b321"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/bbade402cbe84c69b718120911506a3aa2bae653",
- "reference": "bbade402cbe84c69b718120911506a3aa2bae653",
+ "url": "https://api.github.com/repos/paragonie/sodium_compat/zipball/c59cac21abbcc0df06a3dd18076450ea4797b321",
+ "reference": "c59cac21abbcc0df06a3dd18076450ea4797b321",
"shasum": ""
},
"require": {
@@ -3677,7 +2942,7 @@
"php": "^5.2.4|^5.3|^5.4|^5.5|^5.6|^7|^8"
},
"require-dev": {
- "phpunit/phpunit": "^3|^4|^5|^6|^7"
+ "phpunit/phpunit": "^3|^4|^5|^6|^7|^8|^9"
},
"suggest": {
"ext-libsodium": "PHP < 7.0: Better performance, password hashing (Argon2i), secure memory management (memzero), and better security.",
@@ -3740,22 +3005,22 @@
],
"support": {
"issues": "https://github.com/paragonie/sodium_compat/issues",
- "source": "https://github.com/paragonie/sodium_compat/tree/v1.13.0"
+ "source": "https://github.com/paragonie/sodium_compat/tree/v1.17.0"
},
- "time": "2020-03-20T21:48:09+00:00"
+ "time": "2021-08-10T02:43:50+00:00"
},
{
"name": "phalcon/ide-stubs",
- "version": "v4.0.6",
+ "version": "v4.1.0",
"source": {
"type": "git",
"url": "https://github.com/phalcon/ide-stubs.git",
- "reference": "d2adae3fba488ccba913a3f7fc310f23aa6de4a3"
+ "reference": "77384e4f42542f11b065b2a860b9bca2ea20ad5a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phalcon/ide-stubs/zipball/d2adae3fba488ccba913a3f7fc310f23aa6de4a3",
- "reference": "d2adae3fba488ccba913a3f7fc310f23aa6de4a3",
+ "url": "https://api.github.com/repos/phalcon/ide-stubs/zipball/77384e4f42542f11b065b2a860b9bca2ea20ad5a",
+ "reference": "77384e4f42542f11b065b2a860b9bca2ea20ad5a",
"shasum": ""
},
"require": {
@@ -3809,32 +3074,33 @@
"type": "open_collective"
}
],
- "time": "2020-05-18T20:16:38+00:00"
+ "time": "2020-11-13T10:58:11+00:00"
},
{
"name": "phar-io/manifest",
- "version": "1.0.3",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/phar-io/manifest.git",
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
+ "reference": "97803eca37d319dfa7826cc2437fc020857acb53"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53",
+ "reference": "97803eca37d319dfa7826cc2437fc020857acb53",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-phar": "*",
- "phar-io/version": "^2.0",
- "php": "^5.6 || ^7.0"
+ "ext-xmlwriter": "*",
+ "phar-io/version": "^3.0.1",
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -3866,26 +3132,26 @@
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
"support": {
"issues": "https://github.com/phar-io/manifest/issues",
- "source": "https://github.com/phar-io/manifest/tree/master"
+ "source": "https://github.com/phar-io/manifest/tree/2.0.3"
},
- "time": "2018-07-08T19:23:20+00:00"
+ "time": "2021-07-20T11:28:43+00:00"
},
{
"name": "phar-io/version",
- "version": "2.0.1",
+ "version": "3.1.0",
"source": {
"type": "git",
"url": "https://github.com/phar-io/version.git",
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
+ "reference": "bae7c545bef187884426f042434e561ab1ddb182"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/bae7c545bef187884426f042434e561ab1ddb182",
+ "reference": "bae7c545bef187884426f042434e561ab1ddb182",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"autoload": {
@@ -3917,9 +3183,9 @@
"description": "Library for handling version information and constraints",
"support": {
"issues": "https://github.com/phar-io/version/issues",
- "source": "https://github.com/phar-io/version/tree/master"
+ "source": "https://github.com/phar-io/version/tree/3.1.0"
},
- "time": "2018-07-08T19:19:57+00:00"
+ "time": "2021-02-23T14:00:09+00:00"
},
{
"name": "phpdocumentor/reflection-common",
@@ -4032,16 +3298,16 @@
},
{
"name": "phpdocumentor/type-resolver",
- "version": "1.4.0",
+ "version": "1.5.1",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0"
+ "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
- "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae",
+ "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae",
"shasum": ""
},
"require": {
@@ -4049,7 +3315,8 @@
"phpdocumentor/reflection-common": "^2.0"
},
"require-dev": {
- "ext-tokenizer": "*"
+ "ext-tokenizer": "*",
+ "psalm/phar": "^4.8"
},
"type": "library",
"extra": {
@@ -4075,35 +3342,35 @@
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
"support": {
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
- "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.4.0"
+ "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.1"
},
- "time": "2020-09-17T18:55:26+00:00"
+ "time": "2021-10-02T14:08:47+00:00"
},
{
"name": "phpoption/phpoption",
- "version": "1.7.5",
+ "version": "1.8.0",
"source": {
"type": "git",
"url": "https://github.com/schmittjoh/php-option.git",
- "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525"
+ "reference": "5455cb38aed4523f99977c4a12ef19da4bfe2a28"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/994ecccd8f3283ecf5ac33254543eb0ac946d525",
- "reference": "994ecccd8f3283ecf5ac33254543eb0ac946d525",
+ "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/5455cb38aed4523f99977c4a12ef19da4bfe2a28",
+ "reference": "5455cb38aed4523f99977c4a12ef19da4bfe2a28",
"shasum": ""
},
"require": {
- "php": "^5.5.9 || ^7.0 || ^8.0"
+ "php": "^7.0 || ^8.0"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.4.1",
- "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0 || ^8.0 || ^9.0"
+ "phpunit/phpunit": "^6.5.14 || ^7.0.20 || ^8.5.19 || ^9.5.8"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.7-dev"
+ "dev-master": "1.8-dev"
}
},
"autoload": {
@@ -4122,7 +3389,7 @@
},
{
"name": "Graham Campbell",
- "email": "graham@alt-three.com"
+ "email": "hello@gjcampbell.co.uk"
}
],
"description": "Option Type for PHP",
@@ -4134,7 +3401,7 @@
],
"support": {
"issues": "https://github.com/schmittjoh/php-option/issues",
- "source": "https://github.com/schmittjoh/php-option/tree/1.7.5"
+ "source": "https://github.com/schmittjoh/php-option/tree/1.8.0"
},
"funding": [
{
@@ -4146,37 +3413,37 @@
"type": "tidelift"
}
],
- "time": "2020-07-20T17:29:33+00:00"
+ "time": "2021-08-28T21:27:29+00:00"
},
{
"name": "phpspec/prophecy",
- "version": "1.12.1",
+ "version": "1.14.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "8ce87516be71aae9b956f81906aaf0338e0d8a2d"
+ "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/8ce87516be71aae9b956f81906aaf0338e0d8a2d",
- "reference": "8ce87516be71aae9b956f81906aaf0338e0d8a2d",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e",
+ "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.2",
- "php": "^7.2 || ~8.0, <8.1",
+ "php": "^7.2 || ~8.0, <8.2",
"phpdocumentor/reflection-docblock": "^5.2",
"sebastian/comparator": "^3.0 || ^4.0",
"sebastian/recursion-context": "^3.0 || ^4.0"
},
"require-dev": {
- "phpspec/phpspec": "^6.0",
- "phpunit/phpunit": "^8.0 || ^9.0 <9.3"
+ "phpspec/phpspec": "^6.0 || ^7.0",
+ "phpunit/phpunit": "^8.0 || ^9.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.11.x-dev"
+ "dev-master": "1.x-dev"
}
},
"autoload": {
@@ -4211,46 +3478,50 @@
],
"support": {
"issues": "https://github.com/phpspec/prophecy/issues",
- "source": "https://github.com/phpspec/prophecy/tree/1.12.1"
+ "source": "https://github.com/phpspec/prophecy/tree/1.14.0"
},
- "time": "2020-09-29T09:10:42+00:00"
+ "time": "2021-09-10T09:02:12+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "7.0.10",
+ "version": "9.2.7",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf"
+ "reference": "d4c798ed8d51506800b441f7a13ecb0f76f12218"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1884187926fbb755a9aaf0b3836ad3165b478bf",
- "reference": "f1884187926fbb755a9aaf0b3836ad3165b478bf",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/d4c798ed8d51506800b441f7a13ecb0f76f12218",
+ "reference": "d4c798ed8d51506800b441f7a13ecb0f76f12218",
"shasum": ""
},
"require": {
"ext-dom": "*",
+ "ext-libxml": "*",
"ext-xmlwriter": "*",
- "php": "^7.2",
- "phpunit/php-file-iterator": "^2.0.2",
- "phpunit/php-text-template": "^1.2.1",
- "phpunit/php-token-stream": "^3.1.1",
- "sebastian/code-unit-reverse-lookup": "^1.0.1",
- "sebastian/environment": "^4.2.2",
- "sebastian/version": "^2.0.1",
- "theseer/tokenizer": "^1.1.3"
+ "nikic/php-parser": "^4.12.0",
+ "php": ">=7.3",
+ "phpunit/php-file-iterator": "^3.0.3",
+ "phpunit/php-text-template": "^2.0.2",
+ "sebastian/code-unit-reverse-lookup": "^2.0.2",
+ "sebastian/complexity": "^2.0",
+ "sebastian/environment": "^5.1.2",
+ "sebastian/lines-of-code": "^1.0.3",
+ "sebastian/version": "^3.0.1",
+ "theseer/tokenizer": "^1.2.0"
},
"require-dev": {
- "phpunit/phpunit": "^8.2.2"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
- "ext-xdebug": "^2.7.2"
+ "ext-pcov": "*",
+ "ext-xdebug": "*"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "7.0-dev"
+ "dev-master": "9.2-dev"
}
},
"autoload": {
@@ -4278,34 +3549,40 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-code-coverage/issues",
- "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/7.0.10"
+ "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.7"
},
- "time": "2019-11-20T13:55:58+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2021-09-17T05:39:03+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "2.0.2",
+ "version": "3.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "050bedf145a257b1ff02746c31894800e5122946"
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/050bedf145a257b1ff02746c31894800e5122946",
- "reference": "050bedf145a257b1ff02746c31894800e5122946",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8",
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.1"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -4332,28 +3609,46 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/php-file-iterator/issues",
- "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/2.0.2"
+ "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.5"
},
- "time": "2018-09-13T20:33:42+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:57:25+00:00"
},
{
- "name": "phpunit/php-text-template",
- "version": "1.2.1",
+ "name": "phpunit/php-invoker",
+ "version": "3.1.1",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
+ "url": "https://github.com/sebastianbergmann/php-invoker.git",
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
- "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "ext-pcntl": "*",
+ "phpunit/phpunit": "^9.3"
+ },
+ "suggest": {
+ "ext-pcntl": "*"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.1-dev"
+ }
+ },
"autoload": {
"classmap": [
"src/"
@@ -4370,41 +3665,47 @@
"role": "lead"
}
],
- "description": "Simple template engine.",
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
+ "description": "Invoke callables with a timeout",
+ "homepage": "https://github.com/sebastianbergmann/php-invoker/",
"keywords": [
- "template"
+ "process"
+ ],
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/php-invoker/issues",
+ "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
],
- "support": {
- "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
- "source": "https://github.com/sebastianbergmann/php-text-template/tree/1.2.1"
- },
- "time": "2015-06-21T13:50:34+00:00"
+ "time": "2020-09-28T05:58:55+00:00"
},
{
- "name": "phpunit/php-timer",
- "version": "2.1.2",
+ "name": "phpunit/php-text-template",
+ "version": "2.0.4",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "1038454804406b0b5f5f520358e78c1c2f71501e"
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
+ "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e",
- "reference": "1038454804406b0b5f5f520358e78c1c2f71501e",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
+ "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.1-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -4423,42 +3724,47 @@
"role": "lead"
}
],
- "description": "Utility class for timing",
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
+ "description": "Simple template engine.",
+ "homepage": "https://github.com/sebastianbergmann/php-text-template/",
"keywords": [
- "timer"
+ "template"
],
"support": {
- "issues": "https://github.com/sebastianbergmann/php-timer/issues",
- "source": "https://github.com/sebastianbergmann/php-timer/tree/master"
+ "issues": "https://github.com/sebastianbergmann/php-text-template/issues",
+ "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4"
},
- "time": "2019-06-07T04:22:29+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T05:33:50+00:00"
},
{
- "name": "phpunit/php-token-stream",
- "version": "3.1.1",
+ "name": "phpunit/php-timer",
+ "version": "5.0.3",
"source": {
"type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff"
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
+ "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/995192df77f63a59e47f025390d2d1fdf8f425ff",
- "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
+ "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2",
"shasum": ""
},
"require": {
- "ext-tokenizer": "*",
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "5.0-dev"
}
},
"autoload": {
@@ -4473,69 +3779,78 @@
"authors": [
{
"name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
}
],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
+ "description": "Utility class for timing",
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
"keywords": [
- "tokenizer"
+ "timer"
],
"support": {
- "issues": "https://github.com/sebastianbergmann/php-token-stream/issues",
- "source": "https://github.com/sebastianbergmann/php-token-stream/tree/3.1.1"
+ "issues": "https://github.com/sebastianbergmann/php-timer/issues",
+ "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3"
},
- "abandoned": true,
- "time": "2019-09-17T06:23:10+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T13:16:10+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "8.5.8",
+ "version": "9.5.10",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "34c18baa6a44f1d1fbf0338907139e9dce95b997"
+ "reference": "c814a05837f2edb0d1471d6e3f4ab3501ca3899a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/34c18baa6a44f1d1fbf0338907139e9dce95b997",
- "reference": "34c18baa6a44f1d1fbf0338907139e9dce95b997",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c814a05837f2edb0d1471d6e3f4ab3501ca3899a",
+ "reference": "c814a05837f2edb0d1471d6e3f4ab3501ca3899a",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.2.0",
+ "doctrine/instantiator": "^1.3.1",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
"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.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.1",
- "sebastian/type": "^1.1.3",
- "sebastian/version": "^2.0.1"
+ "myclabs/deep-copy": "^1.10.1",
+ "phar-io/manifest": "^2.0.3",
+ "phar-io/version": "^3.0.2",
+ "php": ">=7.3",
+ "phpspec/prophecy": "^1.12.1",
+ "phpunit/php-code-coverage": "^9.2.7",
+ "phpunit/php-file-iterator": "^3.0.5",
+ "phpunit/php-invoker": "^3.1.1",
+ "phpunit/php-text-template": "^2.0.3",
+ "phpunit/php-timer": "^5.0.2",
+ "sebastian/cli-parser": "^1.0.1",
+ "sebastian/code-unit": "^1.0.6",
+ "sebastian/comparator": "^4.0.5",
+ "sebastian/diff": "^4.0.3",
+ "sebastian/environment": "^5.1.3",
+ "sebastian/exporter": "^4.0.3",
+ "sebastian/global-state": "^5.0.1",
+ "sebastian/object-enumerator": "^4.0.3",
+ "sebastian/resource-operations": "^3.0.3",
+ "sebastian/type": "^2.3.4",
+ "sebastian/version": "^3.0.2"
},
"require-dev": {
- "ext-pdo": "*"
+ "ext-pdo": "*",
+ "phpspec/prophecy-phpunit": "^2.0.1"
},
"suggest": {
"ext-soap": "*",
- "ext-xdebug": "*",
- "phpunit/php-invoker": "^2.0.0"
+ "ext-xdebug": "*"
},
"bin": [
"phpunit"
@@ -4543,12 +3858,15 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "8.5-dev"
+ "dev-master": "9.5-dev"
}
},
"autoload": {
"classmap": [
"src/"
+ ],
+ "files": [
+ "src/Framework/Assert/Functions.php"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -4571,7 +3889,7 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/8.5"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.10"
},
"funding": [
{
@@ -4583,29 +3901,29 @@
"type": "github"
}
],
- "time": "2020-06-22T07:06:58+00:00"
+ "time": "2021-09-25T07:38:51+00:00"
},
{
"name": "psr/container",
- "version": "1.0.0",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/php-fig/container.git",
- "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
+ "reference": "2ae37329ee82f91efadc282cc2d527fd6065a5ef"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
- "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+ "url": "https://api.github.com/repos/php-fig/container/zipball/2ae37329ee82f91efadc282cc2d527fd6065a5ef",
+ "reference": "2ae37329ee82f91efadc282cc2d527fd6065a5ef",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": ">=7.2.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -4620,7 +3938,7 @@
"authors": [
{
"name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "homepage": "https://www.php-fig.org/"
}
],
"description": "Common Container Interface (PHP FIG PSR-11)",
@@ -4634,9 +3952,9 @@
],
"support": {
"issues": "https://github.com/php-fig/container/issues",
- "source": "https://github.com/php-fig/container/tree/master"
+ "source": "https://github.com/php-fig/container/tree/2.0.1"
},
- "time": "2017-02-14T16:28:37+00:00"
+ "time": "2021-03-24T13:40:57+00:00"
},
{
"name": "psr/http-client",
@@ -4690,6 +4008,61 @@
},
"time": "2020-06-29T06:28:15+00:00"
},
+ {
+ "name": "psr/http-factory",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/php-fig/http-factory.git",
+ "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
+ "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.0.0",
+ "psr/http-message": "^1.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Psr\\Http\\Message\\": "src/"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "PHP-FIG",
+ "homepage": "http://www.php-fig.org/"
+ }
+ ],
+ "description": "Common interfaces for PSR-7 HTTP message factories",
+ "keywords": [
+ "factory",
+ "http",
+ "message",
+ "psr",
+ "psr-17",
+ "psr-7",
+ "request",
+ "response"
+ ],
+ "support": {
+ "source": "https://github.com/php-fig/http-factory/tree/master"
+ },
+ "time": "2019-04-30T12:38:16+00:00"
+ },
{
"name": "psr/http-message",
"version": "1.0.1",
@@ -4745,16 +4118,16 @@
},
{
"name": "psr/log",
- "version": "1.1.3",
+ "version": "1.1.4",
"source": {
"type": "git",
"url": "https://github.com/php-fig/log.git",
- "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc"
+ "reference": "d49695b909c3b7628b6289db5479a1c204601f11"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/log/zipball/0f73288fd15629204f9d42b7055f72dacbe811fc",
- "reference": "0f73288fd15629204f9d42b7055f72dacbe811fc",
+ "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11",
+ "reference": "d49695b909c3b7628b6289db5479a1c204601f11",
"shasum": ""
},
"require": {
@@ -4778,7 +4151,7 @@
"authors": [
{
"name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "homepage": "https://www.php-fig.org/"
}
],
"description": "Common interface for logging libraries",
@@ -4789,9 +4162,9 @@
"psr-3"
],
"support": {
- "source": "https://github.com/php-fig/log/tree/1.1.3"
+ "source": "https://github.com/php-fig/log/tree/1.1.4"
},
- "time": "2020-03-23T09:12:05+00:00"
+ "time": "2021-05-03T11:20:27+00:00"
},
{
"name": "ralouphie/getallheaders",
@@ -4838,29 +4211,141 @@
"time": "2019-03-08T08:55:37+00:00"
},
{
- "name": "sebastian/code-unit-reverse-lookup",
+ "name": "sebastian/cli-parser",
"version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/cli-parser.git",
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-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": "Library for parsing CLI options",
+ "homepage": "https://github.com/sebastianbergmann/cli-parser",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/cli-parser/issues",
+ "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:08:49+00:00"
+ },
+ {
+ "name": "sebastian/code-unit",
+ "version": "1.0.8",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/code-unit.git",
+ "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120",
+ "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-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 PHP code units",
+ "homepage": "https://github.com/sebastianbergmann/code-unit",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/code-unit/issues",
+ "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T13:08:54+00:00"
+ },
+ {
+ "name": "sebastian/code-unit-reverse-lookup",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18"
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
- "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^5.7 || ^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -4882,36 +4367,42 @@
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
"support": {
"issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues",
- "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/master"
+ "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3"
},
- "time": "2017-03-04T06:30:41+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:30:19+00:00"
},
{
"name": "sebastian/comparator",
- "version": "3.0.2",
+ "version": "4.0.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da"
+ "reference": "55f4261989e546dc112258c7a75935a81a7ce382"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
- "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382",
+ "reference": "55f4261989e546dc112258c7a75935a81a7ce382",
"shasum": ""
},
"require": {
- "php": "^7.1",
- "sebastian/diff": "^3.0",
- "sebastian/exporter": "^3.1"
+ "php": ">=7.3",
+ "sebastian/diff": "^4.0",
+ "sebastian/exporter": "^4.0"
},
"require-dev": {
- "phpunit/phpunit": "^7.1"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -4924,6 +4415,10 @@
"BSD-3-Clause"
],
"authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de"
+ },
{
"name": "Jeff Welch",
"email": "whatthejeff@gmail.com"
@@ -4935,10 +4430,6 @@
{
"name": "Bernhard Schussek",
"email": "bschussek@2bepublished.at"
- },
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
}
],
"description": "Provides the functionality to compare PHP values for equality",
@@ -4948,37 +4439,100 @@
"compare",
"equality"
],
- "support": {
- "issues": "https://github.com/sebastianbergmann/comparator/issues",
- "source": "https://github.com/sebastianbergmann/comparator/tree/master"
- },
- "time": "2018-07-12T15:12:46+00:00"
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/comparator/issues",
+ "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T15:49:45+00:00"
+ },
+ {
+ "name": "sebastian/complexity",
+ "version": "2.0.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/complexity.git",
+ "reference": "739b35e53379900cc9ac327b2147867b8b6efd88"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88",
+ "reference": "739b35e53379900cc9ac327b2147867b8b6efd88",
+ "shasum": ""
+ },
+ "require": {
+ "nikic/php-parser": "^4.7",
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0-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": "Library for calculating the complexity of PHP code units",
+ "homepage": "https://github.com/sebastianbergmann/complexity",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/complexity/issues",
+ "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T15:52:27+00:00"
},
{
"name": "sebastian/diff",
- "version": "3.0.2",
+ "version": "4.0.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29"
+ "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
- "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d",
+ "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.5 || ^8.0",
- "symfony/process": "^2 || ^3.3 || ^4"
+ "phpunit/phpunit": "^9.3",
+ "symfony/process": "^4.2 || ^5"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -4991,13 +4545,13 @@
"BSD-3-Clause"
],
"authors": [
- {
- "name": "Kore Nordmann",
- "email": "mail@kore-nordmann.de"
- },
{
"name": "Sebastian Bergmann",
"email": "sebastian@phpunit.de"
+ },
+ {
+ "name": "Kore Nordmann",
+ "email": "mail@kore-nordmann.de"
}
],
"description": "Diff implementation",
@@ -5010,29 +4564,35 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/diff/issues",
- "source": "https://github.com/sebastianbergmann/diff/tree/master"
+ "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4"
},
- "time": "2019-02-04T06:01:07+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T13:10:38+00:00"
},
{
"name": "sebastian/environment",
- "version": "4.2.3",
+ "version": "5.1.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368"
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/464c90d7bdf5ad4e8a6aea15c091fec0603d4368",
- "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac",
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^7.5"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-posix": "*"
@@ -5040,7 +4600,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.2-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -5067,36 +4627,42 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/environment/issues",
- "source": "https://github.com/sebastianbergmann/environment/tree/4.2.3"
+ "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3"
},
- "time": "2019-11-20T08:46:58+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:52:38+00:00"
},
{
"name": "sebastian/exporter",
- "version": "3.1.2",
+ "version": "4.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e"
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/68609e1261d215ea5b21b7987539cbfbe156ec3e",
- "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65",
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65",
"shasum": ""
},
"require": {
- "php": "^7.0",
- "sebastian/recursion-context": "^3.0"
+ "php": ">=7.3",
+ "sebastian/recursion-context": "^4.0"
},
"require-dev": {
"ext-mbstring": "*",
- "phpunit/phpunit": "^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1.x-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -5138,32 +4704,38 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/exporter/issues",
- "source": "https://github.com/sebastianbergmann/exporter/tree/master"
+ "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.3"
},
- "time": "2019-09-14T09:02:43+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T05:24:23+00:00"
},
{
"name": "sebastian/global-state",
- "version": "3.0.0",
+ "version": "5.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4"
+ "reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4",
- "reference": "edf8a461cf1d4005f19fb0b6b8b95a9f7fa0adc4",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/23bd5951f7ff26f12d4e3242864df3e08dec4e49",
+ "reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49",
"shasum": ""
},
"require": {
- "php": "^7.2",
- "sebastian/object-reflector": "^1.1.1",
- "sebastian/recursion-context": "^3.0"
+ "php": ">=7.3",
+ "sebastian/object-reflector": "^2.0",
+ "sebastian/recursion-context": "^4.0"
},
"require-dev": {
"ext-dom": "*",
- "phpunit/phpunit": "^8.0"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-uopz": "*"
@@ -5171,7 +4743,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "5.0-dev"
}
},
"autoload": {
@@ -5196,36 +4768,99 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/global-state/issues",
- "source": "https://github.com/sebastianbergmann/global-state/tree/master"
+ "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.3"
+ },
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2021-06-11T13:31:12+00:00"
+ },
+ {
+ "name": "sebastian/lines-of-code",
+ "version": "1.0.3",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/lines-of-code.git",
+ "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc",
+ "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc",
+ "shasum": ""
+ },
+ "require": {
+ "nikic/php-parser": "^4.6",
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-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": "Library for counting the lines of code in PHP source code",
+ "homepage": "https://github.com/sebastianbergmann/lines-of-code",
+ "support": {
+ "issues": "https://github.com/sebastianbergmann/lines-of-code/issues",
+ "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3"
},
- "time": "2019-02-01T05:30:01+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-11-28T06:42:11+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "3.0.3",
+ "version": "4.0.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5"
+ "reference": "5c9eeac41b290a3712d88851518825ad78f45c71"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5",
- "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71",
+ "reference": "5c9eeac41b290a3712d88851518825ad78f45c71",
"shasum": ""
},
"require": {
- "php": "^7.0",
- "sebastian/object-reflector": "^1.1.1",
- "sebastian/recursion-context": "^3.0"
+ "php": ">=7.3",
+ "sebastian/object-reflector": "^2.0",
+ "sebastian/recursion-context": "^4.0"
},
"require-dev": {
- "phpunit/phpunit": "^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0.x-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -5247,34 +4882,40 @@
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
"support": {
"issues": "https://github.com/sebastianbergmann/object-enumerator/issues",
- "source": "https://github.com/sebastianbergmann/object-enumerator/tree/master"
+ "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4"
},
- "time": "2017-08-03T12:35:26+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T13:12:34+00:00"
},
{
"name": "sebastian/object-reflector",
- "version": "1.1.1",
+ "version": "2.0.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-reflector.git",
- "reference": "773f97c67f28de00d397be301821b06708fca0be"
+ "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be",
- "reference": "773f97c67f28de00d397be301821b06708fca0be",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
+ "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1-dev"
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -5296,34 +4937,40 @@
"homepage": "https://github.com/sebastianbergmann/object-reflector/",
"support": {
"issues": "https://github.com/sebastianbergmann/object-reflector/issues",
- "source": "https://github.com/sebastianbergmann/object-reflector/tree/master"
+ "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4"
},
- "time": "2017-03-29T09:07:27+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T13:14:26+00:00"
},
{
"name": "sebastian/recursion-context",
- "version": "3.0.0",
+ "version": "4.0.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8"
+ "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
- "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172",
+ "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172",
"shasum": ""
},
"require": {
- "php": "^7.0"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^6.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0.x-dev"
+ "dev-master": "4.0-dev"
}
},
"autoload": {
@@ -5336,14 +4983,14 @@
"BSD-3-Clause"
],
"authors": [
- {
- "name": "Jeff Welch",
- "email": "whatthejeff@gmail.com"
- },
{
"name": "Sebastian Bergmann",
"email": "sebastian@phpunit.de"
},
+ {
+ "name": "Jeff Welch",
+ "email": "whatthejeff@gmail.com"
+ },
{
"name": "Adam Harvey",
"email": "aharvey@php.net"
@@ -5353,31 +5000,40 @@
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
"support": {
"issues": "https://github.com/sebastianbergmann/recursion-context/issues",
- "source": "https://github.com/sebastianbergmann/recursion-context/tree/master"
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4"
},
- "time": "2017-03-03T06:23:57+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-10-26T13:17:30+00:00"
},
{
"name": "sebastian/resource-operations",
- "version": "2.0.1",
+ "version": "3.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9"
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
- "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -5399,34 +5055,40 @@
"homepage": "https://www.github.com/sebastianbergmann/resource-operations",
"support": {
"issues": "https://github.com/sebastianbergmann/resource-operations/issues",
- "source": "https://github.com/sebastianbergmann/resource-operations/tree/master"
+ "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3"
},
- "time": "2018-10-04T04:07:39+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:45:17+00:00"
},
{
"name": "sebastian/type",
- "version": "1.1.3",
+ "version": "2.3.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
- "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3"
+ "reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/3aaaa15fa71d27650d62a948be022fe3b48541a3",
- "reference": "3aaaa15fa71d27650d62a948be022fe3b48541a3",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b8cd8a1c753c90bc1a0f5372170e3e489136f914",
+ "reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914",
"shasum": ""
},
"require": {
- "php": "^7.2"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^8.2"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1-dev"
+ "dev-master": "2.3-dev"
}
},
"autoload": {
@@ -5449,31 +5111,37 @@
"homepage": "https://github.com/sebastianbergmann/type",
"support": {
"issues": "https://github.com/sebastianbergmann/type/issues",
- "source": "https://github.com/sebastianbergmann/type/tree/master"
+ "source": "https://github.com/sebastianbergmann/type/tree/2.3.4"
},
- "time": "2019-07-02T08:10:15+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2021-06-15T12:49:02+00:00"
},
{
"name": "sebastian/version",
- "version": "2.0.1",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
+ "reference": "c6c1022351a901512170118436c764e473f6de8c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
- "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
+ "reference": "c6c1022351a901512170118436c764e473f6de8c",
"shasum": ""
},
"require": {
- "php": ">=5.6"
+ "php": ">=7.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "3.0-dev"
}
},
"autoload": {
@@ -5496,22 +5164,28 @@
"homepage": "https://github.com/sebastianbergmann/version",
"support": {
"issues": "https://github.com/sebastianbergmann/version/issues",
- "source": "https://github.com/sebastianbergmann/version/tree/master"
+ "source": "https://github.com/sebastianbergmann/version/tree/3.0.2"
},
- "time": "2016-10-03T07:35:21+00:00"
+ "funding": [
+ {
+ "url": "https://github.com/sebastianbergmann",
+ "type": "github"
+ }
+ ],
+ "time": "2020-09-28T06:39:44+00:00"
},
{
"name": "seld/jsonlint",
- "version": "1.8.2",
+ "version": "1.8.3",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/jsonlint.git",
- "reference": "590cfec960b77fd55e39b7d9246659e95dd6d337"
+ "reference": "9ad6ce79c342fbd44df10ea95511a1b24dee5b57"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/590cfec960b77fd55e39b7d9246659e95dd6d337",
- "reference": "590cfec960b77fd55e39b7d9246659e95dd6d337",
+ "url": "https://api.github.com/repos/Seldaek/jsonlint/zipball/9ad6ce79c342fbd44df10ea95511a1b24dee5b57",
+ "reference": "9ad6ce79c342fbd44df10ea95511a1b24dee5b57",
"shasum": ""
},
"require": {
@@ -5549,7 +5223,7 @@
],
"support": {
"issues": "https://github.com/Seldaek/jsonlint/issues",
- "source": "https://github.com/Seldaek/jsonlint/tree/master"
+ "source": "https://github.com/Seldaek/jsonlint/tree/1.8.3"
},
"funding": [
{
@@ -5561,20 +5235,20 @@
"type": "tidelift"
}
],
- "time": "2020-08-25T06:56:57+00:00"
+ "time": "2020-11-11T09:19:24+00:00"
},
{
"name": "squizlabs/php_codesniffer",
- "version": "3.5.8",
+ "version": "3.6.0",
"source": {
"type": "git",
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
- "reference": "9d583721a7157ee997f235f327de038e7ea6dac4"
+ "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/9d583721a7157ee997f235f327de038e7ea6dac4",
- "reference": "9d583721a7157ee997f235f327de038e7ea6dac4",
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
+ "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
"shasum": ""
},
"require": {
@@ -5617,25 +5291,26 @@
"source": "https://github.com/squizlabs/PHP_CodeSniffer",
"wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki"
},
- "time": "2020-10-23T02:01:07+00:00"
+ "time": "2021-04-09T00:54:41+00:00"
},
{
"name": "symfony/browser-kit",
- "version": "v5.1.8",
+ "version": "v5.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
- "reference": "65b7d208280f2700f43ba44a8059a25d7b01347b"
+ "reference": "c1e3f64fcc631c96e2c5843b666db66679ced11c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/65b7d208280f2700f43ba44a8059a25d7b01347b",
- "reference": "65b7d208280f2700f43ba44a8059a25d7b01347b",
+ "url": "https://api.github.com/repos/symfony/browser-kit/zipball/c1e3f64fcc631c96e2c5843b666db66679ced11c",
+ "reference": "c1e3f64fcc631c96e2c5843b666db66679ced11c",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/dom-crawler": "^4.4|^5.0"
+ "symfony/dom-crawler": "^4.4|^5.0",
+ "symfony/polyfill-php80": "^1.16"
},
"require-dev": {
"symfony/css-selector": "^4.4|^5.0",
@@ -5669,10 +5344,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony BrowserKit Component",
+ "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/browser-kit/tree/v5.1.8"
+ "source": "https://github.com/symfony/browser-kit/tree/v5.3.4"
},
"funding": [
{
@@ -5688,40 +5363,41 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T12:01:57+00:00"
+ "time": "2021-07-21T12:40:44+00:00"
},
{
"name": "symfony/console",
- "version": "v4.4.16",
+ "version": "v4.4.30",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "20f73dd143a5815d475e0838ff867bce1eebd9d5"
+ "reference": "a3f7189a0665ee33b50e9e228c46f50f5acbed22"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/20f73dd143a5815d475e0838ff867bce1eebd9d5",
- "reference": "20f73dd143a5815d475e0838ff867bce1eebd9d5",
+ "url": "https://api.github.com/repos/symfony/console/zipball/a3f7189a0665ee33b50e9e228c46f50f5acbed22",
+ "reference": "a3f7189a0665ee33b50e9e228c46f50f5acbed22",
"shasum": ""
},
"require": {
"php": ">=7.1.3",
"symfony/polyfill-mbstring": "~1.0",
"symfony/polyfill-php73": "^1.8",
- "symfony/polyfill-php80": "^1.15",
+ "symfony/polyfill-php80": "^1.16",
"symfony/service-contracts": "^1.1|^2"
},
"conflict": {
+ "psr/log": ">=3",
"symfony/dependency-injection": "<3.4",
"symfony/event-dispatcher": "<4.3|>=5",
"symfony/lock": "<4.4",
"symfony/process": "<3.3"
},
"provide": {
- "psr/log-implementation": "1.0"
+ "psr/log-implementation": "1.0|2.0"
},
"require-dev": {
- "psr/log": "~1.0",
+ "psr/log": "^1|^2",
"symfony/config": "^3.4|^4.0|^5.0",
"symfony/dependency-injection": "^3.4|^4.0|^5.0",
"symfony/event-dispatcher": "^4.3",
@@ -5758,10 +5434,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony Console Component",
+ "description": "Eases the creation of beautiful and testable command line interfaces",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/console/tree/v4.4.16"
+ "source": "https://github.com/symfony/console/tree/v4.4.30"
},
"funding": [
{
@@ -5777,24 +5453,25 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T11:50:19+00:00"
+ "time": "2021-08-25T19:27:26+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v5.1.8",
+ "version": "v5.3.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "6cbebda22ffc0d4bb8fea0c1311c2ca54c4c8fa0"
+ "reference": "7fb120adc7f600a59027775b224c13a33530dd90"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/6cbebda22ffc0d4bb8fea0c1311c2ca54c4c8fa0",
- "reference": "6cbebda22ffc0d4bb8fea0c1311c2ca54c4c8fa0",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/7fb120adc7f600a59027775b224c13a33530dd90",
+ "reference": "7fb120adc7f600a59027775b224c13a33530dd90",
"shasum": ""
},
"require": {
- "php": ">=7.2.5"
+ "php": ">=7.2.5",
+ "symfony/polyfill-php80": "^1.16"
},
"type": "library",
"autoload": {
@@ -5823,10 +5500,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony CssSelector Component",
+ "description": "Converts CSS selectors to XPath expressions",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/css-selector/tree/v5.1.8"
+ "source": "https://github.com/symfony/css-selector/tree/v5.3.4"
},
"funding": [
{
@@ -5842,20 +5519,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T12:01:57+00:00"
+ "time": "2021-07-21T12:38:00+00:00"
},
{
"name": "symfony/deprecation-contracts",
- "version": "v2.2.0",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665"
+ "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665",
- "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627",
+ "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627",
"shasum": ""
},
"require": {
@@ -5864,7 +5541,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.2-dev"
+ "dev-main": "2.4-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -5893,7 +5570,7 @@
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/master"
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0"
},
"funding": [
{
@@ -5909,27 +5586,28 @@
"type": "tidelift"
}
],
- "time": "2020-09-07T11:33:47+00:00"
+ "time": "2021-03-23T23:28:01+00:00"
},
{
"name": "symfony/dom-crawler",
- "version": "v5.1.8",
+ "version": "v5.3.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/dom-crawler.git",
- "reference": "0969122fe144dd8ab2e8c98c7e03eedc621b368c"
+ "reference": "c7eef3a60ccfdd8eafe07f81652e769ac9c7146c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/0969122fe144dd8ab2e8c98c7e03eedc621b368c",
- "reference": "0969122fe144dd8ab2e8c98c7e03eedc621b368c",
+ "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/c7eef3a60ccfdd8eafe07f81652e769ac9c7146c",
+ "reference": "c7eef3a60ccfdd8eafe07f81652e769ac9c7146c",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
+ "symfony/deprecation-contracts": "^2.1",
"symfony/polyfill-ctype": "~1.8",
"symfony/polyfill-mbstring": "~1.0",
- "symfony/polyfill-php80": "^1.15"
+ "symfony/polyfill-php80": "^1.16"
},
"conflict": {
"masterminds/html5": "<2.6"
@@ -5964,10 +5642,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony DomCrawler Component",
+ "description": "Eases DOM navigation for HTML and XML documents",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dom-crawler/tree/v5.1.8"
+ "source": "https://github.com/symfony/dom-crawler/tree/v5.3.7"
},
"funding": [
{
@@ -5983,25 +5661,26 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T12:01:57+00:00"
+ "time": "2021-08-29T19:32:13+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v4.4.16",
+ "version": "v4.4.30",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "4204f13d2d0b7ad09454f221bb2195fccdf1fe98"
+ "reference": "2fe81680070043c4c80e7cedceb797e34f377bac"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/4204f13d2d0b7ad09454f221bb2195fccdf1fe98",
- "reference": "4204f13d2d0b7ad09454f221bb2195fccdf1fe98",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/2fe81680070043c4c80e7cedceb797e34f377bac",
+ "reference": "2fe81680070043c4c80e7cedceb797e34f377bac",
"shasum": ""
},
"require": {
"php": ">=7.1.3",
- "symfony/event-dispatcher-contracts": "^1.1"
+ "symfony/event-dispatcher-contracts": "^1.1",
+ "symfony/polyfill-php80": "^1.16"
},
"conflict": {
"symfony/dependency-injection": "<3.4"
@@ -6011,7 +5690,7 @@
"symfony/event-dispatcher-implementation": "1.1"
},
"require-dev": {
- "psr/log": "~1.0",
+ "psr/log": "^1|^2|^3",
"symfony/config": "^3.4|^4.0|^5.0",
"symfony/dependency-injection": "^3.4|^4.0|^5.0",
"symfony/error-handler": "~3.4|~4.4",
@@ -6047,10 +5726,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony EventDispatcher Component",
+ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/event-dispatcher/tree/v4.4.16"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v4.4.30"
},
"funding": [
{
@@ -6066,7 +5745,7 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T11:50:19+00:00"
+ "time": "2021-08-04T20:31:23+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@@ -6149,21 +5828,22 @@
},
{
"name": "symfony/filesystem",
- "version": "v4.4.16",
+ "version": "v4.4.27",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "e74b873395b7213d44d1397bd4a605cd1632a68a"
+ "reference": "517fb795794faf29086a77d99eb8f35e457837a7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/e74b873395b7213d44d1397bd4a605cd1632a68a",
- "reference": "e74b873395b7213d44d1397bd4a605cd1632a68a",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/517fb795794faf29086a77d99eb8f35e457837a7",
+ "reference": "517fb795794faf29086a77d99eb8f35e457837a7",
"shasum": ""
},
"require": {
"php": ">=7.1.3",
- "symfony/polyfill-ctype": "~1.8"
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-php80": "^1.16"
},
"type": "library",
"autoload": {
@@ -6188,10 +5868,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony Filesystem Component",
+ "description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v4.4.16"
+ "source": "https://github.com/symfony/filesystem/tree/v4.4.27"
},
"funding": [
{
@@ -6207,24 +5887,25 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T11:50:19+00:00"
+ "time": "2021-07-21T12:19:41+00:00"
},
{
"name": "symfony/finder",
- "version": "v4.4.16",
+ "version": "v4.4.30",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "26f63b8d4e92f2eecd90f6791a563ebb001abe31"
+ "reference": "70362f1e112280d75b30087c7598b837c1b468b6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/26f63b8d4e92f2eecd90f6791a563ebb001abe31",
- "reference": "26f63b8d4e92f2eecd90f6791a563ebb001abe31",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/70362f1e112280d75b30087c7598b837c1b468b6",
+ "reference": "70362f1e112280d75b30087c7598b837c1b468b6",
"shasum": ""
},
"require": {
- "php": ">=7.1.3"
+ "php": ">=7.1.3",
+ "symfony/polyfill-php80": "^1.16"
},
"type": "library",
"autoload": {
@@ -6249,10 +5930,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony Finder Component",
+ "description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v4.4.16"
+ "source": "https://github.com/symfony/finder/tree/v4.4.30"
},
"funding": [
{
@@ -6268,20 +5949,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T11:50:19+00:00"
+ "time": "2021-08-04T20:31:23+00:00"
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.20.0",
+ "version": "v1.23.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "f4ba089a5b6366e453971d3aad5fe8e897b37f41"
+ "reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/f4ba089a5b6366e453971d3aad5fe8e897b37f41",
- "reference": "f4ba089a5b6366e453971d3aad5fe8e897b37f41",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/46cd95797e9df938fdd2b03693b5fca5e64b01ce",
+ "reference": "46cd95797e9df938fdd2b03693b5fca5e64b01ce",
"shasum": ""
},
"require": {
@@ -6293,7 +5974,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.20-dev"
+ "dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -6331,7 +6012,7 @@
"portable"
],
"support": {
- "source": "https://github.com/symfony/polyfill-ctype/tree/v1.20.0"
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.23.0"
},
"funding": [
{
@@ -6347,20 +6028,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-23T14:02:19+00:00"
+ "time": "2021-02-19T12:13:01+00:00"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.20.0",
+ "version": "v1.23.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "39d483bdf39be819deabf04ec872eb0b2410b531"
+ "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/39d483bdf39be819deabf04ec872eb0b2410b531",
- "reference": "39d483bdf39be819deabf04ec872eb0b2410b531",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9174a3d80210dca8daa7f31fec659150bbeabfc6",
+ "reference": "9174a3d80210dca8daa7f31fec659150bbeabfc6",
"shasum": ""
},
"require": {
@@ -6372,7 +6053,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.20-dev"
+ "dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -6411,83 +6092,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.20.0"
- },
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2020-10-23T14:02:19+00:00"
- },
- {
- "name": "symfony/polyfill-php72",
- "version": "v1.20.0",
- "source": {
- "type": "git",
- "url": "https://github.com/symfony/polyfill-php72.git",
- "reference": "cede45fcdfabdd6043b3592e83678e42ec69e930"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/cede45fcdfabdd6043b3592e83678e42ec69e930",
- "reference": "cede45fcdfabdd6043b3592e83678e42ec69e930",
- "shasum": ""
- },
- "require": {
- "php": ">=7.1"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-main": "1.20-dev"
- },
- "thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
- }
- },
- "autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Php72\\": ""
- },
- "files": [
- "bootstrap.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Nicolas Grekas",
- "email": "p@tchwork.com"
- },
- {
- "name": "Symfony Community",
- "homepage": "https://symfony.com/contributors"
- }
- ],
- "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions",
- "homepage": "https://symfony.com",
- "keywords": [
- "compatibility",
- "polyfill",
- "portable",
- "shim"
- ],
- "support": {
- "source": "https://github.com/symfony/polyfill-php72/tree/v1.20.0"
+ "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.23.1"
},
"funding": [
{
@@ -6503,20 +6108,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-23T14:02:19+00:00"
+ "time": "2021-05-27T12:26:48+00:00"
},
{
"name": "symfony/polyfill-php73",
- "version": "v1.20.0",
+ "version": "v1.23.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php73.git",
- "reference": "8ff431c517be11c78c48a39a66d37431e26a6bed"
+ "reference": "fba8933c384d6476ab14fb7b8526e5287ca7e010"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/8ff431c517be11c78c48a39a66d37431e26a6bed",
- "reference": "8ff431c517be11c78c48a39a66d37431e26a6bed",
+ "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fba8933c384d6476ab14fb7b8526e5287ca7e010",
+ "reference": "fba8933c384d6476ab14fb7b8526e5287ca7e010",
"shasum": ""
},
"require": {
@@ -6525,7 +6130,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.20-dev"
+ "dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -6566,7 +6171,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php73/tree/v1.20.0"
+ "source": "https://github.com/symfony/polyfill-php73/tree/v1.23.0"
},
"funding": [
{
@@ -6582,20 +6187,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-23T14:02:19+00:00"
+ "time": "2021-02-19T12:13:01+00:00"
},
{
"name": "symfony/polyfill-php80",
- "version": "v1.20.0",
+ "version": "v1.23.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "e70aa8b064c5b72d3df2abd5ab1e90464ad009de"
+ "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/e70aa8b064c5b72d3df2abd5ab1e90464ad009de",
- "reference": "e70aa8b064c5b72d3df2abd5ab1e90464ad009de",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/1100343ed1a92e3a38f9ae122fc0eb21602547be",
+ "reference": "1100343ed1a92e3a38f9ae122fc0eb21602547be",
"shasum": ""
},
"require": {
@@ -6604,7 +6209,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.20-dev"
+ "dev-main": "1.23-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -6649,7 +6254,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.20.0"
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.1"
},
"funding": [
{
@@ -6665,24 +6270,25 @@
"type": "tidelift"
}
],
- "time": "2020-10-23T14:02:19+00:00"
+ "time": "2021-07-28T13:41:28+00:00"
},
{
"name": "symfony/process",
- "version": "v4.4.16",
+ "version": "v5.3.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "2f4b049fb80ca5e9874615a2a85dc2a502090f05"
+ "reference": "38f26c7d6ed535217ea393e05634cb0b244a1967"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/2f4b049fb80ca5e9874615a2a85dc2a502090f05",
- "reference": "2f4b049fb80ca5e9874615a2a85dc2a502090f05",
+ "url": "https://api.github.com/repos/symfony/process/zipball/38f26c7d6ed535217ea393e05634cb0b244a1967",
+ "reference": "38f26c7d6ed535217ea393e05634cb0b244a1967",
"shasum": ""
},
"require": {
- "php": ">=7.1.3"
+ "php": ">=7.2.5",
+ "symfony/polyfill-php80": "^1.16"
},
"type": "library",
"autoload": {
@@ -6707,10 +6313,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony Process Component",
+ "description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v4.4.16"
+ "source": "https://github.com/symfony/process/tree/v5.3.7"
},
"funding": [
{
@@ -6726,37 +6332,33 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T11:50:19+00:00"
+ "time": "2021-08-04T21:20:46+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v2.2.0",
+ "version": "v1.1.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1"
+ "reference": "191afdcb5804db960d26d8566b7e9a2843cab3a0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1",
- "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/191afdcb5804db960d26d8566b7e9a2843cab3a0",
+ "reference": "191afdcb5804db960d26d8566b7e9a2843cab3a0",
"shasum": ""
},
"require": {
- "php": ">=7.2.5",
- "psr/container": "^1.0"
+ "php": "^7.1.3"
},
"suggest": {
+ "psr/container": "",
"symfony/service-implementation": ""
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.2-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
+ "dev-master": "1.1-dev"
}
},
"autoload": {
@@ -6789,53 +6391,38 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/master"
+ "source": "https://github.com/symfony/service-contracts/tree/v1.1.2"
},
- "funding": [
- {
- "url": "https://symfony.com/sponsor",
- "type": "custom"
- },
- {
- "url": "https://github.com/fabpot",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
- "type": "tidelift"
- }
- ],
- "time": "2020-09-07T11:33:47+00:00"
+ "time": "2019-05-28T07:50:59+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v4.4.16",
+ "version": "v5.3.8",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "3718e18b68d955348ad860e505991802c09f5f73"
+ "reference": "eaaea4098be1c90c8285543e1356a09c8aa5c8da"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/3718e18b68d955348ad860e505991802c09f5f73",
- "reference": "3718e18b68d955348ad860e505991802c09f5f73",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/eaaea4098be1c90c8285543e1356a09c8aa5c8da",
+ "reference": "eaaea4098be1c90c8285543e1356a09c8aa5c8da",
"shasum": ""
},
"require": {
- "php": ">=7.1.3",
+ "php": ">=7.2.5",
"symfony/polyfill-mbstring": "~1.0",
- "symfony/polyfill-php72": "~1.5",
- "symfony/polyfill-php80": "^1.15"
+ "symfony/polyfill-php80": "^1.16"
},
"conflict": {
- "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0",
- "symfony/console": "<3.4"
+ "phpunit/phpunit": "<5.4.3",
+ "symfony/console": "<4.4"
},
"require-dev": {
"ext-iconv": "*",
- "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/console": "^4.4|^5.0",
"symfony/process": "^4.4|^5.0",
- "twig/twig": "^1.34|^2.4|^3.0"
+ "twig/twig": "^2.13|^3.0.4"
},
"suggest": {
"ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).",
@@ -6871,14 +6458,14 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony mechanism for exploring and dumping PHP variables",
+ "description": "Provides mechanisms for walking through any arbitrary PHP variable",
"homepage": "https://symfony.com",
"keywords": [
"debug",
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v4.4.16"
+ "source": "https://github.com/symfony/var-dumper/tree/v5.3.8"
},
"funding": [
{
@@ -6894,20 +6481,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-26T20:47:51+00:00"
+ "time": "2021-09-24T15:59:58+00:00"
},
{
"name": "symfony/yaml",
- "version": "v5.1.8",
+ "version": "v5.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "f284e032c3cefefb9943792132251b79a6127ca6"
+ "reference": "4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/f284e032c3cefefb9943792132251b79a6127ca6",
- "reference": "f284e032c3cefefb9943792132251b79a6127ca6",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7",
+ "reference": "4500fe63dc9c6ffc32d3b1cb0448c329f9c814b7",
"shasum": ""
},
"require": {
@@ -6950,10 +6537,10 @@
"homepage": "https://symfony.com/contributors"
}
],
- "description": "Symfony Yaml Component",
+ "description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/yaml/tree/v5.1.8"
+ "source": "https://github.com/symfony/yaml/tree/v5.3.6"
},
"funding": [
{
@@ -6969,20 +6556,20 @@
"type": "tidelift"
}
],
- "time": "2020-10-24T12:03:25+00:00"
+ "time": "2021-07-29T06:20:01+00:00"
},
{
"name": "theseer/tokenizer",
- "version": "1.2.0",
+ "version": "1.2.1",
"source": {
"type": "git",
"url": "https://github.com/theseer/tokenizer.git",
- "reference": "75a63c33a8577608444246075ea0af0d052e452a"
+ "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a",
- "reference": "75a63c33a8577608444246075ea0af0d052e452a",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e",
+ "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e",
"shasum": ""
},
"require": {
@@ -7011,7 +6598,7 @@
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
"support": {
"issues": "https://github.com/theseer/tokenizer/issues",
- "source": "https://github.com/theseer/tokenizer/tree/master"
+ "source": "https://github.com/theseer/tokenizer/tree/1.2.1"
},
"funding": [
{
@@ -7019,7 +6606,7 @@
"type": "github"
}
],
- "time": "2020-07-12T23:59:07+00:00"
+ "time": "2021-07-28T10:34:58+00:00"
},
{
"name": "ulrichsg/getopt-php",
@@ -7073,25 +6660,26 @@
},
{
"name": "vimeo/psalm",
- "version": "4.6.0",
+ "version": "4.10.0",
"source": {
"type": "git",
"url": "https://github.com/vimeo/psalm.git",
- "reference": "8929bde5354595dc61947b7e27cfe59db45e3bb0"
+ "reference": "916b098b008f6de4543892b1e0651c1c3b92cbfa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vimeo/psalm/zipball/8929bde5354595dc61947b7e27cfe59db45e3bb0",
- "reference": "8929bde5354595dc61947b7e27cfe59db45e3bb0",
+ "url": "https://api.github.com/repos/vimeo/psalm/zipball/916b098b008f6de4543892b1e0651c1c3b92cbfa",
+ "reference": "916b098b008f6de4543892b1e0651c1c3b92cbfa",
"shasum": ""
},
"require": {
- "amphp/amp": "^2.1",
+ "amphp/amp": "^2.4.2",
"amphp/byte-stream": "^1.5",
"composer/package-versions-deprecated": "^1.8.0",
"composer/semver": "^1.4 || ^2.0 || ^3.0",
- "composer/xdebug-handler": "^1.1",
+ "composer/xdebug-handler": "^1.1 || ^2.0",
"dnoegel/php-xdg-base-dir": "^0.1.1",
+ "ext-ctype": "*",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
@@ -7099,9 +6687,9 @@
"ext-simplexml": "*",
"ext-tokenizer": "*",
"felixfbecker/advanced-json-rpc": "^3.0.3",
- "felixfbecker/language-server-protocol": "^1.4",
- "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0",
- "nikic/php-parser": "^4.10.1",
+ "felixfbecker/language-server-protocol": "^1.5",
+ "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0",
+ "nikic/php-parser": "^4.12",
"openlss/lib-array2xml": "^1.0",
"php": "^7.1|^8",
"sebastian/diff": "^3.0 || ^4.0",
@@ -7112,7 +6700,6 @@
"psalm/psalm": "self.version"
},
"require-dev": {
- "amphp/amp": "^2.4.2",
"bamarni/composer-bin-plugin": "^1.2",
"brianium/paratest": "^4.0||^6.0",
"ext-curl": "*",
@@ -7121,10 +6708,10 @@
"phpmyadmin/sql-parser": "5.1.0||dev-master",
"phpspec/prophecy": ">=1.9.0",
"phpunit/phpunit": "^9.0",
- "psalm/plugin-phpunit": "^0.13",
- "slevomat/coding-standard": "^6.3.11",
+ "psalm/plugin-phpunit": "^0.16",
+ "slevomat/coding-standard": "^7.0",
"squizlabs/php_codesniffer": "^3.5",
- "symfony/process": "^4.3",
+ "symfony/process": "^4.3 || ^5.0",
"weirdan/prophecy-shim": "^1.0 || ^2.0"
},
"suggest": {
@@ -7172,22 +6759,22 @@
],
"support": {
"issues": "https://github.com/vimeo/psalm/issues",
- "source": "https://github.com/vimeo/psalm/tree/4.6.0"
+ "source": "https://github.com/vimeo/psalm/tree/4.10.0"
},
- "time": "2020-10-29T23:55:10+00:00"
+ "time": "2021-09-04T21:00:09+00:00"
},
{
"name": "vlucas/phpdotenv",
- "version": "v4.1.8",
+ "version": "v4.2.1",
"source": {
"type": "git",
"url": "https://github.com/vlucas/phpdotenv.git",
- "reference": "572af79d913627a9d70374d27a6f5d689a35de32"
+ "reference": "d38f4d1edcbe32515a0ad593cbd4c858e337263c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/572af79d913627a9d70374d27a6f5d689a35de32",
- "reference": "572af79d913627a9d70374d27a6f5d689a35de32",
+ "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/d38f4d1edcbe32515a0ad593cbd4c858e337263c",
+ "reference": "d38f4d1edcbe32515a0ad593cbd4c858e337263c",
"shasum": ""
},
"require": {
@@ -7199,7 +6786,7 @@
"bamarni/composer-bin-plugin": "^1.4.1",
"ext-filter": "*",
"ext-pcre": "*",
- "phpunit/phpunit": "^4.8.35 || ^5.7.27 || ^6.5.6 || ^7.0"
+ "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.21"
},
"suggest": {
"ext-filter": "Required to use the boolean validator.",
@@ -7208,7 +6795,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.1-dev"
+ "dev-master": "4.2-dev"
}
},
"autoload": {
@@ -7223,13 +6810,11 @@
"authors": [
{
"name": "Graham Campbell",
- "email": "graham@alt-three.com",
- "homepage": "https://gjcampbell.co.uk/"
+ "email": "hello@gjcampbell.co.uk"
},
{
"name": "Vance Lucas",
- "email": "vance@vancelucas.com",
- "homepage": "https://vancelucas.com/"
+ "email": "vance@vancelucas.com"
}
],
"description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.",
@@ -7240,7 +6825,7 @@
],
"support": {
"issues": "https://github.com/vlucas/phpdotenv/issues",
- "source": "https://github.com/vlucas/phpdotenv/tree/4.1"
+ "source": "https://github.com/vlucas/phpdotenv/tree/v4.2.1"
},
"funding": [
{
@@ -7252,34 +6837,39 @@
"type": "tidelift"
}
],
- "time": "2020-07-14T19:22:52+00:00"
+ "time": "2021-10-02T19:17:08+00:00"
},
{
"name": "webmozart/assert",
- "version": "1.9.1",
+ "version": "1.10.0",
"source": {
"type": "git",
"url": "https://github.com/webmozarts/assert.git",
- "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389"
+ "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozarts/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389",
- "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389",
+ "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25",
+ "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0 || ^8.0",
+ "php": "^7.2 || ^8.0",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
"phpstan/phpstan": "<0.12.20",
- "vimeo/psalm": "<3.9.1"
+ "vimeo/psalm": "<4.6.1 || 4.6.2"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.36 || ^7.5.13"
+ "phpunit/phpunit": "^8.5.13"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.10-dev"
+ }
+ },
"autoload": {
"psr-4": {
"Webmozart\\Assert\\": "src/"
@@ -7303,9 +6893,9 @@
],
"support": {
"issues": "https://github.com/webmozarts/assert/issues",
- "source": "https://github.com/webmozarts/assert/tree/1.9.1"
+ "source": "https://github.com/webmozarts/assert/tree/1.10.0"
},
- "time": "2020-07-08T17:02:28+00:00"
+ "time": "2021-03-09T10:59:23+00:00"
},
{
"name": "webmozart/path-util",
@@ -7364,11 +6954,11 @@
"prefer-stable": true,
"prefer-lowest": false,
"platform": {
- "php": ">=7.2",
- "ext-phalcon": "^4.0.5"
+ "php": ">=7.3",
+ "ext-phalcon": ">=4.0.5"
},
"platform-dev": {
"ext-pdo": "*"
},
- "plugin-api-version": "2.1.0"
+ "plugin-api-version": "2.2.0"
}
diff --git a/psalm.xml.dist b/psalm.xml.dist
index 617fdd6..3146e56 100644
--- a/psalm.xml.dist
+++ b/psalm.xml.dist
@@ -14,5 +14,7 @@
+
+
diff --git a/src/Console/Commands/CommandsException.php b/src/Console/Commands/CommandsException.php
index 45766c9..73f2dd8 100644
--- a/src/Console/Commands/CommandsException.php
+++ b/src/Console/Commands/CommandsException.php
@@ -13,7 +13,7 @@
namespace Phalcon\Migrations\Console\Commands;
-use Phalcon\Exception;
+use Exception;
/**
* Commands Exception
diff --git a/src/Console/Commands/Migration.php b/src/Console/Commands/Migration.php
index 0bcdf00..bd52fc4 100644
--- a/src/Console/Commands/Migration.php
+++ b/src/Console/Commands/Migration.php
@@ -13,7 +13,7 @@
namespace Phalcon\Migrations\Console\Commands;
-use Phalcon\Config;
+use Phalcon\Config\Config;
use Phalcon\Config\Adapter\Ini as IniConfig;
use Phalcon\Config\Adapter\Json as JsonConfig;
use Phalcon\Config\Adapter\Yaml as YamlConfig;
diff --git a/src/Db/Adapter/Pdo/PdoPostgresql.php b/src/Db/Adapter/Pdo/PdoPostgresql.php
index 7ab5303..f6dac04 100644
--- a/src/Db/Adapter/Pdo/PdoPostgresql.php
+++ b/src/Db/Adapter/Pdo/PdoPostgresql.php
@@ -118,8 +118,8 @@ public function describeIndexes(string $table, string $schema = null): array
foreach ($indexes as $name => $index) {
$indexObjects[$name] = new Index(
$name,
- $index['columns'] ?? [],
- $index['type'] ?? ''
+ $index['columns'],
+ $index['type']
);
}
diff --git a/src/Db/FieldDefinition.php b/src/Db/FieldDefinition.php
new file mode 100644
index 0000000..090aa6e
--- /dev/null
+++ b/src/Db/FieldDefinition.php
@@ -0,0 +1,141 @@
+
+ *
+ * For the full copyright and license information, please view
+ * the LICENSE file that was distributed with this source code.
+ */
+
+declare(strict_types=1);
+
+namespace Phalcon\Migrations\Db;
+
+use Phalcon\Db\ColumnInterface;
+
+class FieldDefinition
+{
+ /**
+ * @var string
+ */
+ private $name;
+
+ /**
+ * @var ColumnInterface
+ */
+ private $currentColumn;
+
+ /**
+ * @var FieldDefinition|null
+ */
+ private $previousField;
+
+ /**
+ * @var FieldDefinition|null
+ */
+ private $nextField;
+
+ public function __construct(
+ ColumnInterface $column,
+ ?FieldDefinition $previousField = null,
+ ?FieldDefinition $nextField = null
+ ) {
+ $this->name = $column->getName();
+ $this->currentColumn = $column;
+ $this->previousField = $previousField;
+ $this->nextField = $nextField;
+ }
+
+ public function setPrevious(?FieldDefinition $field = null): void
+ {
+ $this->previousField = $field;
+ }
+
+ public function setNext(?FieldDefinition $field = null): void
+ {
+ $this->nextField = $field;
+ }
+
+ public function getName(): string
+ {
+ return $this->name;
+ }
+
+ public function getColumn(): ColumnInterface
+ {
+ return $this->currentColumn;
+ }
+
+ public function getPrevious(): ?FieldDefinition
+ {
+ return $this->previousField ?? null;
+ }
+
+ public function getNext(): ?FieldDefinition
+ {
+ return $this->nextField ?? null;
+ }
+
+ /**
+ * @param FieldDefinition[] $externalFieldset Set of another field definitions to compare field between
+ *
+ * @return self|null
+ */
+ public function getPairedDefinition(array $externalFieldset): ?FieldDefinition
+ {
+ if (isset($externalFieldset[$this->getName()])) {
+ return $externalFieldset[$this->getName()];
+ }
+
+ $possiblePairedField = null;
+ if (null !== $this->previousField) {
+ $prevField = $externalFieldset[$this->previousField->getName()] ?? null;
+ if (null !== $prevField) {
+ $possiblePairedField = $prevField->getNext();
+ }
+ }
+ if (null === $possiblePairedField && null !== $this->nextField) {
+ $nextField = $externalFieldset[$this->nextField->getName()] ?? null;
+ if (null !== $nextField) {
+ $possiblePairedField = $nextField->getPrevious();
+ }
+ }
+
+ if (null === $possiblePairedField) {
+ return null;
+ }
+
+ if ($this->isChangedData($possiblePairedField)) {
+ return null;
+ }
+
+ return $possiblePairedField;
+ }
+
+ public function isChanged(FieldDefinition $comparingFieldDefinition): bool
+ {
+ return $this->isChangedName($comparingFieldDefinition) || $this->isChangedData($comparingFieldDefinition);
+ }
+
+ public function isChangedName(FieldDefinition $comparingFieldDefinition): bool
+ {
+ return $this->currentColumn->getName() !== $comparingFieldDefinition->getColumn()->getName();
+ }
+
+ public function isChangedData(FieldDefinition $comparingFieldDefinition): bool
+ {
+ $paramsToCheck = get_class_methods(ColumnInterface::class);
+ unset($paramsToCheck['getName']);
+
+ $comparingFieldColumn = $comparingFieldDefinition->getColumn();
+ foreach ($paramsToCheck as $method) {
+ if ($this->currentColumn->$method() !== $comparingFieldColumn->$method()) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+}
diff --git a/src/Generator/Snippet.php b/src/Generator/Snippet.php
index 66a0d9d..2f42376 100644
--- a/src/Generator/Snippet.php
+++ b/src/Generator/Snippet.php
@@ -13,200 +13,53 @@
namespace Phalcon\Migrations\Generator;
-use Phalcon\Db\ColumnInterface;
-
class Snippet
{
- public function getAttributes(
- $type,
- $visibility,
- ColumnInterface $field,
- $annotate = false,
- $customFieldName = null
- ): string {
- $fieldName = $customFieldName ?: $field->getName();
-
- if ($annotate) {
- $templateAttributes = <<isPrimary() ? PHP_EOL . ' * @Primary' : '',
- $field->isAutoIncrement() ? PHP_EOL . ' * @Identity' : '',
- $field->getName(),
- $type,
- $field->getSize() ? ', length=' . $field->getSize() : '',
- $field->isNotNull() ? 'false' : 'true',
- $visibility,
- $fieldName
- ) . PHP_EOL;
- } else {
- $templateAttributes = <<morphTable('%s', [
-%s
-EOD;
- return sprintf(
- $template,
- $className,
- $className,
- $table,
- $this->getMigrationDefinition('columns', $tableDefinition)
- );
- }
-
- public function getMigrationUp(): string
- {
- return <<morphTable('%s', [\n%s]);";
}
- public function getMigrationBatchInsert($table, $allFields): string
+ public function getColumnTemplate(): string
{
- $template = <<batchInsert('%s', [
+ return "new Column(
+ '%s',
+ [
%s
]
- );
-EOD;
- return sprintf($template, $table, join(",\n ", $allFields));
+ )";
}
- public function getMigrationAfterCreateTable($table, $allFields): string
+ public function getIndexTemplate(): string
{
- $template = <<batchInsert('%s', [
- %s
- ]
- );
- }
-EOD;
- return sprintf($template, $table, join(",\n ", $allFields));
+ return "new Index('%s', [%s], %s)";
}
- public function getMigrationBatchDelete($table): string
+ public function getReferenceTemplate(): string
{
- $template = <<batchDelete('%s');
-EOD;
- return sprintf($template, $table);
- }
-
- public function getMigrationDefinition($name, $definition): string
- {
- $template = << [
- %s
- ],
-
-EOD;
- return sprintf($template, $name, join(",\n ", $definition));
+ return "new Reference(
+ '%s',
+ [
+ %s
+ ]
+ )";
}
- public function getColumnDefinition($field, $fieldDefinition): string
+ public function getOptionTemplate(): string
{
- $template = << [
+ %s,
+ ],\n";
- return sprintf($template, $constraintName, join(",\n ", $referenceDefinition));
+ return sprintf($template, $key, implode(",\n ", $items));
}
}
diff --git a/src/Migration/Action/Generate.php b/src/Migration/Action/Generate.php
index d9504b1..788ae67 100644
--- a/src/Migration/Action/Generate.php
+++ b/src/Migration/Action/Generate.php
@@ -14,13 +14,23 @@
namespace Phalcon\Migrations\Migration\Action;
use Generator;
+use Nette\PhpGenerator\ClassType;
+use Nette\PhpGenerator\PhpFile;
+use Phalcon\Db\Adapter\AbstractAdapter;
use Phalcon\Db\Column;
use Phalcon\Db\ColumnInterface;
+use Phalcon\Db\Enum;
+use Phalcon\Db\Exception;
use Phalcon\Db\Index;
use Phalcon\Db\IndexInterface;
+use Phalcon\Db\Reference;
use Phalcon\Db\ReferenceInterface;
use Phalcon\Migrations\Exception\Db\UnknownColumnTypeException;
+use Phalcon\Migrations\Exception\RuntimeException;
+use Phalcon\Migrations\Generator\Snippet;
use Phalcon\Migrations\Mvc\Model\Migration;
+use Phalcon\Migrations\Version\ItemInterface;
+use Throwable;
/**
* Action class to generate migration file contents
@@ -52,7 +62,7 @@ class Generate
Column::TYPE_BOOLEAN => 'TYPE_BOOLEAN',
Column::TYPE_FLOAT => 'TYPE_FLOAT',
- Column::TYPE_DOUBLE => 'TYPE_FLOAT',
+ Column::TYPE_DOUBLE => 'TYPE_DOUBLE',
Column::TYPE_TINYBLOB => 'TYPE_TINYBLOB',
Column::TYPE_BLOB => 'TYPE_BLOB',
@@ -64,6 +74,20 @@ class Generate
Column::TYPE_ENUM => 'TYPE_ENUM',
];
+ /**
+ * @var array
+ */
+ protected $supportedColumnTypesPgsql = [
+ Column::TYPE_DOUBLE => 'TYPE_FLOAT',
+ ];
+
+ /**
+ * @var array
+ */
+ protected $supportedColumnTypesMysql = [
+ Column::TYPE_DOUBLE => 'TYPE_DOUBLE',
+ ];
+
/**
* @var array
*/
@@ -111,6 +135,20 @@ class Generate
Column::TYPE_BIGINTEGER,
];
+ /**
+ * Migration file entity
+ *
+ * @var PhpFile
+ */
+ private $file;
+
+ /**
+ * Migration class entity
+ *
+ * @var ClassType
+ */
+ private $class;
+
/**
* SQL Adapter Name
*
@@ -189,6 +227,185 @@ public function __construct(
$this->options = $options;
}
+ public function getEntity(): PhpFile
+ {
+ $this->checkEntityExists();
+
+ return $this->file;
+ }
+
+ public function createEntity(string $className, bool $recreate = false): self
+ {
+ if (null === $this->class || $recreate) {
+ $this->file = new PhpFile();
+ $this->file->addUse(Column::class)
+ ->addUse(Exception::class)
+ ->addUse(Index::class)
+ ->addUse(Reference::class)
+ ->addUse(Migration::class);
+
+ $this->class = $this->file->addClass($className);
+ $this->class
+ ->setExtends(Migration::class)
+ ->addComment("Class {$className}");
+ }
+
+ return $this;
+ }
+
+ /**
+ * @throws UnknownColumnTypeException
+ */
+ public function addMorph(Snippet $snippet, string $table, bool $skipRefSchema = false, bool $skipAI = true): self
+ {
+ $this->checkEntityExists();
+
+ $columns = [];
+ foreach ($this->getColumns() as $columnName => $columnDefinition) {
+ $definitions = implode(",\n ", $columnDefinition);
+ $columns[] = sprintf($snippet->getColumnTemplate(), $columnName, $definitions);
+ }
+
+ $indexes = [];
+ foreach ($this->getIndexes() as $indexName => $indexDefinition) {
+ [$fields, $indexType] = $indexDefinition;
+ $definitions = implode(", ", $fields);
+ $type = $indexType ? "'$indexType'" : "''";
+ $indexes[] = sprintf($snippet->getIndexTemplate(), $indexName, $definitions, $type);
+ }
+
+ $references = [];
+ foreach ($this->getReferences($skipRefSchema) as $constraintName => $referenceDefinition) {
+ $definitions = implode(",\n ", $referenceDefinition);
+ $references[] = sprintf($snippet->getReferenceTemplate(), $constraintName, $definitions);
+ }
+
+ $options = [];
+ foreach ($this->getOptions($skipAI) as $option) {
+ $options[] = sprintf($snippet->getOptionTemplate(), $option);
+ }
+
+ $body = sprintf(
+ $snippet->getMorphTemplate(),
+ $table,
+ $snippet->definitionToString('columns', $columns)
+ . $snippet->definitionToString('indexes', $indexes)
+ . $snippet->definitionToString('references', $references)
+ . $snippet->definitionToString('options', $options)
+ );
+
+ $this->class->addMethod('morph')
+ ->addComment("Define the table structure\n")
+ ->addComment('@return void')
+ ->addComment('@throws Exception')
+ ->setReturnType('void')
+ ->setBody($body);
+
+ return $this;
+ }
+
+ public function addUp(string $table, $exportData = null, bool $shouldExportDataFromTable = false): self
+ {
+ $this->checkEntityExists();
+
+ $body = "\n";
+ if ($exportData === 'always' || $shouldExportDataFromTable) {
+ $quoteWrappedColumns = "\n";
+ foreach ($this->quoteWrappedColumns as $quoteWrappedColumn) {
+ $quoteWrappedColumns .= " $quoteWrappedColumn,\n";
+ }
+ $body = "\$this->batchInsert('$table', [{$quoteWrappedColumns}]);";
+ }
+
+ $this->class->addMethod('up')
+ ->addComment("Run the migrations\n")
+ ->addComment('@return void')
+ ->setReturnType('void')
+ ->setBody($body);
+
+ return $this;
+ }
+
+ public function addDown(string $table, $exportData = null, bool $shouldExportDataFromTable = false): self
+ {
+ $this->checkEntityExists();
+
+ $body = "\n";
+ if ($exportData === 'always' || $shouldExportDataFromTable) {
+ $body = "\$this->batchDelete('$table');";
+ }
+
+ $this->class->addMethod('down')
+ ->addComment("Reverse the migrations\n")
+ ->addComment('@return void')
+ ->setReturnType('void')
+ ->setBody($body);
+
+ return $this;
+ }
+
+ public function addAfterCreateTable(string $table, $exportData = null): self
+ {
+ $this->checkEntityExists();
+
+ if ($exportData === 'oncreate') {
+ $quoteWrappedColumns = "\n";
+ foreach ($this->quoteWrappedColumns as $quoteWrappedColumn) {
+ $quoteWrappedColumns .= " $quoteWrappedColumn,\n";
+ }
+ $body = "\$this->batchInsert('$table', [{$quoteWrappedColumns}]);";
+
+ $this->class->addMethod('afterCreateTable')
+ ->addComment("This method is called after the table was created\n")
+ ->addComment('@return void')
+ ->setReturnType('void')
+ ->setBody($body);
+ }
+
+ return $this;
+ }
+
+ public function createDumpFiles(
+ string $table,
+ string $migrationPath,
+ AbstractAdapter $connection,
+ ItemInterface $version,
+ $exportData = null,
+ bool $shouldExportDataFromTable = false
+ ): self {
+ $numericColumns = $this->getNumericColumns();
+ if ($exportData === 'always' || $exportData === 'oncreate' || $shouldExportDataFromTable) {
+ $fileHandler = fopen($migrationPath . $version->getVersion() . '/' . $table . '.dat', 'w');
+ $cursor = $connection->query('SELECT * FROM ' . $connection->escapeIdentifier($table));
+ $cursor->setFetchMode(Enum::FETCH_ASSOC);
+ while ($row = $cursor->fetchArray()) {
+ $data = [];
+ foreach ($row as $key => $value) {
+ if (isset($numericColumns[$key])) {
+ if ($value === '' || $value === null) {
+ $data[] = 'NULL';
+ } else {
+ $data[] = $value;
+ }
+ } elseif (is_string($value)) {
+ $data[] = addslashes($value);
+ } else {
+ $data[] = $value ?? 'NULL';
+ }
+
+ unset($value);
+ }
+
+ fputcsv($fileHandler, $data);
+ unset($row, $data);
+ }
+
+ fclose($fileHandler);
+ }
+
+ return $this;
+ }
+
/**
* Prepare table columns
*
@@ -198,12 +415,19 @@ public function __construct(
public function getColumns(): Generator
{
$currentColumnName = null;
+ if ($this->adapter === Migration::DB_ADAPTER_POSTGRESQL) {
+ $supportedColumnTypes = \array_replace($this->supportedColumnTypes, $this->supportedColumnTypesPgsql);
+ } elseif ($this->adapter === Migration::DB_ADAPTER_MYSQL) {
+ $supportedColumnTypes = \array_replace($this->supportedColumnTypes, $this->supportedColumnTypesMysql);
+ } else {
+ $supportedColumnTypes = $this->supportedColumnTypes;
+ }
foreach ($this->columns as $column) {
/** @var ColumnInterface $column */
$columnType = $column->getType();
- if (!isset($this->supportedColumnTypes[$columnType])) {
+ if (!isset($supportedColumnTypes[$columnType])) {
throw new UnknownColumnTypeException($column);
}
@@ -212,7 +436,7 @@ public function getColumns(): Generator
}
$definition = [
- "'type' => Column::" . $this->supportedColumnTypes[$columnType],
+ "'type' => Column::" . $supportedColumnTypes[$columnType],
];
if ($column->hasDefault() && !$column->isAutoIncrement()) {
@@ -283,7 +507,13 @@ public function getIndexes(): Generator
}
if (!empty($definition)) {
- yield $name => [$definition, $index->getType()];
+ $type = null;
+ //Foreign Key, No Type
+ if ('_fk' !== substr($index->getName(), -3)) {
+ $type = $index->getType();
+ }
+
+ yield $name => [$definition, $type];
}
}
}
@@ -426,4 +656,11 @@ protected function getColumnSize(ColumnInterface $column)
return $size;
}
+
+ public function checkEntityExists(): void
+ {
+ if (null === $this->file) {
+ throw new RuntimeException('Migration entity is e,pty. Call Generate::createEntity()');
+ }
+ }
}
diff --git a/src/Migrations.php b/src/Migrations.php
index fd66e5d..86f503b 100644
--- a/src/Migrations.php
+++ b/src/Migrations.php
@@ -15,7 +15,7 @@
use DirectoryIterator;
use Exception;
-use Phalcon\Config;
+use Phalcon\Config\Config;
use Phalcon\Db\Adapter\AdapterInterface;
use Phalcon\Db\Column;
use Phalcon\Db\Exception as DbException;
@@ -27,6 +27,7 @@
use Phalcon\Migrations\Mvc\Model\Migration as ModelMigration;
use Phalcon\Migrations\Mvc\Model\Migration\TableAware\ListTablesDb;
use Phalcon\Migrations\Mvc\Model\Migration\TableAware\ListTablesIterator;
+use Phalcon\Migrations\Utils\Helper;
use Phalcon\Migrations\Version\IncrementalItem;
use Phalcon\Migrations\Version\ItemCollection as VersionCollection;
use Phalcon\Migrations\Version\TimestampedItem;
@@ -66,6 +67,7 @@ public static function isConsole(): bool
*/
public static function generate(array $options)
{
+ $helper = new Helper();
$optionStack = new OptionStack();
$listTables = new ListTablesDb();
$optionStack->setOptions($options);
@@ -75,60 +77,23 @@ public static function generate(array $options)
$optionStack->setDefaultOption('verbose', false);
$optionStack->setDefaultOption('skip-ref-schema', false);
- $migrationsDirs = $optionStack->getOption('migrationsDir');
- if (is_array($migrationsDirs)) {
- if (count($migrationsDirs) > 1) {
- $question = 'Which migrations path would you like to use?' . PHP_EOL;
- foreach ($migrationsDirs as $id => $dir) {
- $question .= " [{$id}] $dir" . PHP_EOL;
- }
-
- fwrite(STDOUT, Color::info($question));
- $handle = fopen('php://stdin', 'r');
- $line = (int)fgets($handle);
- if (!isset($migrationsDirs[$line])) {
- echo "ABORTING!\n";
- return false;
- }
-
- fclose($handle);
- $migrationsDir = $migrationsDirs[$line];
- } else {
- $migrationsDir = $migrationsDirs[0];
- }
- } else {
- $migrationsDir = $migrationsDirs;
- }
-
// Migrations directory
- if ($migrationsDir && !file_exists($migrationsDir)) {
- if (!mkdir($migrationsDir, 0755, true) && !is_dir($migrationsDir)) {
- throw new \RuntimeException(sprintf('Directory "%s" was not created', $migrationsDir));
- }
- }
+ $migrationsDirs = $optionStack->getOption('migrationsDir');
+ $migrationsDir = $helper->getMigrationsDir($migrationsDirs);
$versionItem = $optionStack->getVersionNameGeneratingMigration();
+ $verbose = $optionStack->getOption('verbose');
+ $force = $optionStack->getOption('force');
// Path to migration dir
- $migrationPath = rtrim($migrationsDir, '\\/') . DIRECTORY_SEPARATOR . $versionItem->getVersion();
- if (!file_exists($migrationPath)) {
- if (is_writable(dirname($migrationPath)) && !$optionStack->getOption('verbose')) {
- if (!mkdir($migrationPath) && !is_dir($migrationPath)) {
- throw new \RuntimeException(sprintf('Directory "%s" was not created', $migrationPath));
- }
- } elseif (!is_writable(dirname($migrationPath))) {
- throw new RuntimeException("Unable to write '{$migrationPath}' directory. Permission denied");
- }
- } elseif (!$optionStack->getOption('force')) {
- throw new RuntimeException('Version ' . $versionItem->getVersion() . ' already exists');
- }
+ $migrationPath = $helper->getMigrationsPath($versionItem, $migrationsDir, $verbose, $force);
// Try to connect to the DB
if (!isset($optionStack->getOption('config')->database)) {
throw new RuntimeException('Cannot load database configuration');
}
- ModelMigration::setup($optionStack->getOption('config')->database, $optionStack->getOption('verbose'));
+ ModelMigration::setup($optionStack->getOption('config')->database, $verbose);
ModelMigration::setSkipAutoIncrement((bool)$optionStack->getOption('noAutoIncrement'));
ModelMigration::setMigrationPath($migrationsDir);
@@ -141,17 +106,14 @@ public static function generate(array $options)
$optionStack->getOption('skip-ref-schema')
);
- if (!$optionStack->getOption('verbose')) {
+ if (!$verbose) {
foreach ($migrations as $tableName => $migration) {
if ($tableName === self::MIGRATION_LOG_TABLE) {
continue;
}
$tableFile = $migrationPath . DIRECTORY_SEPARATOR . $tableName . '.php';
- $wasMigrated = file_put_contents(
- $tableFile,
- 'getOption('exportDataFromTables') ?: [],
$optionStack->getOption('skip-ref-schema')
);
- if (!$optionStack->getOption('verbose')) {
+ if (!$verbose) {
$tableFile = $migrationPath . DIRECTORY_SEPARATOR . $table . '.php';
- $wasMigrated = file_put_contents(
- $tableFile,
- 'getVersion() . ' was successfully generated') . PHP_EOL;
- } elseif (!$optionStack->getOption('verbose')) {
+ } elseif (!$verbose) {
print Color::info('Nothing to generate. You should create tables first.') . PHP_EOL;
}
}
@@ -230,7 +189,6 @@ public static function run(array $options)
/** @var IncrementalItem $initialVersion */
$initialVersion = self::getCurrentVersion($optionStack->getOptions());
$completedVersions = self::getCompletedVersions($optionStack->getOptions());
- $migrationsDirs = [];
$versionItems = [];
$migrationsDirList = $optionStack->getOption('migrationsDir');
if (is_array($migrationsDirList)) {
@@ -239,7 +197,6 @@ public static function run(array $options)
if (!file_exists($migrationsDir)) {
throw new RuntimeException('Migrations directory was not found.');
}
- $migrationsDirs[] = $migrationsDir;
foreach (ModelMigration::scanForVersions($migrationsDir) as $items) {
$items->setPath($migrationsDir);
$versionItems[] = $items;
@@ -251,7 +208,6 @@ public static function run(array $options)
throw new RuntimeException('Migrations directory was not found.');
}
- $migrationsDirs[] = $migrationsDir;
foreach (ModelMigration::scanForVersions($migrationsDir) as $items) {
$items->setPath($migrationsDir);
$versionItems[] = $items;
@@ -306,15 +262,14 @@ public static function run(array $options)
if (ModelMigration::DIRECTION_FORWARD === $direction) {
// If we migrate up, we should go from the beginning to run some migrations which may have been missed
$versionItemsTmp = VersionCollection::sortAsc(array_merge($versionItems, [$initialVersion]));
- $initialVersion = $versionItemsTmp[0];
} else {
/*
- * If we migrate downs,
- * we should go from the last migration to revert some migrations which may have been missed
+ * If we migrate downs, we should go from the last migration to revert some migrations which may have
+ * been missed
*/
$versionItemsTmp = VersionCollection::sortDesc(array_merge($versionItems, [$initialVersion]));
- $initialVersion = $versionItemsTmp[0];
}
+ $initialVersion = $versionItemsTmp[0];
// Run migration
$versionsBetween = VersionCollection::between($initialVersion, $finalVersion, $versionItems);
diff --git a/src/Mvc/Model/Migration.php b/src/Mvc/Model/Migration.php
index 50a24fe..f10d08e 100644
--- a/src/Mvc/Model/Migration.php
+++ b/src/Mvc/Model/Migration.php
@@ -15,11 +15,11 @@
use DirectoryIterator;
use Exception;
-use Phalcon\Config;
+use Nette\PhpGenerator\PsrPrinter;
+use Phalcon\Config\Config;
use Phalcon\Db\Adapter\AbstractAdapter;
use Phalcon\Db\Adapter\Pdo\Mysql as PdoMysql;
use Phalcon\Db\ColumnInterface;
-use Phalcon\Db\Enum;
use Phalcon\Db\Exception as DbException;
use Phalcon\Db\IndexInterface;
use Phalcon\Db\ReferenceInterface;
@@ -27,6 +27,7 @@
use Phalcon\Migrations\Db\Adapter\Pdo\PdoPostgresql;
use Phalcon\Migrations\Db\Dialect\DialectMysql;
use Phalcon\Migrations\Db\Dialect\DialectPostgresql;
+use Phalcon\Migrations\Db\FieldDefinition;
use Phalcon\Migrations\Exception\Db\UnknownColumnTypeException;
use Phalcon\Migrations\Exception\RuntimeException;
use Phalcon\Migrations\Generator\Snippet;
@@ -35,7 +36,7 @@
use Phalcon\Migrations\Migrations;
use Phalcon\Migrations\Version\ItemCollection as VersionCollection;
use Phalcon\Migrations\Version\ItemInterface;
-use Phalcon\Text;
+use Phalcon\Support\Helper\Str\Camelize;
use Throwable;
use function get_called_class;
@@ -217,6 +218,7 @@ public static function generate(
array $exportTables = [],
bool $skipRefSchema = false
): string {
+ $printer = new PsrPrinter();
$snippet = new Snippet();
$adapter = strtolower((string)self::$databaseConfig->path('adapter'));
$defaultSchema = self::resolveDbSchema(self::$databaseConfig);
@@ -225,122 +227,27 @@ public static function generate(
$references = self::$connection->describeReferences($table, $defaultSchema);
$tableOptions = self::$connection->tableOptions($table, $defaultSchema);
- $generateAction = new GenerateAction($adapter, $description, $indexes, $references, $tableOptions);
-
- /**
- * Generate Columns
- */
- $tableDefinition = [];
- foreach ($generateAction->getColumns() as $columnName => $columnDefinition) {
- $tableDefinition[] = $snippet->getColumnDefinition($columnName, $columnDefinition);
- }
-
- /**
- * Generate Indexes
- */
- $indexesDefinition = [];
- foreach ($generateAction->getIndexes() as $indexName => $indexDefinition) {
- [$definition, $type] = $indexDefinition;
- $indexesDefinition[] = $snippet->getIndexDefinition($indexName, $definition, $type);
- }
-
- /**
- * Generate References
- */
- $referencesDefinition = [];
- foreach ($generateAction->getReferences($skipRefSchema) as $constraintName => $referenceDefinition) {
- $referencesDefinition[] = $snippet->getReferenceDefinition($constraintName, $referenceDefinition);
- }
-
- /**
- * Generate Options
- */
- $optionsDefinition = $generateAction->getOptions(self::$skipAI);
-
$classVersion = preg_replace('/[^0-9A-Za-z]/', '', (string)$version->getStamp());
- $className = Text::camelize($table) . 'Migration_' . $classVersion;
-
- // morph()
- $classData = $snippet->getMigrationMorph($className, $table, $tableDefinition);
-
- if (count($indexesDefinition) > 0) {
- $classData .= $snippet->getMigrationDefinition('indexes', $indexesDefinition);
- }
-
- if (count($referencesDefinition) > 0) {
- $classData .= $snippet->getMigrationDefinition('references', $referencesDefinition);
- }
-
- if (count($optionsDefinition) > 0) {
- $classData .= $snippet->getMigrationDefinition('options', $optionsDefinition);
- }
-
- $classData .= " ]\n );\n }\n";
-
- // up()
- $classData .= $snippet->getMigrationUp();
-
- if ($exportData === 'always' || self::shouldExportDataFromTable($table, $exportTables)) {
- $classData .= $snippet->getMigrationBatchInsert($table, $generateAction->getQuoteWrappedColumns());
- }
-
- $classData .= "\n }\n";
-
- // down()
- $classData .= $snippet->getMigrationDown();
-
- if ($exportData === 'always' || self::shouldExportDataFromTable($table, $exportTables)) {
- $classData .= $snippet->getMigrationBatchDelete($table);
- }
-
- $classData .= "\n }\n";
-
- // afterCreateTable()
- if ($exportData === 'oncreate') {
- $classData .= $snippet->getMigrationAfterCreateTable($table, $generateAction->getQuoteWrappedColumns());
- }
+ $className = (new Camelize())($table) . 'Migration_' . $classVersion;
+ $shouldExportDataFromTable = self::shouldExportDataFromTable($table, $exportTables);
- // end of class
- $classData .= "\n}\n";
-
- $numericColumns = $generateAction->getNumericColumns();
- // dump data
- if (
- $exportData === 'always' ||
- $exportData === 'oncreate' ||
- self::shouldExportDataFromTable($table, $exportTables)
- ) {
- $fileHandler = fopen(self::$migrationPath . $version->getVersion() . '/' . $table . '.dat', 'w');
- $cursor = self::$connection->query('SELECT * FROM ' . self::$connection->escapeIdentifier($table));
- $cursor->setFetchMode(Enum::FETCH_ASSOC);
- while ($row = $cursor->fetchArray()) {
- $data = [];
- foreach ($row as $key => $value) {
- if (isset($numericColumns[$key])) {
- if ($value === '' || $value === null) {
- $data[] = 'NULL';
- } else {
- $data[] = $value;
- }
- } else {
- if (is_string($value)) {
- $data[] = addslashes($value);
- } else {
- $data[] = $value === null ? 'NULL' : $value;
- }
- }
-
- unset($value);
- }
-
- fputcsv($fileHandler, $data);
- unset($row, $data);
- }
+ $generateAction = new GenerateAction($adapter, $description, $indexes, $references, $tableOptions);
+ $generateAction->createEntity($className)
+ ->addMorph($snippet, $table, $skipRefSchema, self::$skipAI)
+ ->addUp($table, $exportData, $shouldExportDataFromTable)
+ ->addDown($table, $exportData, $shouldExportDataFromTable)
+ ->addAfterCreateTable($table, $exportData)
+ ->createDumpFiles(
+ $table,
+ self::$migrationPath,
+ self::$connection,
+ $version,
+ $exportData,
+ $shouldExportDataFromTable
+ );
- fclose($fileHandler);
- }
- return $classData;
+ return $printer->printFile($generateAction->getEntity());
}
public static function shouldExportDataFromTable(string $table, array $exportTables): bool
@@ -440,7 +347,7 @@ private static function createClass(ItemInterface $version, string $tableName):
return null;
}
- $className = Text::camelize($tableName) . 'Migration_' . $version->getStamp();
+ $className = (new Camelize())($tableName) . 'Migration_' . $version->getStamp();
include_once $fileName;
if (!class_exists($className)) {
@@ -527,6 +434,7 @@ public function morphTable(string $tableName, array $definition): void
}
$fields = [];
+ $previousField = null;
/** @var ColumnInterface $tableColumn */
foreach ($definition['columns'] as $tableColumn) {
/**
@@ -536,28 +444,42 @@ public function morphTable(string $tableName, array $definition): void
throw new DbException('Table must have at least one column');
}
- /** @var ColumnInterface[] $fields */
- $fields[$tableColumn->getName()] = $tableColumn;
+ $field = new FieldDefinition($tableColumn);
+ $field->setPrevious($previousField);
+ if (null !== $previousField) {
+ $previousField->setNext($field);
+ }
+ $previousField = $field;
+
+ $fields[$field->getName()] = $field;
}
if ($tableExists) {
$localFields = [];
- /** @var ColumnInterface[] $description */
+ $previousField = null;
$description = self::$connection->describeColumns($tableName, $defaultSchema);
- foreach ($description as $field) {
- /** @var ColumnInterface[] $localFields */
+ /** @var ColumnInterface $localColumn */
+ foreach ($description as $localColumn) {
+ $field = new FieldDefinition($localColumn);
+ $field->setPrevious($previousField);
+ if (null !== $previousField) {
+ $previousField->setNext($field);
+ }
+ $previousField = $field;
+
$localFields[$field->getName()] = $field;
}
- foreach ($fields as $fieldName => $column) {
- if (!isset($localFields[$fieldName])) {
+ foreach ($fields as $fieldDefinition) {
+ $localFieldDefinition = $fieldDefinition->getPairedDefinition($localFields);
+ if (null === $localFieldDefinition) {
try {
- self::$connection->addColumn($tableName, $tableSchema, $column);
+ self::$connection->addColumn($tableName, $tableSchema, $fieldDefinition->getColumn());
} catch (Throwable $exception) {
throw new RuntimeException(
sprintf(
"Failed to add column '%s' in table '%s'. In '%s' migration. DB error: %s",
- $column->getName(),
+ $fieldDefinition->getName(),
$tableName,
get_called_class(),
$exception->getMessage()
@@ -568,35 +490,19 @@ public function morphTable(string $tableName, array $definition): void
continue;
}
- $changed = false;
- if ($localFields[$fieldName]->getType() !== $column->getType()) {
- $changed = true;
- }
-
- if ($localFields[$fieldName]->getSize() !== $column->getSize()) {
- $changed = true;
- }
-
- if ($localFields[$fieldName]->isNotNull() !== $column->isNotNull()) {
- $changed = true;
- }
-
- if ($localFields[$fieldName]->getDefault() !== $column->getDefault()) {
- $changed = true;
- }
-
- if ($localFields[$fieldName]->isUnsigned() !== $column->isUnsigned()) {
- $changed = true;
- }
-
- if ($changed === true) {
+ if ($fieldDefinition->isChanged($localFieldDefinition)) {
try {
- self::$connection->modifyColumn($tableName, $tableSchema, $column, $column);
+ self::$connection->modifyColumn(
+ $tableName,
+ $tableSchema,
+ $fieldDefinition->getColumn(),
+ $localFieldDefinition->getColumn()
+ );
} catch (Throwable $exception) {
throw new RuntimeException(
sprintf(
"Failed to modify column '%s' in table '%s'. In '%s' migration. DB error: %s",
- $column->getName(),
+ $fieldDefinition->getName(),
$tableName,
get_called_class(),
$exception->getMessage()
@@ -606,18 +512,19 @@ public function morphTable(string $tableName, array $definition): void
}
}
- foreach ($localFields as $fieldName => $localField) {
- if (!isset($fields[$fieldName])) {
+ foreach ($localFields as $fieldDefinition) {
+ $newFieldDefinition = $fieldDefinition->getPairedDefinition($fields);
+ if (null === $newFieldDefinition) {
try {
/**
* TODO: Check, why schemaName is empty string.
*/
- self::$connection->dropColumn($tableName, '', $fieldName);
+ self::$connection->dropColumn($tableName, '', $fieldDefinition->getName());
} catch (Throwable $exception) {
throw new RuntimeException(
sprintf(
"Failed to drop column '%s' in table '%s'. In '%s' migration. DB error: %s",
- $fieldName,
+ $fieldDefinition->getName(),
$tableName,
get_called_class(),
$exception->getMessage()
@@ -875,7 +782,7 @@ public function batchInsert(string $tableName, $fields, int $size = 1024): void
$batchHandler = fopen($migrationData, 'r');
while (($line = fgetcsv($batchHandler)) !== false) {
$values = array_map(
- function ($value) {
+ static function ($value) {
if (null === $value || $value === 'NULL') {
return 'NULL';
}
@@ -913,7 +820,7 @@ function ($value) {
*
* @param string $tableName
*/
- public function batchDelete(string $tableName)
+ public function batchDelete(string $tableName): void
{
$migrationData = self::$migrationPath . $this->version . '/' . $tableName . '.dat';
if (!file_exists($migrationData)) {
@@ -926,7 +833,7 @@ public function batchDelete(string $tableName)
$batchHandler = fopen($migrationData, 'r');
while (($line = fgetcsv($batchHandler)) !== false) {
$values = array_map(
- function ($value) {
+ static function ($value) {
return null === $value ? null : stripslashes($value);
},
$line
@@ -945,7 +852,7 @@ function ($value) {
*
* @return AbstractAdapter
*/
- public function getConnection()
+ public function getConnection(): AbstractAdapter
{
return self::$connection;
}
@@ -983,11 +890,11 @@ public static function resolveDbSchema(Config $config): ?string
}
$adapter = strtolower($config->get('adapter'));
- if (self::DB_ADAPTER_POSTGRESQL == $adapter) {
+ if (self::DB_ADAPTER_POSTGRESQL === $adapter) {
return 'public';
}
- if (self::DB_ADAPTER_SQLITE == $adapter) {
+ if (self::DB_ADAPTER_SQLITE === $adapter) {
// SQLite only supports the current database, unless one is
// attached. This is not the case, so don't return a schema.
return null;
diff --git a/src/Script/ScriptException.php b/src/Script/ScriptException.php
index 73414b5..4649977 100644
--- a/src/Script/ScriptException.php
+++ b/src/Script/ScriptException.php
@@ -13,7 +13,7 @@
namespace Phalcon\Migrations\Script;
-use Phalcon\Exception as PhalconException;
+use Exception as PhalconException;
class ScriptException extends PhalconException
{
diff --git a/src/Utils/Helper.php b/src/Utils/Helper.php
new file mode 100644
index 0000000..b35ec9c
--- /dev/null
+++ b/src/Utils/Helper.php
@@ -0,0 +1,76 @@
+
+ *
+ * For the full copyright and license information, please view
+ * the LICENSE file that was distributed with this source code.
+ */
+
+declare(strict_types=1);
+
+namespace Phalcon\Migrations\Utils;
+
+use Phalcon\Migrations\Console\Color;
+use Phalcon\Migrations\Exception\RuntimeException;
+use Phalcon\Migrations\Version\ItemInterface;
+
+class Helper
+{
+ public function getMigrationsDir($migrationsDirs)
+ {
+ if (is_array($migrationsDirs)) {
+ if (count($migrationsDirs) > 1) {
+ $question = 'Which migrations path would you like to use?' . PHP_EOL;
+ foreach ($migrationsDirs as $id => $dir) {
+ $question .= " [{$id}] $dir" . PHP_EOL;
+ }
+
+ fwrite(STDOUT, Color::info($question));
+ $handle = fopen('php://stdin', 'r');
+ $line = (int)fgets($handle);
+ if (!isset($migrationsDirs[$line])) {
+ echo "ABORTING!\n";
+ return false;
+ }
+
+ fclose($handle);
+ $migrationsDir = $migrationsDirs[$line];
+ } else {
+ $migrationsDir = $migrationsDirs[0];
+ }
+ } else {
+ $migrationsDir = $migrationsDirs;
+ }
+
+ if (!$migrationsDir) {
+ throw new RuntimeException('Migrations directory is not defined. Cannot proceed');
+ }
+
+ if (!file_exists($migrationsDir)) {
+ mkdir($migrationsDir, 0755, true);
+ }
+
+ return $migrationsDir;
+ }
+
+ public function getMigrationsPath(ItemInterface $versionItem, $migrationsDir, $verbose, $force): string
+ {
+ // Path to migration dir
+ $migrationPath = rtrim($migrationsDir, '\\/') . DIRECTORY_SEPARATOR . $versionItem->getVersion();
+ if (!file_exists($migrationPath)) {
+ $dirIsWritable = is_writable(dirname($migrationPath));
+ if (!$verbose && $dirIsWritable) {
+ mkdir($migrationPath);
+ } elseif (!$dirIsWritable) {
+ throw new RuntimeException("Unable to write '{$migrationPath}' directory. Permission denied");
+ }
+ } elseif (!$force) {
+ throw new RuntimeException('Version ' . $versionItem->getVersion() . ' already exists');
+ }
+
+ return $migrationPath;
+ }
+}
diff --git a/tests/_data/cli/migrations.php b/tests/_data/cli/migrations.php
index fdb41c0..980503b 100644
--- a/tests/_data/cli/migrations.php
+++ b/tests/_data/cli/migrations.php
@@ -12,7 +12,7 @@
declare(strict_types=1);
use Dotenv\Dotenv;
-use Phalcon\Config;
+use Phalcon\Config\Config;
Dotenv::createImmutable(realpath('tests'))->load();
diff --git a/tests/_support/Helper/Mysql.php b/tests/_support/Helper/Mysql.php
index 72d1d36..6257412 100644
--- a/tests/_support/Helper/Mysql.php
+++ b/tests/_support/Helper/Mysql.php
@@ -7,7 +7,7 @@
use Codeception\Module;
use Codeception\TestInterface;
use PDO;
-use Phalcon\Config;
+use Phalcon\Config\Config;
use Phalcon\Db\Adapter\Pdo\AbstractPdo;
use Phalcon\Db\Adapter\PdoFactory;
use Phalcon\Db\Exception;
diff --git a/tests/_support/Helper/Postgresql.php b/tests/_support/Helper/Postgresql.php
index 24ee577..7a557f0 100644
--- a/tests/_support/Helper/Postgresql.php
+++ b/tests/_support/Helper/Postgresql.php
@@ -6,7 +6,7 @@
use Codeception\Module;
use Codeception\TestInterface;
-use Phalcon\Config;
+use Phalcon\Config\Config;
use Phalcon\Db\Adapter\Pdo\AbstractPdo;
use Phalcon\Migrations\Db\Adapter\Pdo\PdoPostgresql;
use Phalcon\Migrations\Db\Dialect\DialectPostgresql;
diff --git a/tests/_support/MysqlTester.php b/tests/_support/MysqlTester.php
index a6315e8..0245076 100644
--- a/tests/_support/MysqlTester.php
+++ b/tests/_support/MysqlTester.php
@@ -22,7 +22,7 @@ class MysqlTester extends \Codeception\Actor
/**
* Define custom actions here
*/
- public function seeExceptionThrown($exception, $function): ?bool
+ public function seeExceptionThrown(string $exception, $function): ?bool
{
try {
$function();
diff --git a/tests/_support/PostgresqlTester.php b/tests/_support/PostgresqlTester.php
index dbb2a1d..f86d54a 100644
--- a/tests/_support/PostgresqlTester.php
+++ b/tests/_support/PostgresqlTester.php
@@ -22,7 +22,7 @@ class PostgresqlTester extends \Codeception\Actor
/**
* Define custom actions here
*/
- public function seeExceptionThrown($exception, $function): ?bool
+ public function seeExceptionThrown(string $exception, $function): ?bool
{
try {
$function();
diff --git a/tests/mysql/ColumnTypesCest.php b/tests/mysql/ColumnTypesCest.php
index 50a161f..46a5733 100644
--- a/tests/mysql/ColumnTypesCest.php
+++ b/tests/mysql/ColumnTypesCest.php
@@ -17,7 +17,7 @@
use Exception;
use MysqlTester;
use PDO;
-use Phalcon\Config;
+use Phalcon\Config\Config;
use Phalcon\Db\Adapter\Pdo\AbstractPdo;
use Phalcon\Db\Column;
use Phalcon\Migrations\Migrations;
diff --git a/tests/mysql/MigrationsCest.php b/tests/mysql/MigrationsCest.php
index 631cdc1..cee493a 100644
--- a/tests/mysql/MigrationsCest.php
+++ b/tests/mysql/MigrationsCest.php
@@ -9,7 +9,7 @@
use Faker\Factory as FakerFactory;
use MysqlTester;
use PDO;
-use Phalcon\Config;
+use Phalcon\Config\Config;
use Phalcon\Db\Adapter\Pdo\AbstractPdo;
use Phalcon\Db\Column;
use Phalcon\Migrations\Migrations;
@@ -273,7 +273,7 @@ public function generateWithAutoIncrement(MysqlTester $I): void
ob_clean();
$I->assertEquals(4, $autoIncrement);
- $I->assertContains(
+ $I->assertStringContainsString(
"'AUTO_INCREMENT' => '4'",
file_get_contents($migrationsDir . '/1.0.0/' . $tableName . '.php')
);
@@ -322,7 +322,7 @@ public function generateWithoutAutoIncrement(MysqlTester $I): void
ob_clean();
$I->assertEquals(4, $autoIncrement);
- $I->assertContains(
+ $I->assertStringContainsString(
"'AUTO_INCREMENT' => ''",
file_get_contents($migrationsDir . '/1.0.0/' . $tableName . '.php')
);
@@ -401,7 +401,7 @@ public function generateWithExportOnCreate(MysqlTester $I): void
$migrationContents = file_get_contents($migrationsDir . '/1.0.0/' . $tableName . '.php');
$I->assertSame(1, substr_count($migrationContents, 'this->batchInsert'));
- $I->assertContains(
+ $I->assertStringContainsString(
'3',
file_get_contents($migrationsDir . '/1.0.0/' . $tableName . '.dat')
);
@@ -445,7 +445,7 @@ public function updateColumnUnsigned(MysqlTester $mysqlTester): void
$columns = $mysqlTester->getPhalconDb()->describeColumns($tableName);
- $mysqlTester->asserttrue($columns[0]->isUnsigned());
+ $mysqlTester->assertTrue($columns[0]->isUnsigned());
}
public function nullableTimestamp(MysqlTester $I): void
diff --git a/tests/postgresql/MigrationsCest.php b/tests/postgresql/MigrationsCest.php
index 739f66d..9f0ba20 100644
--- a/tests/postgresql/MigrationsCest.php
+++ b/tests/postgresql/MigrationsCest.php
@@ -104,7 +104,7 @@ public function generateWithExportOnCreate(PostgresqlTester $I): void
$migrationContents = file_get_contents($migrationsDir . '/1.0.0/' . $tableName . '.php');
$I->assertSame(1, substr_count($migrationContents, 'this->batchInsert'));
- $I->assertContains(
+ $I->assertStringContainsString(
'3',
file_get_contents($migrationsDir . '/1.0.0/' . $tableName . '.dat')
);
diff --git a/tests/unit/Db/FieldDefinitionTest.php b/tests/unit/Db/FieldDefinitionTest.php
new file mode 100644
index 0000000..5c6bc74
--- /dev/null
+++ b/tests/unit/Db/FieldDefinitionTest.php
@@ -0,0 +1,131 @@
+
+ *
+ * For the full copyright and license information, please view
+ * the LICENSE file that was distributed with this source code.
+ */
+
+declare(strict_types=1);
+
+namespace Phalcon\Migrations\Tests\Unit\Db;
+
+use Codeception\Test\Unit;
+use Phalcon\Db\Column;
+use Phalcon\Migrations\Db\FieldDefinition;
+
+final class FieldDefinitionTest extends Unit
+{
+ public const COLUMN_NAME = 'login';
+ public const COLUMN_DEF = [
+ 'type' => Column::TYPE_VARCHAR,
+ 'notNull' => true,
+ 'size' => 2047,
+ 'after' => 'id',
+ ];
+
+ public const NEW_COLUMN_NAME = 'username';
+ public const NEW_COLUMN_DEF = [
+ 'type' => Column::TYPE_VARCHAR,
+ 'notNull' => true,
+ 'size' => 4096,
+ 'after' => 'id',
+ ];
+
+ public const PREV_COLUMN = 'id';
+ public const ID_COLUMN_DEF = [
+ 'type' => Column::TYPE_INTEGER,
+ 'notNull' => true,
+ 'autoIncrement' => true,
+ 'size' => 11,
+ 'first' => true,
+ ];
+
+ public const NEXT_COLUMN = 'password';
+ public const PASSWORD_COLUMN_DEF = [
+ 'type' => Column::TYPE_VARCHAR,
+ 'notNull' => true,
+ 'size' => 2047,
+ ];
+
+ public function testCreate(): void
+ {
+ $column = new Column(self::COLUMN_NAME, self::COLUMN_DEF);
+ $fieldDefinition = new FieldDefinition($column);
+
+ $this->assertSame($column->getName(), $fieldDefinition->getName());
+ }
+
+ public function testSetPrevAndNext(): void
+ {
+ $column = new Column(self::COLUMN_NAME, self::COLUMN_DEF);
+ $fieldDefinition = new FieldDefinition($column);
+
+ $prevColumn = new Column(self::PREV_COLUMN, self::ID_COLUMN_DEF);
+ $prevFieldDefinition = new FieldDefinition($prevColumn);
+ $fieldDefinition->setPrevious($prevFieldDefinition);
+
+ $nextColumn = new Column(self::NEXT_COLUMN, self::PASSWORD_COLUMN_DEF);
+ $nextFieldDefinition = new FieldDefinition($nextColumn);
+ $fieldDefinition->setNext($nextFieldDefinition);
+
+ $this->assertSame($prevColumn->getName(), $fieldDefinition->getPrevious()->getColumn()->getName());
+ $this->assertSame($nextColumn->getName(), $fieldDefinition->getNext()->getColumn()->getName());
+ }
+
+ public function testNameChanged(): void
+ {
+ $column = new Column(self::COLUMN_NAME, self::COLUMN_DEF);
+ $columnChanged = new Column(self::NEW_COLUMN_NAME, self::COLUMN_DEF);
+
+ $fieldDefinition = new FieldDefinition($column);
+ $fieldDefinitionChanged = new FieldDefinition($columnChanged);
+
+ $prevFieldDefinition = $this->createPrev($fieldDefinition);
+ $nextFieldDefinition = $this->createNext($fieldDefinition);
+
+ $localFields = [];
+ $localFields[$fieldDefinition->getName()] = $fieldDefinition;
+ $localFields[$prevFieldDefinition->getName()] = $prevFieldDefinition;
+ $localFields[$nextFieldDefinition->getName()] = $nextFieldDefinition;
+
+ $pairedDefinition = $fieldDefinitionChanged->getPairedDefinition($localFields);
+
+ $this->assertNull($pairedDefinition);
+ }
+
+ public function testIsChangedData(): void
+ {
+ $column = new Column(self::COLUMN_NAME, self::COLUMN_DEF);
+ $fieldDefinition = new FieldDefinition($column);
+
+ $columnChanged = new Column(self::NEW_COLUMN_NAME, self::NEW_COLUMN_DEF);
+ $fieldDefinitionChanged = new FieldDefinition($columnChanged);
+
+ $this->assertFalse($fieldDefinition->isChangedData($fieldDefinition));
+ $this->assertTrue($fieldDefinition->isChangedData($fieldDefinitionChanged));
+ }
+
+ private function createPrev(FieldDefinition $fieldDefinition): FieldDefinition
+ {
+ $prevColumn = new Column(self::PREV_COLUMN, self::ID_COLUMN_DEF);
+ $prevFieldDefinition = new FieldDefinition($prevColumn);
+ $fieldDefinition->setPrevious($prevFieldDefinition);
+ $prevFieldDefinition->setNext($fieldDefinition);
+
+ return $prevFieldDefinition;
+ }
+
+ private function createNext(FieldDefinition $fieldDefinition): FieldDefinition
+ {
+ $nextColumn = new Column(self::NEXT_COLUMN, self::PASSWORD_COLUMN_DEF);
+ $nextFieldDefinition = new FieldDefinition($nextColumn);
+ $fieldDefinition->setNext($nextFieldDefinition);
+ $nextFieldDefinition->setPrevious($fieldDefinition);
+
+ return $nextFieldDefinition;
+ }
+}