diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..373d13b
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,15 @@
+root = true
+
+[*]
+charset = utf-8
+end_of_line = lf
+insert_final_newline = true
+indent_style = space
+indent_size = 4
+trim_trailing_whitespace = true
+
+[Makefile]
+indent_style = tab
+
+[*.{yml,yaml,yaml.dist}]
+indent_size = 2
diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml
index 6518154..fa12b58 100644
--- a/.github/workflows/deploy.yaml
+++ b/.github/workflows/deploy.yaml
@@ -3,7 +3,7 @@ on:
push:
release:
# Every published release will trigger a distribution app build which will
- # added to the release a asset.
+ # added to the release an asset.
types: [published]
env:
@@ -18,25 +18,20 @@ jobs:
with:
fetch-depth: 0
- - name: Setup PHP with Composer v1
+ - name: Setup PHP
uses: shivammathur/setup-php@v2
with:
- php-version: '7.3'
- tools: composer:v1
+ # It's important to use the lowest supported PHP version when building the release-tool.
+ # Otherwise, users can be confronted with a composer platform check error when they use
+ # a PHP version that's lower than the version used here to build the release-tool.
+ php-version: '7.4'
- - name: Get Composer Cache Directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
- - uses: actions/cache@v3
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- restore-keys: |
- ${{ runner.os }}-composer-
+ - name: Composer Install
+ uses: ramsey/composer-install@v2
- name: Create build
run: make dist
+
- uses: actions/upload-release-asset@v1
if: github.event_name == 'release'
env:
diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml
index 49624ba..6fa5813 100644
--- a/.github/workflows/nightly.yaml
+++ b/.github/workflows/nightly.yaml
@@ -13,24 +13,13 @@ jobs:
- name: checkout
uses: actions/checkout@v3
- - name: Setup PHP with Composer v1
+ - name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '7.4'
- tools: composer:v1
-
- - name: Authenticate npm
- env:
- COMPOSER_GITHUB_TOKEN: ${{ secrets.COMPOSER_GITHUB_TOKEN }}
- run: |
- npm config set "@leviy:registry" "https://npm.pkg.github.com" \
- && npm config set "//npm.pkg.github.com/:_authToken" "$COMPOSER_GITHUB_TOKEN"
- name: Composer Install
- run: composer install --no-interaction --no-progress --no-ansi
-
- - name: Npm Install
- run: npm install --silent --no-fund --no-audit
+ uses: ramsey/composer-install@v2
- name: Test
run: make static-analysis unit-tests acceptance-tests
@@ -41,18 +30,10 @@ jobs:
- name: checkout
uses: actions/checkout@v3
- - name: Setup PHP with Composer v1
+ - name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '7.4'
- tools: composer:v1
-
- - name: Authenticate npm
- env:
- COMPOSER_GITHUB_TOKEN: ${{ secrets.COMPOSER_GITHUB_TOKEN }}
- run: |
- npm config set "@leviy:registry" "https://npm.pkg.github.com" \
- && npm config set "//npm.pkg.github.com/:_authToken" "$COMPOSER_GITHUB_TOKEN"
- name: Security checks
run: make security-tests
diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml
index 0f007f7..aa8099b 100644
--- a/.github/workflows/test.yaml
+++ b/.github/workflows/test.yaml
@@ -5,65 +5,25 @@ env:
COMPOSER_AUTH: ${{ secrets.COMPOSER_GITHUB_AUTH }}
jobs:
- test_php7-3:
+ test:
runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v3
-
- - name: Setup PHP with Composer v1
- uses: shivammathur/setup-php@v2
- with:
- php-version: '7.3'
- tools: composer:v1
-
- - name: Get Composer Cache Directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
- - uses: actions/cache@v3
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- restore-keys: |
- ${{ runner.os }}-composer-
-
- - name: Composer Install
- run: composer install --no-interaction --no-progress --no-ansi
- - name: Test
- run: make static-analysis unit-tests acceptance-tests coding-standards
+ strategy:
+ fail-fast: true
+ matrix:
+ php: [ 7.4, 8.0, 8.1 ]
- - name: Integration tests
- run: |
- git config --global user.name "github-actions"
- git config --global user.email "github-actions@github.com"
- make integration-tests
- test_php8:
- runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@v3
- - name: Setup PHP with Composer v1
+ - name: Setup PHP
uses: shivammathur/setup-php@v2
with:
- php-version: '8.0'
- tools: composer:v1
-
- - name: Get Composer Cache Directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
- - uses: actions/cache@v3
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- restore-keys: |
- ${{ runner.os }}-composer-
+ php-version: ${{ matrix.php }}
- name: Composer Install
- run: composer install --no-interaction --no-progress --no-ansi
+ uses: ramsey/composer-install@v2
- name: Test
run: make static-analysis unit-tests acceptance-tests coding-standards
diff --git a/Makefile b/Makefile
index a3ec9f1..be10ee9 100644
--- a/Makefile
+++ b/Makefile
@@ -37,15 +37,15 @@ coding-standards: vendor
security-tests: vendor bin/local-security-checker
bin/local-security-checker
-security_checker_binary = local-php-security-checker_1.0.0_linux_amd64
+security_checker_binary = local-php-security-checker_2.0.6_linux_amd64
ifeq ($(shell uname -s), Darwin)
- security_checker_binary = local-php-security-checker_1.0.0_darwin_amd64
+ security_checker_binary = local-php-security-checker_2.0.6_darwin_amd64
endif
bin/local-security-checker:
- curl -LS https://github.com/fabpot/local-php-security-checker/releases/download/v1.0.0/$(security_checker_binary) -o bin/local-security-checker
+ curl -LS https://github.com/fabpot/local-php-security-checker/releases/download/v2.0.6/$(security_checker_binary) -o bin/local-security-checker
chmod a+x bin/local-security-checker
bin/box.phar:
- curl -LS https://github.com/humbug/box/releases/download/3.14.0/box.phar -o bin/box.phar
+ curl -LS https://github.com/humbug/box/releases/download/3.16.0/box.phar -o bin/box.phar
chmod a+x bin/box.phar
diff --git a/composer.json b/composer.json
index 10deb64..f299b4f 100644
--- a/composer.json
+++ b/composer.json
@@ -4,25 +4,28 @@
"description": "Command line tool for releasing new versions of a project",
"license": "MIT",
"require": {
- "php": "^7.3||^8.0",
+ "php": "^7.4 || ^8.0, <8.2",
"beberlei/assert": "^3.2",
+ "consolidation/self-update": "^2.0",
"guzzlehttp/guzzle": "^6.3",
- "padraic/phar-updater": "^1.0",
"symfony/config": "^5.0",
"symfony/console": "^5.0",
"symfony/dependency-injection": "^5.0",
"symfony/yaml": "^5.0"
},
"require-dev": {
- "behat/behat": "^3.4",
+ "behat/behat": "^3.12",
"leviy/coding-standard": "^4.0",
"mockery/mockery": "^1.1",
- "phpstan/phpstan": "^0.12.14",
+ "phpstan/phpstan": "^1.9",
"phpunit/phpunit": "^9.0",
"symfony/process": "^5.0"
},
"config": {
- "sort-packages": true
+ "sort-packages": true,
+ "allow-plugins": {
+ "dealerdirect/phpcodesniffer-composer-installer": true
+ }
},
"autoload": {
"psr-4": {
diff --git a/composer.lock b/composer.lock
index 2dbd2ad..e6e37f0 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "5e5481a5196a4214cb11313cb74553b3",
+ "content-hash": "217c73204598b29f20c564e457f3d3f5",
"packages": [
{
"name": "beberlei/assert",
@@ -38,12 +38,12 @@
},
"type": "library",
"autoload": {
- "psr-4": {
- "Assert\\": "lib/Assert"
- },
"files": [
"lib/Assert/functions.php"
- ]
+ ],
+ "psr-4": {
+ "Assert\\": "lib/Assert"
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -73,6 +73,142 @@
},
"time": "2021-04-18T20:11:03+00:00"
},
+ {
+ "name": "composer/semver",
+ "version": "3.3.2",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/composer/semver.git",
+ "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9",
+ "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^5.3.2 || ^7.0 || ^8.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "^1.4",
+ "symfony/phpunit-bridge": "^4.2 || ^5"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "3.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Composer\\Semver\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nils Adermann",
+ "email": "naderman@naderman.de",
+ "homepage": "http://www.naderman.de"
+ },
+ {
+ "name": "Jordi Boggiano",
+ "email": "j.boggiano@seld.be",
+ "homepage": "http://seld.be"
+ },
+ {
+ "name": "Rob Bast",
+ "email": "rob.bast@gmail.com",
+ "homepage": "http://robbast.nl"
+ }
+ ],
+ "description": "Semver library that offers utilities, version constraint parsing and validation.",
+ "keywords": [
+ "semantic",
+ "semver",
+ "validation",
+ "versioning"
+ ],
+ "support": {
+ "irc": "irc://irc.freenode.org/composer",
+ "issues": "https://github.com/composer/semver/issues",
+ "source": "https://github.com/composer/semver/tree/3.3.2"
+ },
+ "funding": [
+ {
+ "url": "https://packagist.com",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/composer",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/composer/composer",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-04-01T19:23:25+00:00"
+ },
+ {
+ "name": "consolidation/self-update",
+ "version": "2.0.5",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/consolidation/self-update.git",
+ "reference": "8a64bdd8daf5faa8e85f56534dd99caf928164b3"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/consolidation/self-update/zipball/8a64bdd8daf5faa8e85f56534dd99caf928164b3",
+ "reference": "8a64bdd8daf5faa8e85f56534dd99caf928164b3",
+ "shasum": ""
+ },
+ "require": {
+ "composer/semver": "^3.2",
+ "php": ">=5.5.0",
+ "symfony/console": "^2.8 || ^3 || ^4 || ^5 || ^6",
+ "symfony/filesystem": "^2.5 || ^3 || ^4 || ^5 || ^6"
+ },
+ "bin": [
+ "scripts/release"
+ ],
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "2.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "SelfUpdate\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Alexander Menk",
+ "email": "menk@mestrona.net"
+ },
+ {
+ "name": "Greg Anderson",
+ "email": "greg.1.anderson@greenknowe.org"
+ }
+ ],
+ "description": "Provides a self:update command for Symfony Console applications.",
+ "support": {
+ "issues": "https://github.com/consolidation/self-update/issues",
+ "source": "https://github.com/consolidation/self-update/tree/2.0.5"
+ },
+ "time": "2022-02-09T22:44:24+00:00"
+ },
{
"name": "guzzlehttp/guzzle",
"version": "6.5.8",
@@ -274,16 +410,16 @@
},
{
"name": "guzzlehttp/psr7",
- "version": "1.9.0",
+ "version": "1.9.1",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
- "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318"
+ "reference": "e4490cabc77465aaee90b20cfc9a770f8c04be6b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/e98e3e6d4f86621a9b75f623996e6bbdeb4b9318",
- "reference": "e98e3e6d4f86621a9b75f623996e6bbdeb4b9318",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/e4490cabc77465aaee90b20cfc9a770f8c04be6b",
+ "reference": "e4490cabc77465aaee90b20cfc9a770f8c04be6b",
"shasum": ""
},
"require": {
@@ -302,11 +438,6 @@
"laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
},
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.9-dev"
- }
- },
"autoload": {
"files": [
"src/functions_include.php"
@@ -364,7 +495,7 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
- "source": "https://github.com/guzzle/psr7/tree/1.9.0"
+ "source": "https://github.com/guzzle/psr7/tree/1.9.1"
},
"funding": [
{
@@ -380,142 +511,24 @@
"type": "tidelift"
}
],
- "time": "2022-06-20T21:43:03+00:00"
- },
- {
- "name": "padraic/humbug_get_contents",
- "version": "1.0.4",
- "source": {
- "type": "git",
- "url": "https://github.com/humbug/file_get_contents.git",
- "reference": "66797199019d0cb4529cb8d29c6f0b4c5085b53a"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/humbug/file_get_contents/zipball/66797199019d0cb4529cb8d29c6f0b4c5085b53a",
- "reference": "66797199019d0cb4529cb8d29c6f0b4c5085b53a",
- "shasum": ""
- },
- "require": {
- "php": ">=5.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Humbug\\": "src/Humbug/"
- },
- "files": [
- "src/function.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Pádraic Brady",
- "email": "padraic.brady@gmail.com",
- "homepage": "http://blog.astrumfutura.com"
- }
- ],
- "description": "Secure wrapper for accessing HTTPS resources with file_get_contents for PHP 5.3+",
- "homepage": "https://github.com/padraic/file_get_contents",
- "keywords": [
- "download",
- "file_get_contents",
- "http",
- "https",
- "ssl",
- "tls"
- ],
- "support": {
- "issues": "https://github.com/padraic/file_get_contents/issues",
- "source": "https://github.com/humbug/file_get_contents/tree/1.0.4"
- },
- "time": "2015-04-22T18:45:00+00:00"
- },
- {
- "name": "padraic/phar-updater",
- "version": "v1.0.6",
- "source": {
- "type": "git",
- "url": "https://github.com/humbug/phar-updater.git",
- "reference": "d01d3b8f26e541ac9b9eeba1e18d005d852f7ff1"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/humbug/phar-updater/zipball/d01d3b8f26e541ac9b9eeba1e18d005d852f7ff1",
- "reference": "d01d3b8f26e541ac9b9eeba1e18d005d852f7ff1",
- "shasum": ""
- },
- "require": {
- "padraic/humbug_get_contents": "^1.0",
- "php": ">=5.3.3"
- },
- "require-dev": {
- "phpunit/phpunit": "~4.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Humbug\\SelfUpdate\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Pádraic Brady",
- "email": "padraic.brady@gmail.com",
- "homepage": "http://blog.astrumfutura.com"
- }
- ],
- "description": "A thing to make PHAR self-updating easy and secure.",
- "keywords": [
- "humbug",
- "phar",
- "self-update",
- "update"
- ],
- "support": {
- "issues": "https://github.com/humbug/phar-updater/issues",
- "source": "https://github.com/humbug/phar-updater/tree/1.0"
- },
- "abandoned": true,
- "time": "2018-03-30T12:52:15+00:00"
+ "time": "2023-04-17T16:00:37+00:00"
},
{
"name": "psr/container",
- "version": "1.1.1",
+ "version": "1.1.2",
"source": {
"type": "git",
"url": "https://github.com/php-fig/container.git",
- "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf"
+ "reference": "513e0666f7216c7459170d56df27dfcefe1689ea"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf",
- "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf",
+ "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea",
+ "reference": "513e0666f7216c7459170d56df27dfcefe1689ea",
"shasum": ""
},
"require": {
- "php": ">=7.2.0"
+ "php": ">=7.4.0"
},
"type": "library",
"autoload": {
@@ -544,9 +557,9 @@
],
"support": {
"issues": "https://github.com/php-fig/container/issues",
- "source": "https://github.com/php-fig/container/tree/1.1.1"
+ "source": "https://github.com/php-fig/container/tree/1.1.2"
},
- "time": "2021-03-05T17:36:06+00:00"
+ "time": "2021-11-05T16:50:12+00:00"
},
{
"name": "psr/http-message",
@@ -647,35 +660,35 @@
},
{
"name": "symfony/config",
- "version": "v5.3.3",
+ "version": "v5.4.11",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "a69e0c55528b47df88d3c4067ddedf32d485d662"
+ "reference": "ec79e03125c1d2477e43dde8528535d90cc78379"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/a69e0c55528b47df88d3c4067ddedf32d485d662",
- "reference": "a69e0c55528b47df88d3c4067ddedf32d485d662",
+ "url": "https://api.github.com/repos/symfony/config/zipball/ec79e03125c1d2477e43dde8528535d90cc78379",
+ "reference": "ec79e03125c1d2477e43dde8528535d90cc78379",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/deprecation-contracts": "^2.1",
- "symfony/filesystem": "^4.4|^5.0",
+ "symfony/deprecation-contracts": "^2.1|^3",
+ "symfony/filesystem": "^4.4|^5.0|^6.0",
"symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-php80": "^1.15",
+ "symfony/polyfill-php80": "^1.16",
"symfony/polyfill-php81": "^1.22"
},
"conflict": {
"symfony/finder": "<4.4"
},
"require-dev": {
- "symfony/event-dispatcher": "^4.4|^5.0",
- "symfony/finder": "^4.4|^5.0",
- "symfony/messenger": "^4.4|^5.0",
- "symfony/service-contracts": "^1.1|^2",
- "symfony/yaml": "^4.4|^5.0"
+ "symfony/event-dispatcher": "^4.4|^5.0|^6.0",
+ "symfony/finder": "^4.4|^5.0|^6.0",
+ "symfony/messenger": "^4.4|^5.0|^6.0",
+ "symfony/service-contracts": "^1.1|^2|^3",
+ "symfony/yaml": "^4.4|^5.0|^6.0"
},
"suggest": {
"symfony/yaml": "To use the yaml reference dumper"
@@ -706,7 +719,7 @@
"description": "Helps you find, load, combine, autofill and validate configuration values of any kind",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/config/tree/v5.3.3"
+ "source": "https://github.com/symfony/config/tree/v5.4.11"
},
"funding": [
{
@@ -722,32 +735,33 @@
"type": "tidelift"
}
],
- "time": "2021-06-24T08:13:00+00:00"
+ "time": "2022-07-20T13:00:38+00:00"
},
{
"name": "symfony/console",
- "version": "v5.3.2",
+ "version": "v5.4.17",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "649730483885ff2ca99ca0560ef0e5f6b03f2ac1"
+ "reference": "58422fdcb0e715ed05b385f70d3e8b5ed4bbd45f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/649730483885ff2ca99ca0560ef0e5f6b03f2ac1",
- "reference": "649730483885ff2ca99ca0560ef0e5f6b03f2ac1",
+ "url": "https://api.github.com/repos/symfony/console/zipball/58422fdcb0e715ed05b385f70d3e8b5ed4bbd45f",
+ "reference": "58422fdcb0e715ed05b385f70d3e8b5ed4bbd45f",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/deprecation-contracts": "^2.1",
+ "symfony/deprecation-contracts": "^2.1|^3",
"symfony/polyfill-mbstring": "~1.0",
- "symfony/polyfill-php73": "^1.8",
- "symfony/polyfill-php80": "^1.15",
- "symfony/service-contracts": "^1.1|^2",
- "symfony/string": "^5.1"
+ "symfony/polyfill-php73": "^1.9",
+ "symfony/polyfill-php80": "^1.16",
+ "symfony/service-contracts": "^1.1|^2|^3",
+ "symfony/string": "^5.1|^6.0"
},
"conflict": {
+ "psr/log": ">=3",
"symfony/dependency-injection": "<4.4",
"symfony/dotenv": "<5.1",
"symfony/event-dispatcher": "<4.4",
@@ -755,16 +769,16 @@
"symfony/process": "<4.4"
},
"provide": {
- "psr/log-implementation": "1.0"
+ "psr/log-implementation": "1.0|2.0"
},
"require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "^4.4|^5.0",
- "symfony/dependency-injection": "^4.4|^5.0",
- "symfony/event-dispatcher": "^4.4|^5.0",
- "symfony/lock": "^4.4|^5.0",
- "symfony/process": "^4.4|^5.0",
- "symfony/var-dumper": "^4.4|^5.0"
+ "psr/log": "^1|^2",
+ "symfony/config": "^4.4|^5.0|^6.0",
+ "symfony/dependency-injection": "^4.4|^5.0|^6.0",
+ "symfony/event-dispatcher": "^4.4|^5.0|^6.0",
+ "symfony/lock": "^4.4|^5.0|^6.0",
+ "symfony/process": "^4.4|^5.0|^6.0",
+ "symfony/var-dumper": "^4.4|^5.0|^6.0"
},
"suggest": {
"psr/log": "For using the console logger",
@@ -804,7 +818,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v5.3.2"
+ "source": "https://github.com/symfony/console/tree/v5.4.17"
},
"funding": [
{
@@ -820,27 +834,28 @@
"type": "tidelift"
}
],
- "time": "2021-06-12T09:42:48+00:00"
+ "time": "2022-12-28T14:15:31+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v5.3.3",
+ "version": "v5.4.17",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "e421c4f161848740ad1fcf09b12391ddca168d95"
+ "reference": "58f2988128d2d278280781db037677a32cf720db"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/e421c4f161848740ad1fcf09b12391ddca168d95",
- "reference": "e421c4f161848740ad1fcf09b12391ddca168d95",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/58f2988128d2d278280781db037677a32cf720db",
+ "reference": "58f2988128d2d278280781db037677a32cf720db",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
"psr/container": "^1.1.1",
- "symfony/deprecation-contracts": "^2.1",
- "symfony/polyfill-php80": "^1.15",
+ "symfony/deprecation-contracts": "^2.1|^3",
+ "symfony/polyfill-php80": "^1.16",
+ "symfony/polyfill-php81": "^1.22",
"symfony/service-contracts": "^1.1.6|^2"
},
"conflict": {
@@ -848,16 +863,16 @@
"symfony/config": "<5.3",
"symfony/finder": "<4.4",
"symfony/proxy-manager-bridge": "<4.4",
- "symfony/yaml": "<4.4"
+ "symfony/yaml": "<4.4.26"
},
"provide": {
"psr/container-implementation": "1.0",
"symfony/service-implementation": "1.0|2.0"
},
"require-dev": {
- "symfony/config": "^5.3",
- "symfony/expression-language": "^4.4|^5.0",
- "symfony/yaml": "^4.4|^5.0"
+ "symfony/config": "^5.3|^6.0",
+ "symfony/expression-language": "^4.4|^5.0|^6.0",
+ "symfony/yaml": "^4.4.26|^5.0|^6.0"
},
"suggest": {
"symfony/config": "",
@@ -892,7 +907,7 @@
"description": "Allows you to standardize and centralize the way objects are constructed in your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v5.3.3"
+ "source": "https://github.com/symfony/dependency-injection/tree/v5.4.17"
},
"funding": [
{
@@ -908,20 +923,20 @@
"type": "tidelift"
}
],
- "time": "2021-06-24T08:13:00+00:00"
+ "time": "2022-12-28T13:55:51+00:00"
},
{
"name": "symfony/deprecation-contracts",
- "version": "v2.4.0",
+ "version": "v2.5.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627"
+ "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5f38c8804a9e97d23e0c8d63341088cd8a22d627",
- "reference": "5f38c8804a9e97d23e0c8d63341088cd8a22d627",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
+ "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66",
"shasum": ""
},
"require": {
@@ -930,7 +945,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.4-dev"
+ "dev-main": "2.5-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -959,7 +974,7 @@
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/v2.4.0"
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.2"
},
"funding": [
{
@@ -975,25 +990,27 @@
"type": "tidelift"
}
],
- "time": "2021-03-23T23:28:01+00:00"
+ "time": "2022-01-02T09:53:40+00:00"
},
{
"name": "symfony/filesystem",
- "version": "v5.3.3",
+ "version": "v5.4.13",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "19b71c8f313b411172dd5f470fd61f24466d79a9"
+ "reference": "ac09569844a9109a5966b9438fc29113ce77cf51"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/19b71c8f313b411172dd5f470fd61f24466d79a9",
- "reference": "19b71c8f313b411172dd5f470fd61f24466d79a9",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/ac09569844a9109a5966b9438fc29113ce77cf51",
+ "reference": "ac09569844a9109a5966b9438fc29113ce77cf51",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/polyfill-ctype": "~1.8"
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-mbstring": "~1.8",
+ "symfony/polyfill-php80": "^1.16"
},
"type": "library",
"autoload": {
@@ -1021,7 +1038,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v5.3.3"
+ "source": "https://github.com/symfony/filesystem/tree/v5.4.13"
},
"funding": [
{
@@ -1037,20 +1054,20 @@
"type": "tidelift"
}
],
- "time": "2021-06-30T07:27:52+00:00"
+ "time": "2022-09-21T19:53:16+00:00"
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.24.0",
+ "version": "v1.27.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "30885182c981ab175d4d034db0f6f469898070ab"
+ "reference": "5bbc823adecdae860bb64756d639ecfec17b050a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab",
- "reference": "30885182c981ab175d4d034db0f6f469898070ab",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a",
+ "reference": "5bbc823adecdae860bb64756d639ecfec17b050a",
"shasum": ""
},
"require": {
@@ -1065,7 +1082,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.23-dev"
+ "dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -1073,12 +1090,12 @@
}
},
"autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Ctype\\": ""
- },
"files": [
"bootstrap.php"
- ]
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Ctype\\": ""
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -1103,7 +1120,7 @@
"portable"
],
"support": {
- "source": "https://github.com/symfony/polyfill-ctype/tree/v1.24.0"
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0"
},
"funding": [
{
@@ -1119,20 +1136,20 @@
"type": "tidelift"
}
],
- "time": "2021-10-20T20:35:02+00:00"
+ "time": "2022-11-03T14:55:06+00:00"
},
{
"name": "symfony/polyfill-intl-grapheme",
- "version": "v1.23.0",
+ "version": "v1.27.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
- "reference": "24b72c6baa32c746a4d0840147c9715e42bb68ab"
+ "reference": "511a08c03c1960e08a883f4cffcacd219b758354"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/24b72c6baa32c746a4d0840147c9715e42bb68ab",
- "reference": "24b72c6baa32c746a4d0840147c9715e42bb68ab",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354",
+ "reference": "511a08c03c1960e08a883f4cffcacd219b758354",
"shasum": ""
},
"require": {
@@ -1144,7 +1161,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.23-dev"
+ "dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -1152,12 +1169,12 @@
}
},
"autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
- },
"files": [
"bootstrap.php"
- ]
+ ],
+ "psr-4": {
+ "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -1184,7 +1201,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.23.0"
+ "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0"
},
"funding": [
{
@@ -1200,7 +1217,7 @@
"type": "tidelift"
}
],
- "time": "2021-05-27T09:17:38+00:00"
+ "time": "2022-11-03T14:55:06+00:00"
},
{
"name": "symfony/polyfill-intl-idn",
@@ -1534,16 +1551,16 @@
},
{
"name": "symfony/polyfill-php73",
- "version": "v1.23.0",
+ "version": "v1.27.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php73.git",
- "reference": "fba8933c384d6476ab14fb7b8526e5287ca7e010"
+ "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fba8933c384d6476ab14fb7b8526e5287ca7e010",
- "reference": "fba8933c384d6476ab14fb7b8526e5287ca7e010",
+ "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9",
+ "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9",
"shasum": ""
},
"require": {
@@ -1552,7 +1569,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.23-dev"
+ "dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -1560,12 +1577,12 @@
}
},
"autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Php73\\": ""
- },
"files": [
"bootstrap.php"
],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php73\\": ""
+ },
"classmap": [
"Resources/stubs"
]
@@ -1593,7 +1610,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php73/tree/v1.23.0"
+ "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0"
},
"funding": [
{
@@ -1609,20 +1626,20 @@
"type": "tidelift"
}
],
- "time": "2021-02-19T12:13:01+00:00"
+ "time": "2022-11-03T14:55:06+00:00"
},
{
"name": "symfony/polyfill-php80",
- "version": "v1.23.0",
+ "version": "v1.27.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "eca0bf41ed421bed1b57c4958bab16aa86b757d0"
+ "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/eca0bf41ed421bed1b57c4958bab16aa86b757d0",
- "reference": "eca0bf41ed421bed1b57c4958bab16aa86b757d0",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
+ "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936",
"shasum": ""
},
"require": {
@@ -1631,7 +1648,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.23-dev"
+ "dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -1639,12 +1656,12 @@
}
},
"autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Php80\\": ""
- },
"files": [
"bootstrap.php"
],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php80\\": ""
+ },
"classmap": [
"Resources/stubs"
]
@@ -1676,7 +1693,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.23.0"
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0"
},
"funding": [
{
@@ -1692,20 +1709,20 @@
"type": "tidelift"
}
],
- "time": "2021-02-19T12:13:01+00:00"
+ "time": "2022-11-03T14:55:06+00:00"
},
{
"name": "symfony/polyfill-php81",
- "version": "v1.23.0",
+ "version": "v1.27.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php81.git",
- "reference": "e66119f3de95efc359483f810c4c3e6436279436"
+ "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/e66119f3de95efc359483f810c4c3e6436279436",
- "reference": "e66119f3de95efc359483f810c4c3e6436279436",
+ "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a",
+ "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a",
"shasum": ""
},
"require": {
@@ -1714,7 +1731,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "1.23-dev"
+ "dev-main": "1.27-dev"
},
"thanks": {
"name": "symfony/polyfill",
@@ -1722,12 +1739,12 @@
}
},
"autoload": {
- "psr-4": {
- "Symfony\\Polyfill\\Php81\\": ""
- },
"files": [
"bootstrap.php"
],
+ "psr-4": {
+ "Symfony\\Polyfill\\Php81\\": ""
+ },
"classmap": [
"Resources/stubs"
]
@@ -1755,7 +1772,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php81/tree/v1.23.0"
+ "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0"
},
"funding": [
{
@@ -1771,25 +1788,29 @@
"type": "tidelift"
}
],
- "time": "2021-05-21T13:25:03+00:00"
+ "time": "2022-11-03T14:55:06+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v2.4.0",
+ "version": "v2.5.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb"
+ "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb",
- "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
+ "reference": "4b426aac47d6427cc1a1d0f7e2ac724627f5966c",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "psr/container": "^1.1"
+ "psr/container": "^1.1",
+ "symfony/deprecation-contracts": "^2.1|^3"
+ },
+ "conflict": {
+ "ext-psr": "<1.1|>=2"
},
"suggest": {
"symfony/service-implementation": ""
@@ -1797,7 +1818,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.4-dev"
+ "dev-main": "2.5-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -1834,7 +1855,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v2.4.0"
+ "source": "https://github.com/symfony/service-contracts/tree/v2.5.2"
},
"funding": [
{
@@ -1850,20 +1871,20 @@
"type": "tidelift"
}
],
- "time": "2021-04-01T10:43:52+00:00"
+ "time": "2022-05-30T19:17:29+00:00"
},
{
"name": "symfony/string",
- "version": "v5.3.3",
+ "version": "v5.4.17",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "bd53358e3eccec6a670b5f33ab680d8dbe1d4ae1"
+ "reference": "55733a8664b8853b003e70251c58bc8cb2d82a6b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/bd53358e3eccec6a670b5f33ab680d8dbe1d4ae1",
- "reference": "bd53358e3eccec6a670b5f33ab680d8dbe1d4ae1",
+ "url": "https://api.github.com/repos/symfony/string/zipball/55733a8664b8853b003e70251c58bc8cb2d82a6b",
+ "reference": "55733a8664b8853b003e70251c58bc8cb2d82a6b",
"shasum": ""
},
"require": {
@@ -1874,20 +1895,23 @@
"symfony/polyfill-mbstring": "~1.0",
"symfony/polyfill-php80": "~1.15"
},
+ "conflict": {
+ "symfony/translation-contracts": ">=3.0"
+ },
"require-dev": {
- "symfony/error-handler": "^4.4|^5.0",
- "symfony/http-client": "^4.4|^5.0",
+ "symfony/error-handler": "^4.4|^5.0|^6.0",
+ "symfony/http-client": "^4.4|^5.0|^6.0",
"symfony/translation-contracts": "^1.1|^2",
- "symfony/var-exporter": "^4.4|^5.0"
+ "symfony/var-exporter": "^4.4|^5.0|^6.0"
},
"type": "library",
"autoload": {
- "psr-4": {
- "Symfony\\Component\\String\\": ""
- },
"files": [
"Resources/functions.php"
],
+ "psr-4": {
+ "Symfony\\Component\\String\\": ""
+ },
"exclude-from-classmap": [
"/Tests/"
]
@@ -1917,7 +1941,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v5.3.3"
+ "source": "https://github.com/symfony/string/tree/v5.4.17"
},
"funding": [
{
@@ -1933,32 +1957,32 @@
"type": "tidelift"
}
],
- "time": "2021-06-27T11:44:38+00:00"
+ "time": "2022-12-12T15:54:21+00:00"
},
{
"name": "symfony/yaml",
- "version": "v5.3.3",
+ "version": "v5.4.17",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "485c83a2fb5893e2ff21bf4bfc7fdf48b4967229"
+ "reference": "edcdc11498108f8967fe95118a7ec8624b94760e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/485c83a2fb5893e2ff21bf4bfc7fdf48b4967229",
- "reference": "485c83a2fb5893e2ff21bf4bfc7fdf48b4967229",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/edcdc11498108f8967fe95118a7ec8624b94760e",
+ "reference": "edcdc11498108f8967fe95118a7ec8624b94760e",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/deprecation-contracts": "^2.1",
- "symfony/polyfill-ctype": "~1.8"
+ "symfony/deprecation-contracts": "^2.1|^3",
+ "symfony/polyfill-ctype": "^1.8"
},
"conflict": {
- "symfony/console": "<4.4"
+ "symfony/console": "<5.3"
},
"require-dev": {
- "symfony/console": "^4.4|^5.0"
+ "symfony/console": "^5.3|^6.0"
},
"suggest": {
"symfony/console": "For validating YAML files using the lint command"
@@ -1992,7 +2016,7 @@
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/yaml/tree/v5.3.3"
+ "source": "https://github.com/symfony/yaml/tree/v5.4.17"
},
"funding": [
{
@@ -2008,42 +2032,43 @@
"type": "tidelift"
}
],
- "time": "2021-06-24T08:13:00+00:00"
+ "time": "2022-12-13T09:57:04+00:00"
}
],
"packages-dev": [
{
"name": "behat/behat",
- "version": "v3.8.1",
+ "version": "v3.12.0",
"source": {
"type": "git",
"url": "https://github.com/Behat/Behat.git",
- "reference": "fbb065457d523d9856d4b50775b4151a7598b510"
+ "reference": "2f059c9172764ba1f1759b3679aca499b665330a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Behat/Behat/zipball/fbb065457d523d9856d4b50775b4151a7598b510",
- "reference": "fbb065457d523d9856d4b50775b4151a7598b510",
+ "url": "https://api.github.com/repos/Behat/Behat/zipball/2f059c9172764ba1f1759b3679aca499b665330a",
+ "reference": "2f059c9172764ba1f1759b3679aca499b665330a",
"shasum": ""
},
"require": {
- "behat/gherkin": "^4.6.0",
+ "behat/gherkin": "^4.9.0",
"behat/transliterator": "^1.2",
"ext-mbstring": "*",
"php": "^7.2 || ^8.0",
- "psr/container": "^1.0",
- "symfony/config": "^4.4 || ^5.0",
- "symfony/console": "^4.4 || ^5.0",
- "symfony/dependency-injection": "^4.4 || ^5.0",
- "symfony/event-dispatcher": "^4.4 || ^5.0",
- "symfony/translation": "^4.4 || ^5.0",
- "symfony/yaml": "^4.4 || ^5.0"
+ "psr/container": "^1.0 || ^2.0",
+ "symfony/config": "^4.4 || ^5.0 || ^6.0",
+ "symfony/console": "^4.4 || ^5.0 || ^6.0",
+ "symfony/dependency-injection": "^4.4 || ^5.0 || ^6.0",
+ "symfony/event-dispatcher": "^4.4 || ^5.0 || ^6.0",
+ "symfony/translation": "^4.4 || ^5.0 || ^6.0",
+ "symfony/yaml": "^4.4 || ^5.0 || ^6.0"
},
"require-dev": {
- "container-interop/container-interop": "^1.2",
"herrera-io/box": "~1.6.1",
+ "phpspec/prophecy": "^1.15",
"phpunit/phpunit": "^8.5 || ^9.0",
- "symfony/process": "^4.4 || ^5.0"
+ "symfony/process": "^4.4 || ^5.0 || ^6.0",
+ "vimeo/psalm": "^4.8"
},
"suggest": {
"ext-dom": "Needed to output test results in JUnit format."
@@ -2054,11 +2079,13 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.8.x-dev"
+ "dev-master": "3.x-dev"
}
},
"autoload": {
"psr-4": {
+ "Behat\\Hook\\": "src/Behat/Hook/",
+ "Behat\\Step\\": "src/Behat/Step/",
"Behat\\Behat\\": "src/Behat/Behat/",
"Behat\\Testwork\\": "src/Behat/Testwork/"
}
@@ -2092,31 +2119,30 @@
],
"support": {
"issues": "https://github.com/Behat/Behat/issues",
- "source": "https://github.com/Behat/Behat/tree/v3.8.1"
+ "source": "https://github.com/Behat/Behat/tree/v3.12.0"
},
- "time": "2020-11-07T15:55:18+00:00"
+ "time": "2022-11-29T15:30:11+00:00"
},
{
"name": "behat/gherkin",
- "version": "v4.8.0",
+ "version": "v4.9.0",
"source": {
"type": "git",
"url": "https://github.com/Behat/Gherkin.git",
- "reference": "2391482cd003dfdc36b679b27e9f5326bd656acd"
+ "reference": "0bc8d1e30e96183e4f36db9dc79caead300beff4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Behat/Gherkin/zipball/2391482cd003dfdc36b679b27e9f5326bd656acd",
- "reference": "2391482cd003dfdc36b679b27e9f5326bd656acd",
+ "url": "https://api.github.com/repos/Behat/Gherkin/zipball/0bc8d1e30e96183e4f36db9dc79caead300beff4",
+ "reference": "0bc8d1e30e96183e4f36db9dc79caead300beff4",
"shasum": ""
},
"require": {
"php": "~7.2|~8.0"
},
"require-dev": {
- "cucumber/cucumber": "dev-gherkin-16.0.0",
+ "cucumber/cucumber": "dev-gherkin-22.0.0",
"phpunit/phpunit": "~8|~9",
- "symfony/phpunit-bridge": "~3|~4|~5",
"symfony/yaml": "~3|~4|~5"
},
"suggest": {
@@ -2125,7 +2151,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.4-dev"
+ "dev-master": "4.x-dev"
}
},
"autoload": {
@@ -2156,36 +2182,36 @@
],
"support": {
"issues": "https://github.com/Behat/Gherkin/issues",
- "source": "https://github.com/Behat/Gherkin/tree/v4.8.0"
+ "source": "https://github.com/Behat/Gherkin/tree/v4.9.0"
},
- "time": "2021-02-04T12:44:21+00:00"
+ "time": "2021-10-12T13:05:09+00:00"
},
{
"name": "behat/transliterator",
- "version": "v1.3.0",
+ "version": "v1.5.0",
"source": {
"type": "git",
"url": "https://github.com/Behat/Transliterator.git",
- "reference": "3c4ec1d77c3d05caa1f0bf8fb3aae4845005c7fc"
+ "reference": "baac5873bac3749887d28ab68e2f74db3a4408af"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Behat/Transliterator/zipball/3c4ec1d77c3d05caa1f0bf8fb3aae4845005c7fc",
- "reference": "3c4ec1d77c3d05caa1f0bf8fb3aae4845005c7fc",
+ "url": "https://api.github.com/repos/Behat/Transliterator/zipball/baac5873bac3749887d28ab68e2f74db3a4408af",
+ "reference": "baac5873bac3749887d28ab68e2f74db3a4408af",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=7.2"
},
"require-dev": {
"chuyskywalker/rolling-curl": "^3.1",
"php-yaoi/php-yaoi": "^1.0",
- "phpunit/phpunit": "^4.8.36|^6.3"
+ "phpunit/phpunit": "^8.5.25 || ^9.5.19"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2-dev"
+ "dev-master": "1.x-dev"
}
},
"autoload": {
@@ -2205,31 +2231,104 @@
],
"support": {
"issues": "https://github.com/Behat/Transliterator/issues",
- "source": "https://github.com/Behat/Transliterator/tree/v1.3.0"
+ "source": "https://github.com/Behat/Transliterator/tree/v1.5.0"
+ },
+ "time": "2022-03-30T09:27:43+00:00"
+ },
+ {
+ "name": "composer/pcre",
+ "version": "3.1.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/composer/pcre.git",
+ "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2",
+ "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2",
+ "shasum": ""
+ },
+ "require": {
+ "php": "^7.4 || ^8.0"
+ },
+ "require-dev": {
+ "phpstan/phpstan": "^1.3",
+ "phpstan/phpstan-strict-rules": "^1.1",
+ "symfony/phpunit-bridge": "^5"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-main": "3.x-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Composer\\Pcre\\": "src"
+ }
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Jordi Boggiano",
+ "email": "j.boggiano@seld.be",
+ "homepage": "http://seld.be"
+ }
+ ],
+ "description": "PCRE wrapping library that offers type-safe preg_* replacements.",
+ "keywords": [
+ "PCRE",
+ "preg",
+ "regex",
+ "regular expression"
+ ],
+ "support": {
+ "issues": "https://github.com/composer/pcre/issues",
+ "source": "https://github.com/composer/pcre/tree/3.1.0"
},
- "time": "2020-01-14T16:39:13+00:00"
+ "funding": [
+ {
+ "url": "https://packagist.com",
+ "type": "custom"
+ },
+ {
+ "url": "https://github.com/composer",
+ "type": "github"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/composer/composer",
+ "type": "tidelift"
+ }
+ ],
+ "time": "2022-11-17T09:50:14+00:00"
},
{
"name": "composer/xdebug-handler",
- "version": "2.0.1",
+ "version": "3.0.3",
"source": {
"type": "git",
"url": "https://github.com/composer/xdebug-handler.git",
- "reference": "964adcdd3a28bf9ed5d9ac6450064e0d71ed7496"
+ "reference": "ced299686f41dce890debac69273b47ffe98a40c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/964adcdd3a28bf9ed5d9ac6450064e0d71ed7496",
- "reference": "964adcdd3a28bf9ed5d9ac6450064e0d71ed7496",
+ "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c",
+ "reference": "ced299686f41dce890debac69273b47ffe98a40c",
"shasum": ""
},
"require": {
- "php": "^5.3.2 || ^7.0 || ^8.0",
- "psr/log": "^1.0"
+ "composer/pcre": "^1 || ^2 || ^3",
+ "php": "^7.2.5 || ^8.0",
+ "psr/log": "^1 || ^2 || ^3"
},
"require-dev": {
- "phpstan/phpstan": "^0.12.55",
- "symfony/phpunit-bridge": "^4.2 || ^5"
+ "phpstan/phpstan": "^1.0",
+ "phpstan/phpstan-strict-rules": "^1.1",
+ "symfony/phpunit-bridge": "^6.0"
},
"type": "library",
"autoload": {
@@ -2255,7 +2354,7 @@
"support": {
"irc": "irc://irc.freenode.org/composer",
"issues": "https://github.com/composer/xdebug-handler/issues",
- "source": "https://github.com/composer/xdebug-handler/tree/2.0.1"
+ "source": "https://github.com/composer/xdebug-handler/tree/3.0.3"
},
"funding": [
{
@@ -2271,7 +2370,7 @@
"type": "tidelift"
}
],
- "time": "2021-05-05T19:37:51+00:00"
+ "time": "2022-02-25T21:32:43+00:00"
},
{
"name": "dealerdirect/phpcodesniffer-composer-installer",
@@ -2654,9 +2753,6 @@
"require": {
"php": "^7.1 || ^8.0"
},
- "replace": {
- "myclabs/deep-copy": "self.version"
- },
"require-dev": {
"doctrine/collections": "^1.0",
"doctrine/common": "^2.6",
@@ -2664,12 +2760,12 @@
},
"type": "library",
"autoload": {
- "psr-4": {
- "DeepCopy\\": "src/DeepCopy/"
- },
"files": [
"src/DeepCopy/deep_copy.php"
- ]
+ ],
+ "psr-4": {
+ "DeepCopy\\": "src/DeepCopy/"
+ }
},
"notification-url": "https://packagist.org/downloads/",
"license": [
@@ -2753,23 +2849,23 @@
},
{
"name": "pdepend/pdepend",
- "version": "2.10.0",
+ "version": "2.12.1",
"source": {
"type": "git",
"url": "https://github.com/pdepend/pdepend.git",
- "reference": "1fd30f4352b630ad53fec3fd5e8b8ba760f85596"
+ "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/pdepend/pdepend/zipball/1fd30f4352b630ad53fec3fd5e8b8ba760f85596",
- "reference": "1fd30f4352b630ad53fec3fd5e8b8ba760f85596",
+ "url": "https://api.github.com/repos/pdepend/pdepend/zipball/7a892d56ceafd804b4a2ecc85184640937ce9e84",
+ "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84",
"shasum": ""
},
"require": {
"php": ">=5.3.7",
- "symfony/config": "^2.3.0|^3|^4|^5",
- "symfony/dependency-injection": "^2.3.0|^3|^4|^5",
- "symfony/filesystem": "^2.3.0|^3|^4|^5"
+ "symfony/config": "^2.3.0|^3|^4|^5|^6.0",
+ "symfony/dependency-injection": "^2.3.0|^3|^4|^5|^6.0",
+ "symfony/filesystem": "^2.3.0|^3|^4|^5|^6.0"
},
"require-dev": {
"easy-doc/easy-doc": "0.0.0|^1.2.3",
@@ -2798,7 +2894,7 @@
"description": "Official version of pdepend to be handled with Composer",
"support": {
"issues": "https://github.com/pdepend/pdepend/issues",
- "source": "https://github.com/pdepend/pdepend/tree/2.10.0"
+ "source": "https://github.com/pdepend/pdepend/tree/2.12.1"
},
"funding": [
{
@@ -2806,7 +2902,7 @@
"type": "tidelift"
}
],
- "time": "2021-07-20T09:56:09+00:00"
+ "time": "2022-09-08T19:30:37+00:00"
},
{
"name": "phar-io/manifest",
@@ -3081,22 +3177,22 @@
},
{
"name": "phpmd/phpmd",
- "version": "2.10.2",
+ "version": "2.13.0",
"source": {
"type": "git",
"url": "https://github.com/phpmd/phpmd.git",
- "reference": "1bc74db7cf834662d83abebae265be11bb2eec3a"
+ "reference": "dad0228156856b3ad959992f9748514fa943f3e3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpmd/phpmd/zipball/1bc74db7cf834662d83abebae265be11bb2eec3a",
- "reference": "1bc74db7cf834662d83abebae265be11bb2eec3a",
+ "url": "https://api.github.com/repos/phpmd/phpmd/zipball/dad0228156856b3ad959992f9748514fa943f3e3",
+ "reference": "dad0228156856b3ad959992f9748514fa943f3e3",
"shasum": ""
},
"require": {
- "composer/xdebug-handler": "^1.0 || ^2.0",
+ "composer/xdebug-handler": "^1.0 || ^2.0 || ^3.0",
"ext-xml": "*",
- "pdepend/pdepend": "^2.10.0",
+ "pdepend/pdepend": "^2.12.1",
"php": ">=5.3.9"
},
"require-dev": {
@@ -3152,7 +3248,7 @@
"support": {
"irc": "irc://irc.freenode.org/phpmd",
"issues": "https://github.com/phpmd/phpmd/issues",
- "source": "https://github.com/phpmd/phpmd/tree/2.10.2"
+ "source": "https://github.com/phpmd/phpmd/tree/2.13.0"
},
"funding": [
{
@@ -3160,25 +3256,25 @@
"type": "tidelift"
}
],
- "time": "2021-07-22T09:56:23+00:00"
+ "time": "2022-09-10T08:44:15+00:00"
},
{
"name": "phpspec/prophecy",
- "version": "v1.15.0",
+ "version": "v1.16.0",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13"
+ "reference": "be8cac52a0827776ff9ccda8c381ac5b71aeb359"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13",
- "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/be8cac52a0827776ff9ccda8c381ac5b71aeb359",
+ "reference": "be8cac52a0827776ff9ccda8c381ac5b71aeb359",
"shasum": ""
},
"require": {
"doctrine/instantiator": "^1.2",
- "php": "^7.2 || ~8.0, <8.2",
+ "php": "^7.2 || 8.0.* || 8.1.* || 8.2.*",
"phpdocumentor/reflection-docblock": "^5.2",
"sebastian/comparator": "^3.0 || ^4.0",
"sebastian/recursion-context": "^3.0 || ^4.0"
@@ -3225,9 +3321,9 @@
],
"support": {
"issues": "https://github.com/phpspec/prophecy/issues",
- "source": "https://github.com/phpspec/prophecy/tree/v1.15.0"
+ "source": "https://github.com/phpspec/prophecy/tree/v1.16.0"
},
- "time": "2021-12-08T12:19:24+00:00"
+ "time": "2022-11-29T15:06:56+00:00"
},
{
"name": "phpstan/phpdoc-parser",
@@ -3280,20 +3376,20 @@
},
{
"name": "phpstan/phpstan",
- "version": "0.12.93",
+ "version": "1.9.14",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
- "reference": "7b7602f05d340ffa418c59299f8c053ac6c3e7ea"
+ "reference": "e5fcc96289cf737304286a9b505fbed091f02e58"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/7b7602f05d340ffa418c59299f8c053ac6c3e7ea",
- "reference": "7b7602f05d340ffa418c59299f8c053ac6c3e7ea",
+ "url": "https://api.github.com/repos/phpstan/phpstan/zipball/e5fcc96289cf737304286a9b505fbed091f02e58",
+ "reference": "e5fcc96289cf737304286a9b505fbed091f02e58",
"shasum": ""
},
"require": {
- "php": "^7.1|^8.0"
+ "php": "^7.2|^8.0"
},
"conflict": {
"phpstan/phpstan-shim": "*"
@@ -3303,11 +3399,6 @@
"phpstan.phar"
],
"type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "0.12-dev"
- }
- },
"autoload": {
"files": [
"bootstrap.php"
@@ -3318,9 +3409,13 @@
"MIT"
],
"description": "PHPStan - PHP Static Analysis Tool",
+ "keywords": [
+ "dev",
+ "static analysis"
+ ],
"support": {
"issues": "https://github.com/phpstan/phpstan/issues",
- "source": "https://github.com/phpstan/phpstan/tree/0.12.93"
+ "source": "https://github.com/phpstan/phpstan/tree/1.9.14"
},
"funding": [
{
@@ -3331,16 +3426,12 @@
"url": "https://github.com/phpstan",
"type": "github"
},
- {
- "url": "https://www.patreon.com/phpstan",
- "type": "patreon"
- },
{
"url": "https://tidelift.com/funding/github/packagist/phpstan/phpstan",
"type": "tidelift"
}
],
- "time": "2021-07-20T10:49:53+00:00"
+ "time": "2023-01-19T10:47:09+00:00"
},
{
"name": "phpunit/php-code-coverage",
@@ -3722,11 +3813,11 @@
}
},
"autoload": {
- "classmap": [
- "src/"
- ],
"files": [
"src/Framework/Assert/Functions.php"
+ ],
+ "classmap": [
+ "src/"
]
},
"notification-url": "https://packagist.org/downloads/",
@@ -4890,16 +4981,16 @@
},
{
"name": "squizlabs/php_codesniffer",
- "version": "3.6.0",
+ "version": "3.7.1",
"source": {
"type": "git",
"url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
- "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625"
+ "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
- "reference": "ffced0d2c8fa8e6cdc4d695a743271fab6c38625",
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/1359e176e9307e906dc3d890bcc9603ff6d90619",
+ "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619",
"shasum": ""
},
"require": {
@@ -4942,27 +5033,27 @@
"source": "https://github.com/squizlabs/PHP_CodeSniffer",
"wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki"
},
- "time": "2021-04-09T00:54:41+00:00"
+ "time": "2022-06-18T07:21:10+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v5.3.0",
+ "version": "v5.4.17",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "67a5f354afa8e2f231081b3fa11a5912f933c3ce"
+ "reference": "8e18a9d559eb8ebc2220588f1faa726a2fcd31c9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/67a5f354afa8e2f231081b3fa11a5912f933c3ce",
- "reference": "67a5f354afa8e2f231081b3fa11a5912f933c3ce",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/8e18a9d559eb8ebc2220588f1faa726a2fcd31c9",
+ "reference": "8e18a9d559eb8ebc2220588f1faa726a2fcd31c9",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/deprecation-contracts": "^2.1",
- "symfony/event-dispatcher-contracts": "^2",
- "symfony/polyfill-php80": "^1.15"
+ "symfony/deprecation-contracts": "^2.1|^3",
+ "symfony/event-dispatcher-contracts": "^2|^3",
+ "symfony/polyfill-php80": "^1.16"
},
"conflict": {
"symfony/dependency-injection": "<4.4"
@@ -4972,14 +5063,14 @@
"symfony/event-dispatcher-implementation": "2.0"
},
"require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "^4.4|^5.0",
- "symfony/dependency-injection": "^4.4|^5.0",
- "symfony/error-handler": "^4.4|^5.0",
- "symfony/expression-language": "^4.4|^5.0",
- "symfony/http-foundation": "^4.4|^5.0",
- "symfony/service-contracts": "^1.1|^2",
- "symfony/stopwatch": "^4.4|^5.0"
+ "psr/log": "^1|^2|^3",
+ "symfony/config": "^4.4|^5.0|^6.0",
+ "symfony/dependency-injection": "^4.4|^5.0|^6.0",
+ "symfony/error-handler": "^4.4|^5.0|^6.0",
+ "symfony/expression-language": "^4.4|^5.0|^6.0",
+ "symfony/http-foundation": "^4.4|^5.0|^6.0",
+ "symfony/service-contracts": "^1.1|^2|^3",
+ "symfony/stopwatch": "^4.4|^5.0|^6.0"
},
"suggest": {
"symfony/dependency-injection": "",
@@ -5011,7 +5102,7 @@
"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/v5.3.0"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.17"
},
"funding": [
{
@@ -5027,20 +5118,20 @@
"type": "tidelift"
}
],
- "time": "2021-05-26T17:43:10+00:00"
+ "time": "2022-12-12T15:54:21+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
- "version": "v2.4.0",
+ "version": "v2.5.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
- "reference": "69fee1ad2332a7cbab3aca13591953da9cdb7a11"
+ "reference": "f98b54df6ad059855739db6fcbc2d36995283fe1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/69fee1ad2332a7cbab3aca13591953da9cdb7a11",
- "reference": "69fee1ad2332a7cbab3aca13591953da9cdb7a11",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/f98b54df6ad059855739db6fcbc2d36995283fe1",
+ "reference": "f98b54df6ad059855739db6fcbc2d36995283fe1",
"shasum": ""
},
"require": {
@@ -5053,7 +5144,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.4-dev"
+ "dev-main": "2.5-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -5090,7 +5181,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.4.0"
+ "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.2"
},
"funding": [
{
@@ -5106,25 +5197,25 @@
"type": "tidelift"
}
],
- "time": "2021-03-23T23:28:01+00:00"
+ "time": "2022-01-02T09:53:40+00:00"
},
{
"name": "symfony/process",
- "version": "v5.3.2",
+ "version": "v5.4.11",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "714b47f9196de61a196d86c4bad5f09201b307df"
+ "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/714b47f9196de61a196d86c4bad5f09201b307df",
- "reference": "714b47f9196de61a196d86c4bad5f09201b307df",
+ "url": "https://api.github.com/repos/symfony/process/zipball/6e75fe6874cbc7e4773d049616ab450eff537bf1",
+ "reference": "6e75fe6874cbc7e4773d049616ab450eff537bf1",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/polyfill-php80": "^1.15"
+ "symfony/polyfill-php80": "^1.16"
},
"type": "library",
"autoload": {
@@ -5152,7 +5243,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v5.3.2"
+ "source": "https://github.com/symfony/process/tree/v5.4.11"
},
"funding": [
{
@@ -5168,31 +5259,32 @@
"type": "tidelift"
}
],
- "time": "2021-06-12T10:15:01+00:00"
+ "time": "2022-06-27T16:58:25+00:00"
},
{
"name": "symfony/translation",
- "version": "v5.3.3",
+ "version": "v5.4.14",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "380b8c9e944d0e364b25f28e8e555241eb49c01c"
+ "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/380b8c9e944d0e364b25f28e8e555241eb49c01c",
- "reference": "380b8c9e944d0e364b25f28e8e555241eb49c01c",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/f0ed07675863aa6e3939df8b1bc879450b585cab",
+ "reference": "f0ed07675863aa6e3939df8b1bc879450b585cab",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
- "symfony/deprecation-contracts": "^2.1",
+ "symfony/deprecation-contracts": "^2.1|^3",
"symfony/polyfill-mbstring": "~1.0",
- "symfony/polyfill-php80": "^1.15",
+ "symfony/polyfill-php80": "^1.16",
"symfony/translation-contracts": "^2.3"
},
"conflict": {
"symfony/config": "<4.4",
+ "symfony/console": "<5.3",
"symfony/dependency-injection": "<5.0",
"symfony/http-kernel": "<5.0",
"symfony/twig-bundle": "<5.0",
@@ -5202,16 +5294,17 @@
"symfony/translation-implementation": "2.3"
},
"require-dev": {
- "psr/log": "~1.0",
- "symfony/config": "^4.4|^5.0",
- "symfony/console": "^4.4|^5.0",
- "symfony/dependency-injection": "^5.0",
- "symfony/finder": "^4.4|^5.0",
- "symfony/http-kernel": "^5.0",
- "symfony/intl": "^4.4|^5.0",
+ "psr/log": "^1|^2|^3",
+ "symfony/config": "^4.4|^5.0|^6.0",
+ "symfony/console": "^5.4|^6.0",
+ "symfony/dependency-injection": "^5.0|^6.0",
+ "symfony/finder": "^4.4|^5.0|^6.0",
+ "symfony/http-client-contracts": "^1.1|^2.0|^3.0",
+ "symfony/http-kernel": "^5.0|^6.0",
+ "symfony/intl": "^4.4|^5.0|^6.0",
"symfony/polyfill-intl-icu": "^1.21",
- "symfony/service-contracts": "^1.1.2|^2",
- "symfony/yaml": "^4.4|^5.0"
+ "symfony/service-contracts": "^1.1.2|^2|^3",
+ "symfony/yaml": "^4.4|^5.0|^6.0"
},
"suggest": {
"psr/log-implementation": "To use logging capability in translator",
@@ -5247,7 +5340,7 @@
"description": "Provides tools to internationalize your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/translation/tree/v5.3.3"
+ "source": "https://github.com/symfony/translation/tree/v5.4.14"
},
"funding": [
{
@@ -5263,20 +5356,20 @@
"type": "tidelift"
}
],
- "time": "2021-06-27T12:22:47+00:00"
+ "time": "2022-10-07T08:01:20+00:00"
},
{
"name": "symfony/translation-contracts",
- "version": "v2.4.0",
+ "version": "v2.5.2",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
- "reference": "95c812666f3e91db75385749fe219c5e494c7f95"
+ "reference": "136b19dd05cdf0709db6537d058bcab6dd6e2dbe"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/95c812666f3e91db75385749fe219c5e494c7f95",
- "reference": "95c812666f3e91db75385749fe219c5e494c7f95",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/136b19dd05cdf0709db6537d058bcab6dd6e2dbe",
+ "reference": "136b19dd05cdf0709db6537d058bcab6dd6e2dbe",
"shasum": ""
},
"require": {
@@ -5288,7 +5381,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.4-dev"
+ "dev-main": "2.5-dev"
},
"thanks": {
"name": "symfony/contracts",
@@ -5325,7 +5418,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/translation-contracts/tree/v2.4.0"
+ "source": "https://github.com/symfony/translation-contracts/tree/v2.5.2"
},
"funding": [
{
@@ -5341,7 +5434,7 @@
"type": "tidelift"
}
],
- "time": "2021-03-23T23:28:01+00:00"
+ "time": "2022-06-27T16:58:25+00:00"
},
{
"name": "theseer/tokenizer",
@@ -5458,8 +5551,8 @@
"prefer-stable": false,
"prefer-lowest": false,
"platform": {
- "php": "^7.3||^8.0"
+ "php": "^7.4 || ^8.0, <8.2"
},
"platform-dev": [],
- "plugin-api-version": "2.3.0"
+ "plugin-api-version": "2.0.0"
}
diff --git a/config/commands.yaml b/config/commands.yaml
index 0aea022..1149bb7 100644
--- a/config/commands.yaml
+++ b/config/commands.yaml
@@ -16,7 +16,5 @@ services:
command.self_update:
class: Leviy\ReleaseTool\Console\Command\SelfUpdateCommand
- arguments:
- - '@phar_updater'
tags:
- { name: console.command, command: self-update }
diff --git a/config/services.yaml b/config/services.yaml
index 4b92fcd..6bca2b2 100644
--- a/config/services.yaml
+++ b/config/services.yaml
@@ -31,10 +31,3 @@ services:
class: Leviy\ReleaseTool\Changelog\Formatter\Filter\GitHubPullRequestUrlFilter
arguments:
- '%github.owner%/%github.repo%'
-
- phar_updater:
- class: Humbug\SelfUpdate\Updater
- arguments:
- - null
- - false
- - github
diff --git a/phpunit.xml b/phpunit.xml
index 8d73c71..3f379ef 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -2,7 +2,7 @@
@@ -26,9 +26,9 @@
-
-
+
+
./src/
-
-
+
+
diff --git a/src/Changelog/PullRequestChangelogGenerator.php b/src/Changelog/PullRequestChangelogGenerator.php
index 7790153..e103ca4 100644
--- a/src/Changelog/PullRequestChangelogGenerator.php
+++ b/src/Changelog/PullRequestChangelogGenerator.php
@@ -72,8 +72,8 @@ function (Changelog $changelog, string $version): Changelog {
}
/**
- * @param mixed[] $changeLogElements
- * @return mixed[]
+ * @param string[] $changeLogElements
+ * @return string[]
*/
private function filterUnreleasedChanges(array $changeLogElements): array
{
diff --git a/src/Console/Application.php b/src/Console/Application.php
index 08ad74b..b1f9a24 100644
--- a/src/Console/Application.php
+++ b/src/Console/Application.php
@@ -24,7 +24,7 @@
final class Application extends SymfonyApplication
{
- private const NAME = 'Leviy Release Tool';
+ public const NAME = 'Leviy Release Tool';
public const VERSION = '@package_version@';
@@ -91,6 +91,7 @@ private function loadUserConfiguration(ContainerBuilder $container): void
throw new RuntimeException('Error reading the configuration file');
}
+ /** @var mixed[] $config */
$config = Yaml::parse($yamlContents);
$processor = new Processor();
diff --git a/src/Console/Command/SelfUpdateCommand.php b/src/Console/Command/SelfUpdateCommand.php
index 19e88d7..f55240f 100644
--- a/src/Console/Command/SelfUpdateCommand.php
+++ b/src/Console/Command/SelfUpdateCommand.php
@@ -3,96 +3,50 @@
namespace Leviy\ReleaseTool\Console\Command;
-use Humbug\SelfUpdate\Strategy\GithubStrategy;
-use Humbug\SelfUpdate\Updater;
use Leviy\ReleaseTool\Console\Application;
-use Leviy\ReleaseTool\Console\VersionHelper;
-use Symfony\Component\Console\Command\Command;
-use Symfony\Component\Console\Input\InputInterface;
-use Symfony\Component\Console\Input\InputOption;
-use Symfony\Component\Console\Output\OutputInterface;
+use SelfUpdate\SelfUpdateCommand as BaseSelfUpdateCommand;
+use function preg_match;
use function sprintf;
-final class SelfUpdateCommand extends Command
+final class SelfUpdateCommand extends BaseSelfUpdateCommand
{
- /**
- * @var Updater
- */
- private $updater;
-
- public function __construct(Updater $updater)
- {
- parent::__construct();
+ private const REPOSITORY = 'leviy/release-tool';
- $strategy = new GithubStrategy();
- $strategy->setPackageName('leviy/release-tool');
- $strategy->setPharName('release-tool.phar');
- $strategy->setCurrentLocalVersion(Application::VERSION);
+ private const NORMALIZED_VERSION_REGEX = '/^(?\d{1,5}).(?\d+).(?\d+).0$/';
- $updater->setStrategyObject($strategy);
-
- $this->updater = $updater;
- }
-
- protected function configure(): void
+ public function __construct()
{
- $this
- ->setName('self-update')
- ->setDescription('Updates release-tool.phar to the latest version')
- ->addOption(
- 'rollback',
- 'r',
- InputOption::VALUE_NONE,
- 'Revert to an older version of the release tool'
- )
- ->setHelp(
- <<%command.name% command checks for newer versions of the release
-tool and if found, installs the latest.
-
-%command.full_name%
-EOF
- );
+ parent::__construct(Application::NAME, Application::VERSION, self::REPOSITORY);
}
- protected function execute(InputInterface $input, OutputInterface $output): int
+ /**
+ * The method parent::getLatestReleaseFromGithub returns an array with a normalized version number.
+ * The normalized version is suffixed with an additional ".0" which doesn't really fit the commonly
+ * used "major.minor.patch" format. Here we detect whether an additional ".0" is suffixed to the
+ * version number and change it to the "major.minor.patch" format.
+ *
+ * @param array $options
+ * @return array
+ */
+ public function getLatestReleaseFromGithub(array $options): ?array
{
- if ($input->getOption('rollback')) {
- $output->writeln('Rolling back to the previous version.');
+ $latestReleaseFromGithub = parent::getLatestReleaseFromGithub($options);
- $this->updater->rollback();
-
- return 0;
+ if ($latestReleaseFromGithub === null) {
+ return null;
}
- if (!$this->updater->hasUpdate()) {
- $output->writeln(
- sprintf(
- 'You are already using version %s.',
- VersionHelper::removeVersionPrefix(Application::VERSION)
- )
- );
-
- return 0;
+ if (!preg_match(self::NORMALIZED_VERSION_REGEX, $latestReleaseFromGithub['version'], $matches)) {
+ return $latestReleaseFromGithub;
}
- $output->writeln(
- sprintf(
- 'Updating to version %s.',
- VersionHelper::removeVersionPrefix($this->updater->getNewVersion())
- )
- );
- $output->writeln('Downloading...');
-
- $this->updater->update();
-
- $output->writeln(
- sprintf(
- 'Use release-tool self-update --rollback to revert to version %s.',
- VersionHelper::removeVersionPrefix($this->updater->getOldVersion())
- )
+ $latestReleaseFromGithub['version'] = sprintf(
+ '%s.%s.%s',
+ $matches['major'],
+ $matches['minor'],
+ $matches['patch'],
);
- return 0;
+ return $latestReleaseFromGithub;
}
}
diff --git a/src/Console/InteractiveInformationCollector.php b/src/Console/InteractiveInformationCollector.php
index 3d0991a..5ee216f 100644
--- a/src/Console/InteractiveInformationCollector.php
+++ b/src/Console/InteractiveInformationCollector.php
@@ -26,8 +26,11 @@ public function askConfirmation(string $question): bool
/**
* @inheritdoc
*/
- public function askMultipleChoice(string $question, array $choices, ?string $default = null): string
+ public function askMultipleChoice(string $question, array $choices, ?string $default = null): ?string
{
- return $this->style->choice($question, $choices, $default);
+ /** @var ?string $choice */
+ $choice = $this->style->choice($question, $choices, $default);
+
+ return $choice;
}
}
diff --git a/src/Interaction/InformationCollector.php b/src/Interaction/InformationCollector.php
index 78731f8..f575361 100644
--- a/src/Interaction/InformationCollector.php
+++ b/src/Interaction/InformationCollector.php
@@ -10,5 +10,5 @@ public function askConfirmation(string $question): bool;
/**
* @param string[] $choices
*/
- public function askMultipleChoice(string $question, array $choices, ?string $default = null): string;
+ public function askMultipleChoice(string $question, array $choices, ?string $default = null): ?string;
}