diff --git a/.github/workflows/blog-api_build.yml b/.github/workflows/blog-api_build.yml index 297590dde..efe9c8cc2 100644 --- a/.github/workflows/blog-api_build.yml +++ b/.github/workflows/blog-api_build.yml @@ -14,6 +14,7 @@ on: - 'blog-api/psalm.xml' push: + branches: ['master'] paths-ignore: - 'blog-api/docs/**' - 'blog-api/README.md' @@ -34,7 +35,7 @@ jobs: name: PHP ${{ matrix.php }}-${{ matrix.os }} env: - extensions: fileinfo, pdo, pdo_sqlite, intl + extensions: fileinfo, pdo, pdo_sqlite, intl, pcntl key: cache-v1 YII_C3: true working_directory: blog-api @@ -48,8 +49,7 @@ jobs: - windows-latest php: - - 8.1 - - 8.2 + - 8.3 steps: - name: Checkout @@ -95,18 +95,5 @@ jobs: working-directory: ${{ env.working_directory }} - name: Run tests codeception - if: matrix.os != 'ubuntu-latest' || matrix.php != '8.0' run: vendor/bin/codecept run working-directory: ${{ env.working_directory }} - - - name: Run tests codeception with coverage - if: matrix.os == 'ubuntu-latest' && matrix.php == '8.0' - run: vendor/bin/codecept run --coverage-xml - working-directory: ${{ env.working_directory }} - - - name: Upload coverage to codecov - if: matrix.os == 'ubuntu-latest' && matrix.php == '8.0' - uses: codecov/codecov-action@v3 - with: - file: tests/_output/coverage.xml - working-directory: ${{ env.working_directory }} diff --git a/.github/workflows/blog-api_dependency.yml b/.github/workflows/blog-api_dependency.yml index ed73b9d87..d526f88f4 100644 --- a/.github/workflows/blog-api_dependency.yml +++ b/.github/workflows/blog-api_dependency.yml @@ -14,6 +14,7 @@ on: - 'blog-api/psalm.xml' push: + branches: ['master'] paths-ignore: - 'blog-api/docs/**' - 'blog-api/README.md' @@ -44,7 +45,7 @@ jobs: - ubuntu-latest php: - - 8.1 + - 8.3 steps: - name: Checkout diff --git a/.github/workflows/blog-api_static.yml b/.github/workflows/blog-api_static.yml index 84059dd27..a03440643 100644 --- a/.github/workflows/blog-api_static.yml +++ b/.github/workflows/blog-api_static.yml @@ -14,6 +14,7 @@ on: - 'blog-api/phpunit.xml.dist' push: + branches: ['master'] paths-ignore: - 'blog-api/docs/**' - 'blog-api/README.md' @@ -44,7 +45,7 @@ jobs: - ubuntu-latest php: - - 8.1 + - 8.3 steps: - name: Checkout diff --git a/.github/workflows/blog_build.yml b/.github/workflows/blog_build.yml index d1b87bca8..2a5d99df1 100644 --- a/.github/workflows/blog_build.yml +++ b/.github/workflows/blog_build.yml @@ -14,6 +14,7 @@ on: - 'blog/psalm.xml' push: + branches: ['master'] paths-ignore: - 'blog/docs/**' - 'blog/README.md' @@ -37,7 +38,7 @@ jobs: extensions: fileinfo, pdo, pdo_sqlite, intl key: cache-v1 YII_C3: true - working_directory: blog-api + working_directory: blog runs-on: ${{ matrix.os }} @@ -48,8 +49,7 @@ jobs: - windows-latest php: - - 8.1 - - 8.2 + - 8.3 steps: - name: Checkout @@ -94,19 +94,10 @@ jobs: run: composer update --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi working-directory: ${{ env.working_directory }} - - name: Run tests codeception - if: matrix.os != 'ubuntu-latest' || matrix.php != '8.0' - run: vendor/bin/codecept run + - name: Install dependencies with npm + run: npm update working-directory: ${{ env.working_directory }} - - name: Run tests codeception with coverage - if: matrix.os == 'ubuntu-latest' && matrix.php == '8.0' - run: vendor/bin/codecept run --coverage-xml + - name: Run tests codeception + run: vendor/bin/codecept run working-directory: ${{ env.working_directory }} - - - name: Upload coverage to codecov - if: matrix.os == 'ubuntu-latest' && matrix.php == '8.0' - uses: codecov/codecov-action@v3 - with: - file: tests/_output/coverage.xml - working-directory: ${{ env.working_directory }} diff --git a/.github/workflows/blog_dependency.yml b/.github/workflows/blog_dependency.yml index 3a2c9afd9..ba23cc45e 100644 --- a/.github/workflows/blog_dependency.yml +++ b/.github/workflows/blog_dependency.yml @@ -14,6 +14,7 @@ on: - 'blog/psalm.xml' push: + branches: ['master'] paths-ignore: - 'blog/docs/**' - 'blog/README.md' @@ -44,7 +45,7 @@ jobs: - ubuntu-latest php: - - 8.1 + - 8.3 steps: - name: Checkout diff --git a/.github/workflows/blog_static.yml b/.github/workflows/blog_static.yml index d0ab289a6..7307f85d2 100644 --- a/.github/workflows/blog_static.yml +++ b/.github/workflows/blog_static.yml @@ -14,6 +14,7 @@ on: - 'blog/phpunit.xml.dist' push: + branches: ['master'] paths-ignore: - 'blog/docs/**' - 'blog/README.md' @@ -44,7 +45,7 @@ jobs: - ubuntu-latest php: - - 8.1 + - 8.3 steps: - name: Checkout diff --git a/.styleci.yml b/.styleci.yml index 2b00d6317..76e29ece8 100644 --- a/.styleci.yml +++ b/.styleci.yml @@ -1,7 +1,7 @@ preset: psr12 risky: true -version: 8 +version: 8.1 finder: exclude: @@ -60,7 +60,6 @@ enabled: - phpdoc_order - phpdoc_property - phpdoc_scalar - - phpdoc_separation - phpdoc_singular_inheritdoc - phpdoc_trim - phpdoc_trim_consecutive_blank_line_separation @@ -82,3 +81,9 @@ enabled: - trailing_comma_in_multiline_array - unalign_double_arrow - unalign_equals + - empty_loop_body_braces + - integer_literal_case + - union_type_without_spaces + +disabled: + - function_declaration diff --git a/README.md b/README.md new file mode 100644 index 000000000..9332a3e38 --- /dev/null +++ b/README.md @@ -0,0 +1,12 @@ +Yii 3 Demo Code +=============== + +This repository contains the code for the Yii 3 demo projects: + +Deployment +---------- + +### Manually Renew SSL Cert + + docker-compose run certbot + docker-compose restart gateway diff --git a/blog-api/.editorconfig b/blog-api/.editorconfig index 5e9a93ea5..8802775ba 100644 --- a/blog-api/.editorconfig +++ b/blog-api/.editorconfig @@ -10,6 +10,10 @@ indent_style = space indent_size = 4 trim_trailing_whitespace = true +[*.php] +ij_php_space_before_short_closure_left_parenthesis = false +ij_php_space_after_type_cast = true + [*.md] trim_trailing_whitespace = false diff --git a/blog-api/.env.test b/blog-api/.env.test index dbdcc044e..881657317 100644 --- a/blog-api/.env.test +++ b/blog-api/.env.test @@ -1,2 +1,3 @@ YII_ENV=test YII_DEBUG=true +BASE_URL=/ diff --git a/blog-api/.gitignore b/blog-api/.gitignore index cb3701b11..c1cab5794 100644 --- a/blog-api/.gitignore +++ b/blog-api/.gitignore @@ -15,8 +15,6 @@ Thumbs.db # composer vendor dir /vendor -/composer.lock - # composer itself is not needed composer.phar diff --git a/blog-api/.scrutinizer.yml b/blog-api/.scrutinizer.yml deleted file mode 100644 index f6173517a..000000000 --- a/blog-api/.scrutinizer.yml +++ /dev/null @@ -1,40 +0,0 @@ -checks: - php: true - -filter: - paths: - - "src/*" - -build: - image: default-bionic - - environment: - variables: - YII_ENV: test - - php: - version: 8.1.8 - ini: - xdebug.mode: coverage - - nodes: - analysis: - tests: - override: - - php-scrutinizer-run - - codeception: - dependencies: - override: - - composer self-update - - composer update --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi - - tests: - override: - - command: | - ./yii serve 127.0.0.1:8080 > ./runtime/yii.log 2>&1 & - vendor/bin/codecept run --coverage-xml --env github-ci - on_node: 1 - coverage: - file: runtime/tests/_output/coverage.xml - format: php-clover diff --git a/blog-api/Makefile b/blog-api/Makefile new file mode 100644 index 000000000..ea6f8e855 --- /dev/null +++ b/blog-api/Makefile @@ -0,0 +1,19 @@ +init: composer-update up + +up: + docker-compose up -d +down: + docker-compose down + +composer: + docker-compose run php composer $(filter-out $@, $(MAKECMDGOALS)) +composer-update: + docker-compose run php composer update + +yii3: + docker-compose run php ./yii $(filter-out $@, $(MAKECMDGOALS)) + +test: + docker-compose run php ./vendor/bin/codecept run +psalm: + docker-compose run php ./vendor/bin/psalm diff --git a/blog-api/README.md b/blog-api/README.md index dd6a209b3..ddb3136d6 100644 --- a/blog-api/README.md +++ b/blog-api/README.md @@ -1,6 +1,6 @@

- + Yii

Yii Framework API Demo Project


@@ -9,7 +9,6 @@ [![Latest Stable Version](https://poser.pugx.org/yiisoft/demo-api/v/stable.png)](https://packagist.org/packages/yiisoft/demo-api) [![Total Downloads](https://poser.pugx.org/yiisoft/demo-api/downloads.png)](https://packagist.org/packages/yiisoft/demo-api) [![Build status](https://github.com/yiisoft/demo-api/workflows/build/badge.svg)](https://github.com/yiisoft/demo-api/actions?query=workflow%3Abuild) -[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/yiisoft/demo-api/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/yiisoft/demo-api/?branch=master) [![static analysis](https://github.com/yiisoft/demo-api/workflows/static%20analysis/badge.svg)](https://github.com/yiisoft/demo-api/actions?query=workflow%3A%22static+analysis%22) API Demo application for Yii 3. @@ -40,13 +39,13 @@ Change ownership of the app directory to web group: chown -R :www-data . ``` -Usually the application is available at http://localhost:8080. +Usually the application is available at . Authorization is performed via the `X-Api-Key` header. ## API documentation -API documentation is available at `/docs`. It is built from OpenAPI annotations (`@OA`). +API documentation is available at `/docs`. It is built from OpenAPI attributes (`#[OA\ ... ]`). See [Swagger-PHP documentation](https://zircote.github.io/swagger-php/Getting-started.html#write-annotations) for details on how to annotate your code. @@ -56,7 +55,6 @@ on how to annotate your code. ./vendor/bin/codecept run ``` - ## Static analysis The code is statically analyzed with [Psalm](https://psalm.dev/). To run static analysis: diff --git a/blog-api/composer.json b/blog-api/composer.json index f18c873c6..b0d568068 100644 --- a/blog-api/composer.json +++ b/blog-api/composer.json @@ -14,24 +14,25 @@ "issues": "https://github.com/yiisoft/demo-api/issues?state=open", "forum": "https://www.yiiframework.com/forum/", "wiki": "https://www.yiiframework.com/wiki/", - "irc": "irc://irc.freenode.net/yii", + "irc": "ircs://irc.libera.chat:6697/yii", "source": "https://github.com/yiisoft/demo-api" }, "minimum-stability": "dev", "prefer-stable": true, "require": { - "php": "^8.1", + "php": "8.3.*", "ext-intl": "*", "cebe/markdown": "^1.2@dev", + "cycle/annotated": "^3.5", "cycle/database": "^2.0", "cycle/entity-behavior": "^1.0", "cycle/orm": "^2.0", "doctrine/collections": "^2.0", - "httpsoft/http-message": "^1.0.5", + "httpsoft/http-message": "^1.1", "myclabs/php-enum": "^1.7", "psr/container": "^1.0|^2.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1|^2.0", "psr/http-server-handler": "^1.0", "psr/http-server-middleware": "^1.0", "psr/log": "^3.0", @@ -41,7 +42,8 @@ "yiisoft/cache": "^3.0", "yiisoft/cache-file": "^3.0", "yiisoft/config": "^1.0", - "yiisoft/data": "^1.0", + "yiisoft/data": "dev-master", + "yiisoft/data-cycle": "dev-master", "yiisoft/data-response": "^2.0", "yiisoft/definitions": "^3.0", "yiisoft/di": "^1.0", @@ -49,28 +51,31 @@ "yiisoft/factory": "^1.0", "yiisoft/files": "^2.0", "yiisoft/http": "^1.2", + "yiisoft/hydrator-validator": "^2.0", "yiisoft/injector": "^1.0", + "yiisoft/input-http": "^1.0", "yiisoft/log": "^2.0", "yiisoft/log-target-file": "^3.0", + "yiisoft/middleware-dispatcher": "^5.1", "yiisoft/request-body-parser": "^1.1", - "yiisoft/request-model": "dev-master", "yiisoft/router": "^3.0", "yiisoft/router-fastroute": "^3.0", "yiisoft/security": "^1.0", "yiisoft/translator": "^3.0", "yiisoft/translator-message-php": "^1.1", "yiisoft/user": "^2.0", - "yiisoft/validator": "^1.0", + "yiisoft/validator": "^2.0", "yiisoft/yii-console": "^2.0", - "yiisoft/yii-cycle": "dev-master", - "yiisoft/yii-debug": "^3.0@dev", + "yiisoft/yii-cycle": "^1.0", + "yiisoft/yii-debug": "dev-master", "yiisoft/yii-event": "^2.0", "yiisoft/yii-http": "^1.0", - "yiisoft/yii-middleware": "dev-master", - "yiisoft/yii-queue": "3.0.x-dev", + "yiisoft/yii-middleware": "^1.0", + "yiisoft/queue": "3.0.x-dev", "yiisoft/yii-runner-console": "^2.0", "yiisoft/yii-runner-http": "^2.0", - "yiisoft/yii-swagger": "^2.0" + "yiisoft/yii-swagger": "^2.0", + "zircote/swagger-php": "^4.0" }, "require-dev": { "codeception/c3": "^2.6", @@ -83,6 +88,7 @@ "codeception/module-rest": "^3.1", "phpunit/phpunit": "^9.5", "roave/infection-static-analysis-plugin": "^1.16", + "roave/security-advisories": "dev-latest", "spatie/phpunit-watcher": "^1.23", "vimeo/psalm": "^4.18", "yiisoft/json": "^1.0", diff --git a/blog-api/composer.lock b/blog-api/composer.lock new file mode 100644 index 000000000..455cc220c --- /dev/null +++ b/blog-api/composer.lock @@ -0,0 +1,16826 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "dc4fd69b5a2310f8fdc45cd66be2b5ee", + "packages": [ + { + "name": "alexkart/curl-builder", + "version": "1.0.8", + "source": { + "type": "git", + "url": "https://github.com/alexkart/curl-builder.git", + "reference": "626cf95a84a37b6e1643675f7fc4acfc2f90dbfb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/alexkart/curl-builder/zipball/626cf95a84a37b6e1643675f7fc4acfc2f90dbfb", + "reference": "626cf95a84a37b6e1643675f7fc4acfc2f90dbfb", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "psr/http-message": "^1.0" + }, + "require-dev": { + "nyholm/psr7": "^1.3", + "phan/phan": "^5.4", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Alexkart\\CurlBuilder\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alexander Kartavenko", + "email": "askemailbox@gmail.com" + } + ], + "description": "PSR-7 compatible curl builder.", + "support": { + "issues": "https://github.com/alexkart/curl-builder/issues", + "source": "https://github.com/alexkart/curl-builder/tree/1.0.8" + }, + "time": "2023-05-29T13:44:51+00:00" + }, + { + "name": "cebe/markdown", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/cebe/markdown.git", + "reference": "9bac5e971dd391e2802dca5400bbeacbaea9eb86" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cebe/markdown/zipball/9bac5e971dd391e2802dca5400bbeacbaea9eb86", + "reference": "9bac5e971dd391e2802dca5400bbeacbaea9eb86", + "shasum": "" + }, + "require": { + "lib-pcre": "*", + "php": ">=5.4.0" + }, + "require-dev": { + "cebe/indent": "*", + "facebook/xhprof": "*@dev", + "phpunit/phpunit": "4.1.*" + }, + "bin": [ + "bin/markdown" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "cebe\\markdown\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Carsten Brandt", + "email": "mail@cebe.cc", + "homepage": "http://cebe.cc/", + "role": "Creator" + } + ], + "description": "A super fast, highly extensible markdown parser for PHP", + "homepage": "https://github.com/cebe/markdown#readme", + "keywords": [ + "extensible", + "fast", + "gfm", + "markdown", + "markdown-extra" + ], + "support": { + "issues": "https://github.com/cebe/markdown/issues", + "source": "https://github.com/cebe/markdown" + }, + "time": "2018-03-26T11:24:36+00:00" + }, + { + "name": "cycle/annotated", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/annotated.git", + "reference": "4024d2ea9b5656cdd0bf4e79acc485dc063b8273" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/annotated/zipball/4024d2ea9b5656cdd0bf4e79acc485dc063b8273", + "reference": "4024d2ea9b5656cdd0bf4e79acc485dc063b8273", + "shasum": "" + }, + "require": { + "cycle/orm": "^2.7", + "cycle/schema-builder": "^2.8", + "doctrine/annotations": "^1.14.3 || ^2.0.1", + "doctrine/inflector": "^2.0", + "php": ">=8.0", + "spiral/attributes": "^2.8|^3.0", + "spiral/tokenizer": "^2.8|^3.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6", + "vimeo/psalm": "^4.30" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Annotated\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Cycle ORM Annotated Entities generator", + "support": { + "issues": "https://github.com/cycle/annotated/issues", + "source": "https://github.com/cycle/annotated/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://github.com/cycle", + "type": "github" + } + ], + "time": "2024-02-08T21:32:45+00:00" + }, + { + "name": "cycle/database", + "version": "2.11.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/database.git", + "reference": "5f3fe4fc198d607fc40110e2fdb36b3c1c4e10f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/database/zipball/5f3fe4fc198d607fc40110e2fdb36b3c1c4e10f7", + "reference": "5f3fe4fc198d607fc40110e2fdb36b3c1c4e10f7", + "shasum": "" + }, + "require": { + "ext-pdo": "*", + "php": ">=8.0", + "psr/log": "1 - 3", + "spiral/core": "^2.8 || ^3.0", + "spiral/pagination": "^2.8 || ^3.0", + "symfony/polyfill-php83": "^1.28" + }, + "conflict": { + "spiral/database": "*" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.42", + "infection/infection": "^0.26.10", + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^9.5", + "spiral/tokenizer": "^2.14 || ^3.0", + "vimeo/psalm": "^5.18" + }, + "type": "library", + "autoload": { + "files": [ + "src/polyfill.php", + "src/functions_polyfill.php" + ], + "psr-4": { + "Cycle\\Database\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + } + ], + "description": "DBAL, schema introspection, migration and pagination", + "homepage": "https://cycle-orm.dev", + "keywords": [ + "database", + "dbal", + "mssql", + "mysql", + "orm", + "postgresql", + "query-builder", + "sql", + "sqlite" + ], + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/database/issues", + "source": "https://github.com/cycle/database" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-06-11T11:30:02+00:00" + }, + { + "name": "cycle/entity-behavior", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/cycle/entity-behavior.git", + "reference": "9b7ad13a68a0ea0dca0399b7f44f20b691a18120" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/entity-behavior/zipball/9b7ad13a68a0ea0dca0399b7f44f20b691a18120", + "reference": "9b7ad13a68a0ea0dca0399b7f44f20b691a18120", + "shasum": "" + }, + "require": { + "cycle/orm": "^2.7", + "cycle/schema-builder": "^2.8", + "php": ">=8.0", + "psr/container": "^1.0|^2.0", + "psr/event-dispatcher": "^1", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "cycle/annotated": "^3.0", + "phpunit/phpunit": "^9.5", + "ramsey/uuid": "^4.5", + "spiral/tokenizer": "^2.8 || ^3.0", + "vimeo/psalm": "^5.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\ORM\\Entity\\Behavior\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Provides a collection of attributes that add behaviors to Cycle ORM entities", + "homepage": "https://cycle-orm.dev", + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/entity-behavior/issues", + "source": "https://github.com/cycle/entity-behavior" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-08-09T11:47:14+00:00" + }, + { + "name": "cycle/migrations", + "version": "v4.2.3", + "source": { + "type": "git", + "url": "https://github.com/cycle/migrations.git", + "reference": "434b08be175bf87f920651b9f6d91fc1cb7ed3ba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/migrations/zipball/434b08be175bf87f920651b9f6d91fc1cb7ed3ba", + "reference": "434b08be175bf87f920651b9f6d91fc1cb7ed3ba", + "shasum": "" + }, + "require": { + "cycle/database": "^2.7.0", + "php": ">=8.1", + "spiral/core": "^3.0", + "spiral/files": "^3.0", + "spiral/reactor": "^3.0", + "spiral/tokenizer": "^3.0" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "dev-master" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Migrations\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Database migrations, migration scaffolding", + "support": { + "issues": "https://github.com/cycle/migrations/issues", + "source": "https://github.com/cycle/migrations/tree/v4.2.3" + }, + "time": "2024-01-25T10:49:43+00:00" + }, + { + "name": "cycle/orm", + "version": "v2.9.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/orm.git", + "reference": "23023be5e8452c1e5b05417f9c4539db71d60927" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/orm/zipball/23023be5e8452c1e5b05417f9c4539db71d60927", + "reference": "23023be5e8452c1e5b05417f9c4539db71d60927", + "shasum": "" + }, + "require": { + "cycle/database": "^2.8.1", + "doctrine/instantiator": "^1.3.1 || ^2.0", + "ext-pdo": "*", + "php": ">=8.0", + "spiral/core": "^2.8 || ^3.0" + }, + "require-dev": { + "doctrine/collections": "^1.6 || ^2.0", + "illuminate/collections": "^8.0", + "loophp/collection": "^6.0 || ^7.0", + "mockery/mockery": "^1.1", + "phpunit/phpunit": "^9.5", + "ramsey/uuid": "^4.0", + "spiral/tokenizer": "^2.8 || ^3.0", + "symfony/var-dumper": "^5.2 || ^6.0 || ^7.0", + "vimeo/psalm": "5.21" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\ORM\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "PHP DataMapper ORM and Data Modelling Engine", + "homepage": "https://cycle-orm.dev", + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/orm/issues", + "source": "https://github.com/cycle/orm" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-06-05T13:14:36+00:00" + }, + { + "name": "cycle/schema-builder", + "version": "v2.9.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-builder.git", + "reference": "413af8fc8f93c6e48cebc76ab6c37c65fe2cab63" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-builder/zipball/413af8fc8f93c6e48cebc76ab6c37c65fe2cab63", + "reference": "413af8fc8f93c6e48cebc76ab6c37c65fe2cab63", + "shasum": "" + }, + "require": { + "cycle/database": "^2.7.1", + "cycle/orm": "^2.7", + "php": ">=8.0", + "yiisoft/friendly-exception": "^1.1" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "spiral/tokenizer": "^2.8", + "symfony/console": "^6.0 || ^7.0", + "vimeo/psalm": "^5.12" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Cycle\\Schema\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Cycle ORM Schema Builder", + "support": { + "issues": "https://github.com/cycle/schema-builder/issues", + "source": "https://github.com/cycle/schema-builder/tree/v2.9.0" + }, + "time": "2024-07-10T16:20:17+00:00" + }, + { + "name": "cycle/schema-migrations-generator", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-migrations-generator.git", + "reference": "94cb613ec77376cf880c9488daa3668b1f856e80" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-migrations-generator/zipball/94cb613ec77376cf880c9488daa3668b1f856e80", + "reference": "94cb613ec77376cf880c9488daa3668b1f856e80", + "shasum": "" + }, + "require": { + "cycle/database": "^2.4.1", + "cycle/migrations": "^4.2", + "cycle/schema-builder": "^2.0", + "php": ">=8.1" + }, + "require-dev": { + "cycle/annotated": "^3.0", + "cycle/orm": "^2.0", + "phpunit/phpunit": "^9.5", + "spiral/debug": "^3.0", + "spiral/framework": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Schema\\Generator\\Migrations\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Cycle ORM Migration generation", + "support": { + "issues": "https://github.com/cycle/schema-migrations-generator/issues", + "source": "https://github.com/cycle/schema-migrations-generator/tree/2.2.0" + }, + "time": "2023-11-02T09:24:12+00:00" + }, + { + "name": "cycle/schema-provider", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-provider.git", + "reference": "d6e800d6cd498cf1053522b6c2348f6eea587aae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-provider/zipball/d6e800d6cd498cf1053522b6c2348f6eea587aae", + "reference": "d6e800d6cd498cf1053522b6c2348f6eea587aae", + "shasum": "" + }, + "require": { + "cycle/orm": "^2.0", + "cycle/schema-renderer": "^1.2", + "php": ">=8.0", + "psr/container": "^1.0 || ^2.0", + "psr/simple-cache": "^2.0 || ^3.0", + "spiral/files": "^2.14 || ^3.11", + "webmozart/glob": "^4.6" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.48", + "phpunit/phpunit": "^9.6", + "roave/security-advisories": "dev-latest", + "vimeo/psalm": "^4.30.0 || ^5.21", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Schema\\Provider\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Buchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Cycle ORM Schema providers", + "homepage": "https://cycle-orm.dev", + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/schema-provider/issues", + "source": "https://github.com/cycle/schema-provider" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-02-05T13:58:34+00:00" + }, + { + "name": "cycle/schema-renderer", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-renderer.git", + "reference": "5c2b7977c2803c6c9bacc56064abda5ea2b273a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-renderer/zipball/5c2b7977c2803c6c9bacc56064abda5ea2b273a3", + "reference": "5c2b7977c2803c6c9bacc56064abda5ea2b273a3", + "shasum": "" + }, + "require": { + "cycle/orm": "1.2 - 2", + "php": ">=7.4" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "spiral/code-style": "^1.0", + "vimeo/psalm": "^4.10|^5.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Schema\\Renderer\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Utils for Cycle ORM Schema rendering", + "support": { + "issues": "https://github.com/cycle/schema-renderer/issues", + "source": "https://github.com/cycle/schema-renderer/tree/1.2.0" + }, + "time": "2022-12-15T16:14:14+00:00" + }, + { + "name": "doctrine/annotations", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/annotations.git", + "reference": "901c2ee5d26eb64ff43c47976e114bf00843acf7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/901c2ee5d26eb64ff43c47976e114bf00843acf7", + "reference": "901c2ee5d26eb64ff43c47976e114bf00843acf7", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^2 || ^3", + "ext-tokenizer": "*", + "php": "^7.2 || ^8.0", + "psr/cache": "^1 || ^2 || ^3" + }, + "require-dev": { + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.10.28", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "symfony/cache": "^5.4 || ^6.4 || ^7", + "vimeo/psalm": "^4.30 || ^5.14" + }, + "suggest": { + "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "https://www.doctrine-project.org/projects/annotations.html", + "keywords": [ + "annotations", + "docblock", + "parser" + ], + "support": { + "issues": "https://github.com/doctrine/annotations/issues", + "source": "https://github.com/doctrine/annotations/tree/2.0.2" + }, + "time": "2024-09-05T10:17:24+00:00" + }, + { + "name": "doctrine/collections", + "version": "2.2.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/collections.git", + "reference": "d8af7f248c74f195f7347424600fd9e17b57af59" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/collections/zipball/d8af7f248c74f195f7347424600fd9e17b57af59", + "reference": "d8af7f248c74f195f7347424600fd9e17b57af59", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1", + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^12", + "ext-json": "*", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.0", + "phpunit/phpunit": "^10.5", + "vimeo/psalm": "^5.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Collections\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Collections library that adds additional functionality on top of PHP arrays.", + "homepage": "https://www.doctrine-project.org/projects/collections.html", + "keywords": [ + "array", + "collections", + "iterators", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/collections/issues", + "source": "https://github.com/doctrine/collections/tree/2.2.2" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcollections", + "type": "tidelift" + } + ], + "time": "2024-04-18T06:56:21+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "1.1.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", + "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpstan/phpstan": "1.4.10 || 1.10.15", + "phpstan/phpstan-phpunit": "^1.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "psalm/plugin-phpunit": "0.18.4", + "psr/log": "^1 || ^2 || ^3", + "vimeo/psalm": "4.30.0 || 5.12.0" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/1.1.3" + }, + "time": "2024-01-30T19:34:25+00:00" + }, + { + "name": "doctrine/inflector", + "version": "2.0.10", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/5817d0659c5b50c9b950feb9af7b9668e2c436bc", + "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^11.0", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.3", + "phpunit/phpunit": "^8.5 || ^9.5", + "vimeo/psalm": "^4.25 || ^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.10" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "type": "tidelift" + } + ], + "time": "2024-02-18T20:23:39+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^11", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "keywords": [ + "constructor", + "instantiate" + ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/2.0.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2022-12-30T00:23:10+00:00" + }, + { + "name": "doctrine/lexer", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^12", + "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^10.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.21" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/3.0.1" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2024-02-05T11:56:58+00:00" + }, + { + "name": "graham-campbell/result-type", + "version": "v1.1.3", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/3ba905c11371512af9d9bdd27d99b782216b6945", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:45:45+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "2.7.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1 || ^2.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "http-interop/http-factory-tests": "0.9.0", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "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/2.7.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", + "type": "tidelift" + } + ], + "time": "2024-07-18T11:15:46+00:00" + }, + { + "name": "httpsoft/http-message", + "version": "1.1.6", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-message.git", + "reference": "f6c88e2189b9f75f10dfaeb0a85c56ea04a53c19" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-message/zipball/f6c88e2189b9f75f10dfaeb0a85c56ea04a53c19", + "reference": "f6c88e2189b9f75f10dfaeb0a85c56ea04a53c19", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1|^2.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "php-http/psr7-integration-tests": "^1.3", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Strict and fast implementation of PSR-7 and PSR-17", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-message", + "php", + "psr-17", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/message", + "issues": "https://github.com/httpsoft/http-message/issues", + "source": "https://github.com/httpsoft/http-message" + }, + "time": "2024-08-09T07:13:21+00:00" + }, + { + "name": "jetbrains/phpstorm-attributes", + "version": "1.1", + "source": { + "type": "git", + "url": "https://github.com/JetBrains/phpstorm-attributes.git", + "reference": "22fb28d679deceedba8366dbae65cc8ebfc17e26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/JetBrains/phpstorm-attributes/zipball/22fb28d679deceedba8366dbae65cc8ebfc17e26", + "reference": "22fb28d679deceedba8366dbae65cc8ebfc17e26", + "shasum": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "JetBrains\\PhpStorm\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "JetBrains", + "homepage": "https://www.jetbrains.com" + } + ], + "description": "PhpStorm specific attributes", + "keywords": [ + "attributes", + "jetbrains", + "phpstorm" + ], + "support": { + "issues": "https://youtrack.jetbrains.com/newIssue?project=WI", + "source": "https://github.com/JetBrains/phpstorm-attributes/tree/1.1" + }, + "time": "2023-09-01T08:50:25+00:00" + }, + { + "name": "myclabs/php-enum", + "version": "1.8.4", + "source": { + "type": "git", + "url": "https://github.com/myclabs/php-enum.git", + "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/php-enum/zipball/a867478eae49c9f59ece437ae7f9506bfaa27483", + "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "1.*", + "vimeo/psalm": "^4.6.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "MyCLabs\\Enum\\": "src/" + }, + "classmap": [ + "stubs/Stringable.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP Enum contributors", + "homepage": "https://github.com/myclabs/php-enum/graphs/contributors" + } + ], + "description": "PHP Enum implementation", + "homepage": "http://github.com/myclabs/php-enum", + "keywords": [ + "enum" + ], + "support": { + "issues": "https://github.com/myclabs/php-enum/issues", + "source": "https://github.com/myclabs/php-enum/tree/1.8.4" + }, + "funding": [ + { + "url": "https://github.com/mnapoli", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum", + "type": "tidelift" + } + ], + "time": "2022-08-04T09:53:51+00:00" + }, + { + "name": "nette/php-generator", + "version": "v4.1.6", + "source": { + "type": "git", + "url": "https://github.com/nette/php-generator.git", + "reference": "c90961e782ae86e517fe5ed732eb2b512945565b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/php-generator/zipball/c90961e782ae86e517fe5ed732eb2b512945565b", + "reference": "c90961e782ae86e517fe5ed732eb2b512945565b", + "shasum": "" + }, + "require": { + "nette/utils": "^3.2.9 || ^4.0", + "php": "8.0 - 8.4" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "dev-master", + "nette/tester": "^2.4", + "nikic/php-parser": "^4.18 || ^5.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.8" + }, + "suggest": { + "nikic/php-parser": "to use ClassType::from(withBodies: true) & ClassType::fromCode()" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.1-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.3 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/v4.1.6" + }, + "time": "2024-09-10T09:31:55+00:00" + }, + { + "name": "nette/utils", + "version": "v4.0.5", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "shasum": "" + }, + "require": { + "php": "8.0 - 8.4" + }, + "conflict": { + "nette/finder": "<3", + "nette/schema": "<1.2.2" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "dev-master", + "nette/tester": "^2.5", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.9" + }, + "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()" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-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/v4.0.5" + }, + "time": "2024-08-07T15:39:19+00:00" + }, + { + "name": "nikic/fast-route", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/FastRoute.git", + "reference": "181d480e08d9476e61381e04a71b34dc0432e812" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/FastRoute/zipball/181d480e08d9476e61381e04a71b34dc0432e812", + "reference": "181d480e08d9476e61381e04a71b34dc0432e812", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35|~5.7" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "FastRoute\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov", + "email": "nikic@php.net" + } + ], + "description": "Fast request router for PHP", + "keywords": [ + "router", + "routing" + ], + "support": { + "issues": "https://github.com/nikic/FastRoute/issues", + "source": "https://github.com/nikic/FastRoute/tree/master" + }, + "time": "2018-02-13T20:26:39+00:00" + }, + { + "name": "phpoption/phpoption", + "version": "1.9.3", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/e3fac8b24f56113f7cb96af14958c0dd16330f54", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "1.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.9.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:41:07+00:00" + }, + { + "name": "psr/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client" + }, + "time": "2023-09-23T14:17:50+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "psr/http-message": "^1.0 || ^2.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": "https://www.php-fig.org/" + } + ], + "description": "PSR-17: 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" + }, + "time": "2024-04-15T12:06:14+00:00" + }, + { + "name": "psr/http-message", + "version": "1.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1.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 interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/1.1" + }, + "time": "2023-04-04T09:50:52+00:00" + }, + { + "name": "psr/http-server-handler", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-server-handler.git", + "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-server-handler/zipball/84c4fb66179be4caaf8e97bd239203245302e7d4", + "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4", + "shasum": "" + }, + "require": { + "php": ">=7.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Server\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP server-side request handler", + "keywords": [ + "handler", + "http", + "http-interop", + "psr", + "psr-15", + "psr-7", + "request", + "response", + "server" + ], + "support": { + "source": "https://github.com/php-fig/http-server-handler/tree/1.0.2" + }, + "time": "2023-04-10T20:06:20+00:00" + }, + { + "name": "psr/http-server-middleware", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-server-middleware.git", + "reference": "c1481f747daaa6a0782775cd6a8c26a1bf4a3829" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-server-middleware/zipball/c1481f747daaa6a0782775cd6a8c26a1bf4a3829", + "reference": "c1481f747daaa6a0782775cd6a8c26a1bf4a3829", + "shasum": "" + }, + "require": { + "php": ">=7.0", + "psr/http-message": "^1.0 || ^2.0", + "psr/http-server-handler": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Server\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP server-side middleware", + "keywords": [ + "http", + "http-interop", + "middleware", + "psr", + "psr-15", + "psr-7", + "request", + "response" + ], + "support": { + "issues": "https://github.com/php-fig/http-server-middleware/issues", + "source": "https://github.com/php-fig/http-server-middleware/tree/1.0.2" + }, + "time": "2023-04-11T06:14:47+00:00" + }, + { + "name": "psr/log", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/3.0.2" + }, + "time": "2024-09-11T13:17:53+00:00" + }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" + }, + "time": "2021-10-29T13:26:27+00:00" + }, + { + "name": "ralouphie/getallheaders", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" + }, + "type": "library", + "autoload": { + "files": [ + "src/getallheaders.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" + } + ], + "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, + "time": "2019-03-08T08:55:37+00:00" + }, + { + "name": "spiral/attributes", + "version": "v3.1.7", + "source": { + "type": "git", + "url": "https://github.com/spiral/attributes.git", + "reference": "fc6657de4ed83913c7f02241e5fe4e8e799af8fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/attributes/zipball/fc6657de4ed83913c7f02241e5fe4e8e799af8fa", + "reference": "fc6657de4ed83913c7f02241e5fe4e8e799af8fa", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/cache": "1 - 3", + "psr/simple-cache": "1 - 3" + }, + "require-dev": { + "doctrine/annotations": "^1.14 || ^2.0", + "jetbrains/phpstorm-attributes": "^1.0", + "phpunit/phpunit": "^9.5.20", + "vimeo/psalm": "^5.17" + }, + "type": "library", + "autoload": { + "files": [ + "src/polyfill.php" + ], + "psr-4": { + "Spiral\\Attributes\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + }, + { + "name": "Kirill Nesmeyanov (SerafimArts)", + "email": "kirill.nesmeyanov@spiralscout.com" + } + ], + "description": "PHP attributes reader", + "homepage": "https://spiral.dev", + "keywords": [ + "annotations", + "attributes", + "metadata" + ], + "support": { + "chat": "https://discord.gg/V6EK4he", + "docs": "https://spiral.dev/docs", + "forum": "https://forum.spiral.dev", + "issues": "https://github.com/spiral/attributes/issues", + "source": "https://github.com/spiral/attributes" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-08-22T10:18:52+00:00" + }, + { + "name": "spiral/core", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/spiral/core.git", + "reference": "53bec6e433d709f59ef6c0ce966f4a640c4d1bad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/core/zipball/53bec6e433d709f59ef6c0ce966f4a640c4d1bad", + "reference": "53bec6e433d709f59ef6c0ce966f4a640c4d1bad", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0" + }, + "provide": { + "psr/container-implementation": "^1.1|^2.0" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Core\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "IoC container, IoC scopes, factory, memory, configuration interfaces", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/core" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-10T16:54:43+00:00" + }, + { + "name": "spiral/files", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/files.git", + "reference": "0c394e058ee994b6d18a229dcbe310e4de3a2b7a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/files/zipball/0c394e058ee994b6d18a229dcbe310e4de3a2b7a", + "reference": "0c394e058ee994b6d18a229dcbe310e4de3a2b7a", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Files\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "File Toolkit: atomic file manager", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/files" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-03T16:58:09+00:00" + }, + { + "name": "spiral/logger", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/logger.git", + "reference": "146fbf7fb320ea4708f5158e21f8fd4d48aa5b0e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/logger/zipball/146fbf7fb320ea4708f5158e21f8fd4d48aa5b0e", + "reference": "146fbf7fb320ea4708f5158e21f8fd4d48aa5b0e", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/log": "1 - 3", + "spiral/core": "^3.14.3" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Logger\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "LogFactory and global log listeners", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/logger" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-11T17:40:26+00:00" + }, + { + "name": "spiral/pagination", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/pagination.git", + "reference": "93c9d93c811b4ec6037491e516c3e194fdc94848" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/pagination/zipball/93c9d93c811b4ec6037491e516c3e194fdc94848", + "reference": "93c9d93c811b4ec6037491e516c3e194fdc94848", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Pagination\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Common pagination interfaces", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/pagination" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-03T16:59:10+00:00" + }, + { + "name": "spiral/reactor", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/reactor.git", + "reference": "74639a44ced7eb289820fdcca96ff9322f79f882" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/reactor/zipball/74639a44ced7eb289820fdcca96ff9322f79f882", + "reference": "74639a44ced7eb289820fdcca96ff9322f79f882", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^1.4|^2.0", + "nette/php-generator": "^4.1.2", + "php": ">=8.1", + "spiral/files": "^3.14.3" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "psr/container": "^1.1|^2.0", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Reactor\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Reactor: Code Scaffolding", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/reactor" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-11T17:40:25+00:00" + }, + { + "name": "spiral/tokenizer", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/tokenizer.git", + "reference": "b5bf2ed89880d91c228bf1e3ebfda2b508c008ff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/tokenizer/zipball/b5bf2ed89880d91c228bf1e3ebfda2b508c008ff", + "reference": "b5bf2ed89880d91c228bf1e3ebfda2b508c008ff", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=8.1", + "spiral/core": "^3.14.3", + "spiral/logger": "^3.14.3", + "symfony/finder": "^5.3.7 || ^6.0 || ^7.0" + }, + "require-dev": { + "mockery/mockery": "^1.6", + "phpunit/phpunit": "^10.1", + "spiral/attributes": "^2.8|^3.0", + "spiral/boot": "^3.14.3", + "spiral/files": "^3.14.3", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Tokenizer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Static Analysis: Class and Invocation locators", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/tokenizer" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-11T17:40:38+00:00" + }, + { + "name": "swagger-api/swagger-ui", + "version": "v5.17.14", + "source": { + "type": "git", + "url": "https://github.com/swagger-api/swagger-ui.git", + "reference": "74ed0adebfc9c8dd0de2bf8e81495b022a66c083" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/swagger-api/swagger-ui/zipball/74ed0adebfc9c8dd0de2bf8e81495b022a66c083", + "reference": "74ed0adebfc9c8dd0de2bf8e81495b022a66c083", + "shasum": "" + }, + "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Anna Bodnia", + "email": "anna.bodnia@gmail.com" + }, + { + "name": "Buu Nguyen", + "email": "buunguyen@gmail.com" + }, + { + "name": "Josh Ponelat", + "email": "jponelat@gmail.com" + }, + { + "name": "Kyle Shockey", + "email": "kyleshockey1@gmail.com" + }, + { + "name": "Robert Barnwell", + "email": "robert@robertismy.name" + }, + { + "name": "Sahar Jafari", + "email": "shr.jafari@gmail.com" + } + ], + "description": " Swagger UI is a collection of HTML, Javascript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.", + "homepage": "http://swagger.io", + "keywords": [ + "api", + "documentation", + "openapi", + "specification", + "swagger", + "ui" + ], + "support": { + "issues": "https://github.com/swagger-api/swagger-ui/issues", + "source": "https://github.com/swagger-api/swagger-ui/tree/v5.17.14" + }, + "time": "2024-05-28T05:24:40+00:00" + }, + { + "name": "symfony/console", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "72d080eb9edf80e36c19be61f72c98ed8273b765" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/72d080eb9edf80e36c19be61f72c98ed8273b765", + "reference": "72d080eb9edf80e36c19be61f72c98ed8273b765", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^5.4|^6.0|^7.0" + }, + "conflict": { + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/stopwatch": "^5.4|^6.0|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command-line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v6.4.12" + }, + "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": "2024-09-20T08:15:52+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "files": [ + "function.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": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "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": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/finder", + "version": "v5.4.43", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "ae25a9145a900764158d439653d5630191155ca0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/ae25a9145a900764158d439653d5630191155ca0", + "reference": "ae25a9145a900764158d439653d5630191155ca0", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-php80": "^1.16" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v5.4.43" + }, + "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": "2024-08-13T14:03:51+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe", + "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "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 for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "3833d7255cc303546435cb650316bff708a1c75c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c", + "reference": "3833d7255cc303546435cb650316bff708a1c75c", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "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 for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "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 for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-php83", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php83.git", + "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/2fb86d65e2d424369ad2905e83b236a8805ba491", + "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php83\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "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 8.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "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": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/string", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.5" + }, + "require-dev": { + "symfony/emoji": "^7.1", + "symfony/error-handler": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/intl": "^6.4|^7.0", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v7.1.5" + }, + "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": "2024-09-20T08:28:38+00:00" + }, + { + "name": "symfony/var-dumper", + "version": "v6.4.11", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "ee14c8254a480913268b1e3b1cba8045ed122694" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/ee14c8254a480913268b1e3b1cba8045ed122694", + "reference": "ee14c8254a480913268b1e3b1cba8045ed122694", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/console": "<5.4" + }, + "require-dev": { + "ext-iconv": "*", + "symfony/console": "^5.4|^6.0|^7.0", + "symfony/error-handler": "^6.3|^7.0", + "symfony/http-kernel": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/uid": "^5.4|^6.0|^7.0", + "twig/twig": "^2.13|^3.0.4" + }, + "bin": [ + "Resources/bin/var-dump-server" + ], + "type": "library", + "autoload": { + "files": [ + "Resources/functions/dump.php" + ], + "psr-4": { + "Symfony\\Component\\VarDumper\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "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/v6.4.11" + }, + "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": "2024-08-30T16:03:21+00:00" + }, + { + "name": "symfony/yaml", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/yaml.git", + "reference": "762ee56b2649659380e0ef4d592d807bc17b7971" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/yaml/zipball/762ee56b2649659380e0ef4d592d807bc17b7971", + "reference": "762ee56b2649659380e0ef4d592d807bc17b7971", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "symfony/console": "<5.4" + }, + "require-dev": { + "symfony/console": "^5.4|^6.0|^7.0" + }, + "bin": [ + "Resources/bin/yaml-lint" + ], + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Loads and dumps YAML files", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/yaml/tree/v6.4.12" + }, + "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": "2024-09-17T12:47:12+00:00" + }, + { + "name": "vlucas/phpdotenv", + "version": "v5.6.1", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "graham-campbell/result-type": "^1.1.3", + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3", + "symfony/polyfill-ctype": "^1.24", + "symfony/polyfill-mbstring": "^1.24", + "symfony/polyfill-php80": "^1.24" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-filter": "*", + "phpunit/phpunit": "^8.5.34 || ^9.6.13 || ^10.4.2" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "5.6-dev" + } + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:52:34+00:00" + }, + { + "name": "webmozart/glob", + "version": "4.7.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/glob.git", + "reference": "8a2842112d6916e61e0e15e316465b611f3abc17" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/glob/zipball/8a2842112d6916e61e0e15e316465b611f3abc17", + "reference": "8a2842112d6916e61e0e15e316465b611f3abc17", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "symfony/filesystem": "^5.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.1-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Glob\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "A PHP implementation of Ant's glob.", + "support": { + "issues": "https://github.com/webmozarts/glob/issues", + "source": "https://github.com/webmozarts/glob/tree/4.7.0" + }, + "time": "2024-03-07T20:33:40+00:00" + }, + { + "name": "yiisoft/access", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/access.git", + "reference": "7a8ac9c4802d31cf47789c742575232c7fb1ae8b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/access/zipball/7a8ac9c4802d31cf47789c742575232c7fb1ae8b", + "reference": "7a8ac9c4802d31cf47789c742575232c7fb1ae8b", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Access\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "An interface for checking access", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "access", + "interface", + "rbac", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/access/issues?state=open", + "source": "https://github.com/yiisoft/access", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2022-04-05T17:21:55+00:00" + }, + { + "name": "yiisoft/aliases", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/aliases.git", + "reference": "2ed5e38d6ac503ec4c1af39115361097b6449135" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/aliases/zipball/2ed5e38d6ac503ec4c1af39115361097b6449135", + "reference": "2ed5e38d6ac503ec4c1af39115361097b6449135", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Aliases\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Named paths and URLs storage", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "alias" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/aliases/issues?state=open", + "source": "https://github.com/yiisoft/aliases", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-13T10:14:03+00:00" + }, + { + "name": "yiisoft/arrays", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/arrays.git", + "reference": "e07c7268bd53903108ed556df93ef75b4bac6760" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/arrays/zipball/e07c7268bd53903108ed556df93ef75b4bac6760", + "reference": "e07c7268bd53903108ed556df93ef75b4bac6760", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/strings": "^2.1" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.20" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Arrays\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Array Helper", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "array", + "helper", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://forum.yiiframework.com/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/arrays/issues", + "source": "https://github.com/yiisoft/arrays", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-04-04T11:07:18+00:00" + }, + { + "name": "yiisoft/assets", + "version": "4.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/assets.git", + "reference": "14984b2c8a87236da8c8ef5a4f1273d4ff8a36bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/assets/zipball/14984b2c8a87236da8c8ef5a4f1273d4ff8a36bc", + "reference": "14984b2c8a87236da8c8ef5a4f1273d4ff8a36bc", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/aliases": "^1.1|^2.0|^3.0", + "yiisoft/files": "^2.0", + "yiisoft/json": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Assets\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Asset bundles and asset manager", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "assets", + "library", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/assets/issues?state=open", + "source": "https://github.com/yiisoft/assets", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-13T11:15:18+00:00" + }, + { + "name": "yiisoft/auth", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/auth.git", + "reference": "497197fc2bbc2c4b2b8b35b177e0f4476fbe17ee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/auth/zipball/497197fc2bbc2c4b2b8b35b177e0f4476fbe17ee", + "reference": "497197fc2bbc2c4b2b8b35b177e0f4476fbe17ee", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.8", + "yiisoft/yii-debug": "dev-master|dev-php80" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Auth\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii auth", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "auth", + "middleware" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/auth/issues?state=open", + "source": "https://github.com/yiisoft/auth", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-05-06T12:26:49+00:00" + }, + { + "name": "yiisoft/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/cache.git", + "reference": "67ae4b40d3aefd193dfd9a3f458f3e145adb0d84" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/cache/zipball/67ae4b40d3aefd193dfd9a3f458f3e145adb0d84", + "reference": "67ae4b40d3aefd193dfd9a3f458f3e145adb0d84", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "psr/simple-cache": "^2.0|^3.0" + }, + "provide": { + "psr/simple-cache-implementation": "2.0|3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.2" + }, + "suggest": { + "yiisoft/cache-apcu": "Allows to store cache using APCu PECL extension", + "yiisoft/cache-db": "Allows storing cache to the database", + "yiisoft/cache-file": "Allows storing cache to the files", + "yiisoft/cache-memcached": "Allows to store cache using Memcached PECL extension", + "yiisoft/cache-redis": "Allows storing cache to the Redis", + "yiisoft/cache-wincache": "Allows to store cache using WinCache PECL extension" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Cache\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Caching Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cache", + "psr-16", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/cache/issues?state=open", + "source": "https://github.com/yiisoft/cache", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-15T14:30:56+00:00" + }, + { + "name": "yiisoft/cache-file", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/cache-file.git", + "reference": "226ff0731adabc884c149f711190a7ac8b14800d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/cache-file/zipball/226ff0731adabc884c149f711190a7ac8b14800d", + "reference": "226ff0731adabc884c149f711190a7ac8b14800d", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/simple-cache": "^2.0|^3.0" + }, + "provide": { + "psr/simple-cache-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "php-mock/php-mock-phpunit": "^2.6", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Cache\\File\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Caching Library - File Handler", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cache", + "file", + "framework", + "psr-16", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/cache-file/issues?state=open", + "source": "https://github.com/yiisoft/cache-file", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-10-09T14:49:20+00:00" + }, + { + "name": "yiisoft/config", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/config.git", + "reference": "8cd32f003af59303f3ba8dd520eb85f830689575" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/config/zipball/8cd32f003af59303f3ba8dd520eb85f830689575", + "reference": "8cd32f003af59303f3ba8dd520eb85f830689575", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^2.0", + "php": "^8.0", + "yiisoft/arrays": "^3.0", + "yiisoft/strings": "^2.0", + "yiisoft/var-dumper": "^1.1" + }, + "require-dev": { + "composer/composer": "^2.0", + "ext-json": "*", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6" + }, + "suggest": { + "symfony/console": "To use composer commands `yii-config-copy` and `yii-config-rebuild`." + }, + "type": "composer-plugin", + "extra": { + "class": "Yiisoft\\Config\\Composer\\EventHandler" + }, + "autoload": { + "psr-4": { + "Yiisoft\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Composer plugin and a library for config assembling", + "homepage": "https://github.com/yiisoft/config", + "keywords": [ + "composer", + "config", + "plugin" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/config/issues?state=open", + "source": "https://github.com/yiisoft/config", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-12-25T17:12:50+00:00" + }, + { + "name": "yiisoft/cookies", + "version": "1.2.2", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/cookies.git", + "reference": "ceba1d0647f1210331d90372ca83a8ecc952ebef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/cookies/zipball/ceba1d0647f1210331d90372ca83a8ecc952ebef", + "reference": "ceba1d0647f1210331d90372ca83a8ecc952ebef", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/http": "^1.2", + "yiisoft/security": "^1.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^3.8|^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Cookies\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Convenient way to use cookies with PSR-7", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cookie", + "cookies", + "psr-7" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/cookies/issues?state=open", + "source": "https://github.com/yiisoft/cookies", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-04-05T07:20:16+00:00" + }, + { + "name": "yiisoft/csrf", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/csrf.git", + "reference": "2168b5f83ec9ce65e9d0ca08fa88613e6778d377" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/csrf/zipball/2168b5f83ec9ce65e9d0ca08fa88613e6778d377", + "reference": "2168b5f83ec9ce65e9d0ca08fa88613e6778d377", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "php": "^7.4|^8.0", + "psr/http-factory": "^1.0", + "psr/http-factory-implementation": "1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/security": "^1.0", + "yiisoft/session": "^1.0|^2.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.2", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.24", + "yiisoft/di": "^1.1" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Csrf\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii CSRF Protection Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "breach", + "csrf", + "hmac", + "middleware", + "psr-15", + "stateless", + "synchronizer" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/csrf/issues?state=open", + "source": "https://github.com/yiisoft/csrf", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-05-08T09:48:50+00:00" + }, + { + "name": "yiisoft/data", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/data.git", + "reference": "714ca834858bea280ce8781fc5915fa8775f780b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/data/zipball/714ca834858bea280ce8781fc5915fa8775f780b", + "reference": "714ca834858bea280ce8781fc5915fa8775f780b", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.1", + "yiisoft/arrays": "^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.20" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Data\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Data providers, pagination and related abstractions", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "data processor", + "data provider", + "data reader", + "data writer", + "filter", + "pagination" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/data/issues?state=open", + "source": "https://github.com/yiisoft/data", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-10T17:50:47+00:00" + }, + { + "name": "yiisoft/data-cycle", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/data-cycle.git", + "reference": "708074a77942ab1d7f424bc21a6912b7d62641da" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/data-cycle/zipball/708074a77942ab1d7f424bc21a6912b7d62641da", + "reference": "708074a77942ab1d7f424bc21a6912b7d62641da", + "shasum": "" + }, + "require": { + "cycle/database": "^2.10", + "cycle/orm": "^2.7.1", + "php": "^8.1", + "yiisoft/data": "dev-master" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.21", + "vlucas/phpdotenv": "^5.6" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Data\\Cycle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Cycle ORM query adapter for yiisoft/data", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cycle", + "data provider", + "database", + "db", + "orm" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/data-cycle/issues?state=open", + "source": "https://github.com/yiisoft/data-cycle", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-11T18:58:59+00:00" + }, + { + "name": "yiisoft/data-response", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/data-response.git", + "reference": "7de8c880d0d6629867a51c5c2529c984e50dfbc3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/data-response/zipball/7de8c880d0d6629867a51c5c2529c984e50dfbc3", + "reference": "7de8c880d0d6629867a51c5c2529c984e50dfbc3", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "php": "^8.1", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/json": "^1.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.22", + "yiisoft/di": "^1.1" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\DataResponse\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Allows responding with data that is automatically converted into PSR-7 response", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "data", + "psr-7", + "response" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/data-response/issues?state=open", + "source": "https://github.com/yiisoft/data-response", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-03T06:01:50+00:00" + }, + { + "name": "yiisoft/definitions", + "version": "3.3.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/definitions.git", + "reference": "5cb53d07afab3336705a52ddc90c37237cc4b316" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/definitions/zipball/5cb53d07afab3336705a52ddc90c37237cc4b316", + "reference": "5cb53d07afab3336705a52ddc90c37237cc4b316", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/test-support": "^1.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Definitions\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "The package provides definition syntax", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "definitions" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/definitions/issues?state=open", + "source": "https://github.com/yiisoft/definitions", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-16T13:31:21+00:00" + }, + { + "name": "yiisoft/di", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/di.git", + "reference": "a6d889f74030a381dad337f1bd1ea9de7341bc9b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/di/zipball/a6d889f74030a381dad337f1bd1ea9de7341bc9b", + "reference": "a6d889f74030a381dad337f1bd1ea9de7341bc9b", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0", + "psr/container": "^1.1|^2.0", + "yiisoft/definitions": "^3.0" + }, + "provide": { + "psr/container-implementation": "1.0.0" + }, + "require-dev": { + "league/container": "^4.2", + "maglnet/composer-require-checker": "^4.2", + "phpbench/phpbench": "^1.2.0", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.14.3", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.29", + "yiisoft/injector": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "phpbench/phpbench": "To run benchmarks.", + "yiisoft/injector": "^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Di\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii DI container", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "Autowiring", + "PSR-11", + "container", + "dependency", + "di", + "injection", + "injector" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/di/issues?state=open", + "source": "https://github.com/yiisoft/di", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2022-12-23T16:12:56+00:00" + }, + { + "name": "yiisoft/error-handler", + "version": "3.3.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/error-handler.git", + "reference": "a263c9dea48d5a42022dd7df76706cff39e3e960" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/error-handler/zipball/a263c9dea48d5a42022dd7df76706cff39e3e960", + "reference": "a263c9dea48d5a42022dd7df76706cff39e3e960", + "shasum": "" + }, + "require": { + "alexkart/curl-builder": "^1.0", + "cebe/markdown": "^1.2", + "ext-dom": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0.9", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25", + "yiisoft/di": "^1.1", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\ErrorHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Error Handling Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "PSR-11", + "error-handler", + "psr-15", + "psr-3", + "psr-7", + "yiisoft" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/error-handler/issues?state=open", + "source": "https://github.com/yiisoft/error-handler", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-11T12:16:20+00:00" + }, + { + "name": "yiisoft/event-dispatcher", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/event-dispatcher.git", + "reference": "2b1262a56260030aaac386bf8ef75ec072abc7e3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/event-dispatcher/zipball/2b1262a56260030aaac386bf8ef75ec072abc7e3", + "reference": "2b1262a56260030aaac386bf8ef75ec072abc7e3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "1.0.0" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.14.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\EventDispatcher\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Event Dispatcher", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "event", + "event dispatcher", + "psr-14" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/event-dispatcher/issues?state=open", + "source": "https://github.com/yiisoft/event-dispatcher", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2022-10-27T12:02:21+00:00" + }, + { + "name": "yiisoft/factory", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/factory.git", + "reference": "4537a78ae1a3b49bd86e83d09f0772034e45f193" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/factory/zipball/4537a78ae1a3b49bd86e83d09f0772034e45f193", + "reference": "4537a78ae1a3b49bd86e83d09f0772034e45f193", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/definitions": "^1.0|^2.0|^3.0.1" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Factory\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Factory", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "factory" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/factory/issues", + "source": "https://github.com/yiisoft/factory", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-12-03T05:59:14+00:00" + }, + { + "name": "yiisoft/files", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/files.git", + "reference": "129a8f8220e1cd2530f424951b8c24f426bd219c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/files/zipball/129a8f8220e1cd2530f424951b8c24f426bd219c", + "reference": "129a8f8220e1cd2530f424951b8c24f426bd219c", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "ext-zlib": "*", + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.22" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Files\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Helper to manage files and directories", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "files" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/files/issues?state=open", + "source": "https://github.com/yiisoft/files", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2022-07-05T06:43:38+00:00" + }, + { + "name": "yiisoft/friendly-exception", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/friendly-exception.git", + "reference": "4b4a19edff251791e3c92d4d83435d2716351ff4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/friendly-exception/zipball/4b4a19edff251791e3c92d4d83435d2716351ff4", + "reference": "4b4a19edff251791e3c92d4d83435d2716351ff4", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.4", + "roave/infection-static-analysis-plugin": "^1.5", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\FriendlyException\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "An interface for friendlier exception", + "homepage": "http://www.yiiframework.com/", + "keywords": [ + "error handling", + "exception", + "exceptions", + "friendly" + ], + "support": { + "forum": "http://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/friendly-exception/issues?state=open", + "source": "https://github.com/yiisoft/friendly-exception", + "wiki": "http://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2021-10-26T21:43:25+00:00" + }, + { + "name": "yiisoft/html", + "version": "3.7.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/html.git", + "reference": "968aa8b336135242bdaef9646fa3d53c3c0731f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/html/zipball/968aa8b336135242bdaef9646fa3d53c3c0731f7", + "reference": "968aa8b336135242bdaef9646fa3d53c3c0731f7", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/arrays": "^2.0|^3.0", + "yiisoft/json": "^1.0" + }, + "require-dev": { + "infection/infection": "^0.26.19", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Html\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Handy library to generate HTML", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "html" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://forum.yiiframework.com/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/html/issues?state=open", + "source": "https://github.com/yiisoft/html", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-18T11:48:50+00:00" + }, + { + "name": "yiisoft/http", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/http.git", + "reference": "7967b2c45dbf6af785dea4ea481af23da6d49c5d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/http/zipball/7967b2c45dbf6af785dea4ea481af23da6d49c5d", + "reference": "7967b2c45dbf6af785dea4ea481af23da6d49c5d", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.10", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.12" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Constants and PSR-7 PhpStorm meta for HTTP protocol headers, methods and statuses", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "header", + "http", + "method", + "psr-17", + "psr-7", + "status" + ], + "support": { + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/http/issues?state=open", + "source": "https://github.com/yiisoft/http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2021-11-09T09:42:11+00:00" + }, + { + "name": "yiisoft/hydrator", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/hydrator.git", + "reference": "9bfde0c99fc35b182d1b74433e9316c9b67c5fc1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/hydrator/zipball/9bfde0c99fc35b182d1b74433e9316c9b67c5fc1", + "reference": "9bfde0c99fc35b182d1b74433e9316c9b67c5fc1", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/container": "^2.0", + "yiisoft/injector": "^1.1", + "yiisoft/strings": "^2.3" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.23", + "yiisoft/di": "^1.2", + "yiisoft/dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "ext-intl": "Allows using `ToDateTime` parameter attribute" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Hydrator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Create and populate objects with type casting, mapping and dependencies resolving support.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "hydrator" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/hydrator/issues?state=open", + "source": "https://github.com/yiisoft/hydrator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-17T16:10:24+00:00" + }, + { + "name": "yiisoft/hydrator-validator", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/hydrator-validator.git", + "reference": "5f7acfebce127755af7df3cbc126dd502a1c4140" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/hydrator-validator/zipball/5f7acfebce127755af7df3cbc126dd502a1c4140", + "reference": "5f7acfebce127755af7df3cbc126dd502a1c4140", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/hydrator": "^1.0", + "yiisoft/validator": "^1.0|^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.11", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Hydrator\\Validator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Validating hydrator with raw data validation support", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "input", + "validation" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/hydrator-validator/issues?state=open", + "source": "https://github.com/yiisoft/hydrator-validator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-08-06T12:18:25+00:00" + }, + { + "name": "yiisoft/i18n", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/i18n.git", + "reference": "c05e9e031fb36fc193152e18fa791bbf6d0582b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/i18n/zipball/c05e9e031fb36fc193152e18fa791bbf6d0582b8", + "reference": "c05e9e031fb36fc193152e18fa791bbf6d0582b8", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.17.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\I18n\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Internationalization Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "i18n", + "locale" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/i18n/issues?state=open", + "source": "https://github.com/yiisoft/i18n", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-06-10T14:18:35+00:00" + }, + { + "name": "yiisoft/injector", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/injector.git", + "reference": "0dc0127a7542341bdaabda7b85204e992938b83e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/injector/zipball/0dc0127a7542341bdaabda7b85204e992938b83e", + "reference": "0dc0127a7542341bdaabda7b85204e992938b83e", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.2", + "phpbench/phpbench": "^1.1", + "phpunit/phpunit": "^9.5", + "psr/container": "^1.0|^2.0", + "rector/rector": "^0.18.12", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.7", + "yiisoft/test-support": "^1.2" + }, + "suggest": { + "psr/container": "For automatic resolving of dependencies" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Injector\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-11 compatible injector. Executes a callable and makes an instances by injecting dependencies from a given DI container.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "PSR-11", + "dependency injection", + "di", + "injector", + "reflection" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/injector/issues?state=open", + "source": "https://github.com/yiisoft/injector", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-12-20T09:39:03+00:00" + }, + { + "name": "yiisoft/input-http", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/input-http.git", + "reference": "877fea3374033f5a6af4207036eb7733a635b5b7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/input-http/zipball/877fea3374033f5a6af4207036eb7733a635b5b7", + "reference": "877fea3374033f5a6af4207036eb7733a635b5b7", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/arrays": "^3.0", + "yiisoft/hydrator": "^1.0", + "yiisoft/hydrator-validator": "^2.0", + "yiisoft/middleware-dispatcher": "^5.1", + "yiisoft/request-provider": "^1.0", + "yiisoft/validator": "^1.1|^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.22", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params-web": "params-web.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Input\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Maps data from PSR-7 HTTP request to PHP DTO representing user input.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "dto", + "input", + "mapper", + "mapping", + "psr-7", + "request", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/input-http/issues?state=open", + "source": "https://github.com/yiisoft/input-http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-08-06T12:42:23+00:00" + }, + { + "name": "yiisoft/json", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/json.git", + "reference": "51b483aef1cd5d06ea02db3c40707bb6b41ed088" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/json/zipball/51b483aef1cd5d06ea02db3c40707bb6b41ed088", + "reference": "51b483aef1cd5d06ea02db3c40707bb6b41ed088", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "infection/infection": "^0.16.3", + "phan/phan": "^3.0", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Json\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "json", + "homepage": "http://www.yiiframework.com/", + "keywords": [ + "json" + ], + "support": { + "forum": "http://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/json/issues?state=open", + "source": "https://github.com/yiisoft/json", + "wiki": "http://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2020-08-26T12:21:14+00:00" + }, + { + "name": "yiisoft/log", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/log.git", + "reference": "9d549952f5099a3e3081e11cccb3841c77587dac" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/log/zipball/9d549952f5099a3e3081e11cccb3841c77587dac", + "reference": "9d549952f5099a3e3081e11cccb3841c77587dac", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/log": "^2.0|^3.0", + "yiisoft/var-dumper": "^1.0" + }, + "provide": { + "psr/log-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25" + }, + "suggest": { + "yiisoft/log-target-db": "Allows writing log messages to the database", + "yiisoft/log-target-email": "Allows sending log messages by email", + "yiisoft/log-target-file": "Allows writing log messages to the files", + "yiisoft/log-target-syslog": "Allows writing log messages to the Syslog" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "events-console": "events-console.php", + "events-web": "events-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Logging Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "log", + "logger", + "psr-3", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/log/issues?state=open", + "source": "https://github.com/yiisoft/log", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-03T10:13:44+00:00" + }, + { + "name": "yiisoft/log-target-file", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/log-target-file.git", + "reference": "758a792d11f5b6d554450abc828e2db5d7613f22" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/log-target-file/zipball/758a792d11f5b6d554450abc828e2db5d7613f22", + "reference": "758a792d11f5b6d554450abc828e2db5d7613f22", + "shasum": "" + }, + "require": { + "ext-zlib": "*", + "php": "^8.0", + "yiisoft/files": "^1.0|^2.0", + "yiisoft/log": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.1", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.2", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.0" + }, + "suggest": { + "ext-zlib": "Enabling gzip compression of rotated files." + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Log\\Target\\File\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Logging Library - File Target", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "log", + "logger", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/log-target-file/issues", + "source": "https://github.com/yiisoft/log-target-file", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-17T05:52:09+00:00" + }, + { + "name": "yiisoft/middleware-dispatcher", + "version": "5.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/middleware-dispatcher.git", + "reference": "97d290e4ddab59e5a735ebafc69c46b6953022b3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/middleware-dispatcher/zipball/97d290e4ddab59e5a735ebafc69c46b6953022b3", + "reference": "97d290e4ddab59e5a735ebafc69c46b6953022b3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "psr/event-dispatcher": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/definitions": "^2.0|^3.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.3", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Middleware\\Dispatcher\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-15 middleware dispatcher", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "dispatcher", + "middleware" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/middleware-dispatcher/issues?state=open", + "source": "https://github.com/yiisoft/middleware-dispatcher", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-09-25T07:01:31+00:00" + }, + { + "name": "yiisoft/network-utilities", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/network-utilities.git", + "reference": "9b51434f17035ce70ba220518a9d52656b6c1cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/network-utilities/zipball/9b51434f17035ce70ba220518a9d52656b6c1cb4", + "reference": "9b51434f17035ce70ba220518a9d52656b6c1cb4", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\NetworkUtilities\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Network related utilities", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "IP", + "dns", + "mask", + "network" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/network-utilities/issues?state=open", + "source": "https://github.com/yiisoft/network-utilities", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-02T14:07:06+00:00" + }, + { + "name": "yiisoft/profiler", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/profiler.git", + "reference": "9f1bd1649f079ddfd45217f8da50533b12ca78a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/profiler/zipball/9f1bd1649f079ddfd45217f8da50533b12ca78a3", + "reference": "9f1bd1649f079ddfd45217f8da50533b12ca78a3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/log": "^2.0|^3.0", + "yiisoft/files": "^2.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.1", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "events-web": "events-web.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Profiler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Profiler", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "performance", + "profiler" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/profiler/issues?state=open", + "source": "https://github.com/yiisoft/profiler", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-15T09:15:24+00:00" + }, + { + "name": "yiisoft/proxy", + "version": "1.0.5", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/proxy.git", + "reference": "2820941a7ea0f66bab32d50a78c9f8b4b3fb22f6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/proxy/zipball/2820941a7ea0f66bab32d50a78c9f8b4b3fb22f6", + "reference": "2820941a7ea0f66bab32d50a78c9f8b4b3fb22f6", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/files": "^1.0.2|^2.0.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Proxy\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "proxy", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "proxy" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/proxy/issues?state=open", + "source": "https://github.com/yiisoft/proxy", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-01-17T13:21:34+00:00" + }, + { + "name": "yiisoft/queue", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/queue.git", + "reference": "9fc8dee90766329e6db2448b28299d7ba259e646" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/queue/zipball/9fc8dee90766329e6db2448b28299d7ba259e646", + "reference": "9fc8dee90766329e6db2448b28299d7ba259e646", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/container": "^1.0|^2.0", + "psr/log": "^2.0|^3.0", + "symfony/console": "^5.4|^6.0", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.20", + "yiisoft/test-support": "^3.0", + "yiisoft/yii-debug": "dev-master" + }, + "suggest": { + "ext-pcntl": "Need for process signals" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Queue\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Queue Extension which supported DB, Redis, RabbitMQ, Beanstalk, SQS and Gearman", + "keywords": [ + "async", + "beanstalk", + "db", + "gearman", + "gii", + "queue", + "rabbitmq", + "redis", + "sqs", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/queue/issues?state=open", + "source": "https://github.com/yiisoft/queue", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-15T17:34:15+00:00" + }, + { + "name": "yiisoft/request-body-parser", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/request-body-parser.git", + "reference": "f164340fc1d199105d88bf9e79601458f7de4fe2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/request-body-parser/zipball/f164340fc1d199105d88bf9e79601458f7de4fe2", + "reference": "f164340fc1d199105d88bf9e79601458f7de4fe2", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.4|^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2" + }, + "require-dev": { + "nyholm/psr7": "^1.0", + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Request\\Body\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Middleware for parsing various data formats", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "body", + "middleware", + "parser", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/request-body-parser/issues?state=open", + "source": "https://github.com/yiisoft/request-body-parser", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-06-03T17:47:14+00:00" + }, + { + "name": "yiisoft/request-provider", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/request-provider.git", + "reference": "667e339f307eaf3d4e4f09f05334e41761d20a81" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/request-provider/zipball/667e339f307eaf3d4e4f09f05334e41761d20a81", + "reference": "667e339f307eaf3d4e4f09f05334e41761d20a81", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.1", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.20", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\RequestProvider\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-7 request provider", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "http", + "provider", + "psr", + "request", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/request-provider/issues?state=open", + "source": "https://github.com/yiisoft/request-provider", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-02T15:18:14+00:00" + }, + { + "name": "yiisoft/router", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/router.git", + "reference": "86ee95984109bd96548cad3f93df8ad9ca4de0b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/router/zipball/86ee95984109bd96548cad3f93df8ad9ca4de0b8", + "reference": "86ee95984109bd96548cad3f93df8ad9ca4de0b8", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/middleware-dispatcher": "^5.0", + "yiisoft/router-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "nyholm/psr7": "^1.5", + "phpunit/phpunit": "^9.5", + "psr/container": "^1.1|^2.0", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.22", + "yiisoft/di": "^1.0", + "yiisoft/dummy-provider": "^1.0.0", + "yiisoft/hydrator": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/hydrator": "Needed to use `RouteArgument` attribute", + "yiisoft/router-fastroute": "Router implementation based on nikic/FastRoute" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Router\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii router", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "middleware", + "router", + "web" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/router/issues?state=open", + "source": "https://github.com/yiisoft/router", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-02-20T11:39:48+00:00" + }, + { + "name": "yiisoft/router-fastroute", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/router-fastroute.git", + "reference": "4f2214eed24e140687e714ccb08a6420da316059" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/router-fastroute/zipball/4f2214eed24e140687e714ccb08a6420da316059", + "reference": "4f2214eed24e140687e714ccb08a6420da316059", + "shasum": "" + }, + "require": { + "nikic/fast-route": "^1.3", + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/simple-cache": "^2.0|^3.0", + "yiisoft/http": "^1.2", + "yiisoft/router": "^2.1|^3.0" + }, + "provide": { + "yiisoft/router-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.4", + "phpunit/phpunit": "^9.5", + "psr/container": "^2.0", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Router\\FastRoute\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii router FastRoute adapter", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "FastRoute", + "router" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/router-fastroute/issues?state=open", + "source": "https://github.com/yiisoft/router-fastroute", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-19T12:26:45+00:00" + }, + { + "name": "yiisoft/security", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/security.git", + "reference": "f1ad5d279722f162cfb0f720a3723ad762892de3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/security/zipball/f1ad5d279722f162cfb0f720a3723ad762892de3", + "reference": "f1ad5d279722f162cfb0f720a3723ad762892de3", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "ext-openssl": "*", + "php": "^7.4|^8.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.23" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Security\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Security utilities", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "MAC", + "decryption", + "encryption", + "hash", + "password", + "random", + "security", + "signature", + "token masking" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/security/issues?state=open", + "source": "https://github.com/yiisoft/security", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-18T12:20:01+00:00" + }, + { + "name": "yiisoft/session", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/session.git", + "reference": "193c666a8d1fcce5985c48afe9c3df96b6d3b6d1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/session/zipball/193c666a8d1fcce5985c48afe9c3df96b6d3b6d1", + "reference": "193c666a8d1fcce5985c48afe9c3df96b6d3b6d1", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/cookies": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.1" + }, + "suggest": { + "ext-session": "Allows using native PHP sessions" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Session\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "A session service, PSR-15 session middleware, and a flash message service which helps use one-time messages.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "flash", + "middleware", + "psr-15", + "session" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/session/issues?state=open", + "source": "https://github.com/yiisoft/session", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-05-02T18:50:11+00:00" + }, + { + "name": "yiisoft/strings", + "version": "2.4.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/strings.git", + "reference": "ff519d31e1c2518f42554fb5410e31bbb74b8108" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/strings/zipball/ff519d31e1c2518f42554fb5410e31bbb74b8108", + "reference": "ff519d31e1c2518f42554fb5410e31bbb74b8108", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Strings\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Strings Helper", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "helper", + "string", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/strings/issues", + "source": "https://github.com/yiisoft/strings", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-12-22T07:29:39+00:00" + }, + { + "name": "yiisoft/translator", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/translator.git", + "reference": "869a224bf59dda36a8725985f5dd2e31cb357e21" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/translator/zipball/869a224bf59dda36a8725985f5dd2e31cb357e21", + "reference": "869a224bf59dda36a8725985f5dd2e31cb357e21", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "1.0.0", + "yiisoft/files": "^1.0|^2.0", + "yiisoft/i18n": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/di": "^1.2" + }, + "suggest": { + "ext-intl": "Allows using intl message formatter", + "ext-tokenizer": "Allows using message extraction", + "yiisoft/event-dispatcher": "To listen for events about missing categories and messages" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Translator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Message Translator", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "i18n", + "internationalization", + "translation" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/translator/issues?state=open", + "source": "https://github.com/yiisoft/translator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-17T13:16:40+00:00" + }, + { + "name": "yiisoft/translator-message-php", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/translator-message-php.git", + "reference": "67a0c64c132e5098f6824017ca4bccd45cc79030" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/translator-message-php/zipball/67a0c64c132e5098f6824017ca4bccd45cc79030", + "reference": "67a0c64c132e5098f6824017ca4bccd45cc79030", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/translator": "^1.0|^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.4", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Translator\\Message\\Php\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Translator PHP Message Storage", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "formatting", + "i18n", + "internationalization", + "message storage" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/translator-message-php/issues?state=open", + "source": "https://github.com/yiisoft/translator-message-php", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-19T11:29:34+00:00" + }, + { + "name": "yiisoft/user", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/user.git", + "reference": "7bd541166949ac56a722a9555d43dac29976f424" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/user/zipball/7bd541166949ac56a722a9555d43dac29976f424", + "reference": "7bd541166949ac56a722a9555d43dac29976f424", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.4|^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/access": "^1.0", + "yiisoft/auth": "^2.0|^3.0", + "yiisoft/cookies": "^1.2", + "yiisoft/http": "^1.2", + "yiisoft/session": "^1.0|^2.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.0", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\User\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Convenient user identity management and access checking", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "user", + "yiisoft" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/user/issues?state=open", + "source": "https://github.com/yiisoft/user", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-15T10:47:39+00:00" + }, + { + "name": "yiisoft/validator", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/validator.git", + "reference": "9e8ad99e66c750aceda96fd96033ff4b5d4a7e62" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/validator/zipball/9e8ad99e66c750aceda96fd96033ff4b5d4a7e62", + "reference": "9e8ad99e66c750aceda96fd96033ff4b5d4a7e62", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.1", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.0|^2.0", + "yiisoft/arrays": "^2.1|^3.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/network-utilities": "^1.2", + "yiisoft/strings": "^2.1", + "yiisoft/translator": "^2.1|^3.0" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.3", + "phpbench/phpbench": "^1.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.24", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0", + "yiisoft/translator-message-php": "^1.1", + "yiisoft/yii-debug": "dev-master|dev-php80" + }, + "suggest": { + "ext-fileinfo": "To use image rule", + "ext-intl": "Allows using date rules and IDN validation for emails", + "yiisoft/di": "To create rule handlers via Yii DI" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Validator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Validator", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "validation", + "validator" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/validator/issues?state=open", + "source": "https://github.com/yiisoft/validator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-12T12:10:04+00:00" + }, + { + "name": "yiisoft/var-dumper", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/var-dumper.git", + "reference": "c7f6a40d117b905abe26ac093593eaf7c57b9bd5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/var-dumper/zipball/c7f6a40d117b905abe26ac093593eaf7c57b9bd5", + "reference": "c7f6a40d117b905abe26ac093593eaf7c57b9bd5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "ext-tokenizer": "*", + "php": "^8.0", + "yiisoft/arrays": "^1.0|^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.3" + }, + "suggest": { + "ext-sockets": "Send dumps to a server through UDP/TCP protocols" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Yiisoft\\VarDumper\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Enhances functionality of var_dump() and var_export(). It is dealing with recursive references, may highlight syntax and export closures.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "helper", + "var-dumper", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/var-dumper/issues", + "source": "https://github.com/yiisoft/var-dumper", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-10-08T11:21:24+00:00" + }, + { + "name": "yiisoft/view", + "version": "10.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/view.git", + "reference": "4416d30e4e286e23887d9f525701f37e3a15f9ca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/view/zipball/4416d30e4e286e23887d9f525701f37e3a15f9ca", + "reference": "4416d30e4e286e23887d9f525701f37e3a15f9ca", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "1.0.0", + "psr/event-dispatcher-implementation": "1.0.0", + "yiisoft/arrays": "^2.0|^3.0", + "yiisoft/cache": "^1.0|^2.0|^3.0", + "yiisoft/files": "^1.0|^2.0", + "yiisoft/html": "^2.5|^3.0", + "yiisoft/json": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "1.0.*", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.20", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^1.4|^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\View\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii View Rendering Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "view", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/view/issues?state=open", + "source": "https://github.com/yiisoft/view", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-06-28T10:02:35+00:00" + }, + { + "name": "yiisoft/yii-console", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-console.git", + "reference": "7942fc70df59965bb1b33ac4671c915a145d2dcf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-console/zipball/7942fc70df59965bb1b33ac4671c915a145d2dcf", + "reference": "7942fc70df59965bb1b33ac4671c915a145d2dcf", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "psr/event-dispatcher": "^1.0", + "psr/log": "^1.0|^2.0|^3.0", + "symfony/console": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher-contracts": "^2.2|^3.0", + "yiisoft/friendly-exception": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "vimeo/psalm": "^4.30|^5.20", + "yiisoft/config": "^1.3", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config", + "merge-plan-file": "../tests/environment/.merge-plan.php" + }, + "config-plugin": { + "params-console": "params-console.php", + "di-console": "di-console.php", + "events-console": "events-console.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Console\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Symfony console wrapper with additional features", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "console", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-console/issues?state=open", + "source": "https://github.com/yiisoft/yii-console", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-02-17T13:10:12+00:00" + }, + { + "name": "yiisoft/yii-cycle", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-cycle.git", + "reference": "071361f0a97ed314add6c2e285953ee02b3973a6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-cycle/zipball/071361f0a97ed314add6c2e285953ee02b3973a6", + "reference": "071361f0a97ed314add6c2e285953ee02b3973a6", + "shasum": "" + }, + "require": { + "cycle/annotated": "^3.5", + "cycle/database": "^2.8", + "cycle/migrations": "^3.1.1|^4.0", + "cycle/orm": "^2.7", + "cycle/schema-builder": "^2.8", + "cycle/schema-migrations-generator": "^2.0", + "cycle/schema-provider": "^1.0", + "cycle/schema-renderer": "^1.2", + "php": "^8.1", + "psr/container": "^2.0", + "psr/event-dispatcher": "^1.0", + "psr/log": "^3.0", + "psr/simple-cache": "^2.0|^3.0", + "spiral/attributes": "^2.7|^3.0", + "spiral/core": "^3.12", + "spiral/tokenizer": "^3.12", + "symfony/console": "^6.4", + "symfony/finder": "^5.4", + "webmozart/glob": "^4.7", + "yiisoft/aliases": "^1.1|^2.0|^3.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/injector": "^1.1" + }, + "require-dev": { + "cycle/entity-behavior": "^1.0", + "ext-uopz": "*", + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.3", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.7", + "yiisoft/definitions": "^3.2", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "cycle/entity-behavior": "To use PHP attributes that add behaviors to Cycle ORM entities." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "di-console": "di-console.php", + "events-console": "events-console.php", + "di-delegates": "di-delegates.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Cycle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Cycle ORM v2 support", + "homepage": "http://www.yiiframework.com/", + "keywords": [ + "cycle", + "migrations", + "orm", + "yii" + ], + "support": { + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-cycle/issues?state=open", + "source": "https://github.com/yiisoft/yii-cycle", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-21T08:34:37+00:00" + }, + { + "name": "yiisoft/yii-debug", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-debug.git", + "reference": "90bb1960841cf3b054433d7c54210fd203d3fe8f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-debug/zipball/90bb1960841cf3b054433d7c54210fd203d3fe8f", + "reference": "90bb1960841cf3b054433d7c54210fd203d3fe8f", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "guzzlehttp/psr7": "^2.4", + "jetbrains/phpstorm-attributes": "^1.0", + "php": "^8.1", + "psr/container": "^2.0", + "psr/event-dispatcher": "^1.0", + "psr/http-client": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/log": "^1.0|^2.0|^3.0", + "symfony/console": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.4", + "yiisoft/aliases": "^3.0", + "yiisoft/arrays": "^2.0|^3.0", + "yiisoft/config": "^1.3", + "yiisoft/di": "^1.0", + "yiisoft/files": "^2.0", + "yiisoft/json": "^1.0", + "yiisoft/profiler": "^3.0", + "yiisoft/proxy": "^1.0.1", + "yiisoft/strings": "^2.2", + "yiisoft/var-dumper": "^1.7" + }, + "require-dev": { + "ext-curl": "*", + "ext-sockets": "*", + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/error-handler": "^3.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-http": "^1.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "bootstrap": "bootstrap.php", + "di": "di.php", + "di-console": "di-console.php", + "di-web": "di-web.php", + "di-providers": "di-providers.php", + "events-web": "events-web.php", + "events-console": "events-console.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Debug\\": "src", + "Yiisoft\\Yii\\Debug\\Tests\\Shared\\": "tests/Shared" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Framework Debug Panel Extension", + "keywords": [ + "debug", + "debugger", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-debug/issues?state=open", + "source": "https://github.com/yiisoft/yii-debug", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-17T07:39:11+00:00" + }, + { + "name": "yiisoft/yii-event", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-event.git", + "reference": "2e02986a09235d20b3c02382f8cc5d7ad2e452fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-event/zipball/2e02986a09235d20b3c02382f8cc5d7ad2e452fb", + "reference": "2e02986a09235d20b3c02382f8cc5d7ad2e452fb", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/config": "^1.3", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config", + "merge-plan-file": "../tests/environment/.merge-plan.php" + }, + "config-plugin": { + "params-web": "params-web.php", + "params-console": "params-console.php", + "di": "di.php", + "di-web": "di-web.php", + "di-console": "di-console.php", + "events-web": [], + "events-console": [] + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Event\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Event", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "event", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-event/issues?state=open", + "source": "https://github.com/yiisoft/yii-event", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-11-04T15:57:42+00:00" + }, + { + "name": "yiisoft/yii-http", + "version": "1.0.4", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-http.git", + "reference": "2555514a091ec9339259f10abc7e8970ef9e5db6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-http/zipball/2555514a091ec9339259f10abc7e8970ef9e5db6", + "reference": "2555514a091ec9339259f10abc7e8970ef9e5db6", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/middleware-dispatcher": "^3.0|^4.0|^5.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii HTTP Application", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "application", + "http", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-http/issues?state=open", + "source": "https://github.com/yiisoft/yii-http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-07T07:54:13+00:00" + }, + { + "name": "yiisoft/yii-middleware", + "version": "1.0.4", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-middleware.git", + "reference": "b2a8157ae2c94847a2b2f2e3b63dc23366b5e42a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-middleware/zipball/b2a8157ae2c94847a2b2f2e3b63dc23366b5e42a", + "reference": "b2a8157ae2c94847a2b2f2e3b63dc23366b5e42a", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^3.0", + "yiisoft/aliases": "^3.0", + "yiisoft/cookies": "^1.2", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/network-utilities": "^1.2", + "yiisoft/router": "^3.0", + "yiisoft/session": "^2.0", + "yiisoft/strings": "^2.1", + "yiisoft/validator": "^1.0|^2.0" + }, + "require-dev": { + "ext-uopz": "*", + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.16", + "slope-it/clock-mock": "^0.3.6", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25", + "yiisoft/router-fastroute": "^3.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/event-dispatcher": "For using events", + "yiisoft/translator": "For updating translator's locale" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Middleware\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Middleware", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "middleware", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-middleware/issues?state=open", + "source": "https://github.com/yiisoft/yii-middleware", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-03T19:34:10+00:00" + }, + { + "name": "yiisoft/yii-runner", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-runner.git", + "reference": "69d8392ecc0c9e47ac7d5a56c1a8596d5c1ac896" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-runner/zipball/69d8392ecc0c9e47ac7d5a56c1a8596d5c1ac896", + "reference": "69d8392ecc0c9e47ac7d5a56c1a8596d5c1ac896", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/config": "^1.1", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/di": "^1.0", + "yiisoft/yii-event": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.20", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/yii-runner-console": "Allows to run console application", + "yiisoft/yii-runner-http": "Allows to run HTTP application", + "yiisoft/yii-runner-roadrunner": "Allows to run HTTP application for RoadRunner" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Runner\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii application runner", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "runner", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-runner/issues?state=open", + "source": "https://github.com/yiisoft/yii-runner", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-09T14:10:08+00:00" + }, + { + "name": "yiisoft/yii-runner-console", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-runner-console.git", + "reference": "e92f4e72778508e7c2918f8fc8c3e75b758eb61a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-runner-console/zipball/e92f4e72778508e7c2918f8fc8c3e75b758eb61a", + "reference": "e92f4e72778508e7c2918f8fc8c3e75b758eb61a", + "shasum": "" + }, + "require": { + "php": "^8.0", + "symfony/console": "^5.4|^6.0|^7.0", + "yiisoft/config": "^1.1", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/di": "^1.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-runner": "^2.2" + }, + "require-dev": { + "codeception/codeception": "^5.0", + "codeception/module-cli": "^2.0", + "maglnet/composer-require-checker": "^4.2", + "rector/rector": "^1.0.0", + "vimeo/psalm": "^4.30|^5.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Runner\\Console\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Console application runner", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "console", + "runner", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-runner-console/issues?state=open", + "source": "https://github.com/yiisoft/yii-runner-console", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-10T10:06:34+00:00" + }, + { + "name": "yiisoft/yii-runner-http", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-runner-http.git", + "reference": "798c37abbcceb6b0053744b4bde0c476cd53e15e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-runner-http/zipball/798c37abbcceb6b0053744b4bde0c476cd53e15e", + "reference": "798c37abbcceb6b0053744b4bde0c476cd53e15e", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0 ", + "yiisoft/config": "^1.1", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/di": "^1.0", + "yiisoft/error-handler": "^3.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/http": "^1.2", + "yiisoft/log": "^2.0", + "yiisoft/log-target-file": "^3.0", + "yiisoft/yii-http": "^1.0", + "yiisoft/yii-runner": "^2.2" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.2", + "xepozz/internal-mocker": "^1.4", + "yiisoft/middleware-dispatcher": "^5.0", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Runner\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "HTTP application runner", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "http", + "runner", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-runner-http/issues?state=open", + "source": "https://github.com/yiisoft/yii-runner-http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-10T10:08:37+00:00" + }, + { + "name": "yiisoft/yii-swagger", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-swagger.git", + "reference": "c0fe0483b04719a6724fb13650f679614e1b0cef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-swagger/zipball/c0fe0483b04719a6724fb13650f679614e1b0cef", + "reference": "c0fe0483b04719a6724fb13650f679614e1b0cef", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "swagger-api/swagger-ui": "^4.1|^5.0", + "yiisoft/aliases": "^1.1|^2.0|^3.0", + "yiisoft/arrays": "^3.0", + "yiisoft/assets": "^2.0|^3.0|^4.0", + "yiisoft/cache": "^1.0|^2.0|^3.0", + "yiisoft/data-response": "^1.0|^2.0", + "yiisoft/html": "^3.0", + "yiisoft/yii-view-renderer": "^7.1.0", + "zircote/swagger-php": "^4.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/csrf": "^2.0", + "yiisoft/di": "^1.2", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Swagger\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "OpenAPI Swagger for Yii Framework", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "api", + "swagger", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-swagger/issues?state=open", + "source": "https://github.com/yiisoft/yii-swagger", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-04T21:55:48+00:00" + }, + { + "name": "yiisoft/yii-view-renderer", + "version": "7.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-view-renderer.git", + "reference": "cb11468f554d251c2deb87bf228a302c794134a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-view-renderer/zipball/cb11468f554d251c2deb87bf228a302c794134a3", + "reference": "cb11468f554d251c2deb87bf228a302c794134a3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/aliases": "^2.0|^3.0", + "yiisoft/csrf": "^1.2|^2.0", + "yiisoft/data-response": "^1.0|^2.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/html": "^2.5|^3.0", + "yiisoft/strings": "^2.0", + "yiisoft/view": "^10.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.3", + "nyholm/psr7": "^1.5", + "phpunit/phpunit": "^9.5", + "rector/rector": "1.0.*", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25", + "yiisoft/di": "^1.2", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0", + "yiisoft/yii-debug": "dev-master|dev-php80" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php", + "events-web": "events-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\View\\Renderer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-7 compatible view renderer", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "renderer", + "view", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-view-renderer/issues?state=open", + "source": "https://github.com/yiisoft/yii-view-renderer", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-01T11:56:55+00:00" + }, + { + "name": "zircote/swagger-php", + "version": "4.10.6", + "source": { + "type": "git", + "url": "https://github.com/zircote/swagger-php.git", + "reference": "e462ff5269ea0ec91070edd5d51dc7215bdea3b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/zircote/swagger-php/zipball/e462ff5269ea0ec91070edd5d51dc7215bdea3b6", + "reference": "e462ff5269ea0ec91070edd5d51dc7215bdea3b6", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": ">=7.2", + "psr/log": "^1.1 || ^2.0 || ^3.0", + "symfony/deprecation-contracts": "^2 || ^3", + "symfony/finder": ">=2.2", + "symfony/yaml": ">=3.3" + }, + "require-dev": { + "composer/package-versions-deprecated": "^1.11", + "doctrine/annotations": "^1.7 || ^2.0", + "friendsofphp/php-cs-fixer": "^2.17 || ^3.47.1", + "phpstan/phpstan": "^1.6", + "phpunit/phpunit": ">=8", + "vimeo/psalm": "^4.23" + }, + "suggest": { + "doctrine/annotations": "^1.7 || ^2.0" + }, + "bin": [ + "bin/openapi" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "OpenApi\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Robert Allen", + "email": "zircote@gmail.com" + }, + { + "name": "Bob Fanger", + "email": "bfanger@gmail.com", + "homepage": "https://bfanger.nl" + }, + { + "name": "Martin Rademacher", + "email": "mano@radebatz.net", + "homepage": "https://radebatz.net" + } + ], + "description": "swagger-php - Generate interactive documentation for your RESTful API using phpdoc annotations", + "homepage": "https://github.com/zircote/swagger-php/", + "keywords": [ + "api", + "json", + "rest", + "service discovery" + ], + "support": { + "issues": "https://github.com/zircote/swagger-php/issues", + "source": "https://github.com/zircote/swagger-php/tree/4.10.6" + }, + "time": "2024-07-26T03:04:43+00:00" + } + ], + "packages-dev": [ + { + "name": "amphp/amp", + "version": "v2.6.4", + "source": { + "type": "git", + "url": "https://github.com/amphp/amp.git", + "reference": "ded3d9be08f526089eb7ee8d9f16a9768f9dec2d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/amp/zipball/ded3d9be08f526089eb7ee8d9f16a9768f9dec2d", + "reference": "ded3d9be08f526089eb7ee8d9f16a9768f9dec2d", + "shasum": "" + }, + "require": { + "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": "^7 | ^8 | ^9", + "react/promise": "^2", + "vimeo/psalm": "^3.12" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "files": [ + "lib/functions.php", + "lib/Internal/functions.php" + ], + "psr-4": { + "Amp\\": "lib" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Daniel Lowrey", + "email": "rdlowrey@php.net" + }, + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Bob Weinand", + "email": "bobwei9@hotmail.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A non-blocking concurrency framework for PHP applications.", + "homepage": "https://amphp.org/amp", + "keywords": [ + "async", + "asynchronous", + "awaitable", + "concurrency", + "event", + "event-loop", + "future", + "non-blocking", + "promise" + ], + "support": { + "irc": "irc://irc.freenode.org/amphp", + "issues": "https://github.com/amphp/amp/issues", + "source": "https://github.com/amphp/amp/tree/v2.6.4" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-03-21T18:52:26+00:00" + }, + { + "name": "amphp/byte-stream", + "version": "v1.8.2", + "source": { + "type": "git", + "url": "https://github.com/amphp/byte-stream.git", + "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/byte-stream/zipball/4f0e968ba3798a423730f567b1b50d3441c16ddc", + "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc", + "shasum": "" + }, + "require": { + "amphp/amp": "^2", + "php": ">=7.1" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "dev-master", + "amphp/phpunit-util": "^1.4", + "friendsofphp/php-cs-fixer": "^2.3", + "jetbrains/phpstorm-stubs": "^2019.3", + "phpunit/phpunit": "^6 || ^7 || ^8", + "psalm/phar": "^3.11.4" + }, + "type": "library", + "autoload": { + "files": [ + "lib/functions.php" + ], + "psr-4": { + "Amp\\ByteStream\\": "lib" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A stream abstraction to make working with non-blocking I/O simple.", + "homepage": "https://amphp.org/byte-stream", + "keywords": [ + "amp", + "amphp", + "async", + "io", + "non-blocking", + "stream" + ], + "support": { + "issues": "https://github.com/amphp/byte-stream/issues", + "source": "https://github.com/amphp/byte-stream/tree/v1.8.2" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-04-13T18:00:56+00:00" + }, + { + "name": "behat/gherkin", + "version": "v4.9.0", + "source": { + "type": "git", + "url": "https://github.com/Behat/Gherkin.git", + "reference": "0bc8d1e30e96183e4f36db9dc79caead300beff4" + }, + "dist": { + "type": "zip", + "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-22.0.0", + "phpunit/phpunit": "~8|~9", + "symfony/yaml": "~3|~4|~5" + }, + "suggest": { + "symfony/yaml": "If you want to parse features, represented in YAML files" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, + "autoload": { + "psr-0": { + "Behat\\Gherkin": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Konstantin Kudryashov", + "email": "ever.zet@gmail.com", + "homepage": "http://everzet.com" + } + ], + "description": "Gherkin DSL parser for PHP", + "homepage": "http://behat.org/", + "keywords": [ + "BDD", + "Behat", + "Cucumber", + "DSL", + "gherkin", + "parser" + ], + "support": { + "issues": "https://github.com/Behat/Gherkin/issues", + "source": "https://github.com/Behat/Gherkin/tree/v4.9.0" + }, + "time": "2021-10-12T13:05:09+00:00" + }, + { + "name": "clue/stdio-react", + "version": "v2.6.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-stdio.git", + "reference": "dfa6c378aabdff718202d4e2453f752c38ea3399" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-stdio/zipball/dfa6c378aabdff718202d4e2453f752c38ea3399", + "reference": "dfa6c378aabdff718202d4e2453f752c38ea3399", + "shasum": "" + }, + "require": { + "clue/term-react": "^1.0 || ^0.1.1", + "clue/utf8-react": "^1.0 || ^0.1", + "php": ">=5.3", + "react/event-loop": "^1.2", + "react/stream": "^1.2" + }, + "require-dev": { + "clue/arguments": "^2.0", + "clue/commander": "^1.2", + "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35" + }, + "suggest": { + "ext-mbstring": "Using ext-mbstring should provide slightly better performance for handling I/O" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\Stdio\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Async, event-driven console input & output (STDIN, STDOUT) for truly interactive CLI applications, built on top of ReactPHP", + "homepage": "https://github.com/clue/reactphp-stdio", + "keywords": [ + "async", + "autocomplete", + "autocompletion", + "cli", + "history", + "interactive", + "reactphp", + "readline", + "stdin", + "stdio", + "stdout" + ], + "support": { + "issues": "https://github.com/clue/reactphp-stdio/issues", + "source": "https://github.com/clue/reactphp-stdio/tree/v2.6.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2022-03-18T15:09:30+00:00" + }, + { + "name": "clue/term-react", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-term.git", + "reference": "00f297dc597eaee2ebf98af8f27cca5d21d60fa3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-term/zipball/00f297dc597eaee2ebf98af8f27cca5d21d60fa3", + "reference": "00f297dc597eaee2ebf98af8f27cca5d21d60fa3", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "react/stream": "^1.2" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/event-loop": "^1.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\Term\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Streaming terminal emulator, built on top of ReactPHP.", + "homepage": "https://github.com/clue/reactphp-term", + "keywords": [ + "C0", + "CSI", + "ansi", + "apc", + "ascii", + "c1", + "control codes", + "dps", + "osc", + "pm", + "reactphp", + "streaming", + "terminal", + "vt100", + "xterm" + ], + "support": { + "issues": "https://github.com/clue/reactphp-term/issues", + "source": "https://github.com/clue/reactphp-term/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2024-01-30T10:22:09+00:00" + }, + { + "name": "clue/utf8-react", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-utf8.git", + "reference": "d5cd04d39cb5457aa5df830b7c4b301d2694217e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-utf8/zipball/d5cd04d39cb5457aa5df830b7c4b301d2694217e", + "reference": "d5cd04d39cb5457aa5df830b7c4b301d2694217e", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "react/stream": "^1.0 || ^0.7 || ^0.6 || ^0.5 || ^0.4 || ^0.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/stream": "^1.0 || ^0.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\Utf8\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Streaming UTF-8 parser, built on top of ReactPHP.", + "homepage": "https://github.com/clue/reactphp-utf8", + "keywords": [ + "reactphp", + "streaming", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "issues": "https://github.com/clue/reactphp-utf8/issues", + "source": "https://github.com/clue/reactphp-utf8/tree/v1.3.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2023-12-06T14:52:17+00:00" + }, + { + "name": "codeception/c3", + "version": "2.9.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/c3.git", + "reference": "e23298a1cd5e7745973ea26a53572a3d9b013439" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/c3/zipball/e23298a1cd5e7745973ea26a53572a3d9b013439", + "reference": "e23298a1cd5e7745973ea26a53572a3d9b013439", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0 || ^2.0", + "php": ">=5.5.0" + }, + "require-dev": { + "composer/composer": "^1.0 || ^2.0" + }, + "type": "composer-plugin", + "extra": { + "class": "Codeception\\c3\\Installer" + }, + "autoload": { + "psr-4": { + "Codeception\\c3\\": "." + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tiger Seo", + "email": "tiger.seo@gmail.com" + }, + { + "name": "Michael Bodnarchuk", + "email": "davert.php@codegyre.com", + "homepage": "http://codegyre.com" + } + ], + "description": "CodeCoverage collector for Codeception", + "homepage": "http://codeception.com/", + "keywords": [ + "code coverage", + "codecoverage" + ], + "support": { + "issues": "https://github.com/Codeception/c3/issues", + "source": "https://github.com/Codeception/c3/tree/2.9.0" + }, + "time": "2023-10-15T17:57:07+00:00" + }, + { + "name": "codeception/codeception", + "version": "5.1.2", + "source": { + "type": "git", + "url": "https://github.com/Codeception/Codeception.git", + "reference": "3b2d7d1a88e7e1d9dc0acb6d3c8f0acda0a37374" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/Codeception/zipball/3b2d7d1a88e7e1d9dc0acb6d3c8f0acda0a37374", + "reference": "3b2d7d1a88e7e1d9dc0acb6d3c8f0acda0a37374", + "shasum": "" + }, + "require": { + "behat/gherkin": "^4.6.2", + "codeception/lib-asserts": "^2.0", + "codeception/stub": "^4.1", + "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "phpunit/php-code-coverage": "^9.2 || ^10.0 || ^11.0", + "phpunit/php-text-template": "^2.0 || ^3.0 || ^4.0", + "phpunit/php-timer": "^5.0.3 || ^6.0 || ^7.0", + "phpunit/phpunit": "^9.5.20 || ^10.0 || ^11.0", + "psy/psysh": "^0.11.2 || ^0.12", + "sebastian/comparator": "^4.0.5 || ^5.0 || ^6.0", + "sebastian/diff": "^4.0.3 || ^5.0 || ^6.0", + "symfony/console": ">=4.4.24 <8.0", + "symfony/css-selector": ">=4.4.24 <8.0", + "symfony/event-dispatcher": ">=4.4.24 <8.0", + "symfony/finder": ">=4.4.24 <8.0", + "symfony/var-dumper": ">=4.4.24 <8.0", + "symfony/yaml": ">=4.4.24 <8.0" + }, + "conflict": { + "codeception/lib-innerbrowser": "<3.1.3", + "codeception/module-filesystem": "<3.0", + "codeception/module-phpbrowser": "<2.5" + }, + "replace": { + "codeception/phpunit-wrapper": "*" + }, + "require-dev": { + "codeception/lib-innerbrowser": "*@dev", + "codeception/lib-web": "^1.0", + "codeception/module-asserts": "*@dev", + "codeception/module-cli": "*@dev", + "codeception/module-db": "*@dev", + "codeception/module-filesystem": "*@dev", + "codeception/module-phpbrowser": "*@dev", + "codeception/util-universalframework": "*@dev", + "ext-simplexml": "*", + "jetbrains/phpstorm-attributes": "^1.0", + "symfony/dotenv": ">=4.4.24 <8.0", + "symfony/process": ">=4.4.24 <8.0", + "vlucas/phpdotenv": "^5.1" + }, + "suggest": { + "codeception/specify": "BDD-style code blocks", + "codeception/verify": "BDD-style assertions", + "ext-simplexml": "For loading params from XML files", + "stecman/symfony-console-completion": "For BASH autocompletion", + "symfony/dotenv": "For loading params from .env files", + "symfony/phpunit-bridge": "For phpunit-bridge support", + "vlucas/phpdotenv": "For loading params from .env files" + }, + "bin": [ + "codecept" + ], + "type": "library", + "autoload": { + "files": [ + "functions.php" + ], + "psr-4": { + "Codeception\\": "src/Codeception", + "Codeception\\Extension\\": "ext" + }, + "classmap": [ + "src/PHPUnit/TestCase.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk", + "email": "davert.ua@gmail.com", + "homepage": "https://codeception.com" + } + ], + "description": "BDD-style testing framework", + "homepage": "https://codeception.com/", + "keywords": [ + "BDD", + "TDD", + "acceptance testing", + "functional testing", + "unit testing" + ], + "support": { + "issues": "https://github.com/Codeception/Codeception/issues", + "source": "https://github.com/Codeception/Codeception/tree/5.1.2" + }, + "funding": [ + { + "url": "https://opencollective.com/codeception", + "type": "open_collective" + } + ], + "time": "2024-03-07T07:19:42+00:00" + }, + { + "name": "codeception/lib-asserts", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-asserts.git", + "reference": "b8c7dff552249e560879c682ba44a4b963af91bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/b8c7dff552249e560879c682ba44a4b963af91bc", + "reference": "b8c7dff552249e560879c682ba44a4b963af91bc", + "shasum": "" + }, + "require": { + "codeception/phpunit-wrapper": "^7.7.1 | ^8.0.3 | ^9.0", + "ext-dom": "*", + "php": "^7.4 | ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk", + "email": "davert@mail.ua", + "homepage": "http://codegyre.com" + }, + { + "name": "Gintautas Miselis" + }, + { + "name": "Gustavo Nieves", + "homepage": "https://medium.com/@ganieves" + } + ], + "description": "Assertion methods used by Codeception core and Asserts module", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-asserts/issues", + "source": "https://github.com/Codeception/lib-asserts/tree/2.1.0" + }, + "time": "2023-02-10T18:36:23+00:00" + }, + { + "name": "codeception/lib-innerbrowser", + "version": "3.1.3", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-innerbrowser.git", + "reference": "10482f7e34c0537bf5b87bc82a3d65a1842a8b4f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/10482f7e34c0537bf5b87bc82a3d65a1842a8b4f", + "reference": "10482f7e34c0537bf5b87bc82a3d65a1842a8b4f", + "shasum": "" + }, + "require": { + "codeception/codeception": "^5.0", + "codeception/lib-web": "^1.0.1", + "ext-dom": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "phpunit/phpunit": "^9.5", + "symfony/browser-kit": "^4.4.24 || ^5.4 || ^6.0", + "symfony/dom-crawler": "^4.4.30 || ^5.4 || ^6.0" + }, + "require-dev": { + "codeception/util-universalframework": "dev-master" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk", + "email": "davert@mail.ua", + "homepage": "https://codegyre.com" + }, + { + "name": "Gintautas Miselis" + } + ], + "description": "Parent library for all Codeception framework modules and PhpBrowser", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-innerbrowser/issues", + "source": "https://github.com/Codeception/lib-innerbrowser/tree/3.1.3" + }, + "time": "2022-10-03T15:33:34+00:00" + }, + { + "name": "codeception/lib-web", + "version": "1.0.6", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-web.git", + "reference": "01ff7f9ed8760ba0b0805a0b3a843b4e74165a60" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-web/zipball/01ff7f9ed8760ba0b0805a0b3a843b4e74165a60", + "reference": "01ff7f9ed8760ba0b0805a0b3a843b4e74165a60", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "guzzlehttp/psr7": "^2.0", + "php": "^8.0", + "phpunit/phpunit": "^9.5 | ^10.0 | ^11.0", + "symfony/css-selector": ">=4.4.24 <8.0" + }, + "conflict": { + "codeception/codeception": "<5.0.0-alpha3" + }, + "require-dev": { + "php-webdriver/webdriver": "^1.12" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gintautas Miselis" + } + ], + "description": "Library containing files used by module-webdriver and lib-innerbrowser or module-phpbrowser", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-web/issues", + "source": "https://github.com/Codeception/lib-web/tree/1.0.6" + }, + "time": "2024-02-06T20:50:08+00:00" + }, + { + "name": "codeception/lib-xml", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-xml.git", + "reference": "ba49213e60807e3612513f404a5c93aec63f4c72" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-xml/zipball/ba49213e60807e3612513f404a5c93aec63f4c72", + "reference": "ba49213e60807e3612513f404a5c93aec63f4c72", + "shasum": "" + }, + "require": { + "codeception/lib-web": "^1.0.6", + "ext-dom": "*", + "php": "^8.0", + "symfony/css-selector": ">=4.4.24 <8.0" + }, + "conflict": { + "codeception/codeception": "<5.0.0-alpha3" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gintautas Miselis" + } + ], + "description": "Files used by module-rest and module-soap", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-xml/issues", + "source": "https://github.com/Codeception/lib-xml/tree/1.0.3" + }, + "time": "2024-02-06T21:00:41+00:00" + }, + { + "name": "codeception/module-asserts", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-asserts.git", + "reference": "1b6b150b30586c3614e7e5761b31834ed7968603" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-asserts/zipball/1b6b150b30586c3614e7e5761b31834ed7968603", + "reference": "1b6b150b30586c3614e7e5761b31834ed7968603", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "codeception/lib-asserts": "^2.0", + "php": "^8.0" + }, + "conflict": { + "codeception/codeception": "<5.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + }, + { + "name": "Gintautas Miselis" + }, + { + "name": "Gustavo Nieves", + "homepage": "https://medium.com/@ganieves" + } + ], + "description": "Codeception module containing various assertions", + "homepage": "https://codeception.com/", + "keywords": [ + "assertions", + "asserts", + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/module-asserts/issues", + "source": "https://github.com/Codeception/module-asserts/tree/3.0.0" + }, + "time": "2022-02-16T19:48:08+00:00" + }, + { + "name": "codeception/module-cli", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-cli.git", + "reference": "a3a101fae4049fa2f810107f7bd5db3b3266ce63" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-cli/zipball/a3a101fae4049fa2f810107f7bd5db3b3266ce63", + "reference": "a3a101fae4049fa2f810107f7bd5db3b3266ce63", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "codeception/module-asserts": "*", + "php": "^7.4 || ^8.0" + }, + "conflict": { + "codeception/codeception": "<4.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + } + ], + "description": "Codeception module for testing basic shell commands and shell output", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/module-cli/issues", + "source": "https://github.com/Codeception/module-cli/tree/2.0.1" + }, + "time": "2023-01-13T18:41:03+00:00" + }, + { + "name": "codeception/module-db", + "version": "3.1.4", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-db.git", + "reference": "06be16dcf4dda46eaef9454f1361d62bcb971c36" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-db/zipball/06be16dcf4dda46eaef9454f1361d62bcb971c36", + "reference": "06be16dcf4dda46eaef9454f1361d62bcb971c36", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "ext-json": "*", + "ext-mbstring": "*", + "ext-pdo": "*", + "php": "^8.0" + }, + "conflict": { + "codeception/codeception": "<5.0" + }, + "require-dev": { + "squizlabs/php_codesniffer": "*" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + }, + { + "name": "Gintautas Miselis" + } + ], + "description": "DB module for Codeception", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception", + "database-testing", + "db-testing" + ], + "support": { + "issues": "https://github.com/Codeception/module-db/issues", + "source": "https://github.com/Codeception/module-db/tree/3.1.4" + }, + "time": "2024-05-16T20:12:18+00:00" + }, + { + "name": "codeception/module-phpbrowser", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-phpbrowser.git", + "reference": "a972411f60cd00d00d5e5e3b35496ba4a23bcffc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-phpbrowser/zipball/a972411f60cd00d00d5e5e3b35496ba4a23bcffc", + "reference": "a972411f60cd00d00d5e5e3b35496ba4a23bcffc", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "codeception/lib-innerbrowser": "*@dev", + "ext-json": "*", + "guzzlehttp/guzzle": "^7.4", + "php": "^8.0", + "symfony/browser-kit": "^5.4 || ^6.0 || ^7.0" + }, + "conflict": { + "codeception/codeception": "<5.0", + "codeception/lib-innerbrowser": "<3.0" + }, + "require-dev": { + "aws/aws-sdk-php": "^3.199", + "codeception/module-rest": "^2.0 || *@dev", + "ext-curl": "*" + }, + "suggest": { + "codeception/phpbuiltinserver": "Start and stop PHP built-in web server for your tests" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + }, + { + "name": "Gintautas Miselis" + } + ], + "description": "Codeception module for testing web application over HTTP", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception", + "functional-testing", + "http" + ], + "support": { + "issues": "https://github.com/Codeception/module-phpbrowser/issues", + "source": "https://github.com/Codeception/module-phpbrowser/tree/3.0.1" + }, + "time": "2023-12-08T19:41:28+00:00" + }, + { + "name": "codeception/module-rest", + "version": "3.4.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-rest.git", + "reference": "086762ee8a1686e954678b015a7dca4b922c6520" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-rest/zipball/086762ee8a1686e954678b015a7dca4b922c6520", + "reference": "086762ee8a1686e954678b015a7dca4b922c6520", + "shasum": "" + }, + "require": { + "codeception/codeception": "^5.0.8", + "codeception/lib-xml": "^1.0", + "ext-dom": "*", + "ext-json": "*", + "justinrainbow/json-schema": "^5.2.9", + "php": "^8.1", + "softcreatr/jsonpath": "^0.8 || ^0.9" + }, + "require-dev": { + "codeception/lib-innerbrowser": "^3.0 | ^4.0", + "codeception/stub": "^4.0", + "codeception/util-universalframework": "^1.0", + "ext-libxml": "*", + "ext-simplexml": "*" + }, + "suggest": { + "aws/aws-sdk-php": "For using AWS Auth" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gintautas Miselis" + } + ], + "description": "REST module for Codeception", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception", + "rest" + ], + "support": { + "issues": "https://github.com/Codeception/module-rest/issues", + "source": "https://github.com/Codeception/module-rest/tree/3.4.0" + }, + "time": "2024-07-12T06:28:28+00:00" + }, + { + "name": "codeception/stub", + "version": "4.1.3", + "source": { + "type": "git", + "url": "https://github.com/Codeception/Stub.git", + "reference": "4fcad2c165f365377486dc3fd8703b07f1f2fcae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/Stub/zipball/4fcad2c165f365377486dc3fd8703b07f1f2fcae", + "reference": "4fcad2c165f365377486dc3fd8703b07f1f2fcae", + "shasum": "" + }, + "require": { + "php": "^7.4 | ^8.0", + "phpunit/phpunit": "^8.4 | ^9.0 | ^10.0 | ^11" + }, + "conflict": { + "codeception/codeception": "<5.0.6" + }, + "require-dev": { + "consolidation/robo": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Codeception\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", + "support": { + "issues": "https://github.com/Codeception/Stub/issues", + "source": "https://github.com/Codeception/Stub/tree/4.1.3" + }, + "time": "2024-02-02T19:21:00+00:00" + }, + { + "name": "colinodell/json5", + "version": "v2.3.0", + "source": { + "type": "git", + "url": "https://github.com/colinodell/json5.git", + "reference": "15b063f8cb5e6deb15f0cd39123264ec0d19c710" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/colinodell/json5/zipball/15b063f8cb5e6deb15f0cd39123264ec0d19c710", + "reference": "15b063f8cb5e6deb15f0cd39123264ec0d19c710", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "php": "^7.1.3|^8.0" + }, + "conflict": { + "scrutinizer/ocular": "1.7.*" + }, + "require-dev": { + "mikehaertl/php-shellcommand": "^1.2.5", + "phpstan/phpstan": "^1.4", + "scrutinizer/ocular": "^1.6", + "squizlabs/php_codesniffer": "^2.3 || ^3.0", + "symfony/finder": "^4.4|^5.4|^6.0", + "symfony/phpunit-bridge": "^5.4|^6.0" + }, + "bin": [ + "bin/json5" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + } + }, + "autoload": { + "files": [ + "src/global.php" + ], + "psr-4": { + "ColinODell\\Json5\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Developer" + } + ], + "description": "UTF-8 compatible JSON5 parser for PHP", + "homepage": "https://github.com/colinodell/json5", + "keywords": [ + "JSON5", + "json", + "json5_decode", + "json_decode" + ], + "support": { + "issues": "https://github.com/colinodell/json5/issues", + "source": "https://github.com/colinodell/json5/tree/v2.3.0" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://www.patreon.com/colinodell", + "type": "patreon" + } + ], + "time": "2022-12-27T16:44:40+00:00" + }, + { + "name": "composer/package-versions-deprecated", + "version": "1.11.99.5", + "source": { + "type": "git", + "url": "https://github.com/composer/package-versions-deprecated.git", + "reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b4f54f74ef3453349c24a845d22392cd31e65f1d", + "reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1.0 || ^2.0", + "php": "^7 || ^8" + }, + "replace": { + "ocramius/package-versions": "1.11.99" + }, + "require-dev": { + "composer/composer": "^1.9.3 || ^2.0@dev", + "ext-zip": "^1.13", + "phpunit/phpunit": "^6.5 || ^7" + }, + "type": "composer-plugin", + "extra": { + "class": "PackageVersions\\Installer", + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "PackageVersions\\": "src/PackageVersions" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" + } + ], + "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/1.11.99.5" + }, + "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-01-17T14:14:24+00:00" + }, + { + "name": "composer/pcre", + "version": "3.3.1", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/63aaeac21d7e775ff9bc9d45021e1745c97521c4", + "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<1.11.10" + }, + "require-dev": { + "phpstan/phpstan": "^1.11.10", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "^8 || ^9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "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.3.1" + }, + "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": "2024-08-27T18:44:43+00:00" + }, + { + "name": "composer/semver", + "version": "3.4.3", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.11", + "symfony/phpunit-bridge": "^3 || ^7" + }, + "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": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/semver/issues", + "source": "https://github.com/composer/semver/tree/3.4.3" + }, + "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": "2024-09-19T14:15:21+00:00" + }, + { + "name": "composer/xdebug-handler", + "version": "3.0.5", + "source": { + "type": "git", + "url": "https://github.com/composer/xdebug-handler.git", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef", + "shasum": "" + }, + "require": { + "composer/pcre": "^1 || ^2 || ^3", + "php": "^7.2.5 || ^8.0", + "psr/log": "^1 || ^2 || ^3" + }, + "require-dev": { + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "^8.5 || ^9.6 || ^10.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Composer\\XdebugHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "John Stevenson", + "email": "john-stevenson@blueyonder.co.uk" + } + ], + "description": "Restarts a process without Xdebug.", + "keywords": [ + "Xdebug", + "performance" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/xdebug-handler/issues", + "source": "https://github.com/composer/xdebug-handler/tree/3.0.5" + }, + "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": "2024-05-06T16:37:16+00:00" + }, + { + "name": "dnoegel/php-xdg-base-dir", + "version": "v0.1.1", + "source": { + "type": "git", + "url": "https://github.com/dnoegel/php-xdg-base-dir.git", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" + }, + "type": "library", + "autoload": { + "psr-4": { + "XdgBaseDir\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "implementation of xdg base directory specification for php", + "support": { + "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", + "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" + }, + "time": "2019-12-04T15:06:13+00:00" + }, + { + "name": "evenement/evenement", + "version": "v3.0.2", + "source": { + "type": "git", + "url": "https://github.com/igorw/evenement.git", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/igorw/evenement/zipball/0a16b0d71ab13284339abb99d9d2bd813640efbc", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc", + "shasum": "" + }, + "require": { + "php": ">=7.0" + }, + "require-dev": { + "phpunit/phpunit": "^9 || ^6" + }, + "type": "library", + "autoload": { + "psr-4": { + "Evenement\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + } + ], + "description": "Événement is a very simple event dispatching library for PHP", + "keywords": [ + "event-dispatcher", + "event-emitter" + ], + "support": { + "issues": "https://github.com/igorw/evenement/issues", + "source": "https://github.com/igorw/evenement/tree/v3.0.2" + }, + "time": "2023-08-08T05:53:35+00:00" + }, + { + "name": "felixfbecker/advanced-json-rpc", + "version": "v3.2.1", + "source": { + "type": "git", + "url": "https://github.com/felixfbecker/php-advanced-json-rpc.git", + "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/felixfbecker/php-advanced-json-rpc/zipball/b5f37dbff9a8ad360ca341f3240dc1c168b45447", + "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447", + "shasum": "" + }, + "require": { + "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": { + "phpunit/phpunit": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "AdvancedJsonRpc\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Felix Becker", + "email": "felix.b@outlook.com" + } + ], + "description": "A more advanced JSONRPC implementation", + "support": { + "issues": "https://github.com/felixfbecker/php-advanced-json-rpc/issues", + "source": "https://github.com/felixfbecker/php-advanced-json-rpc/tree/v3.2.1" + }, + "time": "2021-06-11T22:34:44+00:00" + }, + { + "name": "felixfbecker/language-server-protocol", + "version": "v1.5.2", + "source": { + "type": "git", + "url": "https://github.com/felixfbecker/php-language-server-protocol.git", + "reference": "6e82196ffd7c62f7794d778ca52b69feec9f2842" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/6e82196ffd7c62f7794d778ca52b69feec9f2842", + "reference": "6e82196ffd7c62f7794d778ca52b69feec9f2842", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpstan/phpstan": "*", + "squizlabs/php_codesniffer": "^3.1", + "vimeo/psalm": "^4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "LanguageServerProtocol\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Felix Becker", + "email": "felix.b@outlook.com" + } + ], + "description": "PHP classes for the Language Server Protocol", + "keywords": [ + "language", + "microsoft", + "php", + "server" + ], + "support": { + "issues": "https://github.com/felixfbecker/php-language-server-protocol/issues", + "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.2" + }, + "time": "2022-03-02T22:36:06+00:00" + }, + { + "name": "fidry/cpu-core-counter", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/theofidry/cpu-core-counter.git", + "reference": "8520451a140d3f46ac33042715115e290cf5785f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/8520451a140d3f46ac33042715115e290cf5785f", + "reference": "8520451a140d3f46ac33042715115e290cf5785f", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "fidry/makefile": "^0.2.0", + "fidry/php-cs-fixer-config": "^1.1.2", + "phpstan/extension-installer": "^1.2.0", + "phpstan/phpstan": "^1.9.2", + "phpstan/phpstan-deprecation-rules": "^1.0.0", + "phpstan/phpstan-phpunit": "^1.2.2", + "phpstan/phpstan-strict-rules": "^1.4.4", + "phpunit/phpunit": "^8.5.31 || ^9.5.26", + "webmozarts/strict-phpunit": "^7.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Fidry\\CpuCoreCounter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com" + } + ], + "description": "Tiny utility to get the number of CPU cores.", + "keywords": [ + "CPU", + "core" + ], + "support": { + "issues": "https://github.com/theofidry/cpu-core-counter/issues", + "source": "https://github.com/theofidry/cpu-core-counter/tree/1.2.0" + }, + "funding": [ + { + "url": "https://github.com/theofidry", + "type": "github" + } + ], + "time": "2024-08-06T10:04:20+00:00" + }, + { + "name": "gitonomy/gitlib", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/gitonomy/gitlib.git", + "reference": "2c7fbbd9814178474d0bb1b6292701cb4ab508f9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/gitonomy/gitlib/zipball/2c7fbbd9814178474d0bb1b6292701cb4ab508f9", + "reference": "2c7fbbd9814178474d0bb1b6292701cb4ab508f9", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "php": "^8.0", + "symfony/polyfill-mbstring": "^1.7", + "symfony/process": "^5.4 || ^6.0 || ^7.0" + }, + "require-dev": { + "ext-fileinfo": "*", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^7.5.20 || ^8.5.20 || ^9.5.9", + "psr/log": "^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Gitonomy\\Git\\": "src/Gitonomy/Git/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Julien Didier", + "email": "genzo.wm@gmail.com", + "homepage": "https://github.com/juliendidier" + }, + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info", + "homepage": "https://github.com/lyrixx" + }, + { + "name": "Alexandre Salomé", + "email": "alexandre.salome@gmail.com", + "homepage": "https://github.com/alexandresalome" + } + ], + "description": "Library for accessing git", + "support": { + "issues": "https://github.com/gitonomy/gitlib/issues", + "source": "https://github.com/gitonomy/gitlib/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/gitonomy/gitlib", + "type": "tidelift" + } + ], + "time": "2023-12-20T13:02:08+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "7.9.2", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-curl": "*", + "guzzle/client-integration-tests": "3.0.2", + "php-http/message-factory": "^1.1", + "phpunit/phpunit": "^8.5.39 || ^9.6.20", + "psr/log": "^1.1 || ^2.0 || ^3.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.9.2" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", + "type": "tidelift" + } + ], + "time": "2024-07-24T11:22:20+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", + "type": "tidelift" + } + ], + "time": "2024-07-18T10:29:17+00:00" + }, + { + "name": "httpsoft/http-basis", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-basis.git", + "reference": "63c4306c516375e3fa08358a58194e159bfbb984" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-basis/zipball/63c4306c516375e3fa08358a58194e159bfbb984", + "reference": "63c4306c516375e3fa08358a58194e159bfbb984", + "shasum": "" + }, + "require": { + "ext-json": "*", + "httpsoft/http-cookie": "^1.1", + "httpsoft/http-emitter": "^1.1", + "httpsoft/http-error-handler": "^1.1", + "httpsoft/http-message": "^1.1", + "httpsoft/http-response": "^1.1", + "httpsoft/http-router": "^1.1", + "httpsoft/http-runner": "^1.1", + "httpsoft/http-server-request": "^1.1", + "php": "^7.4|^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-handler-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "devanych/di-container": "^2.1", + "devanych/view-renderer": "^1.0", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Basis\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Simple and fast HTTP microframework implementing PSR standards", + "homepage": "https://httpsoft.org/", + "keywords": [ + "PSR-11", + "http", + "http-framework", + "microframework", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/basis", + "issues": "https://github.com/httpsoft/http-basis/issues", + "source": "https://github.com/httpsoft/http-basis" + }, + "time": "2023-05-05T22:15:06+00:00" + }, + { + "name": "httpsoft/http-cookie", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-cookie.git", + "reference": "c304b7d9888ed27bf2bcdb95762d87263a457644" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-cookie/zipball/c304b7d9888ed27bf2bcdb95762d87263a457644", + "reference": "c304b7d9888ed27bf2bcdb95762d87263a457644", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Cookie\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Managing cookies with PSR-7 support", + "homepage": "https://httpsoft.org/", + "keywords": [ + "cookie", + "cookies", + "http", + "http-cookie", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/cookie", + "issues": "https://github.com/httpsoft/http-cookie/issues", + "source": "https://github.com/httpsoft/http-cookie" + }, + "time": "2023-05-05T20:37:18+00:00" + }, + { + "name": "httpsoft/http-emitter", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-emitter.git", + "reference": "b09e2834b6d40e022f0c0eb7417f97f496e376b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-emitter/zipball/b09e2834b6d40e022f0c0eb7417f97f496e376b6", + "reference": "b09e2834b6d40e022f0c0eb7417f97f496e376b6", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-message": "^1.1|^2.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Emitter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Emitting of PSR-7 Response implementation", + "homepage": "https://httpsoft.org/", + "keywords": [ + "emitter", + "http", + "http-emitter", + "http-message", + "php", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/emitter", + "issues": "https://github.com/httpsoft/http-emitter/issues", + "source": "https://github.com/httpsoft/http-emitter" + }, + "time": "2023-05-05T20:18:44+00:00" + }, + { + "name": "httpsoft/http-error-handler", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-error-handler.git", + "reference": "f5bfb10cdf6de7420e59d8342ba12f19749e7bc1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-error-handler/zipball/f5bfb10cdf6de7420e59d8342ba12f19749e7bc1", + "reference": "f5bfb10cdf6de7420e59d8342ba12f19749e7bc1", + "shasum": "" + }, + "require": { + "httpsoft/http-response": "^1.1", + "php": "^7.4|^8.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-handler-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-server-request": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\ErrorHandler\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Error handling PSR-7 and PSR-15 components", + "homepage": "https://httpsoft.org/", + "keywords": [ + "error-handler", + "error-middleware", + "http", + "http-error", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/error-handler", + "issues": "https://github.com/httpsoft/http-error-handler/issues", + "source": "https://github.com/httpsoft/http-error-handler" + }, + "time": "2023-05-05T21:14:04+00:00" + }, + { + "name": "httpsoft/http-response", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-response.git", + "reference": "6e9d25a540506ba8a5165817fdd856a856e32c02" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-response/zipball/6e9d25a540506ba8a5165817fdd856a856e32c02", + "reference": "6e9d25a540506ba8a5165817fdd856a856e32c02", + "shasum": "" + }, + "require": { + "httpsoft/http-message": "^1.1", + "php": "^7.4|^8.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Response\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "PSR-7 Response implementations", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-message", + "http-response", + "php", + "psr-7", + "responses" + ], + "support": { + "docs": "https://httpsoft.org/docs/response", + "issues": "https://github.com/httpsoft/http-response/issues", + "source": "https://github.com/httpsoft/http-response" + }, + "time": "2023-05-05T20:55:06+00:00" + }, + { + "name": "httpsoft/http-router", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-router.git", + "reference": "460ee40b15ceb61d86a7c511d321c4580960601e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-router/zipball/460ee40b15ceb61d86a7c511d321c4580960601e", + "reference": "460ee40b15ceb61d86a7c511d321c4580960601e", + "shasum": "" + }, + "require": { + "httpsoft/http-runner": "^1.1", + "php": "^7.4|^8.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Router\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Simple and fast HTTP request router providing PSR-7 and PSR-15", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-router", + "php", + "psr-15", + "psr-7", + "route", + "router" + ], + "support": { + "docs": "https://httpsoft.org/docs/router", + "issues": "https://github.com/httpsoft/http-router/issues", + "source": "https://github.com/httpsoft/http-router" + }, + "time": "2023-05-05T22:02:47+00:00" + }, + { + "name": "httpsoft/http-runner", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-runner.git", + "reference": "00ddc625dbf8f0acb786e899575537c7e8327847" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-runner/zipball/00ddc625dbf8f0acb786e899575537c7e8327847", + "reference": "00ddc625dbf8f0acb786e899575537c7e8327847", + "shasum": "" + }, + "require": { + "httpsoft/http-emitter": "^1.1", + "php": "^7.4|^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-handler-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "devanych/di-container": "^2.1", + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Runner\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Running PSR-7 components and building PSR-15 middleware pipelines", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-middleware", + "middleware-pipeline", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/runner", + "issues": "https://github.com/httpsoft/http-runner/issues", + "source": "https://github.com/httpsoft/http-runner" + }, + "time": "2023-05-05T21:47:55+00:00" + }, + { + "name": "httpsoft/http-server-request", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-server-request.git", + "reference": "3d773c8bcaa1c44793d35842fcd82a9d5fd5f193" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-server-request/zipball/3d773c8bcaa1c44793d35842fcd82a9d5fd5f193", + "reference": "3d773c8bcaa1c44793d35842fcd82a9d5fd5f193", + "shasum": "" + }, + "require": { + "httpsoft/http-message": "^1.1", + "php": "^7.4|^8.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\ServerRequest\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Infrastructure for creating PSR-7 ServerRequest and UploadedFile", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-message", + "http-server-request", + "php", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/server-request", + "issues": "https://github.com/httpsoft/http-server-request/issues", + "source": "https://github.com/httpsoft/http-server-request" + }, + "time": "2023-05-05T19:55:05+00:00" + }, + { + "name": "infection/abstract-testframework-adapter", + "version": "0.5.0", + "source": { + "type": "git", + "url": "https://github.com/infection/abstract-testframework-adapter.git", + "reference": "18925e20d15d1a5995bb85c9dc09e8751e1e069b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/abstract-testframework-adapter/zipball/18925e20d15d1a5995bb85c9dc09e8751e1e069b", + "reference": "18925e20d15d1a5995bb85c9dc09e8751e1e069b", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8", + "friendsofphp/php-cs-fixer": "^2.17", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Infection\\AbstractTestFramework\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com" + } + ], + "description": "Abstract Test Framework Adapter for Infection", + "support": { + "issues": "https://github.com/infection/abstract-testframework-adapter/issues", + "source": "https://github.com/infection/abstract-testframework-adapter/tree/0.5.0" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2021-08-17T18:49:12+00:00" + }, + { + "name": "infection/extension-installer", + "version": "0.1.2", + "source": { + "type": "git", + "url": "https://github.com/infection/extension-installer.git", + "reference": "9b351d2910b9a23ab4815542e93d541e0ca0cdcf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/extension-installer/zipball/9b351d2910b9a23ab4815542e93d541e0ca0cdcf", + "reference": "9b351d2910b9a23ab4815542e93d541e0ca0cdcf", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1 || ^2.0" + }, + "require-dev": { + "composer/composer": "^1.9 || ^2.0", + "friendsofphp/php-cs-fixer": "^2.18, <2.19", + "infection/infection": "^0.15.2", + "php-coveralls/php-coveralls": "^2.4", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.10", + "phpstan/phpstan-phpunit": "^0.12.6", + "phpstan/phpstan-strict-rules": "^0.12.2", + "phpstan/phpstan-webmozart-assert": "^0.12.2", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^4.8" + }, + "type": "composer-plugin", + "extra": { + "class": "Infection\\ExtensionInstaller\\Plugin" + }, + "autoload": { + "psr-4": { + "Infection\\ExtensionInstaller\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com" + } + ], + "description": "Infection Extension Installer", + "support": { + "issues": "https://github.com/infection/extension-installer/issues", + "source": "https://github.com/infection/extension-installer/tree/0.1.2" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2021-10-20T22:08:34+00:00" + }, + { + "name": "infection/include-interceptor", + "version": "0.2.5", + "source": { + "type": "git", + "url": "https://github.com/infection/include-interceptor.git", + "reference": "0cc76d95a79d9832d74e74492b0a30139904bdf7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/include-interceptor/zipball/0cc76d95a79d9832d74e74492b0a30139904bdf7", + "reference": "0cc76d95a79d9832d74e74492b0a30139904bdf7", + "shasum": "" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.16", + "infection/infection": "^0.15.0", + "phan/phan": "^2.4 || ^3", + "php-coveralls/php-coveralls": "^2.2", + "phpstan/phpstan": "^0.12.8", + "phpunit/phpunit": "^8.5", + "vimeo/psalm": "^3.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "Infection\\StreamWrapper\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com" + } + ], + "description": "Stream Wrapper: Include Interceptor. Allows to replace included (autoloaded) file with another one.", + "support": { + "issues": "https://github.com/infection/include-interceptor/issues", + "source": "https://github.com/infection/include-interceptor/tree/0.2.5" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2021-08-09T10:03:57+00:00" + }, + { + "name": "infection/infection", + "version": "0.27.10", + "source": { + "type": "git", + "url": "https://github.com/infection/infection.git", + "reference": "873cd3335774a114bef9ca93388e623bf362d820" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/infection/zipball/873cd3335774a114bef9ca93388e623bf362d820", + "reference": "873cd3335774a114bef9ca93388e623bf362d820", + "shasum": "" + }, + "require": { + "colinodell/json5": "^2.2", + "composer-runtime-api": "^2.0", + "composer/xdebug-handler": "^2.0 || ^3.0", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "fidry/cpu-core-counter": "^0.4.0 || ^0.5.0 || ^1.0", + "infection/abstract-testframework-adapter": "^0.5.0", + "infection/extension-installer": "^0.1.0", + "infection/include-interceptor": "^0.2.5", + "justinrainbow/json-schema": "^5.2.10", + "nikic/php-parser": "^4.15.1", + "ondram/ci-detector": "^4.1.0", + "php": "^8.1", + "sanmai/later": "^0.1.1", + "sanmai/pipeline": "^5.1 || ^6", + "sebastian/diff": "^3.0.2 || ^4.0 || ^5.0 || ^6.0", + "symfony/console": "^5.4 || ^6.0 || ^7.0", + "symfony/filesystem": "^5.4 || ^6.0 || ^7.0", + "symfony/finder": "^5.4 || ^6.0 || ^7.0", + "symfony/process": "^5.4 || ^6.0 || ^7.0", + "thecodingmachine/safe": "^2.1.2", + "webmozart/assert": "^1.11" + }, + "conflict": { + "antecedent/patchwork": "<2.1.25", + "dg/bypass-finals": "<1.4.1", + "phpunit/php-code-coverage": ">9,<9.1.4 || >9.2.17,<9.2.21" + }, + "require-dev": { + "brianium/paratest": "^6.11", + "ext-simplexml": "*", + "fidry/makefile": "^0.2.0", + "helmich/phpunit-json-assert": "^3.0", + "phpspec/prophecy": "^1.15", + "phpspec/prophecy-phpunit": "^2.0", + "phpstan/extension-installer": "^1.1.0", + "phpstan/phpstan": "^1.10.15", + "phpstan/phpstan-phpunit": "^1.0.0", + "phpstan/phpstan-strict-rules": "^1.1.0", + "phpstan/phpstan-webmozart-assert": "^1.0.2", + "phpunit/phpunit": "^9.6", + "rector/rector": "^0.16.0", + "sidz/phpstan-rules": "^0.4.0", + "symfony/phpunit-bridge": "^5.4 || ^6.0 || ^7.0", + "symfony/yaml": "^5.4 || ^6.0 || ^7.0", + "thecodingmachine/phpstan-safe-rule": "^1.2.0" + }, + "bin": [ + "bin/infection" + ], + "type": "library", + "autoload": { + "psr-4": { + "Infection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com", + "homepage": "https://twitter.com/maks_rafalko" + }, + { + "name": "Oleg Zhulnev", + "homepage": "https://github.com/sidz" + }, + { + "name": "Gert de Pagter", + "homepage": "https://github.com/BackEndTea" + }, + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com", + "homepage": "https://twitter.com/tfidry" + }, + { + "name": "Alexey Kopytko", + "email": "alexey@kopytko.com", + "homepage": "https://www.alexeykopytko.com" + }, + { + "name": "Andreas Möller", + "email": "am@localheinz.com", + "homepage": "https://localheinz.com" + } + ], + "description": "Infection is a Mutation Testing framework for PHP. The mutation adequacy score can be used to measure the effectiveness of a test set in terms of its ability to detect faults.", + "keywords": [ + "coverage", + "mutant", + "mutation framework", + "mutation testing", + "testing", + "unit testing" + ], + "support": { + "issues": "https://github.com/infection/infection/issues", + "source": "https://github.com/infection/infection/tree/0.27.10" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2024-02-20T00:08:52+00:00" + }, + { + "name": "jolicode/jolinotif", + "version": "v2.7.2", + "source": { + "type": "git", + "url": "https://github.com/jolicode/JoliNotif.git", + "reference": "b34dac1826c8d33e9fd5c300546261e94f1ebdb8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/b34dac1826c8d33e9fd5c300546261e94f1ebdb8", + "reference": "b34dac1826c8d33e9fd5c300546261e94f1ebdb8", + "shasum": "" + }, + "require": { + "jolicode/php-os-helper": "^0.1.0", + "php": ">=8.1", + "psr/log": "^1.0 || ^2.0 || ^3.0", + "symfony/deprecation-contracts": "^3", + "symfony/process": "^5.4 || ^6.0 || ^7.0" + }, + "require-dev": { + "symfony/finder": "^5.4 || ^6.0 || ^7.0", + "symfony/phpunit-bridge": "^5.4 || ^6.0 || ^7.0" + }, + "suggest": { + "ext-ffi": "Needed to send notifications via libnotify on Linux" + }, + "bin": [ + "jolinotif" + ], + "type": "library", + "autoload": { + "psr-4": { + "Joli\\JoliNotif\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Loïck Piera", + "email": "pyrech@gmail.com" + } + ], + "description": "Send desktop notifications on Windows, Linux, MacOS.", + "keywords": [ + "MAC", + "growl", + "linux", + "notification", + "windows" + ], + "support": { + "issues": "https://github.com/jolicode/JoliNotif/issues", + "source": "https://github.com/jolicode/JoliNotif/tree/v2.7.2" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/jolicode/jolinotif", + "type": "tidelift" + } + ], + "time": "2024-06-01T06:05:49+00:00" + }, + { + "name": "jolicode/php-os-helper", + "version": "v0.1.0", + "source": { + "type": "git", + "url": "https://github.com/jolicode/php-os-helper.git", + "reference": "1622ad8bbcab98e62b5c041397e8519f10d90e29" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jolicode/php-os-helper/zipball/1622ad8bbcab98e62b5c041397e8519f10d90e29", + "reference": "1622ad8bbcab98e62b5c041397e8519f10d90e29", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "symfony/phpunit-bridge": "^6.3.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "JoliCode\\PhpOsHelper\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Loïck Piera", + "email": "pyrech@gmail.com" + } + ], + "description": "Helpers to detect the OS of the machine where PHP is running.", + "keywords": [ + "linux", + "os", + "osx", + "php", + "windows" + ], + "support": { + "issues": "https://github.com/jolicode/php-os-helper/issues", + "source": "https://github.com/jolicode/php-os-helper/tree/v0.1.0" + }, + "time": "2023-12-03T12:46:03+00:00" + }, + { + "name": "justinrainbow/json-schema", + "version": "5.3.0", + "source": { + "type": "git", + "url": "https://github.com/jsonrainbow/json-schema.git", + "reference": "feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8", + "reference": "feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1", + "json-schema/json-schema-test-suite": "1.2.0", + "phpunit/phpunit": "^4.8.35" + }, + "bin": [ + "bin/validate-json" + ], + "type": "library", + "autoload": { + "psr-4": { + "JsonSchema\\": "src/JsonSchema/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bruno Prieto Reis", + "email": "bruno.p.reis@gmail.com" + }, + { + "name": "Justin Rainbow", + "email": "justin.rainbow@gmail.com" + }, + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + }, + { + "name": "Robert Schönthal", + "email": "seroscho@googlemail.com" + } + ], + "description": "A library to validate a json schema.", + "homepage": "https://github.com/justinrainbow/json-schema", + "keywords": [ + "json", + "schema" + ], + "support": { + "issues": "https://github.com/jsonrainbow/json-schema/issues", + "source": "https://github.com/jsonrainbow/json-schema/tree/5.3.0" + }, + "time": "2024-07-06T21:00:26+00:00" + }, + { + "name": "masterminds/html5", + "version": "2.9.0", + "source": { + "type": "git", + "url": "https://github.com/Masterminds/html5-php.git", + "reference": "f5ac2c0b0a2eefca70b2ce32a5809992227e75a6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/f5ac2c0b0a2eefca70b2ce32a5809992227e75a6", + "reference": "f5ac2c0b0a2eefca70b2ce32a5809992227e75a6", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8 || ^9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Masterminds\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Matt Butcher", + "email": "technosophos@gmail.com" + }, + { + "name": "Matt Farina", + "email": "matt@mattfarina.com" + }, + { + "name": "Asmir Mustafic", + "email": "goetas@gmail.com" + } + ], + "description": "An HTML5 parser and serializer.", + "homepage": "http://masterminds.github.io/html5-php", + "keywords": [ + "HTML5", + "dom", + "html", + "parser", + "querypath", + "serializer", + "xml" + ], + "support": { + "issues": "https://github.com/Masterminds/html5-php/issues", + "source": "https://github.com/Masterminds/html5-php/tree/2.9.0" + }, + "time": "2024-03-31T07:05:07+00:00" + }, + { + "name": "myclabs/deep-copy", + "version": "1.12.0", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/collections": "<1.6.8", + "doctrine/common": "<2.13.3 || >=3 <3.2.2" + }, + "require-dev": { + "doctrine/collections": "^1.6.8", + "doctrine/common": "^2.13.3 || ^3.2.2", + "phpspec/prophecy": "^1.10", + "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" + }, + "type": "library", + "autoload": { + "files": [ + "src/DeepCopy/deep_copy.php" + ], + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", + "keywords": [ + "clone", + "copy", + "duplicate", + "object", + "object graph" + ], + "support": { + "issues": "https://github.com/myclabs/DeepCopy/issues", + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2024-06-12T14:39:25+00:00" + }, + { + "name": "netresearch/jsonmapper", + "version": "v4.5.0", + "source": { + "type": "git", + "url": "https://github.com/cweiske/jsonmapper.git", + "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8e76efb98ee8b6afc54687045e1b8dba55ac76e5", + "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0 || ~10.0", + "squizlabs/php_codesniffer": "~3.5" + }, + "type": "library", + "autoload": { + "psr-0": { + "JsonMapper": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "OSL-3.0" + ], + "authors": [ + { + "name": "Christian Weiske", + "email": "cweiske@cweiske.de", + "homepage": "http://github.com/cweiske/jsonmapper/", + "role": "Developer" + } + ], + "description": "Map nested JSON structures onto PHP classes", + "support": { + "email": "cweiske@cweiske.de", + "issues": "https://github.com/cweiske/jsonmapper/issues", + "source": "https://github.com/cweiske/jsonmapper/tree/v4.5.0" + }, + "time": "2024-09-08T10:13:13+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.19.2", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "0ed4c8949a32986043e977dbe14776c14d644c45" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/0ed4c8949a32986043e977dbe14776c14d644c45", + "reference": "0ed4c8949a32986043e977dbe14776c14d644c45", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=7.1" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.2" + }, + "time": "2024-09-17T19:36:00+00:00" + }, + { + "name": "nyholm/psr7", + "version": "1.8.2", + "source": { + "type": "git", + "url": "https://github.com/Nyholm/psr7.git", + "reference": "a71f2b11690f4b24d099d6b16690a90ae14fc6f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Nyholm/psr7/zipball/a71f2b11690f4b24d099d6b16690a90ae14fc6f3", + "reference": "a71f2b11690f4b24d099d6b16690a90ae14fc6f3", + "shasum": "" + }, + "require": { + "php": ">=7.2", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1 || ^2.0" + }, + "provide": { + "php-http/message-factory-implementation": "1.0", + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "http-interop/http-factory-tests": "^0.9", + "php-http/message-factory": "^1.0", + "php-http/psr7-integration-tests": "^1.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.4", + "symfony/error-handler": "^4.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8-dev" + } + }, + "autoload": { + "psr-4": { + "Nyholm\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com" + }, + { + "name": "Martijn van der Ven", + "email": "martijn@vanderven.se" + } + ], + "description": "A fast PHP7 implementation of PSR-7", + "homepage": "https://tnyholm.se", + "keywords": [ + "psr-17", + "psr-7" + ], + "support": { + "issues": "https://github.com/Nyholm/psr7/issues", + "source": "https://github.com/Nyholm/psr7/tree/1.8.2" + }, + "funding": [ + { + "url": "https://github.com/Zegnat", + "type": "github" + }, + { + "url": "https://github.com/nyholm", + "type": "github" + } + ], + "time": "2024-09-09T07:06:30+00:00" + }, + { + "name": "ondram/ci-detector", + "version": "4.2.0", + "source": { + "type": "git", + "url": "https://github.com/OndraM/ci-detector.git", + "reference": "8b0223b5ed235fd377c75fdd1bfcad05c0f168b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/OndraM/ci-detector/zipball/8b0223b5ed235fd377c75fdd1bfcad05c0f168b8", + "reference": "8b0223b5ed235fd377c75fdd1bfcad05c0f168b8", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.13.2", + "lmc/coding-standard": "^3.0.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.1.0", + "phpstan/phpstan": "^1.2.0", + "phpstan/phpstan-phpunit": "^1.0.0", + "phpunit/phpunit": "^9.6.13" + }, + "type": "library", + "autoload": { + "psr-4": { + "OndraM\\CiDetector\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ondřej Machulda", + "email": "ondrej.machulda@gmail.com" + } + ], + "description": "Detect continuous integration environment and provide unified access to properties of current build", + "keywords": [ + "CircleCI", + "Codeship", + "Wercker", + "adapter", + "appveyor", + "aws", + "aws codebuild", + "azure", + "azure devops", + "azure pipelines", + "bamboo", + "bitbucket", + "buddy", + "ci-info", + "codebuild", + "continuous integration", + "continuousphp", + "devops", + "drone", + "github", + "gitlab", + "interface", + "jenkins", + "pipelines", + "sourcehut", + "teamcity", + "travis" + ], + "support": { + "issues": "https://github.com/OndraM/ci-detector/issues", + "source": "https://github.com/OndraM/ci-detector/tree/4.2.0" + }, + "time": "2024-03-12T13:22:30+00:00" + }, + { + "name": "openlss/lib-array2xml", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/nullivex/lib-array2xml.git", + "reference": "a91f18a8dfc69ffabe5f9b068bc39bb202c81d90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nullivex/lib-array2xml/zipball/a91f18a8dfc69ffabe5f9b068bc39bb202c81d90", + "reference": "a91f18a8dfc69ffabe5f9b068bc39bb202c81d90", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "type": "library", + "autoload": { + "psr-0": { + "LSS": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Bryan Tong", + "email": "bryan@nullivex.com", + "homepage": "https://www.nullivex.com" + }, + { + "name": "Tony Butler", + "email": "spudz76@gmail.com", + "homepage": "https://www.nullivex.com" + } + ], + "description": "Array2XML conversion library credit to lalit.org", + "homepage": "https://www.nullivex.com", + "keywords": [ + "array", + "array conversion", + "xml", + "xml conversion" + ], + "support": { + "issues": "https://github.com/nullivex/lib-array2xml/issues", + "source": "https://github.com/nullivex/lib-array2xml/tree/master" + }, + "time": "2019-03-29T20:06:56+00:00" + }, + { + "name": "phar-io/manifest", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "54750ef60c58e43759730615a392c31c80e23176" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176", + "reference": "54750ef60c58e43759730615a392c31c80e23176", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-phar": "*", + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2024-03-03T12:33:53+00:00" + }, + { + "name": "phar-io/version", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Library for handling version information and constraints", + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/3.2.1" + }, + "time": "2022-02-21T01:04:05+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "5.4.1", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.1", + "ext-filter": "*", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^1.7", + "phpstan/phpdoc-parser": "^1.7", + "webmozart/assert": "^1.9.1" + }, + "require-dev": { + "mockery/mockery": "~1.3.5", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-webmozart-assert": "^1.2", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + }, + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.4.1" + }, + "time": "2024-05-21T05:55:05+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "1.8.2", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "153ae662783729388a584b4361f2545e4d841e3c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/153ae662783729388a584b4361f2545e4d841e3c", + "reference": "153ae662783729388a584b4361f2545e4d841e3c", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.0", + "php": "^7.3 || ^8.0", + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^1.13" + }, + "require-dev": { + "ext-tokenizer": "*", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.13.9", + "vimeo/psalm": "^4.25" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "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.8.2" + }, + "time": "2024-02-23T11:10:43+00:00" + }, + { + "name": "phpspec/php-diff", + "version": "v1.1.3", + "source": { + "type": "git", + "url": "https://github.com/phpspec/php-diff.git", + "reference": "fc1156187f9f6c8395886fe85ed88a0a245d72e9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpspec/php-diff/zipball/fc1156187f9f6c8395886fe85ed88a0a245d72e9", + "reference": "fc1156187f9f6c8395886fe85ed88a0a245d72e9", + "shasum": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-0": { + "Diff": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Chris Boulton", + "homepage": "http://github.com/chrisboulton" + } + ], + "description": "A comprehensive library for generating differences between two hashable objects (strings or arrays).", + "support": { + "source": "https://github.com/phpspec/php-diff/tree/v1.1.3" + }, + "time": "2020-09-18T13:47:07+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "1.30.1", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "51b95ec8670af41009e2b2b56873bad96682413e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/51b95ec8670af41009e2b2b56873bad96682413e", + "reference": "51b95ec8670af41009e2b2b56873bad96682413e", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "nikic/php-parser": "^4.15", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.5", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.30.1" + }, + "time": "2024-09-07T20:13:05+00:00" + }, + { + "name": "phpunit/php-code-coverage", + "version": "9.2.32", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5", + "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-xmlwriter": "*", + "nikic/php-parser": "^4.19.1 || ^5.1.0", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0.6", + "phpunit/php-text-template": "^2.0.4", + "sebastian/code-unit-reverse-lookup": "^2.0.3", + "sebastian/complexity": "^2.0.3", + "sebastian/environment": "^5.1.5", + "sebastian/lines-of-code": "^1.0.4", + "sebastian/version": "^3.0.2", + "theseer/tokenizer": "^1.2.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.6" + }, + "suggest": { + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "9.2.x-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 that provides collection, processing, and rendering functionality for PHP code coverage information.", + "homepage": "https://github.com/sebastianbergmann/php-code-coverage", + "keywords": [ + "coverage", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.32" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-08-22T04:23:01+00:00" + }, + { + "name": "phpunit/php-file-iterator", + "version": "3.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.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": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", + "keywords": [ + "filesystem", + "iterator" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-12-02T12:48:52+00:00" + }, + { + "name": "phpunit/php-invoker", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "shasum": "" + }, + "require": { + "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/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "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" + } + ], + "time": "2020-09-28T05:58:55+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "shasum": "" + }, + "require": { + "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": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "keywords": [ + "template" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T05:33:50+00:00" + }, + { + "name": "phpunit/php-timer", + "version": "5.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.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": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", + "keywords": [ + "timer" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:16:10+00:00" + }, + { + "name": "phpunit/phpunit", + "version": "9.6.21", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.5.0 || ^2", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-xml": "*", + "ext-xmlwriter": "*", + "myclabs/deep-copy": "^1.12.0", + "phar-io/manifest": "^2.0.4", + "phar-io/version": "^3.2.1", + "php": ">=7.3", + "phpunit/php-code-coverage": "^9.2.32", + "phpunit/php-file-iterator": "^3.0.6", + "phpunit/php-invoker": "^3.1.1", + "phpunit/php-text-template": "^2.0.4", + "phpunit/php-timer": "^5.0.3", + "sebastian/cli-parser": "^1.0.2", + "sebastian/code-unit": "^1.0.8", + "sebastian/comparator": "^4.0.8", + "sebastian/diff": "^4.0.6", + "sebastian/environment": "^5.1.5", + "sebastian/exporter": "^4.0.6", + "sebastian/global-state": "^5.0.7", + "sebastian/object-enumerator": "^4.0.4", + "sebastian/resource-operations": "^3.0.4", + "sebastian/type": "^3.2.1", + "sebastian/version": "^3.0.2" + }, + "suggest": { + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + }, + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.6-dev" + } + }, + "autoload": { + "files": [ + "src/Framework/Assert/Functions.php" + ], + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "The PHP Unit Testing framework.", + "homepage": "https://phpunit.de/", + "keywords": [ + "phpunit", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" + }, + "funding": [ + { + "url": "https://phpunit.de/sponsors.html", + "type": "custom" + }, + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" + } + ], + "time": "2024-09-19T10:50:18+00:00" + }, + { + "name": "psy/psysh", + "version": "v0.12.4", + "source": { + "type": "git", + "url": "https://github.com/bobthecow/psysh.git", + "reference": "2fd717afa05341b4f8152547f142cd2f130f6818" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/2fd717afa05341b4f8152547f142cd2f130f6818", + "reference": "2fd717afa05341b4f8152547f142cd2f130f6818", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "nikic/php-parser": "^5.0 || ^4.0", + "php": "^8.0 || ^7.4", + "symfony/console": "^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4", + "symfony/var-dumper": "^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4" + }, + "conflict": { + "symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2" + }, + "suggest": { + "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", + "ext-pdo-sqlite": "The doc command requires SQLite to work.", + "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well." + }, + "bin": [ + "bin/psysh" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.12.x-dev" + }, + "bamarni-bin": { + "bin-links": false, + "forward-command": false + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Psy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Justin Hileman", + "email": "justin@justinhileman.info", + "homepage": "http://justinhileman.com" + } + ], + "description": "An interactive shell for modern PHP.", + "homepage": "http://psysh.org", + "keywords": [ + "REPL", + "console", + "interactive", + "shell" + ], + "support": { + "issues": "https://github.com/bobthecow/psysh/issues", + "source": "https://github.com/bobthecow/psysh/tree/v0.12.4" + }, + "time": "2024-06-10T01:18:23+00:00" + }, + { + "name": "react/event-loop", + "version": "v1.5.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/event-loop.git", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "suggest": { + "ext-pcntl": "For signal handling support when using the StreamSelectLoop" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\EventLoop\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.", + "keywords": [ + "asynchronous", + "event-loop" + ], + "support": { + "issues": "https://github.com/reactphp/event-loop/issues", + "source": "https://github.com/reactphp/event-loop/tree/v1.5.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2023-11-13T13:48:05+00:00" + }, + { + "name": "react/stream", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/stream.git", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/stream/zipball/1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.8", + "react/event-loop": "^1.2" + }, + "require-dev": { + "clue/stream-filter": "~1.2", + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\Stream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP", + "keywords": [ + "event-driven", + "io", + "non-blocking", + "pipe", + "reactphp", + "readable", + "stream", + "writable" + ], + "support": { + "issues": "https://github.com/reactphp/stream/issues", + "source": "https://github.com/reactphp/stream/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2024-06-11T12:45:25+00:00" + }, + { + "name": "roave/infection-static-analysis-plugin", + "version": "1.35.0", + "source": { + "type": "git", + "url": "https://github.com/Roave/infection-static-analysis-plugin.git", + "reference": "3cb32845c5f758913a4b9eafd91ae18eafc26d82" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Roave/infection-static-analysis-plugin/zipball/3cb32845c5f758913a4b9eafd91ae18eafc26d82", + "reference": "3cb32845c5f758913a4b9eafd91ae18eafc26d82", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2.2", + "infection/infection": "0.27.10", + "php": "~8.1.0 || ~8.2.0 || ~8.3.0", + "sanmai/later": "^0.1.4", + "vimeo/psalm": "^4.30.0 || ^5.15" + }, + "require-dev": { + "doctrine/coding-standard": "^12.0.0", + "phpunit/phpunit": "^10.5.12" + }, + "bin": [ + "bin/roave-infection-static-analysis-plugin" + ], + "type": "library", + "autoload": { + "psr-4": { + "Roave\\InfectionStaticAnalysis\\": "src/Roave/InfectionStaticAnalysis" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "Static analysis on top of mutation testing - prevents escaped mutants from being invalid according to static analysis", + "support": { + "issues": "https://github.com/Roave/infection-static-analysis-plugin/issues", + "source": "https://github.com/Roave/infection-static-analysis-plugin/tree/1.35.0" + }, + "time": "2024-03-10T11:55:48+00:00" + }, + { + "name": "roave/security-advisories", + "version": "dev-latest", + "source": { + "type": "git", + "url": "https://github.com/Roave/SecurityAdvisories.git", + "reference": "4b6b927472278272e2411f4341dba95d96c8c7d7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/4b6b927472278272e2411f4341dba95d96c8c7d7", + "reference": "4b6b927472278272e2411f4341dba95d96c8c7d7", + "shasum": "" + }, + "conflict": { + "3f/pygmentize": "<1.2", + "admidio/admidio": "<4.3.10", + "adodb/adodb-php": "<=5.20.20|>=5.21,<=5.21.3", + "aheinze/cockpit": "<2.2", + "aimeos/ai-admin-graphql": ">=2022.04.1,<2022.10.10|>=2023.04.1,<2023.10.6|>=2024.04.1,<2024.04.6", + "aimeos/ai-admin-jsonadm": "<2020.10.13|>=2021.04.1,<2021.10.6|>=2022.04.1,<2022.10.3|>=2023.04.1,<2023.10.4|==2024.04.1", + "aimeos/ai-client-html": ">=2020.04.1,<2020.10.27|>=2021.04.1,<2021.10.22|>=2022.04.1,<2022.10.13|>=2023.04.1,<2023.10.15|>=2024.04.1,<2024.04.7", + "aimeos/ai-controller-frontend": "<2020.10.15|>=2021.04.1,<2021.10.8|>=2022.04.1,<2022.10.8|>=2023.04.1,<2023.10.9", + "aimeos/aimeos-core": ">=2022.04.1,<2022.10.17|>=2023.04.1,<2023.10.17|>=2024.04.1,<2024.04.7", + "aimeos/aimeos-typo3": "<19.10.12|>=20,<20.10.5", + "airesvsg/acf-to-rest-api": "<=3.1", + "akaunting/akaunting": "<2.1.13", + "akeneo/pim-community-dev": "<5.0.119|>=6,<6.0.53", + "alextselegidis/easyappointments": "<1.5", + "alterphp/easyadmin-extension-bundle": ">=1.2,<1.2.11|>=1.3,<1.3.1", + "amazing/media2click": ">=1,<1.3.3", + "amphp/artax": "<1.0.6|>=2,<2.0.6", + "amphp/http": "<=1.7.2|>=2,<=2.1", + "amphp/http-client": ">=4,<4.4", + "anchorcms/anchor-cms": "<=0.12.7", + "andreapollastri/cipi": "<=3.1.15", + "andrewhaine/silverstripe-form-capture": ">=0.2,<=0.2.3|>=1,<1.0.2|>=2,<2.2.5", + "apache-solr-for-typo3/solr": "<2.8.3", + "apereo/phpcas": "<1.6", + "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6|>=2.6,<2.7.10|>=3,<3.0.12|>=3.1,<3.1.3", + "appwrite/server-ce": "<=1.2.1", + "arc/web": "<3", + "area17/twill": "<1.2.5|>=2,<2.5.3", + "artesaos/seotools": "<0.17.2", + "asymmetricrypt/asymmetricrypt": "<9.9.99", + "athlon1600/php-proxy": "<=5.1", + "athlon1600/php-proxy-app": "<=3", + "austintoddj/canvas": "<=3.4.2", + "auth0/wordpress": "<=4.6", + "automad/automad": "<2.0.0.0-alpha5", + "automattic/jetpack": "<9.8", + "awesome-support/awesome-support": "<=6.0.7", + "aws/aws-sdk-php": "<3.288.1", + "azuracast/azuracast": "<0.18.3", + "backdrop/backdrop": "<1.27.3|>=1.28,<1.28.2", + "backpack/crud": "<3.4.9", + "bacula-web/bacula-web": "<8.0.0.0-RC2-dev", + "badaso/core": "<2.7", + "bagisto/bagisto": "<2.1", + "barrelstrength/sprout-base-email": "<1.2.7", + "barrelstrength/sprout-forms": "<3.9", + "barryvdh/laravel-translation-manager": "<0.6.2", + "barzahlen/barzahlen-php": "<2.0.1", + "baserproject/basercms": "<5.0.9", + "bassjobsen/bootstrap-3-typeahead": ">4.0.2", + "bbpress/bbpress": "<2.6.5", + "bcosca/fatfree": "<3.7.2", + "bedita/bedita": "<4", + "bigfork/silverstripe-form-capture": ">=3,<3.1.1", + "billz/raspap-webgui": "<=3.1.4", + "bk2k/bootstrap-package": ">=7.1,<7.1.2|>=8,<8.0.8|>=9,<9.0.4|>=9.1,<9.1.3|>=10,<10.0.10|>=11,<11.0.3", + "blueimp/jquery-file-upload": "==6.4.4", + "bmarshall511/wordpress_zero_spam": "<5.2.13", + "bolt/bolt": "<3.7.2", + "bolt/core": "<=4.2", + "born05/craft-twofactorauthentication": "<3.3.4", + "bottelet/flarepoint": "<2.2.1", + "bref/bref": "<2.1.17", + "brightlocal/phpwhois": "<=4.2.5", + "brotkrueml/codehighlight": "<2.7", + "brotkrueml/schema": "<1.13.1|>=2,<2.5.1", + "brotkrueml/typo3-matomo-integration": "<1.3.2", + "buddypress/buddypress": "<7.2.1", + "bugsnag/bugsnag-laravel": ">=2,<2.0.2", + "bytefury/crater": "<6.0.2", + "cachethq/cachet": "<2.5.1", + "cakephp/cakephp": "<3.10.3|>=4,<4.0.10|>=4.1,<4.1.4|>=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10", + "cakephp/database": ">=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10", + "cardgate/magento2": "<2.0.33", + "cardgate/woocommerce": "<=3.1.15", + "cart2quote/module-quotation": ">=4.1.6,<=4.4.5|>=5,<5.4.4", + "cart2quote/module-quotation-encoded": ">=4.1.6,<=4.4.5|>=5,<5.4.4", + "cartalyst/sentry": "<=2.1.6", + "catfan/medoo": "<1.7.5", + "causal/oidc": "<2.1", + "cecil/cecil": "<7.47.1", + "centreon/centreon": "<22.10.15", + "cesnet/simplesamlphp-module-proxystatistics": "<3.1", + "chriskacerguis/codeigniter-restserver": "<=2.7.1", + "civicrm/civicrm-core": ">=4.2,<4.2.9|>=4.3,<4.3.3", + "ckeditor/ckeditor": "<4.24", + "cockpit-hq/cockpit": "<2.7|==2.7", + "codeception/codeception": "<3.1.3|>=4,<4.1.22", + "codeigniter/framework": "<3.1.9", + "codeigniter4/framework": "<4.4.7", + "codeigniter4/shield": "<1.0.0.0-beta8", + "codiad/codiad": "<=2.8.4", + "composer/composer": "<1.10.27|>=2,<2.2.24|>=2.3,<2.7.7", + "concrete5/concrete5": "<9.3.4", + "concrete5/core": "<8.5.8|>=9,<9.1", + "contao-components/mediaelement": ">=2.14.2,<2.21.1", + "contao/comments-bundle": ">=2,<4.13.40|>=5.0.0.0-RC1-dev,<5.3.4", + "contao/contao": ">=3,<3.5.37|>=4,<4.4.56|>=4.5,<4.9.40|>=4.10,<4.11.7|>=4.13,<4.13.21|>=5.1,<5.1.4", + "contao/core": "<3.5.39", + "contao/core-bundle": "<4.13.49|>=5,<5.3.15|>=5.4,<5.4.3", + "contao/listing-bundle": ">=3,<=3.5.30|>=4,<4.4.8", + "contao/managed-edition": "<=1.5", + "corveda/phpsandbox": "<1.3.5", + "cosenary/instagram": "<=2.3", + "craftcms/cms": "<4.6.2|>=5,<=5.2.2", + "croogo/croogo": "<4", + "cuyz/valinor": "<0.12", + "czim/file-handling": "<1.5|>=2,<2.3", + "czproject/git-php": "<4.0.3", + "damienharper/auditor-bundle": "<5.2.6", + "dapphp/securimage": "<3.6.6", + "darylldoyle/safe-svg": "<1.9.10", + "datadog/dd-trace": ">=0.30,<0.30.2", + "datatables/datatables": "<1.10.10", + "david-garcia/phpwhois": "<=4.3.1", + "dbrisinajumi/d2files": "<1", + "dcat/laravel-admin": "<=2.1.3", + "derhansen/fe_change_pwd": "<2.0.5|>=3,<3.0.3", + "derhansen/sf_event_mgt": "<4.3.1|>=5,<5.1.1|>=7,<7.4", + "desperado/xml-bundle": "<=0.1.7", + "devgroup/dotplant": "<2020.09.14-dev", + "directmailteam/direct-mail": "<6.0.3|>=7,<7.0.3|>=8,<9.5.2", + "doctrine/annotations": "<1.2.7", + "doctrine/cache": ">=1,<1.3.2|>=1.4,<1.4.2", + "doctrine/common": "<2.4.3|>=2.5,<2.5.1", + "doctrine/dbal": ">=2,<2.0.8|>=2.1,<2.1.2|>=3,<3.1.4", + "doctrine/doctrine-bundle": "<1.5.2", + "doctrine/doctrine-module": "<0.7.2", + "doctrine/mongodb-odm": "<1.0.2", + "doctrine/mongodb-odm-bundle": "<3.0.1", + "doctrine/orm": ">=1,<1.2.4|>=2,<2.4.8|>=2.5,<2.5.1|>=2.8.3,<2.8.4", + "dolibarr/dolibarr": "<19.0.2", + "dompdf/dompdf": "<2.0.4", + "doublethreedigital/guest-entries": "<3.1.2", + "drupal/core": ">=6,<6.38|>=7,<7.96|>=8,<10.1.8|>=10.2,<10.2.2|==11.9999999.9999999.9999999-dev", + "drupal/core-recommended": "==11.9999999.9999999.9999999-dev", + "drupal/drupal": ">=5,<5.11|>=6,<6.38|>=7,<7.80|>=8,<8.9.16|>=9,<9.1.12|>=9.2,<9.2.4|==11.9999999.9999999.9999999-dev", + "duncanmcclean/guest-entries": "<3.1.2", + "dweeves/magmi": "<=0.7.24", + "ec-cube/ec-cube": "<2.4.4|>=2.11,<=2.17.1|>=3,<=3.0.18.0-patch4|>=4,<=4.1.2", + "ecodev/newsletter": "<=4", + "ectouch/ectouch": "<=2.7.2", + "egroupware/egroupware": "<23.1.20240624", + "elefant/cms": "<2.0.7", + "elgg/elgg": "<3.3.24|>=4,<4.0.5", + "elijaa/phpmemcacheadmin": "<=1.3", + "encore/laravel-admin": "<=1.8.19", + "endroid/qr-code-bundle": "<3.4.2", + "enhavo/enhavo-app": "<=0.13.1", + "enshrined/svg-sanitize": "<0.15", + "erusev/parsedown": "<1.7.2", + "ether/logs": "<3.0.4", + "evolutioncms/evolution": "<=3.2.3", + "exceedone/exment": "<4.4.3|>=5,<5.0.3", + "exceedone/laravel-admin": "<2.2.3|==3", + "ezsystems/demobundle": ">=5.4,<5.4.6.1-dev", + "ezsystems/ez-support-tools": ">=2.2,<2.2.3", + "ezsystems/ezdemo-ls-extension": ">=5.4,<5.4.2.1-dev", + "ezsystems/ezfind-ls": ">=5.3,<5.3.6.1-dev|>=5.4,<5.4.11.1-dev|>=2017.12,<2017.12.0.1-dev", + "ezsystems/ezplatform": "<=1.13.6|>=2,<=2.5.24", + "ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26|>=3.3,<3.3.39", + "ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2.1|>=5,<5.0.1|>=5.1,<5.1.1", + "ezsystems/ezplatform-graphql": ">=1.0.0.0-RC1-dev,<1.0.13|>=2.0.0.0-beta1,<2.3.12", + "ezsystems/ezplatform-kernel": "<1.2.5.1-dev|>=1.3,<1.3.35", + "ezsystems/ezplatform-rest": ">=1.2,<=1.2.2|>=1.3,<1.3.8", + "ezsystems/ezplatform-richtext": ">=2.3,<2.3.7.1-dev|>=3.3,<3.3.40", + "ezsystems/ezplatform-solr-search-engine": ">=1.7,<1.7.12|>=2,<2.0.2|>=3.3,<3.3.15", + "ezsystems/ezplatform-user": ">=1,<1.0.1", + "ezsystems/ezpublish-kernel": "<6.13.8.2-dev|>=7,<7.5.31", + "ezsystems/ezpublish-legacy": "<=2017.12.7.3|>=2018.6,<=2019.03.5.1", + "ezsystems/platform-ui-assets-bundle": ">=4.2,<4.2.3", + "ezsystems/repository-forms": ">=2.3,<2.3.2.1-dev|>=2.5,<2.5.15", + "ezyang/htmlpurifier": "<4.1.1", + "facade/ignition": "<1.16.15|>=2,<2.4.2|>=2.5,<2.5.2", + "facturascripts/facturascripts": "<=2022.08", + "fastly/magento2": "<1.2.26", + "feehi/cms": "<=2.1.1", + "feehi/feehicms": "<=2.1.1", + "fenom/fenom": "<=2.12.1", + "filegator/filegator": "<7.8", + "filp/whoops": "<2.1.13", + "fineuploader/php-traditional-server": "<=1.2.2", + "firebase/php-jwt": "<6", + "fisharebest/webtrees": "<=2.1.18", + "fixpunkt/fp-masterquiz": "<2.2.1|>=3,<3.5.2", + "fixpunkt/fp-newsletter": "<1.1.1|>=2,<2.1.2|>=2.2,<3.2.6", + "flarum/core": "<1.8.5", + "flarum/flarum": "<0.1.0.0-beta8", + "flarum/framework": "<1.8.5", + "flarum/mentions": "<1.6.3", + "flarum/sticky": ">=0.1.0.0-beta14,<=0.1.0.0-beta15", + "flarum/tags": "<=0.1.0.0-beta13", + "floriangaerber/magnesium": "<0.3.1", + "fluidtypo3/vhs": "<5.1.1", + "fof/byobu": ">=0.3.0.0-beta2,<1.1.7", + "fof/upload": "<1.2.3", + "foodcoopshop/foodcoopshop": ">=3.2,<3.6.1", + "fooman/tcpdf": "<6.2.22", + "forkcms/forkcms": "<5.11.1", + "fossar/tcpdf-parser": "<6.2.22", + "francoisjacquet/rosariosis": "<=11.5.1", + "frappant/frp-form-answers": "<3.1.2|>=4,<4.0.2", + "friendsofsymfony/oauth2-php": "<1.3", + "friendsofsymfony/rest-bundle": ">=1.2,<1.2.2", + "friendsofsymfony/user-bundle": ">=1,<1.3.5", + "friendsofsymfony1/swiftmailer": ">=4,<5.4.13|>=6,<6.2.5", + "friendsofsymfony1/symfony1": ">=1.1,<1.5.19", + "friendsoftypo3/mediace": ">=7.6.2,<7.6.5", + "friendsoftypo3/openid": ">=4.5,<4.5.31|>=4.7,<4.7.16|>=6,<6.0.11|>=6.1,<6.1.6", + "froala/wysiwyg-editor": "<3.2.7|>=4.0.1,<=4.1.3", + "froxlor/froxlor": "<=2.2.0.0-RC3", + "frozennode/administrator": "<=5.0.12", + "fuel/core": "<1.8.1", + "funadmin/funadmin": "<=3.2|>=3.3.2,<=3.3.3", + "gaoming13/wechat-php-sdk": "<=1.10.2", + "genix/cms": "<=1.1.11", + "getformwork/formwork": "<1.13.1|==2.0.0.0-beta1", + "getgrav/grav": "<1.7.46", + "getkirby/cms": "<=3.6.6.5|>=3.7,<=3.7.5.4|>=3.8,<=3.8.4.3|>=3.9,<=3.9.8.1|>=3.10,<=3.10.1|>=4,<=4.3", + "getkirby/kirby": "<=2.5.12", + "getkirby/panel": "<2.5.14", + "getkirby/starterkit": "<=3.7.0.2", + "gilacms/gila": "<=1.15.4", + "gleez/cms": "<=1.3|==2", + "globalpayments/php-sdk": "<2", + "gogentooss/samlbase": "<1.2.7", + "google/protobuf": "<3.15", + "gos/web-socket-bundle": "<1.10.4|>=2,<2.6.1|>=3,<3.3", + "gree/jose": "<2.2.1", + "gregwar/rst": "<1.0.3", + "grumpydictator/firefly-iii": "<6.1.17", + "gugoan/economizzer": "<=0.9.0.0-beta1", + "guzzlehttp/guzzle": "<6.5.8|>=7,<7.4.5", + "guzzlehttp/psr7": "<1.9.1|>=2,<2.4.5", + "haffner/jh_captcha": "<=2.1.3|>=3,<=3.0.2", + "harvesthq/chosen": "<1.8.7", + "helloxz/imgurl": "<=2.31", + "hhxsv5/laravel-s": "<3.7.36", + "hillelcoren/invoice-ninja": "<5.3.35", + "himiklab/yii2-jqgrid-widget": "<1.0.8", + "hjue/justwriting": "<=1", + "hov/jobfair": "<1.0.13|>=2,<2.0.2", + "httpsoft/http-message": "<1.0.12", + "hyn/multi-tenant": ">=5.6,<5.7.2", + "ibexa/admin-ui": ">=4.2,<4.2.3|>=4.6.0.0-beta1,<4.6.9", + "ibexa/core": ">=4,<4.0.7|>=4.1,<4.1.4|>=4.2,<4.2.3|>=4.5,<4.5.6|>=4.6,<4.6.2", + "ibexa/fieldtype-richtext": ">=4.6,<4.6.10", + "ibexa/graphql": ">=2.5,<2.5.31|>=3.3,<3.3.28|>=4.2,<4.2.3", + "ibexa/post-install": "<=1.0.4", + "ibexa/solr": ">=4.5,<4.5.4", + "ibexa/user": ">=4,<4.4.3", + "icecoder/icecoder": "<=8.1", + "idno/known": "<=1.3.1", + "ilicmiljan/secure-props": ">=1.2,<1.2.2", + "illuminate/auth": "<5.5.10", + "illuminate/cookie": ">=4,<=4.0.11|>=4.1,<6.18.31|>=7,<7.22.4", + "illuminate/database": "<6.20.26|>=7,<7.30.5|>=8,<8.40", + "illuminate/encryption": ">=4,<=4.0.11|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.40|>=5.6,<5.6.15", + "illuminate/view": "<6.20.42|>=7,<7.30.6|>=8,<8.75", + "imdbphp/imdbphp": "<=5.1.1", + "impresscms/impresscms": "<=1.4.5", + "impresspages/impresspages": "<=1.0.12", + "in2code/femanager": "<5.5.3|>=6,<6.3.4|>=7,<7.2.3", + "in2code/ipandlanguageredirect": "<5.1.2", + "in2code/lux": "<17.6.1|>=18,<24.0.2", + "in2code/powermail": "<7.5.1|>=8,<8.5.1|>=9,<10.9.1|>=11,<12.4.1", + "innologi/typo3-appointments": "<2.0.6", + "intelliants/subrion": "<4.2.2", + "inter-mediator/inter-mediator": "==5.5", + "ipl/web": "<0.10.1", + "islandora/islandora": ">=2,<2.4.1", + "ivankristianto/phpwhois": "<=4.3", + "jackalope/jackalope-doctrine-dbal": "<1.7.4", + "james-heinrich/getid3": "<1.9.21", + "james-heinrich/phpthumb": "<1.7.12", + "jasig/phpcas": "<1.3.3", + "jcbrand/converse.js": "<3.3.3", + "johnbillion/wp-crontrol": "<1.16.2", + "joomla/application": "<1.0.13", + "joomla/archive": "<1.1.12|>=2,<2.0.1", + "joomla/filesystem": "<1.6.2|>=2,<2.0.1", + "joomla/filter": "<1.4.4|>=2,<2.0.1", + "joomla/framework": "<1.5.7|>=2.5.4,<=3.8.12", + "joomla/input": ">=2,<2.0.2", + "joomla/joomla-cms": ">=2.5,<3.9.12", + "joomla/session": "<1.3.1", + "joyqi/hyper-down": "<=2.4.27", + "jsdecena/laracom": "<2.0.9", + "jsmitty12/phpwhois": "<5.1", + "juzaweb/cms": "<=3.4", + "jweiland/events2": "<8.3.8|>=9,<9.0.6", + "kazist/phpwhois": "<=4.2.6", + "kelvinmo/simplexrd": "<3.1.1", + "kevinpapst/kimai2": "<1.16.7", + "khodakhah/nodcms": "<=3", + "kimai/kimai": "<=2.20.1", + "kitodo/presentation": "<3.2.3|>=3.3,<3.3.4", + "klaviyo/magento2-extension": ">=1,<3", + "knplabs/knp-snappy": "<=1.4.2", + "kohana/core": "<3.3.3", + "krayin/laravel-crm": "<1.2.2", + "kreait/firebase-php": ">=3.2,<3.8.1", + "kumbiaphp/kumbiapp": "<=1.1.1", + "la-haute-societe/tcpdf": "<6.2.22", + "laminas/laminas-diactoros": "<2.18.1|==2.19|==2.20|==2.21|==2.22|==2.23|>=2.24,<2.24.2|>=2.25,<2.25.2", + "laminas/laminas-form": "<2.17.1|>=3,<3.0.2|>=3.1,<3.1.1", + "laminas/laminas-http": "<2.14.2", + "laravel/fortify": "<1.11.1", + "laravel/framework": "<6.20.44|>=7,<7.30.6|>=8,<8.75", + "laravel/laravel": ">=5.4,<5.4.22", + "laravel/socialite": ">=1,<2.0.10", + "latte/latte": "<2.10.8", + "lavalite/cms": "<=9|==10.1", + "lcobucci/jwt": ">=3.4,<3.4.6|>=4,<4.0.4|>=4.1,<4.1.5", + "league/commonmark": "<0.18.3", + "league/flysystem": "<1.1.4|>=2,<2.1.1", + "league/oauth2-server": ">=8.3.2,<8.4.2|>=8.5,<8.5.3", + "lexik/jwt-authentication-bundle": "<2.10.7|>=2.11,<2.11.3", + "libreform/libreform": ">=2,<=2.0.8", + "librenms/librenms": "<2017.08.18", + "liftkit/database": "<2.13.2", + "lightsaml/lightsaml": "<1.3.5", + "limesurvey/limesurvey": "<3.27.19", + "livehelperchat/livehelperchat": "<=3.91", + "livewire/livewire": ">2.2.4,<2.2.6|>=3.3.5,<3.4.9", + "lms/routes": "<2.1.1", + "localizationteam/l10nmgr": "<7.4|>=8,<8.7|>=9,<9.2", + "luyadev/yii-helpers": "<1.2.1", + "magento/community-edition": "<2.4.5|==2.4.5|>=2.4.5.0-patch1,<2.4.5.0-patch9|==2.4.6|>=2.4.6.0-patch1,<2.4.6.0-patch7|==2.4.7|>=2.4.7.0-patch1,<2.4.7.0-patch2", + "magento/core": "<=1.9.4.5", + "magento/magento1ce": "<1.9.4.3-dev", + "magento/magento1ee": ">=1,<1.14.4.3-dev", + "magento/product-community-edition": "<2.4.4.0-patch9|>=2.4.5,<2.4.5.0-patch8|>=2.4.6,<2.4.6.0-patch6|>=2.4.7,<2.4.7.0-patch1", + "magneto/core": "<1.9.4.4-dev", + "maikuolan/phpmussel": ">=1,<1.6", + "mainwp/mainwp": "<=4.4.3.3", + "mantisbt/mantisbt": "<2.26.2", + "marcwillmann/turn": "<0.3.3", + "matyhtf/framework": "<3.0.6", + "mautic/core": "<4.4.13|>=5,<5.1.1", + "mautic/core-lib": ">=1.0.0.0-beta,<4.4.13|>=5.0.0.0-alpha,<5.1.1", + "mdanter/ecc": "<2", + "mediawiki/core": "<1.36.2", + "mediawiki/matomo": "<2.4.3", + "mediawiki/semantic-media-wiki": "<4.0.2", + "melisplatform/melis-asset-manager": "<5.0.1", + "melisplatform/melis-cms": "<5.0.1", + "melisplatform/melis-front": "<5.0.1", + "mezzio/mezzio-swoole": "<3.7|>=4,<4.3", + "mgallegos/laravel-jqgrid": "<=1.3", + "microsoft/microsoft-graph": ">=1.16,<1.109.1|>=2,<2.0.1", + "microsoft/microsoft-graph-beta": "<2.0.1", + "microsoft/microsoft-graph-core": "<2.0.2", + "microweber/microweber": "<=2.0.16", + "mikehaertl/php-shellcommand": "<1.6.1", + "miniorange/miniorange-saml": "<1.4.3", + "mittwald/typo3_forum": "<1.2.1", + "mobiledetect/mobiledetectlib": "<2.8.32", + "modx/revolution": "<=2.8.3.0-patch", + "mojo42/jirafeau": "<4.4", + "mongodb/mongodb": ">=1,<1.9.2", + "monolog/monolog": ">=1.8,<1.12", + "moodle/moodle": "<4.3.5|>=4.4.0.0-beta,<4.4.1", + "mos/cimage": "<0.7.19", + "movim/moxl": ">=0.8,<=0.10", + "movingbytes/social-network": "<=1.2.1", + "mpdf/mpdf": "<=7.1.7", + "munkireport/comment": "<4.1", + "munkireport/managedinstalls": "<2.6", + "munkireport/munki_facts": "<1.5", + "munkireport/munkireport": ">=2.5.3,<5.6.3", + "munkireport/reportdata": "<3.5", + "munkireport/softwareupdate": "<1.6", + "mustache/mustache": ">=2,<2.14.1", + "namshi/jose": "<2.2", + "nategood/httpful": "<1", + "neoan3-apps/template": "<1.1.1", + "neorazorx/facturascripts": "<2022.04", + "neos/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.12|>=3.1,<3.1.10|>=3.2,<3.2.13|>=3.3,<3.3.13|>=4,<4.0.6", + "neos/form": ">=1.2,<4.3.3|>=5,<5.0.9|>=5.1,<5.1.3", + "neos/media-browser": "<7.3.19|>=8,<8.0.16|>=8.1,<8.1.11|>=8.2,<8.2.11|>=8.3,<8.3.9", + "neos/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4|>=2.3,<3.0.20|>=3.1,<3.1.18|>=3.2,<3.2.14|>=3.3,<5.3.10|>=7,<7.0.9|>=7.1,<7.1.7|>=7.2,<7.2.6|>=7.3,<7.3.4|>=8,<8.0.2", + "neos/swiftmailer": "<5.4.5", + "netgen/tagsbundle": ">=3.4,<3.4.11|>=4,<4.0.15", + "nette/application": ">=2,<2.0.19|>=2.1,<2.1.13|>=2.2,<2.2.10|>=2.3,<2.3.14|>=2.4,<2.4.16|>=3,<3.0.6", + "nette/nette": ">=2,<2.0.19|>=2.1,<2.1.13", + "nilsteampassnet/teampass": "<3.0.10", + "nonfiction/nterchange": "<4.1.1", + "notrinos/notrinos-erp": "<=0.7", + "noumo/easyii": "<=0.9", + "novaksolutions/infusionsoft-php-sdk": "<1", + "nukeviet/nukeviet": "<4.5.02", + "nyholm/psr7": "<1.6.1", + "nystudio107/craft-seomatic": "<3.4.12", + "nzedb/nzedb": "<0.8", + "nzo/url-encryptor-bundle": ">=4,<4.3.2|>=5,<5.0.1", + "october/backend": "<1.1.2", + "october/cms": "<1.0.469|==1.0.469|==1.0.471|==1.1.1", + "october/october": "<=3.4.4", + "october/rain": "<1.0.472|>=1.1,<1.1.2", + "october/system": "<1.0.476|>=1.1,<1.1.12|>=2,<2.2.34|>=3,<3.5.15", + "omeka/omeka-s": "<4.0.3", + "onelogin/php-saml": "<2.10.4", + "oneup/uploader-bundle": ">=1,<1.9.3|>=2,<2.1.5", + "open-web-analytics/open-web-analytics": "<1.7.4", + "opencart/opencart": ">=0", + "openid/php-openid": "<2.3", + "openmage/magento-lts": "<20.10.1", + "opensolutions/vimbadmin": "<=3.0.15", + "opensource-workshop/connect-cms": "<1.7.2|>=2,<2.3.2", + "orchid/platform": ">=9,<9.4.4|>=14.0.0.0-alpha4,<14.5", + "oro/calendar-bundle": ">=4.2,<=4.2.6|>=5,<=5.0.6|>=5.1,<5.1.1", + "oro/commerce": ">=4.1,<5.0.11|>=5.1,<5.1.1", + "oro/crm": ">=1.7,<1.7.4|>=3.1,<4.1.17|>=4.2,<4.2.7", + "oro/crm-call-bundle": ">=4.2,<=4.2.5|>=5,<5.0.4|>=5.1,<5.1.1", + "oro/customer-portal": ">=4.1,<=4.1.13|>=4.2,<=4.2.10|>=5,<=5.0.11|>=5.1,<=5.1.3", + "oro/platform": ">=1.7,<1.7.4|>=3.1,<3.1.29|>=4.1,<4.1.17|>=4.2,<=4.2.10|>=5,<=5.0.12|>=5.1,<=5.1.3", + "oveleon/contao-cookiebar": "<1.16.3|>=2,<2.1.3", + "oxid-esales/oxideshop-ce": "<4.5", + "oxid-esales/paymorrow-module": ">=1,<1.0.2|>=2,<2.0.1", + "packbackbooks/lti-1-3-php-library": "<5", + "padraic/humbug_get_contents": "<1.1.2", + "pagarme/pagarme-php": "<3", + "pagekit/pagekit": "<=1.0.18", + "paragonie/ecc": "<2.0.1", + "paragonie/random_compat": "<2", + "passbolt/passbolt_api": "<4.6.2", + "paypal/adaptivepayments-sdk-php": "<=3.9.2", + "paypal/invoice-sdk-php": "<=3.9", + "paypal/merchant-sdk-php": "<3.12", + "paypal/permissions-sdk-php": "<=3.9.1", + "pear/archive_tar": "<1.4.14", + "pear/auth": "<1.2.4", + "pear/crypt_gpg": "<1.6.7", + "pear/pear": "<=1.10.1", + "pegasus/google-for-jobs": "<1.5.1|>=2,<2.1.1", + "personnummer/personnummer": "<3.0.2", + "phanan/koel": "<5.1.4", + "phenx/php-svg-lib": "<0.5.2", + "php-censor/php-censor": "<2.0.13|>=2.1,<2.1.5", + "php-mod/curl": "<2.3.2", + "phpbb/phpbb": "<3.2.10|>=3.3,<3.3.1", + "phpems/phpems": ">=6,<=6.1.3", + "phpfastcache/phpfastcache": "<6.1.5|>=7,<7.1.2|>=8,<8.0.7", + "phpmailer/phpmailer": "<6.5", + "phpmussel/phpmussel": ">=1,<1.6", + "phpmyadmin/phpmyadmin": "<5.2.1", + "phpmyfaq/phpmyfaq": "<3.2.5|==3.2.5", + "phpoffice/common": "<0.2.9", + "phpoffice/phpexcel": "<1.8", + "phpoffice/phpspreadsheet": "<1.29.1|>=2,<2.1.1|>=2.2,<2.2.1", + "phpseclib/phpseclib": "<2.0.47|>=3,<3.0.36", + "phpservermon/phpservermon": "<3.6", + "phpsysinfo/phpsysinfo": "<3.4.3", + "phpunit/phpunit": ">=4.8.19,<4.8.28|>=5.0.10,<5.6.3", + "phpwhois/phpwhois": "<=4.2.5", + "phpxmlrpc/extras": "<0.6.1", + "phpxmlrpc/phpxmlrpc": "<4.9.2", + "pi/pi": "<=2.5", + "pimcore/admin-ui-classic-bundle": "<1.5.4", + "pimcore/customer-management-framework-bundle": "<4.0.6", + "pimcore/data-hub": "<1.2.4", + "pimcore/data-importer": "<1.8.9|>=1.9,<1.9.3", + "pimcore/demo": "<10.3", + "pimcore/ecommerce-framework-bundle": "<1.0.10", + "pimcore/perspective-editor": "<1.5.1", + "pimcore/pimcore": "<11.2.4", + "pixelfed/pixelfed": "<0.11.11", + "plotly/plotly.js": "<2.25.2", + "pocketmine/bedrock-protocol": "<8.0.2", + "pocketmine/pocketmine-mp": "<5.11.2", + "pocketmine/raklib": ">=0.14,<0.14.6|>=0.15,<0.15.1", + "pressbooks/pressbooks": "<5.18", + "prestashop/autoupgrade": ">=4,<4.10.1", + "prestashop/blockreassurance": "<=5.1.3", + "prestashop/blockwishlist": ">=2,<2.1.1", + "prestashop/contactform": ">=1.0.1,<4.3", + "prestashop/gamification": "<2.3.2", + "prestashop/prestashop": "<8.1.6", + "prestashop/productcomments": "<5.0.2", + "prestashop/ps_emailsubscription": "<2.6.1", + "prestashop/ps_facetedsearch": "<3.4.1", + "prestashop/ps_linklist": "<3.1", + "privatebin/privatebin": "<1.4|>=1.5,<1.7.4", + "processwire/processwire": "<=3.0.229", + "propel/propel": ">=2.0.0.0-alpha1,<=2.0.0.0-alpha7", + "propel/propel1": ">=1,<=1.7.1", + "pterodactyl/panel": "<1.11.6", + "ptheofan/yii2-statemachine": ">=2.0.0.0-RC1-dev,<=2", + "ptrofimov/beanstalk_console": "<1.7.14", + "pubnub/pubnub": "<6.1", + "pusher/pusher-php-server": "<2.2.1", + "pwweb/laravel-core": "<=0.3.6.0-beta", + "pxlrbt/filament-excel": "<1.1.14|>=2.0.0.0-alpha,<2.3.3", + "pyrocms/pyrocms": "<=3.9.1", + "qcubed/qcubed": "<=3.1.1", + "quickapps/cms": "<=2.0.0.0-beta2", + "rainlab/blog-plugin": "<1.4.1", + "rainlab/debugbar-plugin": "<3.1", + "rainlab/user-plugin": "<=1.4.5", + "rankmath/seo-by-rank-math": "<=1.0.95", + "rap2hpoutre/laravel-log-viewer": "<0.13", + "react/http": ">=0.7,<1.9", + "really-simple-plugins/complianz-gdpr": "<6.4.2", + "redaxo/source": "<=5.15.1", + "remdex/livehelperchat": "<4.29", + "reportico-web/reportico": "<=8.1", + "rhukster/dom-sanitizer": "<1.0.7", + "rmccue/requests": ">=1.6,<1.8", + "robrichards/xmlseclibs": ">=1,<3.0.4", + "roots/soil": "<4.1", + "rudloff/alltube": "<3.0.3", + "s-cart/core": "<6.9", + "s-cart/s-cart": "<6.9", + "sabberworm/php-css-parser": ">=1,<1.0.1|>=2,<2.0.1|>=3,<3.0.1|>=4,<4.0.1|>=5,<5.0.9|>=5.1,<5.1.3|>=5.2,<5.2.1|>=6,<6.0.2|>=7,<7.0.4|>=8,<8.0.1|>=8.1,<8.1.1|>=8.2,<8.2.1|>=8.3,<8.3.1", + "sabre/dav": ">=1.6,<1.7.11|>=1.8,<1.8.9", + "scheb/two-factor-bundle": "<3.26|>=4,<4.11", + "sensiolabs/connect": "<4.2.3", + "serluck/phpwhois": "<=4.2.6", + "sfroemken/url_redirect": "<=1.2.1", + "sheng/yiicms": "<=1.2", + "shopware/core": "<=6.5.8.12|>=6.6,<=6.6.5", + "shopware/platform": "<=6.5.8.12|>=6.6,<=6.6.5", + "shopware/production": "<=6.3.5.2", + "shopware/shopware": "<=5.7.17", + "shopware/storefront": "<=6.4.8.1|>=6.5.8,<6.5.8.7-dev", + "shopxo/shopxo": "<=6.1", + "showdoc/showdoc": "<2.10.4", + "silverstripe-australia/advancedreports": ">=1,<=2", + "silverstripe/admin": "<1.13.19|>=2,<2.1.8", + "silverstripe/assets": ">=1,<1.11.1", + "silverstripe/cms": "<4.11.3", + "silverstripe/comments": ">=1.3,<3.1.1", + "silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3", + "silverstripe/framework": "<5.2.16", + "silverstripe/graphql": ">=2,<2.0.5|>=3,<3.8.2|>=4,<4.3.7|>=5,<5.1.3", + "silverstripe/hybridsessions": ">=1,<2.4.1|>=2.5,<2.5.1", + "silverstripe/recipe-cms": ">=4.5,<4.5.3", + "silverstripe/registry": ">=2.1,<2.1.2|>=2.2,<2.2.1", + "silverstripe/reports": "<5.2.3", + "silverstripe/restfulserver": ">=1,<1.0.9|>=2,<2.0.4|>=2.1,<2.1.2", + "silverstripe/silverstripe-omnipay": "<2.5.2|>=3,<3.0.2|>=3.1,<3.1.4|>=3.2,<3.2.1", + "silverstripe/subsites": ">=2,<2.6.1", + "silverstripe/taxonomy": ">=1.3,<1.3.1|>=2,<2.0.1", + "silverstripe/userforms": "<3|>=5,<5.4.2", + "silverstripe/versioned-admin": ">=1,<1.11.1", + "simple-updates/phpwhois": "<=1", + "simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4|==5.0.0.0-alpha12", + "simplesamlphp/simplesamlphp": "<1.18.6", + "simplesamlphp/simplesamlphp-module-infocard": "<1.0.1", + "simplesamlphp/simplesamlphp-module-openid": "<1", + "simplesamlphp/simplesamlphp-module-openidprovider": "<0.9", + "simplesamlphp/xml-security": "==1.6.11", + "simplito/elliptic-php": "<1.0.6", + "sitegeist/fluid-components": "<3.5", + "sjbr/sr-freecap": "<2.4.6|>=2.5,<2.5.3", + "slim/psr7": "<1.4.1|>=1.5,<1.5.1|>=1.6,<1.6.1", + "slim/slim": "<2.6", + "slub/slub-events": "<3.0.3", + "smarty/smarty": "<4.5.3|>=5,<5.1.1", + "snipe/snipe-it": "<6.4.2", + "socalnick/scn-social-auth": "<1.15.2", + "socialiteproviders/steam": "<1.1", + "spatie/browsershot": "<3.57.4", + "spatie/image-optimizer": "<1.7.3", + "spipu/html2pdf": "<5.2.8", + "spoon/library": "<1.4.1", + "spoonity/tcpdf": "<6.2.22", + "squizlabs/php_codesniffer": ">=1,<2.8.1|>=3,<3.0.1", + "ssddanbrown/bookstack": "<24.05.1", + "statamic/cms": "<4.46|>=5.3,<5.6.2", + "stormpath/sdk": "<9.9.99", + "studio-42/elfinder": "<=2.1.64", + "studiomitte/friendlycaptcha": "<0.1.4", + "subhh/libconnect": "<7.0.8|>=8,<8.1", + "sukohi/surpass": "<1", + "sulu/form-bundle": ">=2,<2.5.3", + "sulu/sulu": "<1.6.44|>=2,<2.4.17|>=2.5,<2.5.13", + "sumocoders/framework-user-bundle": "<1.4", + "superbig/craft-audit": "<3.0.2", + "swag/paypal": "<5.4.4", + "swiftmailer/swiftmailer": "<6.2.5", + "swiftyedit/swiftyedit": "<1.2", + "sylius/admin-bundle": ">=1,<1.0.17|>=1.1,<1.1.9|>=1.2,<1.2.2", + "sylius/grid": ">=1,<1.1.19|>=1.2,<1.2.18|>=1.3,<1.3.13|>=1.4,<1.4.5|>=1.5,<1.5.1", + "sylius/grid-bundle": "<1.10.1", + "sylius/paypal-plugin": ">=1,<1.2.4|>=1.3,<1.3.1", + "sylius/resource-bundle": ">=1,<1.3.14|>=1.4,<1.4.7|>=1.5,<1.5.2|>=1.6,<1.6.4", + "sylius/sylius": "<1.12.19|>=1.13.0.0-alpha1,<1.13.4", + "symbiote/silverstripe-multivaluefield": ">=3,<3.1", + "symbiote/silverstripe-queuedjobs": ">=3,<3.0.2|>=3.1,<3.1.4|>=4,<4.0.7|>=4.1,<4.1.2|>=4.2,<4.2.4|>=4.3,<4.3.3|>=4.4,<4.4.3|>=4.5,<4.5.1|>=4.6,<4.6.4", + "symbiote/silverstripe-seed": "<6.0.3", + "symbiote/silverstripe-versionedfiles": "<=2.0.3", + "symfont/process": ">=0", + "symfony/cache": ">=3.1,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8", + "symfony/dependency-injection": ">=2,<2.0.17|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", + "symfony/error-handler": ">=4.4,<4.4.4|>=5,<5.0.4", + "symfony/form": ">=2.3,<2.3.35|>=2.4,<2.6.12|>=2.7,<2.7.50|>=2.8,<2.8.49|>=3,<3.4.20|>=4,<4.0.15|>=4.1,<4.1.9|>=4.2,<4.2.1", + "symfony/framework-bundle": ">=2,<2.3.18|>=2.4,<2.4.8|>=2.5,<2.5.2|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7|>=5.3.14,<5.3.15|>=5.4.3,<5.4.4|>=6.0.3,<6.0.4", + "symfony/http-foundation": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7", + "symfony/http-kernel": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", + "symfony/intl": ">=2.7,<2.7.38|>=2.8,<2.8.31|>=3,<3.2.14|>=3.3,<3.3.13", + "symfony/maker-bundle": ">=1.27,<1.29.2|>=1.30,<1.31.1", + "symfony/mime": ">=4.3,<4.3.8", + "symfony/phpunit-bridge": ">=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", + "symfony/polyfill": ">=1,<1.10", + "symfony/polyfill-php55": ">=1,<1.10", + "symfony/proxy-manager-bridge": ">=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", + "symfony/routing": ">=2,<2.0.19", + "symfony/security": ">=2,<2.7.51|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.8", + "symfony/security-bundle": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", + "symfony/security-core": ">=2.4,<2.6.13|>=2.7,<2.7.9|>=2.7.30,<2.7.32|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.9", + "symfony/security-csrf": ">=2.4,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11", + "symfony/security-guard": ">=2.8,<3.4.48|>=4,<4.4.23|>=5,<5.2.8", + "symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7|>=5.1,<5.2.8|>=5.3,<5.3.2|>=5.4,<5.4.31|>=6,<6.3.8", + "symfony/serializer": ">=2,<2.0.11|>=4.1,<4.4.35|>=5,<5.3.12", + "symfony/symfony": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", + "symfony/translation": ">=2,<2.0.17", + "symfony/twig-bridge": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", + "symfony/ux-autocomplete": "<2.11.2", + "symfony/validator": ">=2,<2.0.24|>=2.1,<2.1.12|>=2.2,<2.2.5|>=2.3,<2.3.3", + "symfony/var-exporter": ">=4.2,<4.2.12|>=4.3,<4.3.8", + "symfony/web-profiler-bundle": ">=2,<2.3.19|>=2.4,<2.4.9|>=2.5,<2.5.4", + "symfony/webhook": ">=6.3,<6.3.8", + "symfony/yaml": ">=2,<2.0.22|>=2.1,<2.1.7|>=2.2.0.0-beta1,<2.2.0.0-beta2", + "symphonycms/symphony-2": "<2.6.4", + "t3/dce": "<0.11.5|>=2.2,<2.6.2", + "t3g/svg-sanitizer": "<1.0.3", + "t3s/content-consent": "<1.0.3|>=2,<2.0.2", + "tastyigniter/tastyigniter": "<3.3", + "tcg/voyager": "<=1.4", + "tecnickcom/tcpdf": "<=6.7.4", + "terminal42/contao-tablelookupwizard": "<3.3.5", + "thelia/backoffice-default-template": ">=2.1,<2.1.2", + "thelia/thelia": ">=2.1,<2.1.3", + "theonedemon/phpwhois": "<=4.2.5", + "thinkcmf/thinkcmf": "<6.0.8", + "thorsten/phpmyfaq": "<3.2.2", + "tikiwiki/tiki-manager": "<=17.1", + "timber/timber": ">=0.16.6,<1.23.1|>=1.24,<1.24.1|>=2,<2.1", + "tinymce/tinymce": "<7.2", + "tinymighty/wiki-seo": "<1.2.2", + "titon/framework": "<9.9.99", + "tobiasbg/tablepress": "<=2.0.0.0-RC1", + "topthink/framework": "<6.0.17|>=6.1,<=8.0.4", + "topthink/think": "<=6.1.1", + "topthink/thinkphp": "<=3.2.3", + "torrentpier/torrentpier": "<=2.4.3", + "tpwd/ke_search": "<4.0.3|>=4.1,<4.6.6|>=5,<5.0.2", + "tribalsystems/zenario": "<9.5.60602", + "truckersmp/phpwhois": "<=4.3.1", + "ttskch/pagination-service-provider": "<1", + "twbs/bootstrap": "<=3.4.1|>=4,<=4.6.2", + "twig/twig": "<1.44.8|>=2,<2.16.1|>=3,<3.11.1|>=3.12,<3.14", + "typo3/cms": "<9.5.29|>=10,<10.4.35|>=11,<11.5.23|>=12,<12.2", + "typo3/cms-backend": "<4.1.14|>=4.2,<4.2.15|>=4.3,<4.3.7|>=4.4,<4.4.4|>=7,<=7.6.50|>=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", + "typo3/cms-core": "<=8.7.56|>=9,<=9.5.47|>=10,<=10.4.44|>=11,<=11.5.36|>=12,<=12.4.14|>=13,<=13.1", + "typo3/cms-extbase": "<6.2.24|>=7,<7.6.8|==8.1.1", + "typo3/cms-fluid": "<4.3.4|>=4.4,<4.4.1", + "typo3/cms-form": ">=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", + "typo3/cms-frontend": "<4.3.9|>=4.4,<4.4.5", + "typo3/cms-install": "<4.1.14|>=4.2,<4.2.16|>=4.3,<4.3.9|>=4.4,<4.4.5|>=12.2,<12.4.8", + "typo3/cms-rte-ckeditor": ">=9.5,<9.5.42|>=10,<10.4.39|>=11,<11.5.30", + "typo3/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.12|>=3.1,<3.1.10|>=3.2,<3.2.13|>=3.3,<3.3.13|>=4,<4.0.6", + "typo3/html-sanitizer": ">=1,<=1.5.2|>=2,<=2.1.3", + "typo3/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4|>=2.3,<2.3.99|>=3,<3.0.20|>=3.1,<3.1.18|>=3.2,<3.2.14|>=3.3,<3.3.23|>=4,<4.0.17|>=4.1,<4.1.16|>=4.2,<4.2.12|>=4.3,<4.3.3", + "typo3/phar-stream-wrapper": ">=1,<2.1.1|>=3,<3.1.1", + "typo3/swiftmailer": ">=4.1,<4.1.99|>=5.4,<5.4.5", + "typo3fluid/fluid": ">=2,<2.0.8|>=2.1,<2.1.7|>=2.2,<2.2.4|>=2.3,<2.3.7|>=2.4,<2.4.4|>=2.5,<2.5.11|>=2.6,<2.6.10", + "ua-parser/uap-php": "<3.8", + "uasoft-indonesia/badaso": "<=2.9.7", + "unisharp/laravel-filemanager": "<2.6.4", + "userfrosting/userfrosting": ">=0.3.1,<4.6.3", + "usmanhalalit/pixie": "<1.0.3|>=2,<2.0.2", + "uvdesk/community-skeleton": "<=1.1.1", + "uvdesk/core-framework": "<=1.1.1", + "vanilla/safecurl": "<0.9.2", + "verbb/comments": "<1.5.5", + "verbb/formie": "<2.1.6", + "verbb/image-resizer": "<2.0.9", + "verbb/knock-knock": "<1.2.8", + "verot/class.upload.php": "<=2.1.6", + "villagedefrance/opencart-overclocked": "<=1.11.1", + "vova07/yii2-fileapi-widget": "<0.1.9", + "vrana/adminer": "<4.8.1", + "vufind/vufind": ">=2,<9.1.1", + "waldhacker/hcaptcha": "<2.1.2", + "wallabag/tcpdf": "<6.2.22", + "wallabag/wallabag": "<2.6.7", + "wanglelecc/laracms": "<=1.0.3", + "web-auth/webauthn-framework": ">=3.3,<3.3.4|>=4.5,<4.9", + "web-auth/webauthn-lib": ">=4.5,<4.9", + "web-feet/coastercms": "==5.5", + "webbuilders-group/silverstripe-kapost-bridge": "<0.4", + "webcoast/deferred-image-processing": "<1.0.2", + "webklex/laravel-imap": "<5.3", + "webklex/php-imap": "<5.3", + "webpa/webpa": "<3.1.2", + "wikibase/wikibase": "<=1.39.3", + "wikimedia/parsoid": "<0.12.2", + "willdurand/js-translation-bundle": "<2.1.1", + "winter/wn-backend-module": "<1.2.4", + "winter/wn-dusk-plugin": "<2.1", + "winter/wn-system-module": "<1.2.4", + "wintercms/winter": "<=1.2.3", + "wireui/wireui": "<1.19.3|>=2,<2.1.3", + "woocommerce/woocommerce": "<6.6|>=8.8,<8.8.5|>=8.9,<8.9.3", + "wp-cli/wp-cli": ">=0.12,<2.5", + "wp-graphql/wp-graphql": "<=1.14.5", + "wp-premium/gravityforms": "<2.4.21", + "wpanel/wpanel4-cms": "<=4.3.1", + "wpcloud/wp-stateless": "<3.2", + "wpglobus/wpglobus": "<=1.9.6", + "wwbn/avideo": "<14.3", + "xataface/xataface": "<3", + "xpressengine/xpressengine": "<3.0.15", + "yab/quarx": "<2.4.5", + "yeswiki/yeswiki": "<4.1", + "yetiforce/yetiforce-crm": "<=6.4", + "yidashi/yii2cmf": "<=2", + "yii2mod/yii2-cms": "<1.9.2", + "yiisoft/yii": "<1.1.29", + "yiisoft/yii2": "<2.0.49.4-dev", + "yiisoft/yii2-authclient": "<2.2.15", + "yiisoft/yii2-bootstrap": "<2.0.4", + "yiisoft/yii2-dev": "<2.0.43", + "yiisoft/yii2-elasticsearch": "<2.0.5", + "yiisoft/yii2-gii": "<=2.2.4", + "yiisoft/yii2-jui": "<2.0.4", + "yiisoft/yii2-redis": "<2.0.8", + "yikesinc/yikes-inc-easy-mailchimp-extender": "<6.8.6", + "yoast-seo-for-typo3/yoast_seo": "<7.2.3", + "yourls/yourls": "<=1.8.2", + "yuan1994/tpadmin": "<=1.3.12", + "zencart/zencart": "<=1.5.7.0-beta", + "zendesk/zendesk_api_client_php": "<2.2.11", + "zendframework/zend-cache": ">=2.4,<2.4.8|>=2.5,<2.5.3", + "zendframework/zend-captcha": ">=2,<2.4.9|>=2.5,<2.5.2", + "zendframework/zend-crypt": ">=2,<2.4.9|>=2.5,<2.5.2", + "zendframework/zend-db": "<2.2.10|>=2.3,<2.3.5", + "zendframework/zend-developer-tools": ">=1.2.2,<1.2.3", + "zendframework/zend-diactoros": "<1.8.4", + "zendframework/zend-feed": "<2.10.3", + "zendframework/zend-form": ">=2,<2.2.7|>=2.3,<2.3.1", + "zendframework/zend-http": "<2.8.1", + "zendframework/zend-json": ">=2.1,<2.1.6|>=2.2,<2.2.6", + "zendframework/zend-ldap": ">=2,<2.0.99|>=2.1,<2.1.99|>=2.2,<2.2.8|>=2.3,<2.3.3", + "zendframework/zend-mail": "<2.4.11|>=2.5,<2.7.2", + "zendframework/zend-navigation": ">=2,<2.2.7|>=2.3,<2.3.1", + "zendframework/zend-session": ">=2,<2.2.9|>=2.3,<2.3.4", + "zendframework/zend-validator": ">=2.3,<2.3.6", + "zendframework/zend-view": ">=2,<2.2.7|>=2.3,<2.3.1", + "zendframework/zend-xmlrpc": ">=2.1,<2.1.6|>=2.2,<2.2.6", + "zendframework/zendframework": "<=3", + "zendframework/zendframework1": "<1.12.20", + "zendframework/zendopenid": "<2.0.2", + "zendframework/zendrest": "<2.0.2", + "zendframework/zendservice-amazon": "<2.0.3", + "zendframework/zendservice-api": "<1", + "zendframework/zendservice-audioscrobbler": "<2.0.2", + "zendframework/zendservice-nirvanix": "<2.0.2", + "zendframework/zendservice-slideshare": "<2.0.2", + "zendframework/zendservice-technorati": "<2.0.2", + "zendframework/zendservice-windowsazure": "<2.0.2", + "zendframework/zendxml": ">=1,<1.0.1", + "zenstruck/collection": "<0.2.1", + "zetacomponents/mail": "<1.8.2", + "zf-commons/zfc-user": "<1.2.2", + "zfcampus/zf-apigility-doctrine": ">=1,<1.0.3", + "zfr/zfr-oauth2-server-module": "<0.1.2", + "zoujingli/thinkadmin": "<=6.1.53" + }, + "default-branch": true, + "type": "metapackage", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "role": "maintainer" + }, + { + "name": "Ilya Tribusean", + "email": "slash3b@gmail.com", + "role": "maintainer" + } + ], + "description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it", + "keywords": [ + "dev" + ], + "support": { + "issues": "https://github.com/Roave/SecurityAdvisories/issues", + "source": "https://github.com/Roave/SecurityAdvisories/tree/latest" + }, + "funding": [ + { + "url": "https://github.com/Ocramius", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/roave/security-advisories", + "type": "tidelift" + } + ], + "time": "2024-09-19T17:04:43+00:00" + }, + { + "name": "sanmai/later", + "version": "0.1.4", + "source": { + "type": "git", + "url": "https://github.com/sanmai/later.git", + "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sanmai/later/zipball/e24c4304a4b1349c2a83151a692cec0c10579f60", + "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60", + "shasum": "" + }, + "require": { + "php": ">=7.4" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8", + "friendsofphp/php-cs-fixer": "^3.35.1", + "infection/infection": ">=0.27.6", + "phan/phan": ">=2", + "php-coveralls/php-coveralls": "^2.0", + "phpstan/phpstan": ">=1.4.5", + "phpunit/phpunit": ">=9.5 <10", + "vimeo/psalm": ">=2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.1.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Later\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Alexey Kopytko", + "email": "alexey@kopytko.com" + } + ], + "description": "Later: deferred wrapper object", + "support": { + "issues": "https://github.com/sanmai/later/issues", + "source": "https://github.com/sanmai/later/tree/0.1.4" + }, + "funding": [ + { + "url": "https://github.com/sanmai", + "type": "github" + } + ], + "time": "2023-10-24T00:25:28+00:00" + }, + { + "name": "sanmai/pipeline", + "version": "v6.11", + "source": { + "type": "git", + "url": "https://github.com/sanmai/pipeline.git", + "reference": "a5fa2a6c6ca93efa37e7c24aab72f47448a6b110" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sanmai/pipeline/zipball/a5fa2a6c6ca93efa37e7c24aab72f47448a6b110", + "reference": "a5fa2a6c6ca93efa37e7c24aab72f47448a6b110", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8", + "friendsofphp/php-cs-fixer": "^3.17", + "infection/infection": ">=0.10.5", + "league/pipeline": "^0.3 || ^1.0", + "phan/phan": ">=1.1", + "php-coveralls/php-coveralls": "^2.4.1", + "phpstan/phpstan": ">=0.10", + "phpunit/phpunit": ">=9.4", + "vimeo/psalm": ">=2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "v6.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Pipeline\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Alexey Kopytko", + "email": "alexey@kopytko.com" + } + ], + "description": "General-purpose collections pipeline", + "support": { + "issues": "https://github.com/sanmai/pipeline/issues", + "source": "https://github.com/sanmai/pipeline/tree/v6.11" + }, + "funding": [ + { + "url": "https://github.com/sanmai", + "type": "github" + } + ], + "time": "2024-06-15T03:11:19+00:00" + }, + { + "name": "sebastian/cli-parser", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "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.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:27:43+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": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "shasum": "" + }, + "require": { + "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" + } + ], + "description": "Looks up which function or method a line of code belongs to", + "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/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:30:19+00:00" + }, + { + "name": "sebastian/comparator", + "version": "4.0.8", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/diff": "^4.0", + "sebastian/exporter": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + } + ], + "description": "Provides the functionality to compare PHP values for equality", + "homepage": "https://github.com/sebastianbergmann/comparator", + "keywords": [ + "comparator", + "compare", + "equality" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-09-14T12:41:17+00:00" + }, + { + "name": "sebastian/complexity", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", + "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.18 || ^5.0", + "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.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-12-22T06:19:30+00:00" + }, + { + "name": "sebastian/diff", + "version": "4.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", + "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:30:58+00:00" + }, + { + "name": "sebastian/environment", + "version": "5.1.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-posix": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "http://www.github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T06:03:51+00:00" + }, + { + "name": "sebastian/exporter", + "version": "4.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72", + "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-mbstring": "*", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "https://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:33:00+00:00" + }, + { + "name": "sebastian/global-state", + "version": "5.0.7", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", + "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-dom": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-uopz": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Snapshotting of global state", + "homepage": "http://www.github.com/sebastianbergmann/global-state", + "keywords": [ + "global state" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:35:11+00:00" + }, + { + "name": "sebastian/lines-of-code", + "version": "1.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.18 || ^5.0", + "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.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-12-22T06:20:34+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:12:34+00:00" + }, + { + "name": "sebastian/object-reflector", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "shasum": "" + }, + "require": { + "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" + } + ], + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:14:26+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "4.0.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "https://github.com/sebastianbergmann/recursion-context", + "support": { + "issues": "https://github.com/sebastianbergmann/recursion-context/issues", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T06:07:39+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "3.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "support": { + "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-14T16:00:52+00:00" + }, + { + "name": "sebastian/type", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", + "support": { + "issues": "https://github.com/sebastianbergmann/type/issues", + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T06:13:03+00:00" + }, + { + "name": "sebastian/version", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c6c1022351a901512170118436c764e473f6de8c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", + "reference": "c6c1022351a901512170118436c764e473f6de8c", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.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 that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version", + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:39:44+00:00" + }, + { + "name": "softcreatr/jsonpath", + "version": "0.9.1", + "source": { + "type": "git", + "url": "https://github.com/SoftCreatR/JSONPath.git", + "reference": "272173a65fd16b25010dbd54d04dd34c0c5a8500" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/SoftCreatR/JSONPath/zipball/272173a65fd16b25010dbd54d04dd34c0c5a8500", + "reference": "272173a65fd16b25010dbd54d04dd34c0c5a8500", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "8.1 - 8.4" + }, + "replace": { + "flow/jsonpath": "*" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.58", + "phpunit/phpunit": "10 - 12", + "squizlabs/php_codesniffer": "^3.10" + }, + "type": "library", + "autoload": { + "psr-4": { + "Flow\\JSONPath\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Stephen Frank", + "email": "stephen@flowsa.com", + "homepage": "https://prismaticbytes.com", + "role": "Developer" + }, + { + "name": "Sascha Greuel", + "email": "hello@1-2.dev", + "homepage": "https://1-2.dev", + "role": "Developer" + } + ], + "description": "JSONPath implementation for parsing, searching and flattening arrays", + "support": { + "email": "hello@1-2.dev", + "forum": "https://github.com/SoftCreatR/JSONPath/discussions", + "issues": "https://github.com/SoftCreatR/JSONPath/issues", + "source": "https://github.com/SoftCreatR/JSONPath" + }, + "funding": [ + { + "url": "https://ecologi.com/softcreatr?r=61212ab3fc69b8eb8a2014f4", + "type": "custom" + }, + { + "url": "https://github.com/softcreatr", + "type": "github" + } + ], + "time": "2024-06-01T09:15:21+00:00" + }, + { + "name": "spatie/phpunit-watcher", + "version": "1.23.6", + "source": { + "type": "git", + "url": "https://github.com/spatie/phpunit-watcher.git", + "reference": "c192fff763810c8378511bcf0069df4b91478866" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/phpunit-watcher/zipball/c192fff763810c8378511bcf0069df4b91478866", + "reference": "c192fff763810c8378511bcf0069df4b91478866", + "shasum": "" + }, + "require": { + "clue/stdio-react": "^2.4", + "jolicode/jolinotif": "^2.2", + "php": "^7.2 | ^8.0 | ^8.1", + "symfony/console": "^5 | ^6", + "symfony/finder": "^5.4 | ^6", + "symfony/process": "^5.4 | ^6", + "symfony/yaml": "^5.2 | ^6", + "yosymfony/resource-watcher": "^2.0 | ^3.0" + }, + "conflict": { + "symfony/console": "<5.2", + "yosymfony/resource-watcher": "<2.0" + }, + "require-dev": { + "phpunit/phpunit": "^8.6 | ^9.0" + }, + "bin": [ + "phpunit-watcher" + ], + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\PhpUnitWatcher\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Automatically rerun PHPUnit tests when source code changes", + "homepage": "https://github.com/spatie/phpunit-watcher", + "keywords": [ + "phpunit-watcher", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/phpunit-watcher/issues", + "source": "https://github.com/spatie/phpunit-watcher/tree/1.23.6" + }, + "time": "2022-01-31T11:57:13+00:00" + }, + { + "name": "symfony/browser-kit", + "version": "v6.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/browser-kit.git", + "reference": "62ab90b92066ef6cce5e79365625b4b1432464c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/62ab90b92066ef6cce5e79365625b4b1432464c8", + "reference": "62ab90b92066ef6cce5e79365625b4b1432464c8", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/dom-crawler": "^5.4|^6.0|^7.0" + }, + "require-dev": { + "symfony/css-selector": "^5.4|^6.0|^7.0", + "symfony/http-client": "^5.4|^6.0|^7.0", + "symfony/mime": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\BrowserKit\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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/v6.4.8" + }, + "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": "2024-05-31T14:49:08+00:00" + }, + { + "name": "symfony/css-selector", + "version": "v7.1.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/css-selector.git", + "reference": "1c7cee86c6f812896af54434f8ce29c8d94f9ff4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/1c7cee86c6f812896af54434f8ce29c8d94f9ff4", + "reference": "1c7cee86c6f812896af54434f8ce29c8d94f9ff4", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\CssSelector\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Converts CSS selectors to XPath expressions", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/css-selector/tree/v7.1.1" + }, + "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": "2024-05-31T14:57:53+00:00" + }, + { + "name": "symfony/dom-crawler", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/dom-crawler.git", + "reference": "9d307ecbcb917001692be333cdc58f474fdb37f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/9d307ecbcb917001692be333cdc58f474fdb37f0", + "reference": "9d307ecbcb917001692be333cdc58f474fdb37f0", + "shasum": "" + }, + "require": { + "masterminds/html5": "^2.6", + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0" + }, + "require-dev": { + "symfony/css-selector": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DomCrawler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases DOM navigation for HTML and XML documents", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dom-crawler/tree/v6.4.12" + }, + "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": "2024-09-15T06:35:36+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v7.1.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7", + "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/event-dispatcher-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/dependency-injection": "<6.4", + "symfony/service-contracts": "<2.5" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/error-handler": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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/v7.1.1" + }, + "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": "2024-05-31T14:57:53+00:00" + }, + { + "name": "symfony/filesystem", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", + "reference": "61fe0566189bf32e8cfee78335d8776f64a66f5a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/61fe0566189bf32e8cfee78335d8776f64a66f5a", + "reference": "61fe0566189bf32e8cfee78335d8776f64a66f5a", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8" + }, + "require-dev": { + "symfony/process": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides basic utilities for the filesystem", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/filesystem/tree/v7.1.5" + }, + "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": "2024-09-17T09:16:35+00:00" + }, + { + "name": "symfony/process", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "3f94e5f13ff58df371a7ead461b6e8068900fbb3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/3f94e5f13ff58df371a7ead461b6e8068900fbb3", + "reference": "3f94e5f13ff58df371a7ead461b6e8068900fbb3", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Executes commands in sub-processes", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v6.4.12" + }, + "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": "2024-09-17T12:47:12+00:00" + }, + { + "name": "thecodingmachine/safe", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/thecodingmachine/safe.git", + "reference": "3115ecd6b4391662b4931daac4eba6b07a2ac1f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thecodingmachine/safe/zipball/3115ecd6b4391662b4931daac4eba6b07a2ac1f0", + "reference": "3115ecd6b4391662b4931daac4eba6b07a2ac1f0", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.5", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.2", + "thecodingmachine/phpstan-strict-rules": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2.x-dev" + } + }, + "autoload": { + "files": [ + "deprecated/apc.php", + "deprecated/array.php", + "deprecated/datetime.php", + "deprecated/libevent.php", + "deprecated/misc.php", + "deprecated/password.php", + "deprecated/mssql.php", + "deprecated/stats.php", + "deprecated/strings.php", + "lib/special_cases.php", + "deprecated/mysqli.php", + "generated/apache.php", + "generated/apcu.php", + "generated/array.php", + "generated/bzip2.php", + "generated/calendar.php", + "generated/classobj.php", + "generated/com.php", + "generated/cubrid.php", + "generated/curl.php", + "generated/datetime.php", + "generated/dir.php", + "generated/eio.php", + "generated/errorfunc.php", + "generated/exec.php", + "generated/fileinfo.php", + "generated/filesystem.php", + "generated/filter.php", + "generated/fpm.php", + "generated/ftp.php", + "generated/funchand.php", + "generated/gettext.php", + "generated/gmp.php", + "generated/gnupg.php", + "generated/hash.php", + "generated/ibase.php", + "generated/ibmDb2.php", + "generated/iconv.php", + "generated/image.php", + "generated/imap.php", + "generated/info.php", + "generated/inotify.php", + "generated/json.php", + "generated/ldap.php", + "generated/libxml.php", + "generated/lzf.php", + "generated/mailparse.php", + "generated/mbstring.php", + "generated/misc.php", + "generated/mysql.php", + "generated/network.php", + "generated/oci8.php", + "generated/opcache.php", + "generated/openssl.php", + "generated/outcontrol.php", + "generated/pcntl.php", + "generated/pcre.php", + "generated/pgsql.php", + "generated/posix.php", + "generated/ps.php", + "generated/pspell.php", + "generated/readline.php", + "generated/rpminfo.php", + "generated/rrd.php", + "generated/sem.php", + "generated/session.php", + "generated/shmop.php", + "generated/sockets.php", + "generated/sodium.php", + "generated/solr.php", + "generated/spl.php", + "generated/sqlsrv.php", + "generated/ssdeep.php", + "generated/ssh2.php", + "generated/stream.php", + "generated/strings.php", + "generated/swoole.php", + "generated/uodbc.php", + "generated/uopz.php", + "generated/url.php", + "generated/var.php", + "generated/xdiff.php", + "generated/xml.php", + "generated/xmlrpc.php", + "generated/yaml.php", + "generated/yaz.php", + "generated/zip.php", + "generated/zlib.php" + ], + "classmap": [ + "lib/DateTime.php", + "lib/DateTimeImmutable.php", + "lib/Exceptions/", + "deprecated/Exceptions/", + "generated/Exceptions/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHP core functions that throw exceptions instead of returning FALSE on error", + "support": { + "issues": "https://github.com/thecodingmachine/safe/issues", + "source": "https://github.com/thecodingmachine/safe/tree/v2.5.0" + }, + "time": "2023-04-05T11:54:14+00:00" + }, + { + "name": "theseer/tokenizer", + "version": "1.2.3", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + } + ], + "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/1.2.3" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2024-03-03T12:36:25+00:00" + }, + { + "name": "vimeo/psalm", + "version": "4.30.0", + "source": { + "type": "git", + "url": "https://github.com/vimeo/psalm.git", + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vimeo/psalm/zipball/d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "shasum": "" + }, + "require": { + "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 || ^2.0 || ^3.0", + "dnoegel/php-xdg-base-dir": "^0.1.1", + "ext-ctype": "*", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-tokenizer": "*", + "felixfbecker/advanced-json-rpc": "^3.0.3", + "felixfbecker/language-server-protocol": "^1.5", + "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0", + "nikic/php-parser": "^4.13", + "openlss/lib-array2xml": "^1.0", + "php": "^7.1|^8", + "sebastian/diff": "^3.0 || ^4.0", + "symfony/console": "^3.4.17 || ^4.1.6 || ^5.0 || ^6.0", + "symfony/polyfill-php80": "^1.25", + "webmozart/path-util": "^2.3" + }, + "provide": { + "psalm/psalm": "self.version" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2", + "brianium/paratest": "^4.0||^6.0", + "ext-curl": "*", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpdocumentor/reflection-docblock": "^5", + "phpmyadmin/sql-parser": "5.1.0||dev-master", + "phpspec/prophecy": ">=1.9.0", + "phpstan/phpdoc-parser": "1.2.* || 1.6.4", + "phpunit/phpunit": "^9.0", + "psalm/plugin-phpunit": "^0.16", + "slevomat/coding-standard": "^7.0", + "squizlabs/php_codesniffer": "^3.5", + "symfony/process": "^4.3 || ^5.0 || ^6.0", + "weirdan/prophecy-shim": "^1.0 || ^2.0" + }, + "suggest": { + "ext-curl": "In order to send data to shepherd", + "ext-igbinary": "^2.0.5 is required, used to serialize caching data" + }, + "bin": [ + "psalm", + "psalm-language-server", + "psalm-plugin", + "psalm-refactor", + "psalter" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev", + "dev-3.x": "3.x-dev", + "dev-2.x": "2.x-dev", + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php", + "src/spl_object_id.php" + ], + "psr-4": { + "Psalm\\": "src/Psalm/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Matthew Brown" + } + ], + "description": "A static analysis tool for finding errors in PHP applications", + "keywords": [ + "code", + "inspection", + "php" + ], + "support": { + "issues": "https://github.com/vimeo/psalm/issues", + "source": "https://github.com/vimeo/psalm/tree/4.30.0" + }, + "time": "2022-11-06T20:37:08+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.11.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "php": "^7.2 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.11.0" + }, + "time": "2022-06-03T18:03:27+00:00" + }, + { + "name": "webmozart/path-util", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/webmozart/path-util.git", + "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725", + "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "webmozart/assert": "~1.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.6", + "sebastian/version": "^1.0.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\PathUtil\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.", + "support": { + "issues": "https://github.com/webmozart/path-util/issues", + "source": "https://github.com/webmozart/path-util/tree/2.3.0" + }, + "abandoned": "symfony/filesystem", + "time": "2015-12-17T08:42:14+00:00" + }, + { + "name": "yiisoft/active-record", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/active-record.git", + "reference": "5c4151d74fc8025261b0d3921f649513261a0144" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/active-record/zipball/5c4151d74fc8025261b0d3921f649513261a0144", + "reference": "5c4151d74fc8025261b0d3921f649513261a0144", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^8.1", + "yiisoft/db": "dev-master" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/aliases": "^2.0", + "yiisoft/arrays": "^3.1", + "yiisoft/cache": "^3.0", + "yiisoft/db-sqlite": "dev-master", + "yiisoft/di": "^1.0", + "yiisoft/factory": "^1.2", + "yiisoft/json": "^1.0", + "yiisoft/middleware-dispatcher": "^5.2" + }, + "suggest": { + "yiisoft/arrays": "For \\Yiisoft\\Arrays\\ArrayableInterface support", + "yiisoft/db-mssql": "For MSSQL database support", + "yiisoft/db-mysql": "For MySQL database support", + "yiisoft/db-oracle": "For Oracle database support", + "yiisoft/db-pgsql": "For PostgreSQL database support", + "yiisoft/db-sqlite": "For SQLite database support", + "yiisoft/factory": "For factory support", + "yiisoft/middleware-dispatcher": "For middleware support" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\ActiveRecord\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii ActiveRecord Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "Active Record", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/active-record/issues?state=open", + "source": "https://github.com/yiisoft/active-record", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-16T09:27:14+00:00" + }, + { + "name": "yiisoft/db", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/db.git", + "reference": "c765ca43af502dda2ec2aed01f368d0f15e8b290" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/db/zipball/c765ca43af502dda2ec2aed01f368d0f15e8b290", + "reference": "c765ca43af502dda2ec2aed01f368d0f15e8b290", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-json": "*", + "ext-mbstring": "*", + "ext-pdo": "*", + "php": "^8.1", + "psr/log": "^2.0|^3.0", + "psr/simple-cache": "^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^10.0", + "rector/rector": "^1.1.1", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/aliases": "^3.0", + "yiisoft/cache-file": "^3.1", + "yiisoft/di": "^1.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/json": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/var-dumper": "^1.5", + "yiisoft/yii-debug": "dev-master" + }, + "default-branch": true, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Db\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Database", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "database", + "dbal", + "query-builder", + "sql", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/db/issues/issues?state=open", + "source": "https://github.com/yiisoft/db", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-16T10:51:44+00:00" + }, + { + "name": "yiisoft/yii-debug-api", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-debug-api.git", + "reference": "8349f8d6f250e0f17bec8ab187390124e491c8c0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-debug-api/zipball/8349f8d6f250e0f17bec8ab187390124e491c8c0", + "reference": "8349f8d6f250e0f17bec8ab187390124e491c8c0", + "shasum": "" + }, + "require": { + "alexkart/curl-builder": "^1.0", + "gitonomy/gitlib": "^1.3", + "guzzlehttp/guzzle": "^7.5", + "guzzlehttp/psr7": "^2.4", + "httpsoft/http-message": "^1.1", + "php": "^8.1", + "psr/container": "^2.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/simple-cache": "^2.0|^3.0", + "symfony/process": "^5.4|^6.0", + "yiisoft/aliases": "^3.0", + "yiisoft/config": "^1.1", + "yiisoft/data-response": "^2.0", + "yiisoft/di": "^1.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/http": "^1.2", + "yiisoft/middleware-dispatcher": "^5.2", + "yiisoft/router": "^3.0", + "yiisoft/translator": "^3.0", + "yiisoft/var-dumper": "^1.4", + "yiisoft/yii-debug": "dev-master", + "yiisoft/yii-middleware": "^1.0", + "zircote/swagger-php": "^4.0" + }, + "require-dev": { + "codeception/codeception": "^5.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.6", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.22", + "yiisoft/active-record": "dev-master", + "yiisoft/assets": "^4.0", + "yiisoft/csrf": "^2.0", + "yiisoft/db": "1.2 as dev-master", + "yiisoft/db-sqlite": "^1.0", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/router-fastroute": "^3.0", + "yiisoft/test-support": "^3.0", + "yiisoft/yii-cycle": "dev-master", + "yiisoft/yii-view": "^6.0" + }, + "suggest": { + "yiisoft/assets": "Support custom debug panels", + "yiisoft/yii-view": "Support custom debug panels" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "bootstrap-web": "bootstrap-web.php", + "params": "params.php", + "di-web": "di-web.php", + "routes": "routes.php", + "di-providers-web": "di-providers-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Debug\\Api\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Debug API", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "api", + "debug", + "yii", + "yii-debug-api", + "yiisoft" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-debug-api/issues?state=open", + "source": "https://github.com/yiisoft/yii-debug-api", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-15T14:39:54+00:00" + }, + { + "name": "yiisoft/yii-debug-viewer", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-debug-viewer.git", + "reference": "89f2704b5ae8aa8e188732c3dd4a8947a2cad774" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-debug-viewer/zipball/89f2704b5ae8aa8e188732c3dd4a8947a2cad774", + "reference": "89f2704b5ae8aa8e188732c3dd4a8947a2cad774", + "shasum": "" + }, + "require": { + "nyholm/psr7": "^1.3", + "php": "^8.0", + "psr/http-message": "^1.1", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/assets": "^4.0", + "yiisoft/data-response": "^2.0", + "yiisoft/http": "^1.1", + "yiisoft/router": "^3.1", + "yiisoft/view": "^10.0", + "yiisoft/yii-view-renderer": "^7.1" + }, + "require-dev": { + "httpsoft/http-message": "^1.0.5", + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "psr/container": "^2.0", + "psr/http-factory": "^1.0", + "psr/log": "^2.0|^3.0", + "rector/rector": "^0.15.1", + "roave/infection-static-analysis-plugin": "^1.21", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18", + "yiisoft/aliases": "^3.0", + "yiisoft/config": "^1.0", + "yiisoft/di": "^1.1", + "yiisoft/error-handler": "^3.0", + "yiisoft/factory": "^1.0", + "yiisoft/files": "^2.0", + "yiisoft/injector": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/log-target-file": "^3.0", + "yiisoft/router-fastroute": "^3.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-event": "^2.0", + "yiisoft/yii-http": "^1.0", + "yiisoft/yii-runner-console": "^2.0", + "yiisoft/yii-runner-http": "^2.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin-environments": { + "yii-debug-viewer-app": { + "params": [ + "app/params.php" + ], + "di": "app/di.php", + "di-console": "$di", + "di-web": [ + "$di", + "app/web.php" + ], + "events": [], + "events-web": "$events", + "events-console": "$events", + "di-providers": [], + "di-providers-web": "$di-providers", + "di-providers-console": "$di-providers", + "routes": [], + "bootstrap": [], + "bootstrap-web": "$bootstrap", + "bootstrap-console": "$bootstrap" + } + }, + "config-plugin": { + "di-web": "di-web.php", + "params": "params.php", + "routes": "routes.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Debug\\Viewer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Debug Viewer", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "debug", + "dev", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-debug-viewer/issues?state=open", + "source": "https://github.com/yiisoft/yii-debug-viewer", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-06T13:05:25+00:00" + }, + { + "name": "yiisoft/yii-gii", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-gii.git", + "reference": "cf2f56d5d3a0a8fb00636da24ba13df3a1082350" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-gii/zipball/cf2f56d5d3a0a8fb00636da24ba13df3a1082350", + "reference": "cf2f56d5d3a0a8fb00636da24ba13df3a1082350", + "shasum": "" + }, + "require": { + "httpsoft/http-basis": "^1.1", + "php": "^8.1", + "phpspec/php-diff": "^1.1.3", + "psr/http-message": "^1.0|^2.0", + "symfony/console": "^6.0|^7.0", + "yiisoft/active-record": "dev-master", + "yiisoft/aliases": "^3.0", + "yiisoft/arrays": "^2.1|^3.0", + "yiisoft/csrf": "^2.1.1", + "yiisoft/data-response": "^2.0", + "yiisoft/db": "*", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/http": "^1.2", + "yiisoft/hydrator": "^1.0", + "yiisoft/injector": "^1.1", + "yiisoft/input-http": "^1.0", + "yiisoft/json": "^1.0", + "yiisoft/router": "^3.0", + "yiisoft/strings": "^2.1", + "yiisoft/validator": "^2.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-middleware": "^1.0" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.5", + "phpunit/phpunit": "^10.2", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.23", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.13", + "yiisoft/cache": "^3.0", + "yiisoft/db-sqlite": "dev-master", + "yiisoft/di": "^1.1", + "yiisoft/dummy-provider": "^1.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/files": "^2.0", + "yiisoft/log": "^2.0", + "yiisoft/translator": "^3.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "routes": "routes.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Gii\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Framework Code Generator Extension", + "keywords": [ + "code generator", + "dev", + "gii", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-gii/issues?state=open", + "source": "https://github.com/yiisoft/yii-gii", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-19T05:22:18+00:00" + }, + { + "name": "yiisoft/yii-testing", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-testing.git", + "reference": "d90cce1c6f33990ad2a0f9e7781da88202a57229" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-testing/zipball/d90cce1c6f33990ad2a0f9e7781da88202a57229", + "reference": "d90cce1c6f33990ad2a0f9e7781da88202a57229", + "shasum": "" + }, + "require": { + "php": "^8.0", + "phpunit/phpunit": "^9.5", + "psr/container": "^2.0", + "psr/http-message": "^1.0|^2.0", + "yiisoft/config": "^1.1", + "yiisoft/di": "^1.1", + "yiisoft/error-handler": "^3.0", + "yiisoft/yii-http": "^1.0", + "yiisoft/yii-runner": "^2.0", + "yiisoft/yii-runner-console": "^2.0", + "yiisoft/yii-runner-http": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6" + }, + "default-branch": true, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Testing\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "yii-testing", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "testing", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-testing/issues?state=open", + "source": "https://github.com/yiisoft/yii-testing", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-06-04T07:04:12+00:00" + }, + { + "name": "yosymfony/resource-watcher", + "version": "v3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yosymfony/resource-watcher.git", + "reference": "2f197cee0231c06db865d4ad2d8d7cd3faead2f8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yosymfony/resource-watcher/zipball/2f197cee0231c06db865d4ad2d8d7cd3faead2f8", + "reference": "2f197cee0231c06db865d4ad2d8d7cd3faead2f8", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "symfony/finder": "^2.7|^3.0|^4.0|^5.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.7", + "symfony/filesystem": "^2.7|^3.0|^4.0|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Yosymfony\\ResourceWatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Victor Puertas", + "email": "vpgugr@gmail.com" + } + ], + "description": "A simple resource watcher using Symfony Finder", + "homepage": "http://yosymfony.com", + "keywords": [ + "finder", + "resources", + "symfony", + "watcher" + ], + "support": { + "issues": "https://github.com/yosymfony/resource-watcher/issues", + "source": "https://github.com/yosymfony/resource-watcher/tree/master" + }, + "time": "2020-06-10T14:58:36+00:00" + } + ], + "aliases": [], + "minimum-stability": "dev", + "stability-flags": { + "cebe/markdown": 20, + "yiisoft/data": 20, + "yiisoft/data-cycle": 20, + "yiisoft/yii-debug": 20, + "yiisoft/queue": 20, + "roave/security-advisories": 20, + "yiisoft/yii-debug-api": 20, + "yiisoft/yii-debug-viewer": 20, + "yiisoft/yii-gii": 20, + "yiisoft/yii-testing": 20 + }, + "prefer-stable": true, + "prefer-lowest": false, + "platform": { + "php": ">=8.3 <8.4", + "ext-intl": "*" + }, + "platform-dev": [], + "plugin-api-version": "2.3.0" +} diff --git a/blog-api/config/common/di/hydrator.php b/blog-api/config/common/di/hydrator.php new file mode 100644 index 000000000..1561583dc --- /dev/null +++ b/blog-api/config/common/di/hydrator.php @@ -0,0 +1,13 @@ + ContainerAttributeResolverFactory::class, + ObjectFactoryInterface::class => ContainerObjectFactory::class, +]; diff --git a/blog-api/config/common/di/router.php b/blog-api/config/common/di/router.php index 23eef3818..0df551e05 100644 --- a/blog-api/config/common/di/router.php +++ b/blog-api/config/common/di/router.php @@ -6,22 +6,38 @@ use Yiisoft\Config\Config; use Yiisoft\DataResponse\Middleware\FormatDataResponse; use Yiisoft\Request\Body\RequestBodyParser; +use Yiisoft\Router\FastRoute\UrlGenerator; use Yiisoft\Router\Group; use Yiisoft\Router\RouteCollection; use Yiisoft\Router\RouteCollectionInterface; use Yiisoft\Router\RouteCollectorInterface; +use Yiisoft\Router\UrlGeneratorInterface; -/** @var Config $config */ +/** + * @var Config $config + * @var array $params + */ return [ + UrlGeneratorInterface::class => [ + 'class' => UrlGenerator::class, + 'setEncodeRaw()' => [$params['yiisoft/router-fastroute']['encodeRaw']], + 'setDefaultArgument()' => ['_language', 'en'], + 'reset' => function () { + $this->defaultArguments = ['_language', 'en']; + }, + ], + RouteCollectionInterface::class => static function (RouteCollectorInterface $collector) use ($config) { $collector ->middleware(FormatDataResponse::class) ->middleware(ExceptionMiddleware::class) ->middleware(RequestBodyParser::class) ->addGroup( - Group::create('/{_language}') - ->routes(...$config->get('routes')) + Group::create('/{_language}')->routes(...$config->get('app-routes')), + ) + ->addGroup( + Group::create()->routes(...$config->get('routes')), ); return new RouteCollection($collector); diff --git a/blog-api/config/common/params.php b/blog-api/config/common/params.php index cf7f266bb..bb94bb4b0 100644 --- a/blog-api/config/common/params.php +++ b/blog-api/config/common/params.php @@ -5,20 +5,21 @@ use App\Queue\LoggingAuthorizationHandler; use Cycle\Database\Config\SQLite\FileConnectionConfig; use Cycle\Database\Config\SQLiteDriverConfig; +use Cycle\Schema\Provider\PhpFileSchemaProvider; use Yiisoft\ErrorHandler\Middleware\ErrorCatcher; use Yiisoft\Router\Middleware\Router; use Yiisoft\Yii\Cycle\Schema\Conveyor\AttributedSchemaConveyor; use Yiisoft\Yii\Cycle\Schema\Provider\FromConveyorSchemaProvider; -use Yiisoft\Yii\Cycle\Schema\Provider\PhpFileSchemaProvider; use Yiisoft\Yii\Cycle\Schema\SchemaProviderInterface; use Yiisoft\Yii\Middleware\Locale; -use Yiisoft\Yii\Middleware\SubFolder; -use Yiisoft\Yii\Queue\Adapter\SynchronousAdapter; +use Yiisoft\Yii\Middleware\Subfolder; +use Yiisoft\Queue\Adapter\SynchronousAdapter; return [ 'locale' => [ - 'locales' => ['en' => 'en-US', 'ru' => 'ru-RU'], + 'locales' => ['en' => 'en-US', 'ru' => 'ru-RU', 'de' => 'de-DE'], 'ignoredRequests' => [ + '/gii**', '/debug**', '/inspect**', ], @@ -26,7 +27,7 @@ 'supportEmail' => 'support@example.com', 'middlewares' => [ ErrorCatcher::class, - SubFolder::class, + Subfolder::class, Locale::class, Router::class, ], @@ -137,7 +138,7 @@ ], ], - 'yiisoft/yii-queue' => [ + 'yiisoft/queue' => [ 'handlers' => [ LoggingAuthorizationHandler::NAME => [LoggingAuthorizationHandler::class, 'handle'], ], diff --git a/blog-api/config/common/routes.php b/blog-api/config/common/routes.php index 6e01dbe76..2f0809af2 100644 --- a/blog-api/config/common/routes.php +++ b/blog-api/config/common/routes.php @@ -10,11 +10,13 @@ use Yiisoft\Auth\Middleware\Authentication; use Yiisoft\DataResponse\Middleware\FormatDataResponseAsHtml; use Yiisoft\DataResponse\Middleware\FormatDataResponseAsJson; +use Yiisoft\RequestProvider\RequestCatcherMiddleware; use Yiisoft\Router\Group; use Yiisoft\Router\Route; use Yiisoft\Router\UrlGeneratorInterface; use Yiisoft\Swagger\Middleware\SwaggerJson; use Yiisoft\Swagger\Middleware\SwaggerUi; +use Yiisoft\Yii\Middleware\CorsAllowAll; return [ Route::get('/') @@ -22,6 +24,7 @@ ->name('api/info'), Route::get('/blog/') + ->middleware(RequestCatcherMiddleware::class) ->action([BlogController::class, 'index']) ->name('blog/index'), @@ -31,11 +34,13 @@ Route::post('/blog/') ->middleware(Authentication::class) + ->middleware(RequestCatcherMiddleware::class) ->action([BlogController::class, 'create']) ->name('blog/create'), Route::put('/blog/{id:\d+}') ->middleware(Authentication::class) + ->middleware(RequestCatcherMiddleware::class) ->action([BlogController::class, 'update']) ->name('blog/update'), @@ -43,11 +48,13 @@ ->prependMiddleware(Authentication::class), Route::post('/auth/') + ->middleware(RequestCatcherMiddleware::class) ->action([AuthController::class, 'login']) ->name('auth'), Route::post('/logout/') ->middleware(Authentication::class) + ->middleware(RequestCatcherMiddleware::class) ->action([AuthController::class, 'logout']) ->name('logout'), @@ -61,6 +68,7 @@ }), Route::get('/openapi.json') ->middleware(FormatDataResponseAsJson::class) - ->action(SwaggerJson::class), + ->middleware(CorsAllowAll::class) + ->action([SwaggerJson::class, 'process']), ), ]; diff --git a/blog-api/config/environments/test/params.php b/blog-api/config/environments/test/params.php index a8757bdd2..abcc17960 100644 --- a/blog-api/config/environments/test/params.php +++ b/blog-api/config/environments/test/params.php @@ -10,7 +10,6 @@ 'enabled' => false, ], 'yiisoft/yii-cycle' => [ - // DBAL config 'dbal' => [ 'connections' => [ 'sqlite' => new SQLiteDriverConfig( diff --git a/blog-api/config/web/di/application.php b/blog-api/config/web/di/application.php index 8128fae30..709f69e3b 100644 --- a/blog-api/config/web/di/application.php +++ b/blog-api/config/web/di/application.php @@ -22,11 +22,11 @@ ], \Yiisoft\Yii\Middleware\Locale::class => [ '__construct()' => [ - 'locales' => $params['locale']['locales'], - 'ignoredRequests' => $params['locale']['ignoredRequests'], + 'supportedLocales' => $params['locale']['locales'], + 'ignoredRequestUrlPatterns' => $params['locale']['ignoredRequests'], ], ], - \Yiisoft\Yii\Middleware\SubFolder::class => [ + \Yiisoft\Yii\Middleware\Subfolder::class => [ '__construct()' => [ 'prefix' => !empty(trim($_ENV['BASE_URL'] ?? '', '/')) ? $_ENV['BASE_URL'] : null, ], diff --git a/blog-api/config/web/di/middleware-dispatcher.php b/blog-api/config/web/di/middleware-dispatcher.php index f2b303927..d60af7bc3 100644 --- a/blog-api/config/web/di/middleware-dispatcher.php +++ b/blog-api/config/web/di/middleware-dispatcher.php @@ -6,9 +6,18 @@ * @var array $params */ +use Yiisoft\Definitions\Reference; +use Yiisoft\Input\Http\HydratorAttributeParametersResolver; +use Yiisoft\Input\Http\RequestInputParametersResolver; +use Yiisoft\Middleware\Dispatcher\CompositeParametersResolver; use Yiisoft\Middleware\Dispatcher\ParametersResolverInterface; -use Yiisoft\RequestModel\HandlerParametersResolver; return [ - ParametersResolverInterface::class => HandlerParametersResolver::class, + ParametersResolverInterface::class => [ + 'class' => CompositeParametersResolver::class, + '__construct()' => [ + Reference::to(HydratorAttributeParametersResolver::class), + Reference::to(RequestInputParametersResolver::class), + ], + ], ]; diff --git a/blog-api/config/web/events.php b/blog-api/config/web/events.php new file mode 100644 index 000000000..b62cc3ca5 --- /dev/null +++ b/blog-api/config/web/events.php @@ -0,0 +1,12 @@ + [ + static fn(TranslatorInterface $translator, SetLocaleEvent $event) => $translator->setLocale($event->getLocale()), + ], +]; diff --git a/blog-api/config/web/params.php b/blog-api/config/web/params.php index 0dae23dee..2b3b65847 100644 --- a/blog-api/config/web/params.php +++ b/blog-api/config/web/params.php @@ -2,4 +2,10 @@ declare(strict_types=1); -return []; +return [ + 'yiisoft/input-http' => [ + 'requestInputParametersResolver' => [ + 'throwInputValidationException' => true, + ], + ], +]; diff --git a/blog-api/configuration.php b/blog-api/configuration.php index 5360ad4fe..0066a1322 100644 --- a/blog-api/configuration.php +++ b/blog-api/configuration.php @@ -36,9 +36,12 @@ '$di-delegates', ], 'events' => [], - 'events-web' => '$events', + 'events-web' => [ + '$events', + 'web/events.php', + ], 'events-console' => '$events', - 'routes' => 'common/routes.php', + 'app-routes' => 'common/routes.php', 'bootstrap' => 'common/bootstrap.php', 'bootstrap-web' => '$bootstrap', 'bootstrap-console' => '$bootstrap', diff --git a/blog-api/docker-compose.yml b/blog-api/docker-compose.yml index ecae76695..1a424c625 100644 --- a/blog-api/docker-compose.yml +++ b/blog-api/docker-compose.yml @@ -1,9 +1,7 @@ -version: '3' - services: php: container_name: yii-php - image: yiisoftware/yii-php:8.1-fpm + image: yiisoftware/yii-php:8.3-fpm working_dir: /app volumes: - ./:/app @@ -11,8 +9,8 @@ services: image: nginx:alpine container_name: yii-nginx ports: - - 8080:80 - - 8081:81 + - "8080:80" + - "8081:81" volumes: - ./:/app - ./data/nginx/:/etc/nginx/conf.d/ diff --git a/blog-api/resources/messages/de/app.php b/blog-api/resources/messages/de/app.php new file mode 100644 index 000000000..545f2b601 --- /dev/null +++ b/blog-api/resources/messages/de/app.php @@ -0,0 +1,7 @@ + 'Seite nicht gefunden', +]; diff --git a/blog-api/src/Auth/AuthController.php b/blog-api/src/Auth/AuthController.php index d28d20d52..9416937ca 100644 --- a/blog-api/src/Auth/AuthController.php +++ b/blog-api/src/Auth/AuthController.php @@ -6,81 +6,56 @@ use App\User\UserRequest; use App\User\UserService; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; use Psr\Http\Message\ResponseInterface; use Yiisoft\DataResponse\DataResponseFactoryInterface as ResponseFactory; -/** - * @OA\Tag( - * name="auth", - * description="Authentication" - * ) - * - * @OA\SecurityScheme( - * securityScheme="ApiKey", - * type="apiKey", - * in="header", - * name="X-Api-Key" - * ) - */ +#[OA\Tag(name: 'auth', description: 'Authentication')] +#[OA\SecurityScheme(securityScheme: 'ApiKey', type: 'apiKey', name: 'X-Api-Key', in: 'header')] final class AuthController { - private ResponseFactory $responseFactory; - private UserService $userService; - public function __construct( - ResponseFactory $responseFactory, - UserService $userService + private ResponseFactory $responseFactory, + private UserService $userService, ) { - $this->responseFactory = $responseFactory; - $this->userService = $userService; } - /** - * @OA\Post( - * tags={"auth"}, - * path="/auth/", - * summary="Authenticate by params", - * description="", - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="data", - * type="object", - * @OA\Property(property="token", format="string", example="uap4X5Bd7078lxIFvxAflcGAa5D95iSSZkNjg3XFrE2EBRBlbj"), - * ), - * ), - * }, - * ) - * ), - * - * @OA\Response( - * response="400", - * description="Bad request", - * - * @OA\JsonContent(ref="#/components/schemas/BadResponse") - * ), - * - * @OA\RequestBody( - * required=true, - * - * @OA\MediaType( - * mediaType="application/json", - * - * @OA\Schema(ref="#/components/schemas/AuthRequest"), - * ), - * ), - * ) - */ + #[OA\Post( + path: '/auth/', + description: '', + summary: 'Authenticate by params', + requestBody: new OA\RequestBody(required: true, content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/AuthRequest'), + ] + )), + tags: ['auth'], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property( + property: 'data', + properties: [ + new OA\Property(property: 'token', type: 'string', example: 'uap4X5Bd7078lxIFvxAflcGAa5D95iSSZkNjg3XFrE2EBRBlbj'), + ], + type: 'object' + ), + ]), + ] + ) + ), + new OA\Response( + response: '400', + description: 'Bad request', + content: new OA\JsonContent(ref: '#/components/schemas/BadResponse') + ), + ] + )] public function login(AuthRequest $request): ResponseInterface { return $this->responseFactory->createResponse( @@ -95,29 +70,25 @@ public function login(AuthRequest $request): ResponseInterface ); } - /** - * @OA\Post( - * tags={"auth"}, - * path="/logout/", - * summary="Logout", - * description="", - * security={{"ApiKey": {}}}, - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent(ref="#/components/schemas/Response") - * ), - * - * @OA\Response( - * response="400", - * description="Bad request", - * - * @OA\JsonContent(ref="#/components/schemas/BadResponse") - * ), - * ) - */ + #[OA\Post( + path: '/logout/', + description: '', + summary: 'Logout', + security: [new OA\SecurityScheme(ref: '#/components/securitySchemes/ApiKey')], + tags: ['auth'], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent(ref: '#/components/schemas/Response') + ), + new OA\Response( + response: '400', + description: 'Bad request', + content: new OA\JsonContent(ref: '#/components/schemas/BadResponse') + ), + ] + )] public function logout(UserRequest $request): ResponseInterface { $this->userService->logout($request->getUser()); diff --git a/blog-api/src/Auth/AuthRequest.php b/blog-api/src/Auth/AuthRequest.php index 004967063..d72bdfbb9 100644 --- a/blog-api/src/Auth/AuthRequest.php +++ b/blog-api/src/Auth/AuthRequest.php @@ -4,38 +4,44 @@ namespace App\Auth; -use OpenApi\Annotations as OA; -use Yiisoft\RequestModel\RequestModel; +use Yiisoft\Input\Http\Attribute\Parameter\Body; +use Yiisoft\Input\Http\RequestInputInterface; use Yiisoft\Validator\Rule\Required; use Yiisoft\Validator\RulesProviderInterface; +use OpenApi\Attributes as OA; -/** - * @OA\Schema( - * schema="AuthRequest", - * - * @OA\Property(example="Opal1144", property="login", format="string"), - * @OA\Property(example="Opal1144", property="password", format="string"), - * ) - */ -final class AuthRequest extends RequestModel implements RulesProviderInterface +#[OA\Schema( + schema: 'AuthRequest', + properties: [ + new OA\Property(property: 'login', type: 'string', example: 'Opal1144'), + new OA\Property(property: 'password', type: 'string', example: 'Opal1144'), + ] +)] +final class AuthRequest implements RequestInputInterface, RulesProviderInterface { + #[Body('login')] + private string $login = ''; + + #[Body('password')] + private string $password = ''; + public function getLogin(): string { - return (string) $this->getAttributeValue('body.login'); + return $this->login; } public function getPassword(): string { - return (string) $this->getAttributeValue('body.password'); + return $this->password; } public function getRules(): array { return [ - 'body.login' => [ + 'login' => [ new Required(), ], - 'body.password' => [ + 'password' => [ new Required(), ], ]; diff --git a/blog-api/src/Blog/BlogController.php b/blog-api/src/Blog/BlogController.php index 92c46baf0..88e051b78 100644 --- a/blog-api/src/Blog/BlogController.php +++ b/blog-api/src/Blog/BlogController.php @@ -6,29 +6,14 @@ use App\Formatter\PaginatorFormatter; use App\User\UserRequest; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; use Psr\Http\Message\ResponseInterface as Response; use Yiisoft\DataResponse\DataResponseFactoryInterface; -use Yiisoft\RequestModel\Attribute\Query; -use Yiisoft\RequestModel\Attribute\Route; +use Yiisoft\Input\Http\Attribute\Parameter\Query; +use Yiisoft\Router\HydratorAttribute\RouteArgument; -/** - * @OA\Tag( - * name="blog", - * description="Blog" - * ) - * - * @OA\Parameter( - * - * @OA\Schema( - * type="int", - * example="2" - * ), - * in="query", - * name="page", - * parameter="PageRequest" - * ) - */ +#[OA\Tag(name: 'blog', description: 'Blog')] +#[OA\Parameter(parameter: 'PageRequest', name: 'page', in: 'query', schema: new OA\Schema(type: 'int', example: '2'))] final class BlogController { private DataResponseFactoryInterface $responseFactory; @@ -51,47 +36,36 @@ public function __construct( $this->blogService = $blogService; } - /** - * @OA\Get( - * tags={"blog"}, - * path="/blog/", - * summary="Returns paginated blog posts", - * description="", - * - * @OA\Parameter(ref="#/components/parameters/PageRequest"), - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="data", - * type="object", - * @OA\Property( - * property="posts", - * type="array", - * - * @OA\Items(ref="#/components/schemas/Post") - * ), - * - * @OA\Property( - * property="paginator", - * type="object", - * ref="#/components/schemas/Paginator" - * ), - * ), - * ), - * }, - * ) - * ), - * ) - */ + #[OA\Get( + path: '/blog/', + description: '', + summary: 'Returns paginated blog posts', + tags: ['blog'], + parameters: [ + new OA\Parameter(ref: '#/components/parameters/PageRequest'), + ], + responses: [ + new OA\Response( + response:'200', + description:'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property( + property: 'data', + properties: [ + new OA\Property(property: 'posts', type: 'array', items: new OA\Items(ref:'#/components/schemas/Post')), + new OA\Property(property: 'paginator', ref: '#/components/schemas/Paginator', type: 'object'), + ], + type: 'object' + ), + ]), + ] + ), + ), + ] + )] public function index(PaginatorFormatter $paginatorFormatter, #[Query('page')] int $page = 1): Response { $paginator = $this->blogService->getPosts($page); @@ -108,64 +82,47 @@ public function index(PaginatorFormatter $paginatorFormatter, #[Query('page')] i ); } - /** - * @OA\Get( - * tags={"blog"}, - * path="/blog/{id}", - * summary="Returns a post with a given ID", - * description="", - * - * @OA\Parameter( - * - * @OA\Schema(type="int", example="2"), - * in="path", - * name="id", - * parameter="id" - * ), - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="data", - * type="object", - * @OA\Property( - * property="post", - * type="object", - * ref="#/components/schemas/Post" - * ), - * ), - * ), - * }, - * ) - * ), - * - * @OA\Response( - * response="404", - * description="Not found", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/BadResponse"), - * @OA\Schema( - * - * @OA\Property(property="error_message", example="Entity not found"), - * @OA\Property(property="error_code", nullable=true, example=404) - * ), - * }, - * ) - * ), - * ) - */ - public function view(#[Route('id')] int $id): Response + #[OA\Get( + path: '/blog/{id}', + description: '', + summary: 'Returns a post with a given ID', + tags: ['blog'], + parameters: [ + new OA\Parameter(parameter: 'id', name: 'id', in: 'path', schema: new OA\Schema(type: 'int', example: '2')), + ], + responses: [ + new OA\Response( + response:'200', + description:'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property( + property: 'data', + properties: [ + new OA\Property(property: 'post', ref: '#/components/schemas/Post', type: 'object'), + ], + type: 'object' + ), + ]), + ] + ), + ), + new OA\Response( + response: '404', + description: 'Not found', + content: new OA\JsonContent(allOf: [ + new OA\Schema(ref: '#/components/schemas/BadResponse'), + new OA\Schema(properties: [ + new OA\Property(property:'error_message', example:'Entity not found'), + new OA\Property(property: 'error_code', example: 404, nullable: true), + ]), + ]) + ), + ] + )] + public function view(#[RouteArgument('id')] int $id): Response { return $this->responseFactory->createResponse( [ @@ -176,34 +133,30 @@ public function view(#[Route('id')] int $id): Response ); } - /** - * @OA\Post( - * tags={"blog"}, - * path="/blog", - * summary="Creates a blog post", - * description="", - * security={{"ApiKey": {}}}, - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * ref="#/components/schemas/Response" - * ) - * ), - * - * @OA\RequestBody( - * required=true, - * - * @OA\MediaType( - * mediaType="application/json", - * - * @OA\Schema(ref="#/components/schemas/EditPostRequest"), - * ), - * ), - * ) - */ + #[OA\Post( + path: '/blog/', + description: '', + summary: 'Creates a blog post', + security: [new OA\SecurityScheme(ref: '#/components/securitySchemes/ApiKey')], + requestBody: new OA\RequestBody(required: true, content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/EditPostRequest'), + ] + )), + tags: ['blog'], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent(ref: '#/components/schemas/Response') + ), + new OA\Response( + response: '400', + description: 'Bad request', + content: new OA\JsonContent(ref: '#/components/schemas/BadResponse') + ), + ] + )] public function create(EditPostRequest $postRequest, UserRequest $userRequest): Response { $post = $this->postBuilder->build(new Post(), $postRequest); @@ -214,43 +167,34 @@ public function create(EditPostRequest $postRequest, UserRequest $userRequest): return $this->responseFactory->createResponse(); } - /** - * @OA\Put( - * tags={"blog"}, - * path="/blog/{id}", - * summary="Updates a blog post with a given ID", - * description="", - * security={{"ApiKey": {}}}, - * - * @OA\Parameter( - * - * @OA\Schema(type="int", example="2"), - * in="path", - * name="id", - * parameter="id" - * ), - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * ref="#/components/schemas/Response" - * ) - * ), - * - * @OA\RequestBody( - * required=true, - * - * @OA\MediaType( - * mediaType="application/json", - * - * @OA\Schema(ref="#/components/schemas/EditPostRequest"), - * ), - * ) - * ) - */ - public function update(EditPostRequest $postRequest, #[Route('id')] int $id): Response + #[OA\Put( + path: '/blog/{id}', + description: '', + summary: 'Updates a blog post with a given ID', + security: [new OA\SecurityScheme(ref: '#/components/securitySchemes/ApiKey')], + requestBody: new OA\RequestBody(required: true, content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/EditPostRequest'), + ] + )), + tags: ['blog'], + parameters: [ + new OA\Parameter(parameter: 'id', name: 'id', in: 'path', schema: new OA\Schema(type: 'int', example: '2')), + ], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent(ref: '#/components/schemas/Response') + ), + new OA\Response( + response: '400', + description: 'Bad request', + content: new OA\JsonContent(ref: '#/components/schemas/BadResponse') + ), + ] + )] + public function update(EditPostRequest $postRequest, #[RouteArgument('id')] int $id): Response { $post = $this->postBuilder->build( $this->blogService->getPost($id), diff --git a/blog-api/src/Blog/BlogService.php b/blog-api/src/Blog/BlogService.php index 421187834..b511dad5c 100644 --- a/blog-api/src/Blog/BlogService.php +++ b/blog-api/src/Blog/BlogService.php @@ -18,10 +18,14 @@ public function __construct(PostRepository $postRepository) $this->postRepository = $postRepository; } + /** + * @psalm-return PaginatorInterface + */ public function getPosts(int $page): PaginatorInterface { $dataReader = $this->postRepository->findAll(); + /** @psalm-var PaginatorInterface */ return (new OffsetPaginator($dataReader)) ->withPageSize(self::POSTS_PER_PAGE) ->withCurrentPage($page); diff --git a/blog-api/src/Blog/EditPostRequest.php b/blog-api/src/Blog/EditPostRequest.php index 375e02ded..f7f24838a 100644 --- a/blog-api/src/Blog/EditPostRequest.php +++ b/blog-api/src/Blog/EditPostRequest.php @@ -4,57 +4,71 @@ namespace App\Blog; -use OpenApi\Annotations as OA; -use Yiisoft\RequestModel\RequestModel; +use Yiisoft\Hydrator\Validator\Attribute\Validate; +use Yiisoft\Input\Http\AbstractInput; +use Yiisoft\Input\Http\Attribute\Parameter\Body; +use Yiisoft\Router\HydratorAttribute\RouteArgument; use Yiisoft\Validator\Result; use Yiisoft\Validator\Rule\Length; use Yiisoft\Validator\Rule\Required; use Yiisoft\Validator\RulesProviderInterface; +use OpenApi\Attributes as OA; -/** - * @OA\Schema( - * schema="EditPostRequest", - * - * @OA\Property(example="Title post", property="title", format="string"), - * @OA\Property(example="Text post", property="text", format="string"), - * @OA\Property(example=1, property="status", format="int"), - * ) - */ -final class EditPostRequest extends RequestModel implements RulesProviderInterface +#[OA\Schema( + schema: 'EditPostRequest', + properties: [ + new OA\Property(property: 'title', type: 'string', example: 'Title post'), + new OA\Property(property: 'text', type: 'string', example: 'Text post'), + new OA\Property(property: 'status', type: 'int', example: '1'), + ] +)] +final class EditPostRequest extends AbstractInput implements RulesProviderInterface { + #[RouteArgument('id')] + private int $id; + + #[Body('title')] + #[Validate(new Required())] + private string $title = ''; + + #[Body('text')] + #[Validate(new Required())] + private string $text = ''; + + #[Body('status')] + #[Validate(new Required())] + private int $status; + public function getId(): int { - return (int) $this->getAttributeValue('router.id'); + return $this->id; } public function getTitle(): string { - return (string) $this->getAttributeValue('body.title'); + return $this->title; } public function getText(): string { - return (string) $this->getAttributeValue('body.text'); + return $this->text; } public function getStatus(): PostStatus { - return PostStatus::from($this->getAttributeValue('body.status')); + return PostStatus::from($this->status); } public function getRules(): array { return [ - 'body.title' => [ - new Required(), + 'title' => [ new Length(min: 5, max: 255), ], - 'body.text' => [ - new Required(), + 'text' => [ new Length(min: 5, max: 1000), ], - 'body.status' => [ - new Required(), + 'status' => [ static function ($value): Result { $result = new Result(); if (!PostStatus::isValid($value)) { diff --git a/blog-api/src/Blog/PostFormatter.php b/blog-api/src/Blog/PostFormatter.php index 3193d4bc9..db8d1bfec 100644 --- a/blog-api/src/Blog/PostFormatter.php +++ b/blog-api/src/Blog/PostFormatter.php @@ -4,17 +4,16 @@ namespace App\Blog; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; -/** - * @OA\Schema( - * schema="Post", - * - * @OA\Property(example="100", property="id", format="int"), - * @OA\Property(example="Title", property="title", format="string"), - * @OA\Property(example="Text", property="content", format="string"), - * ) - */ +#[OA\Schema( + schema: 'Post', + properties: [ + new OA\Property(property: 'id', type: 'int', example: '100'), + new OA\Property(property: 'title', type: 'string', example: 'Title'), + new OA\Property(property: 'content', type: 'string', example: 'Text'), + ] +)] final class PostFormatter { public function format(Post $post): array diff --git a/blog-api/src/Blog/PostRepository.php b/blog-api/src/Blog/PostRepository.php index 8c2e5bb13..c27838be1 100644 --- a/blog-api/src/Blog/PostRepository.php +++ b/blog-api/src/Blog/PostRepository.php @@ -7,7 +7,7 @@ use Cycle\ORM\ORMInterface; use Cycle\ORM\Select; use Cycle\ORM\Transaction; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; +use Yiisoft\Data\Cycle\Reader\EntityReader; final class PostRepository extends Select\Repository { @@ -19,8 +19,12 @@ public function __construct(Select $select, ORMInterface $orm) parent::__construct($select); } + /** + * @psalm-return EntityReader + */ public function findAll(array $scope = [], array $orderBy = []): EntityReader { + /** @psalm-var EntityReader */ return new EntityReader( $this ->select() diff --git a/blog-api/src/Dto/ApiResponseData.php b/blog-api/src/Dto/ApiResponseData.php index 65e85c9eb..114e934e6 100644 --- a/blog-api/src/Dto/ApiResponseData.php +++ b/blog-api/src/Dto/ApiResponseData.php @@ -4,70 +4,53 @@ namespace App\Dto; -use OpenApi\Annotations as OA; - -/** - * @OA\Schema( - * schema="Response", - * ) - * @OA\Schema( - * schema="BadResponse", - * allOf={ - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="status", - * example="failed", - * ), - * @OA\Property(property="error_message", example="Error description message"), - * @OA\Property(property="error_code", nullable=true, example=400), - * @OA\Property( - * property="data", - * example=null - * ), - * ) - * } - * ) - */ +use OpenApi\Attributes as OA; + +#[OA\Schema( + schema: 'Response' +)] +#[OA\Schema( + schema: 'BadResponse', + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property(property: 'status', example: 'failed'), + new OA\Property(property: 'error_message', example: 'Error description message'), + new OA\Property(property: 'error_code', example: '400', nullable: true), + new OA\Property(property: 'data', example: null), + ]), + ] +)] final class ApiResponseData { - /** - * @OA\Property( - * property="status", - * format="string", - * example="success", - * enum={"success", "failed"} - * ) - */ + #[OA\Property( + property: 'status', + format: 'string', + enum: ['success', 'failed'], + example: 'success' + )] private string $status = ''; - /** - * @OA\Property( - * property="error_message", - * format="string", - * example="" - * ) - */ + #[OA\Property( + property: 'error_message', + format: 'string', + example: '' + )] private string $errorMessage = ''; - /** - * @OA\Property( - * property="error_code", - * format="integer", - * nullable=true, - * example=null - * ) - */ + #[OA\Property( + property: 'error_code', + format: 'integer', + example: null, + nullable: true + )] private ?int $errorCode = null; - /** - * @OA\Property( - * property="data", - * type="object", - * nullable=true, - * ) - */ + #[OA\Property( + property: 'data', + type: 'object', + nullable: true + )] private ?array $data = null; public function getStatus(): string diff --git a/blog-api/src/Formatter/PaginatorFormatter.php b/blog-api/src/Formatter/PaginatorFormatter.php index 983c6eefe..88266c183 100644 --- a/blog-api/src/Formatter/PaginatorFormatter.php +++ b/blog-api/src/Formatter/PaginatorFormatter.php @@ -4,18 +4,17 @@ namespace App\Formatter; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; use Yiisoft\Data\Paginator\OffsetPaginator; -/** - * @OA\Schema( - * schema="Paginator", - * - * @OA\Property(example="10", property="pageSize", format="int"), - * @OA\Property(example="1", property="currentPage", format="int"), - * @OA\Property(example="3", property="totalPages", format="int"), - * ) - */ +#[OA\Schema( + schema: 'Paginator', + properties: [ + new OA\Property(property: 'pageSize', type: 'int', example: '10'), + new OA\Property(property: 'currentPage', type: 'int', example: '1'), + new OA\Property(property: 'totalPages', type: 'int', example: '3'), + ] +)] final class PaginatorFormatter { public function format(OffsetPaginator $paginator): array diff --git a/blog-api/src/InfoController.php b/blog-api/src/InfoController.php index 3ce6fafb5..5dbe11ff4 100644 --- a/blog-api/src/InfoController.php +++ b/blog-api/src/InfoController.php @@ -4,55 +4,39 @@ namespace App; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; use Psr\Http\Message\ResponseInterface; use Yiisoft\DataResponse\DataResponseFactoryInterface; -/** - * @OA\Info(title="Yii API application", version="1.0") - */ +#[OA\Info(version: '1.0', title: 'Yii API application')] class InfoController { public function __construct(private VersionProvider $versionProvider) { } - /** - * @OA\Get( - * path="/", - * summary="Returns info about the API", - * description="", - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="data", - * type="object", - * @OA\Property( - * property="version", - * type="string", - * example="3.0" - * ), - * @OA\Property( - * property="author", - * type="string", - * example="yiisoft" - * ), - * ), - * ), - * }, - * ) - * ), - * ) - */ + #[OA\Get( + path: '/', + description: '', + summary: 'Returns info about the API', + responses: [ + new OA\Response( + response:'200', + description:'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property(property: 'data', properties: [ + new OA\Property(property: 'version', type: 'string', example: '3.0'), + new OA\Property(property: 'author', type: 'string', example: 'yiisoft'), + ], type: 'object'), + ]), + ] + ), + ), + ] + )] public function index(DataResponseFactoryInterface $responseFactory): ResponseInterface { return $responseFactory->createResponse(['version' => $this->versionProvider->version, 'author' => 'yiisoft']); diff --git a/blog-api/src/Middleware/ExceptionMiddleware.php b/blog-api/src/Middleware/ExceptionMiddleware.php index 5e3a50214..c64128112 100644 --- a/blog-api/src/Middleware/ExceptionMiddleware.php +++ b/blog-api/src/Middleware/ExceptionMiddleware.php @@ -11,7 +11,7 @@ use Psr\Http\Server\RequestHandlerInterface; use Yiisoft\DataResponse\DataResponseFactoryInterface; use Yiisoft\Http\Status; -use Yiisoft\RequestModel\RequestValidationException; +use Yiisoft\Input\Http\InputValidationException; final class ExceptionMiddleware implements MiddlewareInterface { @@ -28,8 +28,8 @@ public function process(ServerRequestInterface $request, RequestHandlerInterface return $handler->handle($request); } catch (ApplicationException $e) { return $this->dataResponseFactory->createResponse($e->getMessage(), $e->getCode()); - } catch (RequestValidationException $e) { - return $this->dataResponseFactory->createResponse($e->getFirstError(), Status::BAD_REQUEST); + } catch (InputValidationException $e) { + return $this->dataResponseFactory->createResponse($e->getResult()->getErrorMessages()[0], Status::BAD_REQUEST); } } } diff --git a/blog-api/src/Queue/UserLoggedInMessage.php b/blog-api/src/Queue/UserLoggedInMessage.php index 99f879e34..141e7d3b5 100644 --- a/blog-api/src/Queue/UserLoggedInMessage.php +++ b/blog-api/src/Queue/UserLoggedInMessage.php @@ -4,7 +4,7 @@ namespace App\Queue; -use Yiisoft\Yii\Queue\Message\MessageInterface; +use Yiisoft\Queue\Message\MessageInterface; final class UserLoggedInMessage implements MessageInterface { diff --git a/blog-api/src/User/UserController.php b/blog-api/src/User/UserController.php index 4baea2f64..cbb63502c 100644 --- a/blog-api/src/User/UserController.php +++ b/blog-api/src/User/UserController.php @@ -6,17 +6,12 @@ use App\Exception\NotFoundException; use App\RestControllerTrait; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; use Psr\Http\Message\ResponseInterface; use Yiisoft\DataResponse\DataResponseFactoryInterface; -use Yiisoft\RequestModel\Attribute\Route; +use Yiisoft\Router\HydratorAttribute\RouteArgument; -/** - * @OA\Tag( - * name="user", - * description="Users" - * ) - */ +#[OA\Tag(name: 'user', description: 'User')] final class UserController { use RestControllerTrait; @@ -35,40 +30,37 @@ public function __construct( $this->userFormatter = $userFormatter; } - /** - * @OA\Get( - * tags={"user"}, - * path="/users", - * summary="Returns paginated users", - * description="", - * security={{"ApiKey": {}}}, - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="data", - * type="object", - * @OA\Property( - * property="users", - * type="array", - * - * @OA\Items(ref="#/components/schemas/User") - * ), - * ), - * ), - * }, - * ) - * ), - * ) - */ + #[OA\Get( + path: '/users/', + description: '', + summary: 'Returns paginated users', + security: [new OA\SecurityScheme(ref: '#/components/securitySchemes/ApiKey')], + tags: ['user'], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property( + property: 'data', + properties: [ + new OA\Property( + property: 'user', + type: 'array', + items: new OA\Items(ref: '#/components/schemas/User') + ), + ], + type: 'object' + ), + ]), + ] + ) + ), + ] + )] public function list(): ResponseInterface { $dataReader = $this->userRepository->findAllOrderByLogin(); @@ -84,48 +76,37 @@ public function list(): ResponseInterface ); } - /** - * @OA\Get( - * tags={"user"}, - * path="/users/{id}", - * summary="Returns a user with a given ID", - * description="", - * security={{"ApiKey": {}}}, - * - * @OA\Parameter( - * - * @OA\Schema(type="int", example="2"), - * in="path", - * name="id", - * parameter="id" - * ), - * - * @OA\Response( - * response="200", - * description="Success", - * - * @OA\JsonContent( - * allOf={ - * - * @OA\Schema(ref="#/components/schemas/Response"), - * @OA\Schema( - * - * @OA\Property( - * property="data", - * type="object", - * @OA\Property( - * property="user", - * type="object", - * ref="#/components/schemas/User" - * ), - * ), - * ), - * }, - * ) - * ), - * ) - */ - public function get(#[Route('id')] int $id): ResponseInterface + #[OA\Get( + path: '/users/{id}', + description: '', + summary: 'Returns a user with a given ID', + security: [new OA\SecurityScheme(ref: '#/components/securitySchemes/ApiKey')], + tags: ['user'], + parameters: [ + new OA\Parameter(parameter: 'id', name: 'id', in: 'path', example: 2), + ], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property( + property: 'data', + properties: [ + new OA\Property(property: 'user', ref: '#/components/schemas/User', type: 'object'), + ], + type: 'object' + ), + ]), + ] + ) + ), + ] + )] + public function get(#[RouteArgument('id')] int $id): ResponseInterface { /** * @var User $user diff --git a/blog-api/src/User/UserFormatter.php b/blog-api/src/User/UserFormatter.php index 115280f45..8a04fe594 100644 --- a/blog-api/src/User/UserFormatter.php +++ b/blog-api/src/User/UserFormatter.php @@ -4,16 +4,15 @@ namespace App\User; -use OpenApi\Annotations as OA; +use OpenApi\Attributes as OA; -/** - * @OA\Schema( - * schema="User", - * - * @OA\Property(example="UserName", property="login", format="string"), - * @OA\Property(example="13.12.2020 00:04:20", property="created_at", format="string"), - * ) - */ +#[OA\Schema( + schema: 'User', + properties: [ + new OA\Property(property: 'login', type: 'string', example: 'UserName'), + new OA\Property(property: 'created_at', type: 'string', example: '13.12.2020 00:04:20'), + ] +)] final class UserFormatter { public function format(User $user): array diff --git a/blog-api/src/User/UserRepository.php b/blog-api/src/User/UserRepository.php index 7dfb76b93..08c8446ee 100644 --- a/blog-api/src/User/UserRepository.php +++ b/blog-api/src/User/UserRepository.php @@ -6,25 +6,29 @@ use Cycle\ORM\ORMInterface; use Cycle\ORM\Select; -use Cycle\ORM\Transaction; use Yiisoft\Auth\IdentityInterface; use Yiisoft\Auth\IdentityRepositoryInterface; use Yiisoft\Auth\IdentityWithTokenRepositoryInterface; +use Yiisoft\Data\Cycle\Reader\EntityReader; +use Yiisoft\Data\Cycle\Writer\EntityWriter; use Yiisoft\Data\Reader\Sort; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; final class UserRepository extends Select\Repository implements IdentityWithTokenRepositoryInterface, IdentityRepositoryInterface { - private ORMInterface $orm; - - public function __construct(Select $select, ORMInterface $orm) - { - $this->orm = $orm; + public function __construct( + Select $select, + private ORMInterface $orm, + private EntityWriter $entityWriter, + ) { parent::__construct($select); } + /** + * @psalm-return EntityReader + */ public function findAllOrderByLogin(): EntityReader { + /** @psalm-var EntityReader */ return (new EntityReader($this->select())) ->withSort( Sort::only(['login'])->withOrderString('login') @@ -48,9 +52,7 @@ public function findByLogin(string $login): ?IdentityInterface public function save(IdentityInterface $user): void { - $transaction = new Transaction($this->orm); - $transaction->persist($user); - $transaction->run(); + $this->entityWriter->write([$user]); } private function findIdentityBy(string $field, string $value): ?IdentityInterface diff --git a/blog-api/src/User/UserRequest.php b/blog-api/src/User/UserRequest.php index 08c715aa5..3f3825461 100644 --- a/blog-api/src/User/UserRequest.php +++ b/blog-api/src/User/UserRequest.php @@ -5,15 +5,16 @@ namespace App\User; use Yiisoft\Auth\Middleware\Authentication; -use Yiisoft\RequestModel\RequestModel; +use Yiisoft\Input\Http\Attribute\Parameter\Request; +use Yiisoft\Input\Http\RequestInputInterface; -final class UserRequest extends RequestModel +final class UserRequest implements RequestInputInterface { + #[Request(Authentication::class)] + private User $user; + public function getUser(): User { - /** - * @var User $identity - */ - return $this->getAttributeValue('attributes.' . Authentication::class); + return $this->user; } } diff --git a/blog-api/src/User/UserService.php b/blog-api/src/User/UserService.php index 43ee5a397..b125d9e3f 100644 --- a/blog-api/src/User/UserService.php +++ b/blog-api/src/User/UserService.php @@ -11,22 +11,15 @@ use Yiisoft\Auth\IdentityRepositoryInterface; use Yiisoft\Definitions\Exception\InvalidConfigException; use Yiisoft\User\CurrentUser; -use Yiisoft\Yii\Queue\QueueFactoryInterface; +use Yiisoft\Queue\QueueFactoryInterface; final class UserService { - private IdentityRepositoryInterface $identityRepository; - private CurrentUser $currentUser; - private QueueFactoryInterface $queueFactory; - public function __construct( - CurrentUser $currentUser, - IdentityRepositoryInterface $identityRepository, - QueueFactoryInterface $queueFactory + private CurrentUser $currentUser, + private IdentityRepositoryInterface $identityRepository, + private QueueFactoryInterface $queueFactory, ) { - $this->currentUser = $currentUser; - $this->identityRepository = $identityRepository; - $this->queueFactory = $queueFactory; } /** @@ -40,7 +33,9 @@ public function __construct( */ public function login(string $login, string $password): IdentityInterface { - $identity = $this->identityRepository->findByLogin($login); + /** @var UserRepository $identityRepository */ + $identityRepository = $this->identityRepository; + $identity = $identityRepository->findByLogin($login); if ($identity === null) { throw new BadRequestException('No such user.'); } diff --git a/blog-api/tests/Acceptance.suite.yml b/blog-api/tests/Acceptance.suite.yml index 42dc406ff..d88211108 100644 --- a/blog-api/tests/Acceptance.suite.yml +++ b/blog-api/tests/Acceptance.suite.yml @@ -7,7 +7,7 @@ extensions: modules: enabled: - REST: - url: http://127.0.0.1:8881 + url: http://127.0.0.1:8881%BASE_URL% depends: PhpBrowser - Db: dsn: 'sqlite:tests/Support/Data/database.db' diff --git a/blog-api/tests/Acceptance/AuthCest.php b/blog-api/tests/Acceptance/AuthCest.php index 9b674f59c..2fe54ba8f 100644 --- a/blog-api/tests/Acceptance/AuthCest.php +++ b/blog-api/tests/Acceptance/AuthCest.php @@ -12,7 +12,6 @@ final class AuthCest { public function testAuth(AcceptanceTester $I): void { - $I->haveHttpHeader('Content-Type', 'application/json'); $I->sendPOST( '/auth/', [ diff --git a/blog-api/tests/Acceptance/BlogCest.php b/blog-api/tests/Acceptance/BlogCest.php index d68315881..044974db0 100644 --- a/blog-api/tests/Acceptance/BlogCest.php +++ b/blog-api/tests/Acceptance/BlogCest.php @@ -66,7 +66,7 @@ public function createBadParams(AcceptanceTester $I): void $I->seeResponseContainsJson( [ 'status' => 'failed', - 'error_message' => 'Value not passed.', + 'error_message' => 'Text not passed.', 'error_code' => 400, 'data' => null, ] diff --git a/blog-api/tests/Functional.suite.yml b/blog-api/tests/Functional.suite.yml index 289db8882..125f6c5bb 100644 --- a/blog-api/tests/Functional.suite.yml +++ b/blog-api/tests/Functional.suite.yml @@ -7,6 +7,6 @@ extensions: modules: enabled: - PhpBrowser: - url: http://127.0.0.1:8881 + url: http://127.0.0.1:8881%BASE_URL% - \App\Tests\Support\Helper\Functional step_decorators: ~ diff --git a/blog-api/tests/Functional/UserControllerTest.php b/blog-api/tests/Functional/IndexControllerTest.php similarity index 90% rename from blog-api/tests/Functional/UserControllerTest.php rename to blog-api/tests/Functional/IndexControllerTest.php index f9f056e9c..781f79ecd 100644 --- a/blog-api/tests/Functional/UserControllerTest.php +++ b/blog-api/tests/Functional/IndexControllerTest.php @@ -8,7 +8,7 @@ use PHPUnit\Framework\TestCase; use Yiisoft\Yii\Testing\FunctionalTester; -final class UserControllerTest extends TestCase +final class IndexControllerTest extends TestCase { private ?FunctionalTester $tester; @@ -17,7 +17,7 @@ protected function setUp(): void $this->tester = new FunctionalTester(); } - public function testGetIndex() + public function testGetIndex(): void { $method = 'GET'; $url = '/'; @@ -36,7 +36,7 @@ public function testGetIndex() ); } - public function testGetIndexMockVersion() + public function testGetIndexMockVersion(): void { $method = 'GET'; $url = '/'; diff --git a/blog-api/tests/Support/Data/database.db b/blog-api/tests/Support/Data/database.db index e0fa3d1db..6b81fc201 100644 Binary files a/blog-api/tests/Support/Data/database.db and b/blog-api/tests/Support/Data/database.db differ diff --git a/blog/.editorconfig b/blog/.editorconfig index 5e9a93ea5..8802775ba 100644 --- a/blog/.editorconfig +++ b/blog/.editorconfig @@ -10,6 +10,10 @@ indent_style = space indent_size = 4 trim_trailing_whitespace = true +[*.php] +ij_php_space_before_short_closure_left_parenthesis = false +ij_php_space_after_type_cast = true + [*.md] trim_trailing_whitespace = false diff --git a/blog/.env.test b/blog/.env.test index 454ab1431..76b1f81af 100644 --- a/blog/.env.test +++ b/blog/.env.test @@ -1,3 +1,4 @@ YII_ENV=test -YII_DEBUG=false +YII_DEBUG=true SENTRY_DSN= +BASE_URL=/ diff --git a/blog/.gitignore b/blog/.gitignore index 94819d1f3..6c3b40aad 100644 --- a/blog/.gitignore +++ b/blog/.gitignore @@ -23,7 +23,6 @@ phpunit.phar # evolving files /vendor -/composer.lock /node_modules # Codeception diff --git a/blog/Makefile b/blog/Makefile new file mode 100644 index 000000000..148afab89 --- /dev/null +++ b/blog/Makefile @@ -0,0 +1,24 @@ +init: composer-update npm-update up + +up: + docker-compose up -d +down: + docker-compose down + +composer: + docker-compose run php composer $(filter-out $@, $(MAKECMDGOALS)) +composer-update: + docker-compose run php composer update + +npm: + docker-compose run php npm $(filter-out $@, $(MAKECMDGOALS)) +npm-update: + docker-compose run php npm update + +yii3: + docker-compose run php ./yii $(filter-out $@, $(MAKECMDGOALS)) + +test: + docker-compose run php ./vendor/bin/codecept run +psalm: + docker-compose run php ./vendor/bin/psalm diff --git a/blog/README.md b/blog/README.md index e126bbf8b..126a39c39 100644 --- a/blog/README.md +++ b/blog/README.md @@ -6,7 +6,7 @@

-[Yii Framework] is a modern framework designed to be a solid foundation for your PHP application. +[Yii Framework](https://www.yiiframework.com/) is a modern framework designed to be a solid foundation for your PHP application. It's intended to show and test all Yii features. @@ -22,13 +22,21 @@ It's intended to show and test all Yii features. You'll need at least PHP 8.1. 1. Clone this repository. -2. Run `composer install` in your project root directory. +2. Run command in your project root directory. +```bash +composer install +``` 3. Run `./yii serve` (on Windows `yii serve`). The application will be started on http://localhost:8080/. +```bash +./yii serve +``` 4. Go to the index page. Cycle ORM will create tables, indexes and relations automatically in the configured DB for you. If you want to disable this behavior then comment out the line with the `Generator\SyncTables::class` in the `config/packges/yiisoft/yii-cycle/params.php`. In this case you should create migrations to sync changes that you have made to entities with the DB. -5. Run `./yii fixture/add 20` to create some random data. - +5. Run command to create some random data. +```bash +./yii fixture/add 20 +``` ## Console Console works out of the box and could be executed with `./yii`. @@ -36,16 +44,19 @@ Console works out of the box and could be executed with `./yii`. Some commands: ```bash -user/create -fixture/add [count] +./yii user/create login password +./yii fixture/add 10 ``` In order to register your own commands, add them to `console/params.php`, `console` → `commands` section. ## Web application -In order to run the web application, you can either use the built-in web server by running `./yii serve` or you could use a -real web server by pointing it to `/public/index.php`. +In order to run the web application, you can either use the built-in web server by running +```bash +./yii serve +``` + or you could use a real web server by pointing it to `/public/index.php`. More routes could be added by editing `src/Factory/AppRouterFactory`. @@ -54,7 +65,7 @@ More routes could be added by editing `src/Factory/AppRouterFactory`. The template comes with a ready to use [Codeception](https://codeception.com/) configuration. In order to execute tests run the following command: -``` +```bash composer run serve 127.0.0.1:8080 > ./runtime/yii.log 2>&1 & vendor/bin/codecept run ``` diff --git a/blog/composer.json b/blog/composer.json index 1243fb91c..d2a18c10e 100644 --- a/blog/composer.json +++ b/blog/composer.json @@ -16,21 +16,22 @@ "minimum-stability": "dev", "prefer-stable": true, "require": { - "php": "^8.1", + "php": "8.3.*", "ext-mbstring": "*", "ext-pdo_sqlite": "*", "cebe/markdown": "^1.2@dev", + "cycle/annotated": "^3.5", "cycle/database": "^2.0", "cycle/entity-behavior": "^1.0", "cycle/orm": "^2.0", "doctrine/collections": "^1.6", "fakerphp/faker": "^1.14", - "httpsoft/http-message": "^1.0.5", "olvlvl/composer-attribute-collector": "dev-main", + "httpsoft/http-message": "^1.1", "php-http/guzzle7-adapter": "^1.0", "psr/container": "^2.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1|^2.0", "psr/http-server-handler": "^1.0", "psr/http-server-middleware": "^1.0", "psr/log": "^3.0", @@ -43,25 +44,29 @@ "yiisoft/auth": "^3.0", "yiisoft/cache": "^3.0", "yiisoft/cache-file": "^3.0", - "yiisoft/config": "^1.0", + "yiisoft/config": "^1.3.1", "yiisoft/cookies": "^1.2", "yiisoft/csrf": "^2.0", - "yiisoft/data": "^1.0", + "yiisoft/data": "dev-master", + "yiisoft/data-cycle": "dev-master", "yiisoft/data-response": "^2.0", "yiisoft/definitions": "^3.0", "yiisoft/di": "^1.2", "yiisoft/error-handler": "^3.0", "yiisoft/factory": "^1.0", - "yiisoft/form": "^1.0@dev", + "yiisoft/form": "^1.0", + "yiisoft/form-model": "^1.0", "yiisoft/html": "^3.0", "yiisoft/http": "^1.2", "yiisoft/injector": "^1.0", + "yiisoft/input-http": "^1.0", "yiisoft/log": "^2.0", "yiisoft/log-target-file": "^3.0", "yiisoft/mailer": "^5.0", "yiisoft/mailer-symfony": "^3.0", + "yiisoft/middleware-dispatcher": "^5.2", "yiisoft/rate-limiter": "dev-master", - "yiisoft/request-model": "dev-master", + "yiisoft/request-provider": "^1.0", "yiisoft/rbac": "^1.0", "yiisoft/rbac-php": "^1.0", "yiisoft/rbac-rules-container": "^2.0", @@ -72,24 +77,25 @@ "yiisoft/translator": "^3.0", "yiisoft/translator-message-php": "^1.1.1", "yiisoft/user": "^2.0", - "yiisoft/validator": "^1.0", + "yiisoft/validator": "^2.0", "yiisoft/var-dumper": "^1.0", - "yiisoft/view": "^8.0", - "yiisoft/widget": "^2.0", + "yiisoft/view": "^10.0", + "yiisoft/widget": "^2.1", "yiisoft/yii-bootstrap5": "^3.0@dev", "yiisoft/yii-console": "^2.0", - "yiisoft/yii-cycle": "dev-master", + "yiisoft/yii-cycle": "^1.0", "yiisoft/yii-dataview": "^3.0@dev", - "yiisoft/yii-debug": "^3.0@dev", + "yiisoft/yii-debug": "dev-master", "yiisoft/yii-debug-api": "^3.0@dev", "yiisoft/yii-event": "^2.0", "yiisoft/yii-http": "^1.0", - "yiisoft/yii-middleware": "dev-master", + "yiisoft/yii-middleware": "^1.0.4", "yiisoft/yii-runner-console": "^2.0", "yiisoft/yii-runner-http": "^2.0", - "yiisoft/yii-sentry": "dev-master", - "yiisoft/yii-swagger": "^2.0", - "yiisoft/yii-view": "^6.0" + "yiisoft/yii-sentry": "^2.0.1", + "yiisoft/yii-swagger": "^2.1.1", + "yiisoft/yii-view-renderer": "^7.1", + "zircote/swagger-php": "^4.0" }, "require-dev": { "codeception/c3": "^2.6", @@ -99,12 +105,12 @@ "codeception/module-phpbrowser": "^3.0", "phpunit/phpunit": "^9.5", "roave/infection-static-analysis-plugin": "^1.16", - "roave/security-advisories": "dev-master", + "roave/security-advisories": "dev-latest", "spatie/phpunit-watcher": "^1.23", "vimeo/psalm": "^4.18", "yiisoft/translator-extractor": "^2.0", - "yiisoft/yii-debug-viewer": "^3.0@dev", - "yiisoft/yii-gii": "^3.0@dev", + "yiisoft/yii-debug-viewer": "dev-master", + "yiisoft/yii-gii": "dev-master", "yiisoft/yii-testing": "dev-master" }, "autoload": { @@ -155,7 +161,8 @@ "composer/package-versions-deprecated": true, "infection/extension-installer": true, "yiisoft/config": true, - "olvlvl/composer-attribute-collector": true + "olvlvl/composer-attribute-collector": true, + "php-http/discovery": false } }, "repositories": [ diff --git a/blog/composer.lock b/blog/composer.lock new file mode 100644 index 000000000..0098933d5 --- /dev/null +++ b/blog/composer.lock @@ -0,0 +1,18768 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "628abcc3114cb9c57125ac8e1459634b", + "packages": [ + { + "name": "alexkart/curl-builder", + "version": "1.0.8", + "source": { + "type": "git", + "url": "https://github.com/alexkart/curl-builder.git", + "reference": "626cf95a84a37b6e1643675f7fc4acfc2f90dbfb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/alexkart/curl-builder/zipball/626cf95a84a37b6e1643675f7fc4acfc2f90dbfb", + "reference": "626cf95a84a37b6e1643675f7fc4acfc2f90dbfb", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "psr/http-message": "^1.0" + }, + "require-dev": { + "nyholm/psr7": "^1.3", + "phan/phan": "^5.4", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Alexkart\\CurlBuilder\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alexander Kartavenko", + "email": "askemailbox@gmail.com" + } + ], + "description": "PSR-7 compatible curl builder.", + "support": { + "issues": "https://github.com/alexkart/curl-builder/issues", + "source": "https://github.com/alexkart/curl-builder/tree/1.0.8" + }, + "time": "2023-05-29T13:44:51+00:00" + }, + { + "name": "cebe/markdown", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/cebe/markdown.git", + "reference": "9bac5e971dd391e2802dca5400bbeacbaea9eb86" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cebe/markdown/zipball/9bac5e971dd391e2802dca5400bbeacbaea9eb86", + "reference": "9bac5e971dd391e2802dca5400bbeacbaea9eb86", + "shasum": "" + }, + "require": { + "lib-pcre": "*", + "php": ">=5.4.0" + }, + "require-dev": { + "cebe/indent": "*", + "facebook/xhprof": "*@dev", + "phpunit/phpunit": "4.1.*" + }, + "bin": [ + "bin/markdown" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "cebe\\markdown\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Carsten Brandt", + "email": "mail@cebe.cc", + "homepage": "http://cebe.cc/", + "role": "Creator" + } + ], + "description": "A super fast, highly extensible markdown parser for PHP", + "homepage": "https://github.com/cebe/markdown#readme", + "keywords": [ + "extensible", + "fast", + "gfm", + "markdown", + "markdown-extra" + ], + "support": { + "issues": "https://github.com/cebe/markdown/issues", + "source": "https://github.com/cebe/markdown" + }, + "time": "2018-03-26T11:24:36+00:00" + }, + { + "name": "clue/stream-filter", + "version": "v1.7.0", + "source": { + "type": "git", + "url": "https://github.com/clue/stream-filter.git", + "reference": "049509fef80032cb3f051595029ab75b49a3c2f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/stream-filter/zipball/049509fef80032cb3f051595029ab75b49a3c2f7", + "reference": "049509fef80032cb3f051595029ab75b49a3c2f7", + "shasum": "" + }, + "require": { + "php": ">=5.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "Clue\\StreamFilter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "A simple and modern approach to stream filtering in PHP", + "homepage": "https://github.com/clue/stream-filter", + "keywords": [ + "bucket brigade", + "callback", + "filter", + "php_user_filter", + "stream", + "stream_filter_append", + "stream_filter_register" + ], + "support": { + "issues": "https://github.com/clue/stream-filter/issues", + "source": "https://github.com/clue/stream-filter/tree/v1.7.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2023-12-20T15:40:13+00:00" + }, + { + "name": "cycle/annotated", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/annotated.git", + "reference": "4024d2ea9b5656cdd0bf4e79acc485dc063b8273" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/annotated/zipball/4024d2ea9b5656cdd0bf4e79acc485dc063b8273", + "reference": "4024d2ea9b5656cdd0bf4e79acc485dc063b8273", + "shasum": "" + }, + "require": { + "cycle/orm": "^2.7", + "cycle/schema-builder": "^2.8", + "doctrine/annotations": "^1.14.3 || ^2.0.1", + "doctrine/inflector": "^2.0", + "php": ">=8.0", + "spiral/attributes": "^2.8|^3.0", + "spiral/tokenizer": "^2.8|^3.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6", + "vimeo/psalm": "^4.30" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Annotated\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Cycle ORM Annotated Entities generator", + "support": { + "issues": "https://github.com/cycle/annotated/issues", + "source": "https://github.com/cycle/annotated/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://github.com/cycle", + "type": "github" + } + ], + "time": "2024-02-08T21:32:45+00:00" + }, + { + "name": "cycle/database", + "version": "2.11.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/database.git", + "reference": "5f3fe4fc198d607fc40110e2fdb36b3c1c4e10f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/database/zipball/5f3fe4fc198d607fc40110e2fdb36b3c1c4e10f7", + "reference": "5f3fe4fc198d607fc40110e2fdb36b3c1c4e10f7", + "shasum": "" + }, + "require": { + "ext-pdo": "*", + "php": ">=8.0", + "psr/log": "1 - 3", + "spiral/core": "^2.8 || ^3.0", + "spiral/pagination": "^2.8 || ^3.0", + "symfony/polyfill-php83": "^1.28" + }, + "conflict": { + "spiral/database": "*" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.42", + "infection/infection": "^0.26.10", + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^9.5", + "spiral/tokenizer": "^2.14 || ^3.0", + "vimeo/psalm": "^5.18" + }, + "type": "library", + "autoload": { + "files": [ + "src/polyfill.php", + "src/functions_polyfill.php" + ], + "psr-4": { + "Cycle\\Database\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + } + ], + "description": "DBAL, schema introspection, migration and pagination", + "homepage": "https://cycle-orm.dev", + "keywords": [ + "database", + "dbal", + "mssql", + "mysql", + "orm", + "postgresql", + "query-builder", + "sql", + "sqlite" + ], + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/database/issues", + "source": "https://github.com/cycle/database" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-06-11T11:30:02+00:00" + }, + { + "name": "cycle/entity-behavior", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/cycle/entity-behavior.git", + "reference": "9b7ad13a68a0ea0dca0399b7f44f20b691a18120" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/entity-behavior/zipball/9b7ad13a68a0ea0dca0399b7f44f20b691a18120", + "reference": "9b7ad13a68a0ea0dca0399b7f44f20b691a18120", + "shasum": "" + }, + "require": { + "cycle/orm": "^2.7", + "cycle/schema-builder": "^2.8", + "php": ">=8.0", + "psr/container": "^1.0|^2.0", + "psr/event-dispatcher": "^1", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "cycle/annotated": "^3.0", + "phpunit/phpunit": "^9.5", + "ramsey/uuid": "^4.5", + "spiral/tokenizer": "^2.8 || ^3.0", + "vimeo/psalm": "^5.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\ORM\\Entity\\Behavior\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Provides a collection of attributes that add behaviors to Cycle ORM entities", + "homepage": "https://cycle-orm.dev", + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/entity-behavior/issues", + "source": "https://github.com/cycle/entity-behavior" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-08-09T11:47:14+00:00" + }, + { + "name": "cycle/migrations", + "version": "v4.2.3", + "source": { + "type": "git", + "url": "https://github.com/cycle/migrations.git", + "reference": "434b08be175bf87f920651b9f6d91fc1cb7ed3ba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/migrations/zipball/434b08be175bf87f920651b9f6d91fc1cb7ed3ba", + "reference": "434b08be175bf87f920651b9f6d91fc1cb7ed3ba", + "shasum": "" + }, + "require": { + "cycle/database": "^2.7.0", + "php": ">=8.1", + "spiral/core": "^3.0", + "spiral/files": "^3.0", + "spiral/reactor": "^3.0", + "spiral/tokenizer": "^3.0" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "dev-master" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Migrations\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Database migrations, migration scaffolding", + "support": { + "issues": "https://github.com/cycle/migrations/issues", + "source": "https://github.com/cycle/migrations/tree/v4.2.3" + }, + "time": "2024-01-25T10:49:43+00:00" + }, + { + "name": "cycle/orm", + "version": "v2.9.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/orm.git", + "reference": "23023be5e8452c1e5b05417f9c4539db71d60927" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/orm/zipball/23023be5e8452c1e5b05417f9c4539db71d60927", + "reference": "23023be5e8452c1e5b05417f9c4539db71d60927", + "shasum": "" + }, + "require": { + "cycle/database": "^2.8.1", + "doctrine/instantiator": "^1.3.1 || ^2.0", + "ext-pdo": "*", + "php": ">=8.0", + "spiral/core": "^2.8 || ^3.0" + }, + "require-dev": { + "doctrine/collections": "^1.6 || ^2.0", + "illuminate/collections": "^8.0", + "loophp/collection": "^6.0 || ^7.0", + "mockery/mockery": "^1.1", + "phpunit/phpunit": "^9.5", + "ramsey/uuid": "^4.0", + "spiral/tokenizer": "^2.8 || ^3.0", + "symfony/var-dumper": "^5.2 || ^6.0 || ^7.0", + "vimeo/psalm": "5.21" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\ORM\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "PHP DataMapper ORM and Data Modelling Engine", + "homepage": "https://cycle-orm.dev", + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/orm/issues", + "source": "https://github.com/cycle/orm" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-06-05T13:14:36+00:00" + }, + { + "name": "cycle/schema-builder", + "version": "v2.9.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-builder.git", + "reference": "413af8fc8f93c6e48cebc76ab6c37c65fe2cab63" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-builder/zipball/413af8fc8f93c6e48cebc76ab6c37c65fe2cab63", + "reference": "413af8fc8f93c6e48cebc76ab6c37c65fe2cab63", + "shasum": "" + }, + "require": { + "cycle/database": "^2.7.1", + "cycle/orm": "^2.7", + "php": ">=8.0", + "yiisoft/friendly-exception": "^1.1" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "spiral/tokenizer": "^2.8", + "symfony/console": "^6.0 || ^7.0", + "vimeo/psalm": "^5.12" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Cycle\\Schema\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Cycle ORM Schema Builder", + "support": { + "issues": "https://github.com/cycle/schema-builder/issues", + "source": "https://github.com/cycle/schema-builder/tree/v2.9.0" + }, + "time": "2024-07-10T16:20:17+00:00" + }, + { + "name": "cycle/schema-migrations-generator", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-migrations-generator.git", + "reference": "94cb613ec77376cf880c9488daa3668b1f856e80" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-migrations-generator/zipball/94cb613ec77376cf880c9488daa3668b1f856e80", + "reference": "94cb613ec77376cf880c9488daa3668b1f856e80", + "shasum": "" + }, + "require": { + "cycle/database": "^2.4.1", + "cycle/migrations": "^4.2", + "cycle/schema-builder": "^2.0", + "php": ">=8.1" + }, + "require-dev": { + "cycle/annotated": "^3.0", + "cycle/orm": "^2.0", + "phpunit/phpunit": "^9.5", + "spiral/debug": "^3.0", + "spiral/framework": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Schema\\Generator\\Migrations\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Cycle ORM Migration generation", + "support": { + "issues": "https://github.com/cycle/schema-migrations-generator/issues", + "source": "https://github.com/cycle/schema-migrations-generator/tree/2.2.0" + }, + "time": "2023-11-02T09:24:12+00:00" + }, + { + "name": "cycle/schema-provider", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-provider.git", + "reference": "d6e800d6cd498cf1053522b6c2348f6eea587aae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-provider/zipball/d6e800d6cd498cf1053522b6c2348f6eea587aae", + "reference": "d6e800d6cd498cf1053522b6c2348f6eea587aae", + "shasum": "" + }, + "require": { + "cycle/orm": "^2.0", + "cycle/schema-renderer": "^1.2", + "php": ">=8.0", + "psr/container": "^1.0 || ^2.0", + "psr/simple-cache": "^2.0 || ^3.0", + "spiral/files": "^2.14 || ^3.11", + "webmozart/glob": "^4.6" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.48", + "phpunit/phpunit": "^9.6", + "roave/security-advisories": "dev-latest", + "vimeo/psalm": "^4.30.0 || ^5.21", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Schema\\Provider\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Buchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Cycle ORM Schema providers", + "homepage": "https://cycle-orm.dev", + "support": { + "chat": "https://discord.gg/spiralphp", + "docs": "https://cycle-orm.dev/docs", + "issues": "https://github.com/cycle/schema-provider/issues", + "source": "https://github.com/cycle/schema-provider" + }, + "funding": [ + { + "url": "https://github.com/sponsors/cycle", + "type": "github" + } + ], + "time": "2024-02-05T13:58:34+00:00" + }, + { + "name": "cycle/schema-renderer", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/cycle/schema-renderer.git", + "reference": "5c2b7977c2803c6c9bacc56064abda5ea2b273a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cycle/schema-renderer/zipball/5c2b7977c2803c6c9bacc56064abda5ea2b273a3", + "reference": "5c2b7977c2803c6c9bacc56064abda5ea2b273a3", + "shasum": "" + }, + "require": { + "cycle/orm": "1.2 - 2", + "php": ">=7.4" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "spiral/code-style": "^1.0", + "vimeo/psalm": "^4.10|^5.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cycle\\Schema\\Renderer\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Utils for Cycle ORM Schema rendering", + "support": { + "issues": "https://github.com/cycle/schema-renderer/issues", + "source": "https://github.com/cycle/schema-renderer/tree/1.2.0" + }, + "time": "2022-12-15T16:14:14+00:00" + }, + { + "name": "doctrine/annotations", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/annotations.git", + "reference": "901c2ee5d26eb64ff43c47976e114bf00843acf7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/901c2ee5d26eb64ff43c47976e114bf00843acf7", + "reference": "901c2ee5d26eb64ff43c47976e114bf00843acf7", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^2 || ^3", + "ext-tokenizer": "*", + "php": "^7.2 || ^8.0", + "psr/cache": "^1 || ^2 || ^3" + }, + "require-dev": { + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.10.28", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "symfony/cache": "^5.4 || ^6.4 || ^7", + "vimeo/psalm": "^4.30 || ^5.14" + }, + "suggest": { + "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "https://www.doctrine-project.org/projects/annotations.html", + "keywords": [ + "annotations", + "docblock", + "parser" + ], + "support": { + "issues": "https://github.com/doctrine/annotations/issues", + "source": "https://github.com/doctrine/annotations/tree/2.0.2" + }, + "time": "2024-09-05T10:17:24+00:00" + }, + { + "name": "doctrine/collections", + "version": "1.8.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/collections.git", + "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/collections/zipball/2b44dd4cbca8b5744327de78bafef5945c7e7b5e", + "reference": "2b44dd4cbca8b5744327de78bafef5945c7e7b5e", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^0.5.3 || ^1", + "php": "^7.1.3 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9.0 || ^10.0", + "phpstan/phpstan": "^1.4.8", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.1.5", + "vimeo/psalm": "^4.22" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Collections\\": "lib/Doctrine/Common/Collections" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Collections library that adds additional functionality on top of PHP arrays.", + "homepage": "https://www.doctrine-project.org/projects/collections.html", + "keywords": [ + "array", + "collections", + "iterators", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/collections/issues", + "source": "https://github.com/doctrine/collections/tree/1.8.0" + }, + "time": "2022-09-01T20:12:10+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "1.1.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", + "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpstan/phpstan": "1.4.10 || 1.10.15", + "phpstan/phpstan-phpunit": "^1.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "psalm/plugin-phpunit": "0.18.4", + "psr/log": "^1 || ^2 || ^3", + "vimeo/psalm": "4.30.0 || 5.12.0" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/1.1.3" + }, + "time": "2024-01-30T19:34:25+00:00" + }, + { + "name": "doctrine/inflector", + "version": "2.0.10", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/5817d0659c5b50c9b950feb9af7b9668e2c436bc", + "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^11.0", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.3", + "phpunit/phpunit": "^8.5 || ^9.5", + "vimeo/psalm": "^4.25 || ^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.10" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "type": "tidelift" + } + ], + "time": "2024-02-18T20:23:39+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^11", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "keywords": [ + "constructor", + "instantiate" + ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/2.0.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2022-12-30T00:23:10+00:00" + }, + { + "name": "doctrine/lexer", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^12", + "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^10.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.21" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/3.0.1" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2024-02-05T11:56:58+00:00" + }, + { + "name": "egulias/email-validator", + "version": "4.0.2", + "source": { + "type": "git", + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ebaaf5be6c0286928352e054f2d5125608e5405e", + "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^2.0 || ^3.0", + "php": ">=8.1", + "symfony/polyfill-intl-idn": "^1.26" + }, + "require-dev": { + "phpunit/phpunit": "^10.2", + "vimeo/psalm": "^5.12" + }, + "suggest": { + "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Egulias\\EmailValidator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Eduardo Gulias Davis" + } + ], + "description": "A library for validating emails against several RFCs", + "homepage": "https://github.com/egulias/EmailValidator", + "keywords": [ + "email", + "emailvalidation", + "emailvalidator", + "validation", + "validator" + ], + "support": { + "issues": "https://github.com/egulias/EmailValidator/issues", + "source": "https://github.com/egulias/EmailValidator/tree/4.0.2" + }, + "funding": [ + { + "url": "https://github.com/egulias", + "type": "github" + } + ], + "time": "2023-10-06T06:47:41+00:00" + }, + { + "name": "fakerphp/faker", + "version": "v1.23.1", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "bfb4fe148adbf78eff521199619b93a52ae3554b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/bfb4fe148adbf78eff521199619b93a52ae3554b", + "reference": "bfb4fe148adbf78eff521199619b93a52ae3554b", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "ext-intl": "*", + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" + }, + "suggest": { + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", + "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", + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "support": { + "issues": "https://github.com/FakerPHP/Faker/issues", + "source": "https://github.com/FakerPHP/Faker/tree/v1.23.1" + }, + "time": "2024-01-02T13:46:09+00:00" + }, + { + "name": "gitonomy/gitlib", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/gitonomy/gitlib.git", + "reference": "2c7fbbd9814178474d0bb1b6292701cb4ab508f9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/gitonomy/gitlib/zipball/2c7fbbd9814178474d0bb1b6292701cb4ab508f9", + "reference": "2c7fbbd9814178474d0bb1b6292701cb4ab508f9", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "php": "^8.0", + "symfony/polyfill-mbstring": "^1.7", + "symfony/process": "^5.4 || ^6.0 || ^7.0" + }, + "require-dev": { + "ext-fileinfo": "*", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^7.5.20 || ^8.5.20 || ^9.5.9", + "psr/log": "^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Gitonomy\\Git\\": "src/Gitonomy/Git/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Julien Didier", + "email": "genzo.wm@gmail.com", + "homepage": "https://github.com/juliendidier" + }, + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info", + "homepage": "https://github.com/lyrixx" + }, + { + "name": "Alexandre Salomé", + "email": "alexandre.salome@gmail.com", + "homepage": "https://github.com/alexandresalome" + } + ], + "description": "Library for accessing git", + "support": { + "issues": "https://github.com/gitonomy/gitlib/issues", + "source": "https://github.com/gitonomy/gitlib/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/gitonomy/gitlib", + "type": "tidelift" + } + ], + "time": "2023-12-20T13:02:08+00:00" + }, + { + "name": "graham-campbell/result-type", + "version": "v1.1.3", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/3ba905c11371512af9d9bdd27d99b782216b6945", + "reference": "3ba905c11371512af9d9bdd27d99b782216b6945", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:45:45+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "7.9.2", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b", + "reference": "d281ed313b989f213357e3be1a179f02196ac99b", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.5.3 || ^2.0.3", + "guzzlehttp/psr7": "^2.7.0", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-curl": "*", + "guzzle/client-integration-tests": "3.0.2", + "php-http/message-factory": "^1.1", + "phpunit/phpunit": "^8.5.39 || ^9.6.20", + "psr/log": "^1.1 || ^2.0 || ^3.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.9.2" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", + "type": "tidelift" + } + ], + "time": "2024-07-24T11:22:20+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", + "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", + "type": "tidelift" + } + ], + "time": "2024-07-18T10:29:17+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "2.7.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1 || ^2.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "http-interop/http-factory-tests": "0.9.0", + "phpunit/phpunit": "^8.5.39 || ^9.6.20" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "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/2.7.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", + "type": "tidelift" + } + ], + "time": "2024-07-18T11:15:46+00:00" + }, + { + "name": "http-interop/http-factory-guzzle", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/http-interop/http-factory-guzzle.git", + "reference": "8f06e92b95405216b237521cc64c804dd44c4a81" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/http-interop/http-factory-guzzle/zipball/8f06e92b95405216b237521cc64c804dd44c4a81", + "reference": "8f06e92b95405216b237521cc64c804dd44c4a81", + "shasum": "" + }, + "require": { + "guzzlehttp/psr7": "^1.7||^2.0", + "php": ">=7.3", + "psr/http-factory": "^1.0" + }, + "provide": { + "psr/http-factory-implementation": "^1.0" + }, + "require-dev": { + "http-interop/http-factory-tests": "^0.9", + "phpunit/phpunit": "^9.5" + }, + "suggest": { + "guzzlehttp/psr7": "Includes an HTTP factory starting in version 2.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Http\\Factory\\Guzzle\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "An HTTP Factory using Guzzle PSR7", + "keywords": [ + "factory", + "http", + "psr-17", + "psr-7" + ], + "support": { + "issues": "https://github.com/http-interop/http-factory-guzzle/issues", + "source": "https://github.com/http-interop/http-factory-guzzle/tree/1.2.0" + }, + "time": "2021-07-21T13:50:14+00:00" + }, + { + "name": "httpsoft/http-message", + "version": "1.1.6", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-message.git", + "reference": "f6c88e2189b9f75f10dfaeb0a85c56ea04a53c19" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-message/zipball/f6c88e2189b9f75f10dfaeb0a85c56ea04a53c19", + "reference": "f6c88e2189b9f75f10dfaeb0a85c56ea04a53c19", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1|^2.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "php-http/psr7-integration-tests": "^1.3", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Strict and fast implementation of PSR-7 and PSR-17", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-message", + "php", + "psr-17", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/message", + "issues": "https://github.com/httpsoft/http-message/issues", + "source": "https://github.com/httpsoft/http-message" + }, + "time": "2024-08-09T07:13:21+00:00" + }, + { + "name": "jean85/pretty-package-versions", + "version": "2.0.6", + "source": { + "type": "git", + "url": "https://github.com/Jean85/pretty-package-versions.git", + "reference": "f9fdd29ad8e6d024f52678b570e5593759b550b4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Jean85/pretty-package-versions/zipball/f9fdd29ad8e6d024f52678b570e5593759b550b4", + "reference": "f9fdd29ad8e6d024f52678b570e5593759b550b4", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2.0.0", + "php": "^7.1|^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.2", + "jean85/composer-provided-replaced-stub-package": "^1.0", + "phpstan/phpstan": "^1.4", + "phpunit/phpunit": "^7.5|^8.5|^9.4", + "vimeo/psalm": "^4.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Jean85\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alessandro Lai", + "email": "alessandro.lai85@gmail.com" + } + ], + "description": "A library to get pretty versions strings of installed dependencies", + "keywords": [ + "composer", + "package", + "release", + "versions" + ], + "support": { + "issues": "https://github.com/Jean85/pretty-package-versions/issues", + "source": "https://github.com/Jean85/pretty-package-versions/tree/2.0.6" + }, + "time": "2024-03-08T09:58:59+00:00" + }, + { + "name": "jetbrains/phpstorm-attributes", + "version": "1.1", + "source": { + "type": "git", + "url": "https://github.com/JetBrains/phpstorm-attributes.git", + "reference": "22fb28d679deceedba8366dbae65cc8ebfc17e26" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/JetBrains/phpstorm-attributes/zipball/22fb28d679deceedba8366dbae65cc8ebfc17e26", + "reference": "22fb28d679deceedba8366dbae65cc8ebfc17e26", + "shasum": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "JetBrains\\PhpStorm\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "JetBrains", + "homepage": "https://www.jetbrains.com" + } + ], + "description": "PhpStorm specific attributes", + "keywords": [ + "attributes", + "jetbrains", + "phpstorm" + ], + "support": { + "issues": "https://youtrack.jetbrains.com/newIssue?project=WI", + "source": "https://github.com/JetBrains/phpstorm-attributes/tree/1.1" + }, + "time": "2023-09-01T08:50:25+00:00" + }, + { + "name": "nette/php-generator", + "version": "v4.1.6", + "source": { + "type": "git", + "url": "https://github.com/nette/php-generator.git", + "reference": "c90961e782ae86e517fe5ed732eb2b512945565b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/php-generator/zipball/c90961e782ae86e517fe5ed732eb2b512945565b", + "reference": "c90961e782ae86e517fe5ed732eb2b512945565b", + "shasum": "" + }, + "require": { + "nette/utils": "^3.2.9 || ^4.0", + "php": "8.0 - 8.4" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "dev-master", + "nette/tester": "^2.4", + "nikic/php-parser": "^4.18 || ^5.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.8" + }, + "suggest": { + "nikic/php-parser": "to use ClassType::from(withBodies: true) & ClassType::fromCode()" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.1-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.3 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/v4.1.6" + }, + "time": "2024-09-10T09:31:55+00:00" + }, + { + "name": "nette/utils", + "version": "v4.0.5", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "shasum": "" + }, + "require": { + "php": "8.0 - 8.4" + }, + "conflict": { + "nette/finder": "<3", + "nette/schema": "<1.2.2" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "dev-master", + "nette/tester": "^2.5", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.9" + }, + "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()" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-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/v4.0.5" + }, + "time": "2024-08-07T15:39:19+00:00" + }, + { + "name": "nikic/fast-route", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/FastRoute.git", + "reference": "181d480e08d9476e61381e04a71b34dc0432e812" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/FastRoute/zipball/181d480e08d9476e61381e04a71b34dc0432e812", + "reference": "181d480e08d9476e61381e04a71b34dc0432e812", + "shasum": "" + }, + "require": { + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35|~5.7" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "FastRoute\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov", + "email": "nikic@php.net" + } + ], + "description": "Fast request router for PHP", + "keywords": [ + "router", + "routing" + ], + "support": { + "issues": "https://github.com/nikic/FastRoute/issues", + "source": "https://github.com/nikic/FastRoute/tree/master" + }, + "time": "2018-02-13T20:26:39+00:00" + }, + { + "name": "php-http/client-common", + "version": "2.7.1", + "source": { + "type": "git", + "url": "https://github.com/php-http/client-common.git", + "reference": "1e19c059b0e4d5f717bf5d524d616165aeab0612" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/client-common/zipball/1e19c059b0e4d5f717bf5d524d616165aeab0612", + "reference": "1e19c059b0e4d5f717bf5d524d616165aeab0612", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0", + "php-http/httplug": "^2.0", + "php-http/message": "^1.6", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0 || ^2.0", + "symfony/options-resolver": "~4.0.15 || ~4.1.9 || ^4.2.1 || ^5.0 || ^6.0 || ^7.0", + "symfony/polyfill-php80": "^1.17" + }, + "require-dev": { + "doctrine/instantiator": "^1.1", + "guzzlehttp/psr7": "^1.4", + "nyholm/psr7": "^1.2", + "phpspec/phpspec": "^5.1 || ^6.3 || ^7.1", + "phpspec/prophecy": "^1.10.2", + "phpunit/phpunit": "^7.5.20 || ^8.5.33 || ^9.6.7" + }, + "suggest": { + "ext-json": "To detect JSON responses with the ContentTypePlugin", + "ext-libxml": "To detect XML responses with the ContentTypePlugin", + "php-http/cache-plugin": "PSR-6 Cache plugin", + "php-http/logger-plugin": "PSR-3 Logger plugin", + "php-http/stopwatch-plugin": "Symfony Stopwatch plugin" + }, + "type": "library", + "autoload": { + "psr-4": { + "Http\\Client\\Common\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Common HTTP Client implementations and tools for HTTPlug", + "homepage": "http://httplug.io", + "keywords": [ + "client", + "common", + "http", + "httplug" + ], + "support": { + "issues": "https://github.com/php-http/client-common/issues", + "source": "https://github.com/php-http/client-common/tree/2.7.1" + }, + "time": "2023-11-30T10:31:25+00:00" + }, + { + "name": "php-http/discovery", + "version": "1.19.4", + "source": { + "type": "git", + "url": "https://github.com/php-http/discovery.git", + "reference": "0700efda8d7526335132360167315fdab3aeb599" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/discovery/zipball/0700efda8d7526335132360167315fdab3aeb599", + "reference": "0700efda8d7526335132360167315fdab3aeb599", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0|^2.0", + "php": "^7.1 || ^8.0" + }, + "conflict": { + "nyholm/psr7": "<1.0", + "zendframework/zend-diactoros": "*" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "*", + "psr/http-factory-implementation": "*", + "psr/http-message-implementation": "*" + }, + "require-dev": { + "composer/composer": "^1.0.2|^2.0", + "graham-campbell/phpspec-skip-example-extension": "^5.0", + "php-http/httplug": "^1.0 || ^2.0", + "php-http/message-factory": "^1.0", + "phpspec/phpspec": "^5.1 || ^6.1 || ^7.3", + "sebastian/comparator": "^3.0.5 || ^4.0.8", + "symfony/phpunit-bridge": "^6.4.4 || ^7.0.1" + }, + "type": "composer-plugin", + "extra": { + "class": "Http\\Discovery\\Composer\\Plugin", + "plugin-optional": true + }, + "autoload": { + "psr-4": { + "Http\\Discovery\\": "src/" + }, + "exclude-from-classmap": [ + "src/Composer/Plugin.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations", + "homepage": "http://php-http.org", + "keywords": [ + "adapter", + "client", + "discovery", + "factory", + "http", + "message", + "psr17", + "psr7" + ], + "support": { + "issues": "https://github.com/php-http/discovery/issues", + "source": "https://github.com/php-http/discovery/tree/1.19.4" + }, + "time": "2024-03-29T13:00:05+00:00" + }, + { + "name": "php-http/guzzle7-adapter", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/guzzle7-adapter.git", + "reference": "fb075a71dbfa4847cf0c2938c4e5a9c478ef8b01" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/guzzle7-adapter/zipball/fb075a71dbfa4847cf0c2938c4e5a9c478ef8b01", + "reference": "fb075a71dbfa4847cf0c2938c4e5a9c478ef8b01", + "shasum": "" + }, + "require": { + "guzzlehttp/guzzle": "^7.0", + "php": "^7.2 | ^8.0", + "php-http/httplug": "^2.0", + "psr/http-client": "^1.0" + }, + "provide": { + "php-http/async-client-implementation": "1.0", + "php-http/client-implementation": "1.0", + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.0|^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Adapter\\Guzzle7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com" + } + ], + "description": "Guzzle 7 HTTP Adapter", + "homepage": "http://httplug.io", + "keywords": [ + "Guzzle", + "http" + ], + "support": { + "issues": "https://github.com/php-http/guzzle7-adapter/issues", + "source": "https://github.com/php-http/guzzle7-adapter/tree/1.0.0" + }, + "time": "2021-03-09T07:35:15+00:00" + }, + { + "name": "php-http/httplug", + "version": "2.4.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/httplug.git", + "reference": "625ad742c360c8ac580fcc647a1541d29e257f67" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/httplug/zipball/625ad742c360c8ac580fcc647a1541d29e257f67", + "reference": "625ad742c360c8ac580fcc647a1541d29e257f67", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0", + "php-http/promise": "^1.1", + "psr/http-client": "^1.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "require-dev": { + "friends-of-phpspec/phpspec-code-coverage": "^4.1 || ^5.0 || ^6.0", + "phpspec/phpspec": "^5.1 || ^6.0 || ^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Eric GELOEN", + "email": "geloen.eric@gmail.com" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "description": "HTTPlug, the HTTP client abstraction for PHP", + "homepage": "http://httplug.io", + "keywords": [ + "client", + "http" + ], + "support": { + "issues": "https://github.com/php-http/httplug/issues", + "source": "https://github.com/php-http/httplug/tree/2.4.0" + }, + "time": "2023-04-14T15:10:03+00:00" + }, + { + "name": "php-http/message", + "version": "1.16.1", + "source": { + "type": "git", + "url": "https://github.com/php-http/message.git", + "reference": "5997f3289332c699fa2545c427826272498a2088" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/message/zipball/5997f3289332c699fa2545c427826272498a2088", + "reference": "5997f3289332c699fa2545c427826272498a2088", + "shasum": "" + }, + "require": { + "clue/stream-filter": "^1.5", + "php": "^7.2 || ^8.0", + "psr/http-message": "^1.1 || ^2.0" + }, + "provide": { + "php-http/message-factory-implementation": "1.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.6", + "ext-zlib": "*", + "guzzlehttp/psr7": "^1.0 || ^2.0", + "laminas/laminas-diactoros": "^2.0 || ^3.0", + "php-http/message-factory": "^1.0.2", + "phpspec/phpspec": "^5.1 || ^6.3 || ^7.1", + "slim/slim": "^3.0" + }, + "suggest": { + "ext-zlib": "Used with compressor/decompressor streams", + "guzzlehttp/psr7": "Used with Guzzle PSR-7 Factories", + "laminas/laminas-diactoros": "Used with Diactoros Factories", + "slim/slim": "Used with Slim Framework PSR-7 implementation" + }, + "type": "library", + "autoload": { + "files": [ + "src/filters.php" + ], + "psr-4": { + "Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "HTTP Message related tools", + "homepage": "http://php-http.org", + "keywords": [ + "http", + "message", + "psr-7" + ], + "support": { + "issues": "https://github.com/php-http/message/issues", + "source": "https://github.com/php-http/message/tree/1.16.1" + }, + "time": "2024-03-07T13:22:09+00:00" + }, + { + "name": "php-http/message-factory", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-http/message-factory.git", + "reference": "4d8778e1c7d405cbb471574821c1ff5b68cc8f57" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/message-factory/zipball/4d8778e1c7d405cbb471574821c1ff5b68cc8f57", + "reference": "4d8778e1c7d405cbb471574821c1ff5b68cc8f57", + "shasum": "" + }, + "require": { + "php": ">=5.4", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Factory interfaces for PSR-7 HTTP Message", + "homepage": "http://php-http.org", + "keywords": [ + "factory", + "http", + "message", + "stream", + "uri" + ], + "support": { + "issues": "https://github.com/php-http/message-factory/issues", + "source": "https://github.com/php-http/message-factory/tree/1.1.0" + }, + "abandoned": "psr/http-factory", + "time": "2023-04-14T14:16:17+00:00" + }, + { + "name": "php-http/promise", + "version": "1.3.1", + "source": { + "type": "git", + "url": "https://github.com/php-http/promise.git", + "reference": "fc85b1fba37c169a69a07ef0d5a8075770cc1f83" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-http/promise/zipball/fc85b1fba37c169a69a07ef0d5a8075770cc1f83", + "reference": "fc85b1fba37c169a69a07ef0d5a8075770cc1f83", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "friends-of-phpspec/phpspec-code-coverage": "^4.3.2 || ^6.3", + "phpspec/phpspec": "^5.1.2 || ^6.2 || ^7.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Http\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Joel Wurtz", + "email": "joel.wurtz@gmail.com" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com" + } + ], + "description": "Promise used for asynchronous HTTP requests", + "homepage": "http://httplug.io", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/php-http/promise/issues", + "source": "https://github.com/php-http/promise/tree/1.3.1" + }, + "time": "2024-03-15T13:55:21+00:00" + }, + { + "name": "phpoption/phpoption", + "version": "1.9.3", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/e3fac8b24f56113f7cb96af14958c0dd16330f54", + "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28" + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "1.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.9.3" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:41:07+00:00" + }, + { + "name": "psr/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client" + }, + "time": "2023-09-23T14:17:50+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "psr/http-message": "^1.0 || ^2.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": "https://www.php-fig.org/" + } + ], + "description": "PSR-17: 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" + }, + "time": "2024-04-15T12:06:14+00:00" + }, + { + "name": "psr/http-message", + "version": "1.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1.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 interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/1.1" + }, + "time": "2023-04-04T09:50:52+00:00" + }, + { + "name": "psr/http-server-handler", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-server-handler.git", + "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-server-handler/zipball/84c4fb66179be4caaf8e97bd239203245302e7d4", + "reference": "84c4fb66179be4caaf8e97bd239203245302e7d4", + "shasum": "" + }, + "require": { + "php": ">=7.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Server\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP server-side request handler", + "keywords": [ + "handler", + "http", + "http-interop", + "psr", + "psr-15", + "psr-7", + "request", + "response", + "server" + ], + "support": { + "source": "https://github.com/php-fig/http-server-handler/tree/1.0.2" + }, + "time": "2023-04-10T20:06:20+00:00" + }, + { + "name": "psr/http-server-middleware", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-server-middleware.git", + "reference": "c1481f747daaa6a0782775cd6a8c26a1bf4a3829" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-server-middleware/zipball/c1481f747daaa6a0782775cd6a8c26a1bf4a3829", + "reference": "c1481f747daaa6a0782775cd6a8c26a1bf4a3829", + "shasum": "" + }, + "require": { + "php": ">=7.0", + "psr/http-message": "^1.0 || ^2.0", + "psr/http-server-handler": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Server\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP server-side middleware", + "keywords": [ + "http", + "http-interop", + "middleware", + "psr", + "psr-15", + "psr-7", + "request", + "response" + ], + "support": { + "issues": "https://github.com/php-fig/http-server-middleware/issues", + "source": "https://github.com/php-fig/http-server-middleware/tree/1.0.2" + }, + "time": "2023-04-11T06:14:47+00:00" + }, + { + "name": "psr/log", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/3.0.2" + }, + "time": "2024-09-11T13:17:53+00:00" + }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" + }, + "time": "2021-10-29T13:26:27+00:00" + }, + { + "name": "ralouphie/getallheaders", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" + }, + "type": "library", + "autoload": { + "files": [ + "src/getallheaders.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" + } + ], + "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, + "time": "2019-03-08T08:55:37+00:00" + }, + { + "name": "sentry/sdk", + "version": "3.6.0", + "source": { + "type": "git", + "url": "https://github.com/getsentry/sentry-php-sdk.git", + "reference": "24c235ff2027401cbea099bf88689e1a1f197c7a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/getsentry/sentry-php-sdk/zipball/24c235ff2027401cbea099bf88689e1a1f197c7a", + "reference": "24c235ff2027401cbea099bf88689e1a1f197c7a", + "shasum": "" + }, + "require": { + "http-interop/http-factory-guzzle": "^1.0", + "sentry/sentry": "^3.22", + "symfony/http-client": "^4.3|^5.0|^6.0|^7.0" + }, + "type": "metapackage", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Sentry", + "email": "accounts@sentry.io" + } + ], + "description": "This is a metapackage shipping sentry/sentry with a recommended HTTP client.", + "homepage": "http://sentry.io", + "keywords": [ + "crash-reporting", + "crash-reports", + "error-handler", + "error-monitoring", + "log", + "logging", + "sentry" + ], + "support": { + "issues": "https://github.com/getsentry/sentry-php-sdk/issues", + "source": "https://github.com/getsentry/sentry-php-sdk/tree/3.6.0" + }, + "funding": [ + { + "url": "https://sentry.io/", + "type": "custom" + }, + { + "url": "https://sentry.io/pricing/", + "type": "custom" + } + ], + "time": "2023-12-04T10:49:33+00:00" + }, + { + "name": "sentry/sentry", + "version": "3.22.1", + "source": { + "type": "git", + "url": "https://github.com/getsentry/sentry-php.git", + "reference": "8859631ba5ab15bc1af420b0eeed19ecc6c9d81d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/8859631ba5ab15bc1af420b0eeed19ecc6c9d81d", + "reference": "8859631ba5ab15bc1af420b0eeed19ecc6c9d81d", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "guzzlehttp/promises": "^1.5.3|^2.0", + "jean85/pretty-package-versions": "^1.5|^2.0.4", + "php": "^7.2|^8.0", + "php-http/async-client-implementation": "^1.0", + "php-http/client-common": "^1.5|^2.0", + "php-http/discovery": "^1.15", + "php-http/httplug": "^1.1|^2.0", + "php-http/message": "^1.5", + "php-http/message-factory": "^1.1", + "psr/http-factory": "^1.0", + "psr/http-factory-implementation": "^1.0", + "psr/log": "^1.0|^2.0|^3.0", + "symfony/options-resolver": "^3.4.43|^4.4.30|^5.0.11|^6.0|^7.0", + "symfony/polyfill-php80": "^1.17" + }, + "conflict": { + "php-http/client-common": "1.8.0", + "raven/raven": "*" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.19|3.4.*", + "guzzlehttp/psr7": "^1.8.4|^2.1.1", + "http-interop/http-factory-guzzle": "^1.0", + "monolog/monolog": "^1.6|^2.0|^3.0", + "nikic/php-parser": "^4.10.3", + "php-http/mock-client": "^1.3", + "phpbench/phpbench": "^1.0", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.3", + "phpstan/phpstan-phpunit": "^1.0", + "phpunit/phpunit": "^8.5.14|^9.4", + "symfony/phpunit-bridge": "^5.2|^6.0", + "vimeo/psalm": "^4.17" + }, + "suggest": { + "monolog/monolog": "Allow sending log messages to Sentry by using the included Monolog handler." + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Sentry\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Sentry", + "email": "accounts@sentry.io" + } + ], + "description": "A PHP SDK for Sentry (http://sentry.io)", + "homepage": "http://sentry.io", + "keywords": [ + "crash-reporting", + "crash-reports", + "error-handler", + "error-monitoring", + "log", + "logging", + "sentry" + ], + "support": { + "issues": "https://github.com/getsentry/sentry-php/issues", + "source": "https://github.com/getsentry/sentry-php/tree/3.22.1" + }, + "funding": [ + { + "url": "https://sentry.io/", + "type": "custom" + }, + { + "url": "https://sentry.io/pricing/", + "type": "custom" + } + ], + "time": "2023-11-13T11:47:28+00:00" + }, + { + "name": "spiral/attributes", + "version": "v3.1.7", + "source": { + "type": "git", + "url": "https://github.com/spiral/attributes.git", + "reference": "fc6657de4ed83913c7f02241e5fe4e8e799af8fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/attributes/zipball/fc6657de4ed83913c7f02241e5fe4e8e799af8fa", + "reference": "fc6657de4ed83913c7f02241e5fe4e8e799af8fa", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/cache": "1 - 3", + "psr/simple-cache": "1 - 3" + }, + "require-dev": { + "doctrine/annotations": "^1.14 || ^2.0", + "jetbrains/phpstorm-attributes": "^1.0", + "phpunit/phpunit": "^9.5.20", + "vimeo/psalm": "^5.17" + }, + "type": "library", + "autoload": { + "files": [ + "src/polyfill.php" + ], + "psr-4": { + "Spiral\\Attributes\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + }, + { + "name": "Kirill Nesmeyanov (SerafimArts)", + "email": "kirill.nesmeyanov@spiralscout.com" + } + ], + "description": "PHP attributes reader", + "homepage": "https://spiral.dev", + "keywords": [ + "annotations", + "attributes", + "metadata" + ], + "support": { + "chat": "https://discord.gg/V6EK4he", + "docs": "https://spiral.dev/docs", + "forum": "https://forum.spiral.dev", + "issues": "https://github.com/spiral/attributes/issues", + "source": "https://github.com/spiral/attributes" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-08-22T10:18:52+00:00" + }, + { + "name": "spiral/core", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/spiral/core.git", + "reference": "53bec6e433d709f59ef6c0ce966f4a640c4d1bad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/core/zipball/53bec6e433d709f59ef6c0ce966f4a640c4d1bad", + "reference": "53bec6e433d709f59ef6c0ce966f4a640c4d1bad", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0" + }, + "provide": { + "psr/container-implementation": "^1.1|^2.0" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Core\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "IoC container, IoC scopes, factory, memory, configuration interfaces", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/core" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-10T16:54:43+00:00" + }, + { + "name": "spiral/files", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/files.git", + "reference": "0c394e058ee994b6d18a229dcbe310e4de3a2b7a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/files/zipball/0c394e058ee994b6d18a229dcbe310e4de3a2b7a", + "reference": "0c394e058ee994b6d18a229dcbe310e4de3a2b7a", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Files\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "File Toolkit: atomic file manager", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/files" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-03T16:58:09+00:00" + }, + { + "name": "spiral/logger", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/logger.git", + "reference": "146fbf7fb320ea4708f5158e21f8fd4d48aa5b0e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/logger/zipball/146fbf7fb320ea4708f5158e21f8fd4d48aa5b0e", + "reference": "146fbf7fb320ea4708f5158e21f8fd4d48aa5b0e", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/log": "1 - 3", + "spiral/core": "^3.14.3" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Logger\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "LogFactory and global log listeners", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/logger" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-11T17:40:26+00:00" + }, + { + "name": "spiral/pagination", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/pagination.git", + "reference": "93c9d93c811b4ec6037491e516c3e194fdc94848" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/pagination/zipball/93c9d93c811b4ec6037491e516c3e194fdc94848", + "reference": "93c9d93c811b4ec6037491e516c3e194fdc94848", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Pagination\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Common pagination interfaces", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/pagination" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-03T16:59:10+00:00" + }, + { + "name": "spiral/reactor", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/reactor.git", + "reference": "74639a44ced7eb289820fdcca96ff9322f79f882" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/reactor/zipball/74639a44ced7eb289820fdcca96ff9322f79f882", + "reference": "74639a44ced7eb289820fdcca96ff9322f79f882", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^1.4|^2.0", + "nette/php-generator": "^4.1.2", + "php": ">=8.1", + "spiral/files": "^3.14.3" + }, + "require-dev": { + "mockery/mockery": "^1.5", + "phpunit/phpunit": "^10.1", + "psr/container": "^1.1|^2.0", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Reactor\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Reactor: Code Scaffolding", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/reactor" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-11T17:40:25+00:00" + }, + { + "name": "spiral/tokenizer", + "version": "3.14.3", + "source": { + "type": "git", + "url": "https://github.com/spiral/tokenizer.git", + "reference": "b5bf2ed89880d91c228bf1e3ebfda2b508c008ff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spiral/tokenizer/zipball/b5bf2ed89880d91c228bf1e3ebfda2b508c008ff", + "reference": "b5bf2ed89880d91c228bf1e3ebfda2b508c008ff", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=8.1", + "spiral/core": "^3.14.3", + "spiral/logger": "^3.14.3", + "symfony/finder": "^5.3.7 || ^6.0 || ^7.0" + }, + "require-dev": { + "mockery/mockery": "^1.6", + "phpunit/phpunit": "^10.1", + "spiral/attributes": "^2.8|^3.0", + "spiral/boot": "^3.14.3", + "spiral/files": "^3.14.3", + "vimeo/psalm": "^5.9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.15.x-dev" + } + }, + "autoload": { + "psr-4": { + "Spiral\\Tokenizer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Anton Titov (wolfy-j)", + "email": "wolfy-j@spiralscout.com" + }, + { + "name": "Pavel Butchnev (butschster)", + "email": "pavel.buchnev@spiralscout.com" + }, + { + "name": "Aleksei Gagarin (roxblnfk)", + "email": "alexey.gagarin@spiralscout.com" + }, + { + "name": "Maksim Smakouz (msmakouz)", + "email": "maksim.smakouz@spiralscout.com" + } + ], + "description": "Static Analysis: Class and Invocation locators", + "homepage": "https://spiral.dev", + "support": { + "issues": "https://github.com/spiral/framework/issues", + "source": "https://github.com/spiral/tokenizer" + }, + "funding": [ + { + "url": "https://github.com/sponsors/spiral", + "type": "github" + } + ], + "time": "2024-09-11T17:40:38+00:00" + }, + { + "name": "swagger-api/swagger-ui", + "version": "v5.17.14", + "source": { + "type": "git", + "url": "https://github.com/swagger-api/swagger-ui.git", + "reference": "74ed0adebfc9c8dd0de2bf8e81495b022a66c083" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/swagger-api/swagger-ui/zipball/74ed0adebfc9c8dd0de2bf8e81495b022a66c083", + "reference": "74ed0adebfc9c8dd0de2bf8e81495b022a66c083", + "shasum": "" + }, + "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Anna Bodnia", + "email": "anna.bodnia@gmail.com" + }, + { + "name": "Buu Nguyen", + "email": "buunguyen@gmail.com" + }, + { + "name": "Josh Ponelat", + "email": "jponelat@gmail.com" + }, + { + "name": "Kyle Shockey", + "email": "kyleshockey1@gmail.com" + }, + { + "name": "Robert Barnwell", + "email": "robert@robertismy.name" + }, + { + "name": "Sahar Jafari", + "email": "shr.jafari@gmail.com" + } + ], + "description": " Swagger UI is a collection of HTML, Javascript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.", + "homepage": "http://swagger.io", + "keywords": [ + "api", + "documentation", + "openapi", + "specification", + "swagger", + "ui" + ], + "support": { + "issues": "https://github.com/swagger-api/swagger-ui/issues", + "source": "https://github.com/swagger-api/swagger-ui/tree/v5.17.14" + }, + "time": "2024-05-28T05:24:40+00:00" + }, + { + "name": "symfony/console", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "72d080eb9edf80e36c19be61f72c98ed8273b765" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/72d080eb9edf80e36c19be61f72c98ed8273b765", + "reference": "72d080eb9edf80e36c19be61f72c98ed8273b765", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^5.4|^6.0|^7.0" + }, + "conflict": { + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/stopwatch": "^5.4|^6.0|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command-line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v6.4.12" + }, + "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": "2024-09-20T08:15:52+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "files": [ + "function.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": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v7.1.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7", + "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/event-dispatcher-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/dependency-injection": "<6.4", + "symfony/service-contracts": "<2.5" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/error-handler": "^6.4|^7.0", + "symfony/expression-language": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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/v7.1.1" + }, + "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": "2024-05-31T14:57:53+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "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": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/finder", + "version": "v5.4.43", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "ae25a9145a900764158d439653d5630191155ca0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/ae25a9145a900764158d439653d5630191155ca0", + "reference": "ae25a9145a900764158d439653d5630191155ca0", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-php80": "^1.16" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v5.4.43" + }, + "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": "2024-08-13T14:03:51+00:00" + }, + { + "name": "symfony/http-client", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client.git", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client/zipball/abca35865118edf35a23f2f24978a1784c831cb4", + "reference": "abca35865118edf35a23f2f24978a1784c831cb4", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-client-contracts": "^3.4.1", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "php-http/discovery": "<1.15", + "symfony/http-foundation": "<6.4" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "1.0", + "symfony/http-client-implementation": "3.0" + }, + "require-dev": { + "amphp/amp": "^2.5", + "amphp/http-client": "^4.2.1", + "amphp/http-tunnel": "^1.0", + "amphp/socket": "^1.1", + "guzzlehttp/promises": "^1.4|^2.0", + "nyholm/psr7": "^1.0", + "php-http/httplug": "^1.0|^2.0", + "psr/http-client": "^1.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/rate-limiter": "^6.4|^7.0", + "symfony/stopwatch": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", + "homepage": "https://symfony.com", + "keywords": [ + "http" + ], + "support": { + "source": "https://github.com/symfony/http-client/tree/v7.1.5" + }, + "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": "2024-09-20T13:35:23+00:00" + }, + { + "name": "symfony/http-client-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "20414d96f391677bf80078aa55baece78b82647d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/20414d96f391677bf80078aa55baece78b82647d", + "reference": "20414d96f391677bf80078aa55baece78b82647d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "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": "Generic abstractions related to HTTP clients", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/http-client-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/mailer", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/mailer.git", + "reference": "bbf21460c56f29810da3df3e206e38dfbb01e80b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mailer/zipball/bbf21460c56f29810da3df3e206e38dfbb01e80b", + "reference": "bbf21460c56f29810da3df3e206e38dfbb01e80b", + "shasum": "" + }, + "require": { + "egulias/email-validator": "^2.1.10|^3|^4", + "php": ">=8.2", + "psr/event-dispatcher": "^1", + "psr/log": "^1|^2|^3", + "symfony/event-dispatcher": "^6.4|^7.0", + "symfony/mime": "^6.4|^7.0", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/http-client-contracts": "<2.5", + "symfony/http-kernel": "<6.4", + "symfony/messenger": "<6.4", + "symfony/mime": "<6.4", + "symfony/twig-bridge": "<6.4" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/messenger": "^6.4|^7.0", + "symfony/twig-bridge": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mailer\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Helps sending emails", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/mailer/tree/v7.1.5" + }, + "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": "2024-09-08T12:32:26+00:00" + }, + { + "name": "symfony/mime", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/mime.git", + "reference": "711d2e167e8ce65b05aea6b258c449671cdd38ff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mime/zipball/711d2e167e8ce65b05aea6b258c449671cdd38ff", + "reference": "711d2e167e8ce65b05aea6b258c449671cdd38ff", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-intl-idn": "^1.10", + "symfony/polyfill-mbstring": "^1.0" + }, + "conflict": { + "egulias/email-validator": "~3.0.0", + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "symfony/mailer": "<6.4", + "symfony/serializer": "<6.4.3|>7.0,<7.0.3" + }, + "require-dev": { + "egulias/email-validator": "^2.1.10|^3.1|^4", + "league/html-to-markdown": "^5.0", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/dependency-injection": "^6.4|^7.0", + "symfony/process": "^6.4|^7.0", + "symfony/property-access": "^6.4|^7.0", + "symfony/property-info": "^6.4|^7.0", + "symfony/serializer": "^6.4.3|^7.0.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mime\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Allows manipulating MIME messages", + "homepage": "https://symfony.com", + "keywords": [ + "mime", + "mime-type" + ], + "support": { + "source": "https://github.com/symfony/mime/tree/v7.1.5" + }, + "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": "2024-09-20T08:28:38+00:00" + }, + { + "name": "symfony/options-resolver", + "version": "v7.1.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/options-resolver.git", + "reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/47aa818121ed3950acd2b58d1d37d08a94f9bf55", + "reference": "47aa818121ed3950acd2b58d1d37d08a94f9bf55", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\OptionsResolver\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an improved replacement for the array_replace PHP function", + "homepage": "https://symfony.com", + "keywords": [ + "config", + "configuration", + "options" + ], + "support": { + "source": "https://github.com/symfony/options-resolver/tree/v7.1.1" + }, + "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": "2024-05-31T14:57:53+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638", + "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe", + "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "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 for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-intl-idn", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/c36586dcf89a12315939e00ec9b4474adcb1d773", + "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773", + "shasum": "" + }, + "require": { + "php": ">=7.2", + "symfony/polyfill-intl-normalizer": "^1.10" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Idn\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Laurent Bassin", + "email": "laurent@bassin.info" + }, + { + "name": "Trevor Rowbotham", + "email": "trevor.rowbotham@pm.me" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "idn", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "3833d7255cc303546435cb650316bff708a1c75c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c", + "reference": "3833d7255cc303546435cb650316bff708a1c75c", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "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 for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341", + "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "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 for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-php83", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php83.git", + "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/2fb86d65e2d424369ad2905e83b236a8805ba491", + "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php83\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "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 8.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.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": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/process", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "3f94e5f13ff58df371a7ead461b6e8068900fbb3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/3f94e5f13ff58df371a7ead461b6e8068900fbb3", + "reference": "3f94e5f13ff58df371a7ead461b6e8068900fbb3", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Executes commands in sub-processes", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v6.4.12" + }, + "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": "2024-09-17T12:47:12+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "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": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/v3.5.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": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/string", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306", + "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.5" + }, + "require-dev": { + "symfony/emoji": "^7.1", + "symfony/error-handler": "^6.4|^7.0", + "symfony/http-client": "^6.4|^7.0", + "symfony/intl": "^6.4|^7.0", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v7.1.5" + }, + "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": "2024-09-20T08:28:38+00:00" + }, + { + "name": "symfony/var-dumper", + "version": "v6.4.11", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "ee14c8254a480913268b1e3b1cba8045ed122694" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/ee14c8254a480913268b1e3b1cba8045ed122694", + "reference": "ee14c8254a480913268b1e3b1cba8045ed122694", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/console": "<5.4" + }, + "require-dev": { + "ext-iconv": "*", + "symfony/console": "^5.4|^6.0|^7.0", + "symfony/error-handler": "^6.3|^7.0", + "symfony/http-kernel": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/uid": "^5.4|^6.0|^7.0", + "twig/twig": "^2.13|^3.0.4" + }, + "bin": [ + "Resources/bin/var-dump-server" + ], + "type": "library", + "autoload": { + "files": [ + "Resources/functions/dump.php" + ], + "psr-4": { + "Symfony\\Component\\VarDumper\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "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": "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/v6.4.11" + }, + "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": "2024-08-30T16:03:21+00:00" + }, + { + "name": "symfony/yaml", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/yaml.git", + "reference": "762ee56b2649659380e0ef4d592d807bc17b7971" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/yaml/zipball/762ee56b2649659380e0ef4d592d807bc17b7971", + "reference": "762ee56b2649659380e0ef4d592d807bc17b7971", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "symfony/console": "<5.4" + }, + "require-dev": { + "symfony/console": "^5.4|^6.0|^7.0" + }, + "bin": [ + "Resources/bin/yaml-lint" + ], + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Loads and dumps YAML files", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/yaml/tree/v6.4.12" + }, + "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": "2024-09-17T12:47:12+00:00" + }, + { + "name": "vlucas/phpdotenv", + "version": "v5.6.1", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "graham-campbell/result-type": "^1.1.3", + "php": "^7.2.5 || ^8.0", + "phpoption/phpoption": "^1.9.3", + "symfony/polyfill-ctype": "^1.24", + "symfony/polyfill-mbstring": "^1.24", + "symfony/polyfill-php80": "^1.24" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.8.2", + "ext-filter": "*", + "phpunit/phpunit": "^8.5.34 || ^9.6.13 || ^10.4.2" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "type": "library", + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + }, + "branch-alias": { + "dev-master": "5.6-dev" + } + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2024-07-20T21:52:34+00:00" + }, + { + "name": "webmozart/glob", + "version": "4.7.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/glob.git", + "reference": "8a2842112d6916e61e0e15e316465b611f3abc17" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/glob/zipball/8a2842112d6916e61e0e15e316465b611f3abc17", + "reference": "8a2842112d6916e61e0e15e316465b611f3abc17", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8.0.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "symfony/filesystem": "^5.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.1-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Glob\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "A PHP implementation of Ant's glob.", + "support": { + "issues": "https://github.com/webmozarts/glob/issues", + "source": "https://github.com/webmozarts/glob/tree/4.7.0" + }, + "time": "2024-03-07T20:33:40+00:00" + }, + { + "name": "yiisoft/access", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/access.git", + "reference": "7a8ac9c4802d31cf47789c742575232c7fb1ae8b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/access/zipball/7a8ac9c4802d31cf47789c742575232c7fb1ae8b", + "reference": "7a8ac9c4802d31cf47789c742575232c7fb1ae8b", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Access\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "An interface for checking access", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "access", + "interface", + "rbac", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/access/issues?state=open", + "source": "https://github.com/yiisoft/access", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2022-04-05T17:21:55+00:00" + }, + { + "name": "yiisoft/aliases", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/aliases.git", + "reference": "2ed5e38d6ac503ec4c1af39115361097b6449135" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/aliases/zipball/2ed5e38d6ac503ec4c1af39115361097b6449135", + "reference": "2ed5e38d6ac503ec4c1af39115361097b6449135", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Aliases\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Named paths and URLs storage", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "alias" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/aliases/issues?state=open", + "source": "https://github.com/yiisoft/aliases", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-13T10:14:03+00:00" + }, + { + "name": "yiisoft/arrays", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/arrays.git", + "reference": "e07c7268bd53903108ed556df93ef75b4bac6760" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/arrays/zipball/e07c7268bd53903108ed556df93ef75b4bac6760", + "reference": "e07c7268bd53903108ed556df93ef75b4bac6760", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/strings": "^2.1" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.20" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Arrays\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Array Helper", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "array", + "helper", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://forum.yiiframework.com/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/arrays/issues", + "source": "https://github.com/yiisoft/arrays", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-04-04T11:07:18+00:00" + }, + { + "name": "yiisoft/assets", + "version": "4.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/assets.git", + "reference": "14984b2c8a87236da8c8ef5a4f1273d4ff8a36bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/assets/zipball/14984b2c8a87236da8c8ef5a4f1273d4ff8a36bc", + "reference": "14984b2c8a87236da8c8ef5a4f1273d4ff8a36bc", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/aliases": "^1.1|^2.0|^3.0", + "yiisoft/files": "^2.0", + "yiisoft/json": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Assets\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Asset bundles and asset manager", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "assets", + "library", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/assets/issues?state=open", + "source": "https://github.com/yiisoft/assets", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-13T11:15:18+00:00" + }, + { + "name": "yiisoft/auth", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/auth.git", + "reference": "497197fc2bbc2c4b2b8b35b177e0f4476fbe17ee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/auth/zipball/497197fc2bbc2c4b2b8b35b177e0f4476fbe17ee", + "reference": "497197fc2bbc2c4b2b8b35b177e0f4476fbe17ee", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.8", + "yiisoft/yii-debug": "dev-master|dev-php80" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Auth\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii auth", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "auth", + "middleware" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/auth/issues?state=open", + "source": "https://github.com/yiisoft/auth", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-05-06T12:26:49+00:00" + }, + { + "name": "yiisoft/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/cache.git", + "reference": "67ae4b40d3aefd193dfd9a3f458f3e145adb0d84" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/cache/zipball/67ae4b40d3aefd193dfd9a3f458f3e145adb0d84", + "reference": "67ae4b40d3aefd193dfd9a3f458f3e145adb0d84", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "psr/simple-cache": "^2.0|^3.0" + }, + "provide": { + "psr/simple-cache-implementation": "2.0|3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.2" + }, + "suggest": { + "yiisoft/cache-apcu": "Allows to store cache using APCu PECL extension", + "yiisoft/cache-db": "Allows storing cache to the database", + "yiisoft/cache-file": "Allows storing cache to the files", + "yiisoft/cache-memcached": "Allows to store cache using Memcached PECL extension", + "yiisoft/cache-redis": "Allows storing cache to the Redis", + "yiisoft/cache-wincache": "Allows to store cache using WinCache PECL extension" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Cache\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Caching Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cache", + "psr-16", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/cache/issues?state=open", + "source": "https://github.com/yiisoft/cache", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-15T14:30:56+00:00" + }, + { + "name": "yiisoft/cache-file", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/cache-file.git", + "reference": "226ff0731adabc884c149f711190a7ac8b14800d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/cache-file/zipball/226ff0731adabc884c149f711190a7ac8b14800d", + "reference": "226ff0731adabc884c149f711190a7ac8b14800d", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/simple-cache": "^2.0|^3.0" + }, + "provide": { + "psr/simple-cache-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "php-mock/php-mock-phpunit": "^2.6", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Cache\\File\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Caching Library - File Handler", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cache", + "file", + "framework", + "psr-16", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/cache-file/issues?state=open", + "source": "https://github.com/yiisoft/cache-file", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-10-09T14:49:20+00:00" + }, + { + "name": "yiisoft/config", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/config.git", + "reference": "8cd32f003af59303f3ba8dd520eb85f830689575" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/config/zipball/8cd32f003af59303f3ba8dd520eb85f830689575", + "reference": "8cd32f003af59303f3ba8dd520eb85f830689575", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^2.0", + "php": "^8.0", + "yiisoft/arrays": "^3.0", + "yiisoft/strings": "^2.0", + "yiisoft/var-dumper": "^1.1" + }, + "require-dev": { + "composer/composer": "^2.0", + "ext-json": "*", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6" + }, + "suggest": { + "symfony/console": "To use composer commands `yii-config-copy` and `yii-config-rebuild`." + }, + "type": "composer-plugin", + "extra": { + "class": "Yiisoft\\Config\\Composer\\EventHandler" + }, + "autoload": { + "psr-4": { + "Yiisoft\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Composer plugin and a library for config assembling", + "homepage": "https://github.com/yiisoft/config", + "keywords": [ + "composer", + "config", + "plugin" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/config/issues?state=open", + "source": "https://github.com/yiisoft/config", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-12-25T17:12:50+00:00" + }, + { + "name": "yiisoft/cookies", + "version": "1.2.2", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/cookies.git", + "reference": "ceba1d0647f1210331d90372ca83a8ecc952ebef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/cookies/zipball/ceba1d0647f1210331d90372ca83a8ecc952ebef", + "reference": "ceba1d0647f1210331d90372ca83a8ecc952ebef", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/http": "^1.2", + "yiisoft/security": "^1.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^3.8|^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Cookies\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Convenient way to use cookies with PSR-7", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cookie", + "cookies", + "psr-7" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/cookies/issues?state=open", + "source": "https://github.com/yiisoft/cookies", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-04-05T07:20:16+00:00" + }, + { + "name": "yiisoft/csrf", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/csrf.git", + "reference": "2168b5f83ec9ce65e9d0ca08fa88613e6778d377" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/csrf/zipball/2168b5f83ec9ce65e9d0ca08fa88613e6778d377", + "reference": "2168b5f83ec9ce65e9d0ca08fa88613e6778d377", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "php": "^7.4|^8.0", + "psr/http-factory": "^1.0", + "psr/http-factory-implementation": "1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/security": "^1.0", + "yiisoft/session": "^1.0|^2.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.2", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.24", + "yiisoft/di": "^1.1" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Csrf\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii CSRF Protection Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "breach", + "csrf", + "hmac", + "middleware", + "psr-15", + "stateless", + "synchronizer" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/csrf/issues?state=open", + "source": "https://github.com/yiisoft/csrf", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-05-08T09:48:50+00:00" + }, + { + "name": "yiisoft/data", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/data.git", + "reference": "714ca834858bea280ce8781fc5915fa8775f780b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/data/zipball/714ca834858bea280ce8781fc5915fa8775f780b", + "reference": "714ca834858bea280ce8781fc5915fa8775f780b", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.1", + "yiisoft/arrays": "^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.20" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Data\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Data providers, pagination and related abstractions", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "data processor", + "data provider", + "data reader", + "data writer", + "filter", + "pagination" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/data/issues?state=open", + "source": "https://github.com/yiisoft/data", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-10T17:50:47+00:00" + }, + { + "name": "yiisoft/data-cycle", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/data-cycle.git", + "reference": "708074a77942ab1d7f424bc21a6912b7d62641da" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/data-cycle/zipball/708074a77942ab1d7f424bc21a6912b7d62641da", + "reference": "708074a77942ab1d7f424bc21a6912b7d62641da", + "shasum": "" + }, + "require": { + "cycle/database": "^2.10", + "cycle/orm": "^2.7.1", + "php": "^8.1", + "yiisoft/data": "dev-master" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.21", + "vlucas/phpdotenv": "^5.6" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Data\\Cycle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Cycle ORM query adapter for yiisoft/data", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "cycle", + "data provider", + "database", + "db", + "orm" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/data-cycle/issues?state=open", + "source": "https://github.com/yiisoft/data-cycle", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-11T18:58:59+00:00" + }, + { + "name": "yiisoft/data-response", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/data-response.git", + "reference": "7de8c880d0d6629867a51c5c2529c984e50dfbc3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/data-response/zipball/7de8c880d0d6629867a51c5c2529c984e50dfbc3", + "reference": "7de8c880d0d6629867a51c5c2529c984e50dfbc3", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "php": "^8.1", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/json": "^1.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.22", + "yiisoft/di": "^1.1" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\DataResponse\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Allows responding with data that is automatically converted into PSR-7 response", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "data", + "psr-7", + "response" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/data-response/issues?state=open", + "source": "https://github.com/yiisoft/data-response", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-03T06:01:50+00:00" + }, + { + "name": "yiisoft/definitions", + "version": "3.3.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/definitions.git", + "reference": "5cb53d07afab3336705a52ddc90c37237cc4b316" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/definitions/zipball/5cb53d07afab3336705a52ddc90c37237cc4b316", + "reference": "5cb53d07afab3336705a52ddc90c37237cc4b316", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/test-support": "^1.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Definitions\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "The package provides definition syntax", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "definitions" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/definitions/issues?state=open", + "source": "https://github.com/yiisoft/definitions", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-16T13:31:21+00:00" + }, + { + "name": "yiisoft/di", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/di.git", + "reference": "a6d889f74030a381dad337f1bd1ea9de7341bc9b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/di/zipball/a6d889f74030a381dad337f1bd1ea9de7341bc9b", + "reference": "a6d889f74030a381dad337f1bd1ea9de7341bc9b", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0", + "psr/container": "^1.1|^2.0", + "yiisoft/definitions": "^3.0" + }, + "provide": { + "psr/container-implementation": "1.0.0" + }, + "require-dev": { + "league/container": "^4.2", + "maglnet/composer-require-checker": "^4.2", + "phpbench/phpbench": "^1.2.0", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.14.3", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.29", + "yiisoft/injector": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "phpbench/phpbench": "To run benchmarks.", + "yiisoft/injector": "^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Di\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii DI container", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "Autowiring", + "PSR-11", + "container", + "dependency", + "di", + "injection", + "injector" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/di/issues?state=open", + "source": "https://github.com/yiisoft/di", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2022-12-23T16:12:56+00:00" + }, + { + "name": "yiisoft/error-handler", + "version": "3.3.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/error-handler.git", + "reference": "a263c9dea48d5a42022dd7df76706cff39e3e960" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/error-handler/zipball/a263c9dea48d5a42022dd7df76706cff39e3e960", + "reference": "a263c9dea48d5a42022dd7df76706cff39e3e960", + "shasum": "" + }, + "require": { + "alexkart/curl-builder": "^1.0", + "cebe/markdown": "^1.2", + "ext-dom": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0.9", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25", + "yiisoft/di": "^1.1", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\ErrorHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Error Handling Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "PSR-11", + "error-handler", + "psr-15", + "psr-3", + "psr-7", + "yiisoft" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/error-handler/issues?state=open", + "source": "https://github.com/yiisoft/error-handler", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-11T12:16:20+00:00" + }, + { + "name": "yiisoft/event-dispatcher", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/event-dispatcher.git", + "reference": "2b1262a56260030aaac386bf8ef75ec072abc7e3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/event-dispatcher/zipball/2b1262a56260030aaac386bf8ef75ec072abc7e3", + "reference": "2b1262a56260030aaac386bf8ef75ec072abc7e3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "1.0.0" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.14.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\EventDispatcher\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Event Dispatcher", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "event", + "event dispatcher", + "psr-14" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/event-dispatcher/issues?state=open", + "source": "https://github.com/yiisoft/event-dispatcher", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2022-10-27T12:02:21+00:00" + }, + { + "name": "yiisoft/factory", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/factory.git", + "reference": "4537a78ae1a3b49bd86e83d09f0772034e45f193" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/factory/zipball/4537a78ae1a3b49bd86e83d09f0772034e45f193", + "reference": "4537a78ae1a3b49bd86e83d09f0772034e45f193", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/definitions": "^1.0|^2.0|^3.0.1" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Factory\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Factory", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "factory" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/factory/issues", + "source": "https://github.com/yiisoft/factory", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-12-03T05:59:14+00:00" + }, + { + "name": "yiisoft/files", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/files.git", + "reference": "129a8f8220e1cd2530f424951b8c24f426bd219c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/files/zipball/129a8f8220e1cd2530f424951b8c24f426bd219c", + "reference": "129a8f8220e1cd2530f424951b8c24f426bd219c", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "ext-zlib": "*", + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.22" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Files\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Helper to manage files and directories", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "files" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/files/issues?state=open", + "source": "https://github.com/yiisoft/files", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2022-07-05T06:43:38+00:00" + }, + { + "name": "yiisoft/form", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/form.git", + "reference": "9679b95b239598d2391de291ab2ce14b5e074271" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/form/zipball/9679b95b239598d2391de291ab2ce14b5e074271", + "reference": "9679b95b239598d2391de291ab2ce14b5e074271", + "shasum": "" + }, + "require": { + "php": "^8.1", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/html": "^3.6", + "yiisoft/widget": "^2.2" + }, + "require-dev": { + "infection/infection": "^0.26.19", + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.2", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.21" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "bootstrap": "bootstrap.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Form\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "The package helps with implementing data entry forms.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "form", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/form/issues?state=open", + "source": "https://github.com/yiisoft/form", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-08-26T18:54:52+00:00" + }, + { + "name": "yiisoft/form-model", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/form-model.git", + "reference": "f0b6eb17d1a9d04fefbab4013b5177207ed0574a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/form-model/zipball/f0b6eb17d1a9d04fefbab4013b5177207ed0574a", + "reference": "f0b6eb17d1a9d04fefbab4013b5177207ed0574a", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.1", + "psr/http-message": "^1.0|^2.0", + "yiisoft/form": "^1.0", + "yiisoft/html": "^3.3", + "yiisoft/hydrator": "^1.3", + "yiisoft/strings": "^2.3", + "yiisoft/validator": "^2.1" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\FormModel\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Provides a base for form models and helps to fill, validate and display them.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "form", + "model" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/form-model/issues?state=open", + "source": "https://github.com/yiisoft/form-model", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-13T07:16:51+00:00" + }, + { + "name": "yiisoft/friendly-exception", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/friendly-exception.git", + "reference": "4b4a19edff251791e3c92d4d83435d2716351ff4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/friendly-exception/zipball/4b4a19edff251791e3c92d4d83435d2716351ff4", + "reference": "4b4a19edff251791e3c92d4d83435d2716351ff4", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.4", + "roave/infection-static-analysis-plugin": "^1.5", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\FriendlyException\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "An interface for friendlier exception", + "homepage": "http://www.yiiframework.com/", + "keywords": [ + "error handling", + "exception", + "exceptions", + "friendly" + ], + "support": { + "forum": "http://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/friendly-exception/issues?state=open", + "source": "https://github.com/yiisoft/friendly-exception", + "wiki": "http://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2021-10-26T21:43:25+00:00" + }, + { + "name": "yiisoft/html", + "version": "3.7.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/html.git", + "reference": "968aa8b336135242bdaef9646fa3d53c3c0731f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/html/zipball/968aa8b336135242bdaef9646fa3d53c3c0731f7", + "reference": "968aa8b336135242bdaef9646fa3d53c3c0731f7", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/arrays": "^2.0|^3.0", + "yiisoft/json": "^1.0" + }, + "require-dev": { + "infection/infection": "^0.26.19", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Html\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Handy library to generate HTML", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "html" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://forum.yiiframework.com/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/html/issues?state=open", + "source": "https://github.com/yiisoft/html", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-18T11:48:50+00:00" + }, + { + "name": "yiisoft/http", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/http.git", + "reference": "7967b2c45dbf6af785dea4ea481af23da6d49c5d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/http/zipball/7967b2c45dbf6af785dea4ea481af23da6d49c5d", + "reference": "7967b2c45dbf6af785dea4ea481af23da6d49c5d", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.10", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.12" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Constants and PSR-7 PhpStorm meta for HTTP protocol headers, methods and statuses", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "header", + "http", + "method", + "psr-17", + "psr-7", + "status" + ], + "support": { + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/http/issues?state=open", + "source": "https://github.com/yiisoft/http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2021-11-09T09:42:11+00:00" + }, + { + "name": "yiisoft/hydrator", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/hydrator.git", + "reference": "9bfde0c99fc35b182d1b74433e9316c9b67c5fc1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/hydrator/zipball/9bfde0c99fc35b182d1b74433e9316c9b67c5fc1", + "reference": "9bfde0c99fc35b182d1b74433e9316c9b67c5fc1", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/container": "^2.0", + "yiisoft/injector": "^1.1", + "yiisoft/strings": "^2.3" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.23", + "yiisoft/di": "^1.2", + "yiisoft/dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "ext-intl": "Allows using `ToDateTime` parameter attribute" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Hydrator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Create and populate objects with type casting, mapping and dependencies resolving support.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "hydrator" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/hydrator/issues?state=open", + "source": "https://github.com/yiisoft/hydrator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-17T16:10:24+00:00" + }, + { + "name": "yiisoft/hydrator-validator", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/hydrator-validator.git", + "reference": "5f7acfebce127755af7df3cbc126dd502a1c4140" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/hydrator-validator/zipball/5f7acfebce127755af7df3cbc126dd502a1c4140", + "reference": "5f7acfebce127755af7df3cbc126dd502a1c4140", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/hydrator": "^1.0", + "yiisoft/validator": "^1.0|^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.11", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Hydrator\\Validator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Validating hydrator with raw data validation support", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "input", + "validation" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/hydrator-validator/issues?state=open", + "source": "https://github.com/yiisoft/hydrator-validator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-08-06T12:18:25+00:00" + }, + { + "name": "yiisoft/i18n", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/i18n.git", + "reference": "c05e9e031fb36fc193152e18fa791bbf6d0582b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/i18n/zipball/c05e9e031fb36fc193152e18fa791bbf6d0582b8", + "reference": "c05e9e031fb36fc193152e18fa791bbf6d0582b8", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.17.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\I18n\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Internationalization Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "i18n", + "locale" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/i18n/issues?state=open", + "source": "https://github.com/yiisoft/i18n", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-06-10T14:18:35+00:00" + }, + { + "name": "yiisoft/injector", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/injector.git", + "reference": "0dc0127a7542341bdaabda7b85204e992938b83e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/injector/zipball/0dc0127a7542341bdaabda7b85204e992938b83e", + "reference": "0dc0127a7542341bdaabda7b85204e992938b83e", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.2", + "phpbench/phpbench": "^1.1", + "phpunit/phpunit": "^9.5", + "psr/container": "^1.0|^2.0", + "rector/rector": "^0.18.12", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.7", + "yiisoft/test-support": "^1.2" + }, + "suggest": { + "psr/container": "For automatic resolving of dependencies" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Injector\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-11 compatible injector. Executes a callable and makes an instances by injecting dependencies from a given DI container.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "PSR-11", + "dependency injection", + "di", + "injector", + "reflection" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/injector/issues?state=open", + "source": "https://github.com/yiisoft/injector", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-12-20T09:39:03+00:00" + }, + { + "name": "yiisoft/input-http", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/input-http.git", + "reference": "877fea3374033f5a6af4207036eb7733a635b5b7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/input-http/zipball/877fea3374033f5a6af4207036eb7733a635b5b7", + "reference": "877fea3374033f5a6af4207036eb7733a635b5b7", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/arrays": "^3.0", + "yiisoft/hydrator": "^1.0", + "yiisoft/hydrator-validator": "^2.0", + "yiisoft/middleware-dispatcher": "^5.1", + "yiisoft/request-provider": "^1.0", + "yiisoft/validator": "^1.1|^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.22", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params-web": "params-web.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Input\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Maps data from PSR-7 HTTP request to PHP DTO representing user input.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "dto", + "input", + "mapper", + "mapping", + "psr-7", + "request", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/input-http/issues?state=open", + "source": "https://github.com/yiisoft/input-http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-08-06T12:42:23+00:00" + }, + { + "name": "yiisoft/json", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/json.git", + "reference": "51b483aef1cd5d06ea02db3c40707bb6b41ed088" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/json/zipball/51b483aef1cd5d06ea02db3c40707bb6b41ed088", + "reference": "51b483aef1cd5d06ea02db3c40707bb6b41ed088", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "infection/infection": "^0.16.3", + "phan/phan": "^3.0", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Json\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "json", + "homepage": "http://www.yiiframework.com/", + "keywords": [ + "json" + ], + "support": { + "forum": "http://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/json/issues?state=open", + "source": "https://github.com/yiisoft/json", + "wiki": "http://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2020-08-26T12:21:14+00:00" + }, + { + "name": "yiisoft/log", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/log.git", + "reference": "9d549952f5099a3e3081e11cccb3841c77587dac" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/log/zipball/9d549952f5099a3e3081e11cccb3841c77587dac", + "reference": "9d549952f5099a3e3081e11cccb3841c77587dac", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/log": "^2.0|^3.0", + "yiisoft/var-dumper": "^1.0" + }, + "provide": { + "psr/log-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25" + }, + "suggest": { + "yiisoft/log-target-db": "Allows writing log messages to the database", + "yiisoft/log-target-email": "Allows sending log messages by email", + "yiisoft/log-target-file": "Allows writing log messages to the files", + "yiisoft/log-target-syslog": "Allows writing log messages to the Syslog" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "events-console": "events-console.php", + "events-web": "events-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Logging Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "log", + "logger", + "psr-3", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/log/issues?state=open", + "source": "https://github.com/yiisoft/log", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-03T10:13:44+00:00" + }, + { + "name": "yiisoft/log-target-file", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/log-target-file.git", + "reference": "758a792d11f5b6d554450abc828e2db5d7613f22" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/log-target-file/zipball/758a792d11f5b6d554450abc828e2db5d7613f22", + "reference": "758a792d11f5b6d554450abc828e2db5d7613f22", + "shasum": "" + }, + "require": { + "ext-zlib": "*", + "php": "^8.0", + "yiisoft/files": "^1.0|^2.0", + "yiisoft/log": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.1", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.2", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.0" + }, + "suggest": { + "ext-zlib": "Enabling gzip compression of rotated files." + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Log\\Target\\File\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Logging Library - File Target", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "log", + "logger", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/log-target-file/issues", + "source": "https://github.com/yiisoft/log-target-file", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-17T05:52:09+00:00" + }, + { + "name": "yiisoft/mailer", + "version": "5.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/mailer.git", + "reference": "dcb71779d946c75c9163a28d0a2c3c6f9d7f319a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/mailer/zipball/dcb71779d946c75c9163a28d0a2c3c6f9d7f319a", + "reference": "dcb71779d946c75c9163a28d0a2c3c6f9d7f319a", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/event-dispatcher": "^1.0", + "yiisoft/view": "^10.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^10", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.24", + "yiisoft/files": "^2.0", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/event-dispatcher": "Yii Event Dispatcher", + "yiisoft/mailer-swiftmailer": "Yii Mailer Library - Swift Mailer Extension", + "yiisoft/mailer-symfony": "Yii Mailer Library - Symfony Mailer Extension" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Mailer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Mailer Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "mailer", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/mailer/issues?state=open", + "source": "https://github.com/yiisoft/mailer", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-02T14:35:38+00:00" + }, + { + "name": "yiisoft/mailer-symfony", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/mailer-symfony.git", + "reference": "6dba87a57e2b08cf56afd260cebb33b4ee607eb7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/mailer-symfony/zipball/6dba87a57e2b08cf56afd260cebb33b4ee607eb7", + "reference": "6dba87a57e2b08cf56afd260cebb33b4ee607eb7", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/mailer": "^5.3|^6.0|^7.0", + "symfony/mime": "^5.4|^6.2|^7.0", + "yiisoft/mailer": "^5.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2", + "yiisoft/files": "^2.0", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0", + "yiisoft/view": "^8.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Mailer\\Symfony\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Mailer Library - Symfony Mailer Extension", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "email", + "mail", + "mailer", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/mailer-symfony/issues?state=open", + "source": "https://github.com/yiisoft/mailer-symfony", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-05-24T11:18:35+00:00" + }, + { + "name": "yiisoft/middleware-dispatcher", + "version": "5.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/middleware-dispatcher.git", + "reference": "97d290e4ddab59e5a735ebafc69c46b6953022b3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/middleware-dispatcher/zipball/97d290e4ddab59e5a735ebafc69c46b6953022b3", + "reference": "97d290e4ddab59e5a735ebafc69c46b6953022b3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "psr/event-dispatcher": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/definitions": "^2.0|^3.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.3", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Middleware\\Dispatcher\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-15 middleware dispatcher", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "dispatcher", + "middleware" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/middleware-dispatcher/issues?state=open", + "source": "https://github.com/yiisoft/middleware-dispatcher", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-09-25T07:01:31+00:00" + }, + { + "name": "yiisoft/network-utilities", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/network-utilities.git", + "reference": "9b51434f17035ce70ba220518a9d52656b6c1cb4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/network-utilities/zipball/9b51434f17035ce70ba220518a9d52656b6c1cb4", + "reference": "9b51434f17035ce70ba220518a9d52656b6c1cb4", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\NetworkUtilities\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Network related utilities", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "IP", + "dns", + "mask", + "network" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/network-utilities/issues?state=open", + "source": "https://github.com/yiisoft/network-utilities", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-02T14:07:06+00:00" + }, + { + "name": "yiisoft/profiler", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/profiler.git", + "reference": "9f1bd1649f079ddfd45217f8da50533b12ca78a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/profiler/zipball/9f1bd1649f079ddfd45217f8da50533b12ca78a3", + "reference": "9f1bd1649f079ddfd45217f8da50533b12ca78a3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/log": "^2.0|^3.0", + "yiisoft/files": "^2.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.1", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "events-web": "events-web.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Profiler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Profiler", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "performance", + "profiler" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/profiler/issues?state=open", + "source": "https://github.com/yiisoft/profiler", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-15T09:15:24+00:00" + }, + { + "name": "yiisoft/proxy", + "version": "1.0.5", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/proxy.git", + "reference": "2820941a7ea0f66bab32d50a78c9f8b4b3fb22f6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/proxy/zipball/2820941a7ea0f66bab32d50a78c9f8b4b3fb22f6", + "reference": "2820941a7ea0f66bab32d50a78c9f8b4b3fb22f6", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/files": "^1.0.2|^2.0.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Proxy\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "proxy", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "proxy" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/proxy/issues?state=open", + "source": "https://github.com/yiisoft/proxy", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-01-17T13:21:34+00:00" + }, + { + "name": "yiisoft/rate-limiter", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/rate-limiter.git", + "reference": "8cbd10ba7e5d5e5edb5be5e52e6b42e1cc841942" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/rate-limiter/zipball/8cbd10ba7e5d5e5edb5be5e52e6b42e1cc841942", + "reference": "8cbd10ba7e5d5e5edb5be5e52e6b42e1cc841942", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/simple-cache": "^2.0|^3.0", + "yiisoft/http": "^1.2" + }, + "require-dev": { + "ext-apcu": "*", + "maglnet/composer-require-checker": "^4.4", + "nyholm/psr7": "^1.0", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.13", + "yiisoft/cache": "^3.0" + }, + "suggest": { + "ext-apcu": "To use APCu storage" + }, + "default-branch": true, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\RateLimiter\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Rate Limiter Middleware", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "GCRA", + "framework", + "middleware", + "psr-15", + "rate limiter", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/rate-limiter/issues?state=open", + "source": "https://github.com/yiisoft/rate-limiter", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-05-25T06:55:30+00:00" + }, + { + "name": "yiisoft/rbac", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/rbac.git", + "reference": "1744ddebd141f3fb1aaa3441ef7c4f2a36ca1cf3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/rbac/zipball/1744ddebd141f3fb1aaa3441ef7c4f2a36ca1cf3", + "reference": "1744ddebd141f3fb1aaa3441ef7c4f2a36ca1cf3", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "yiisoft/access": "^1.0", + "yiisoft/friendly-exception": "^1.1" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.3" + }, + "suggest": { + "yiisoft/rbac-cycle-db": "For using Cycle as a storage", + "yiisoft/rbac-db": "For using Yii Database as a storage", + "yiisoft/rbac-php": "For using PHP files as a storage", + "yiisoft/rbac-rules-container": "To create rules via Yii Factory" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Rbac\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Role-Based Access Control", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "rbac", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/rbac/issues", + "source": "https://github.com/yiisoft/rbac", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-04-20T09:08:24+00:00" + }, + { + "name": "yiisoft/rbac-php", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/rbac-php.git", + "reference": "de60e218822ff75b1ac319862e7459351d57cc75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/rbac-php/zipball/de60e218822ff75b1ac319862e7459351d57cc75", + "reference": "de60e218822ff75b1ac319862e7459351d57cc75", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "yiisoft/rbac": "^1.0", + "yiisoft/var-dumper": "^1.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "psr/log": "^1.1.3", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.22", + "yiisoft/files": "^1.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Rbac\\Php\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii RBAC PHP File Storage", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "rbac", + "storage", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/rbac/issues", + "source": "https://github.com/yiisoft/rbac", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2022-04-08T11:33:34+00:00" + }, + { + "name": "yiisoft/rbac-rules-container", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/rbac-rules-container.git", + "reference": "19c42b56751596ce139386d97f5164b77f655565" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/rbac-rules-container/zipball/19c42b56751596ce139386d97f5164b77f655565", + "reference": "19c42b56751596ce139386d97f5164b77f655565", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/factory": "^1.0", + "yiisoft/rbac": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Rbac\\Rules\\Container\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "RBAC rules container based on \"yiisoft/factory\"", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "container", + "factory", + "rbac", + "rules", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/rbac-rules-container/issues?state=open", + "source": "https://github.com/yiisoft/rbac-rules-container", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-16T10:44:01+00:00" + }, + { + "name": "yiisoft/request-provider", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/request-provider.git", + "reference": "667e339f307eaf3d4e4f09f05334e41761d20a81" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/request-provider/zipball/667e339f307eaf3d4e4f09f05334e41761d20a81", + "reference": "667e339f307eaf3d4e4f09f05334e41761d20a81", + "shasum": "" + }, + "require": { + "php": "^8.1", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.1", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.20", + "yiisoft/di": "^1.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\RequestProvider\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-7 request provider", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "http", + "provider", + "psr", + "request", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/request-provider/issues?state=open", + "source": "https://github.com/yiisoft/request-provider", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-02T15:18:14+00:00" + }, + { + "name": "yiisoft/router", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/router.git", + "reference": "86ee95984109bd96548cad3f93df8ad9ca4de0b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/router/zipball/86ee95984109bd96548cad3f93df8ad9ca4de0b8", + "reference": "86ee95984109bd96548cad3f93df8ad9ca4de0b8", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/middleware-dispatcher": "^5.0", + "yiisoft/router-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "nyholm/psr7": "^1.5", + "phpunit/phpunit": "^9.5", + "psr/container": "^1.1|^2.0", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.18", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.22", + "yiisoft/di": "^1.0", + "yiisoft/dummy-provider": "^1.0.0", + "yiisoft/hydrator": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/hydrator": "Needed to use `RouteArgument` attribute", + "yiisoft/router-fastroute": "Router implementation based on nikic/FastRoute" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Router\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii router", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "middleware", + "router", + "web" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/router/issues?state=open", + "source": "https://github.com/yiisoft/router", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-02-20T11:39:48+00:00" + }, + { + "name": "yiisoft/router-fastroute", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/router-fastroute.git", + "reference": "4f2214eed24e140687e714ccb08a6420da316059" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/router-fastroute/zipball/4f2214eed24e140687e714ccb08a6420da316059", + "reference": "4f2214eed24e140687e714ccb08a6420da316059", + "shasum": "" + }, + "require": { + "nikic/fast-route": "^1.3", + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/simple-cache": "^2.0|^3.0", + "yiisoft/http": "^1.2", + "yiisoft/router": "^2.1|^3.0" + }, + "provide": { + "yiisoft/router-implementation": "1.0.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.4", + "phpunit/phpunit": "^9.5", + "psr/container": "^2.0", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Router\\FastRoute\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii router FastRoute adapter", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "FastRoute", + "router" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/router-fastroute/issues?state=open", + "source": "https://github.com/yiisoft/router-fastroute", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-19T12:26:45+00:00" + }, + { + "name": "yiisoft/security", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/security.git", + "reference": "f1ad5d279722f162cfb0f720a3723ad762892de3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/security/zipball/f1ad5d279722f162cfb0f720a3723ad762892de3", + "reference": "f1ad5d279722f162cfb0f720a3723ad762892de3", + "shasum": "" + }, + "require": { + "ext-hash": "*", + "ext-openssl": "*", + "php": "^7.4|^8.0", + "yiisoft/strings": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.23" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Security\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Security utilities", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "MAC", + "decryption", + "encryption", + "hash", + "password", + "random", + "security", + "signature", + "token masking" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/security/issues?state=open", + "source": "https://github.com/yiisoft/security", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-18T12:20:01+00:00" + }, + { + "name": "yiisoft/session", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/session.git", + "reference": "193c666a8d1fcce5985c48afe9c3df96b6d3b6d1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/session/zipball/193c666a8d1fcce5985c48afe9c3df96b6d3b6d1", + "reference": "193c666a8d1fcce5985c48afe9c3df96b6d3b6d1", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-message-implementation": "1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/cookies": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.1" + }, + "suggest": { + "ext-session": "Allows using native PHP sessions" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Session\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "A session service, PSR-15 session middleware, and a flash message service which helps use one-time messages.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "flash", + "middleware", + "psr-15", + "session" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/session/issues?state=open", + "source": "https://github.com/yiisoft/session", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-05-02T18:50:11+00:00" + }, + { + "name": "yiisoft/strings", + "version": "2.4.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/strings.git", + "reference": "ff519d31e1c2518f42554fb5410e31bbb74b8108" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/strings/zipball/ff519d31e1c2518f42554fb5410e31bbb74b8108", + "reference": "ff519d31e1c2518f42554fb5410e31bbb74b8108", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Strings\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Strings Helper", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "helper", + "string", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/strings/issues", + "source": "https://github.com/yiisoft/strings", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-12-22T07:29:39+00:00" + }, + { + "name": "yiisoft/translator", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/translator.git", + "reference": "869a224bf59dda36a8725985f5dd2e31cb357e21" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/translator/zipball/869a224bf59dda36a8725985f5dd2e31cb357e21", + "reference": "869a224bf59dda36a8725985f5dd2e31cb357e21", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "1.0.0", + "yiisoft/files": "^1.0|^2.0", + "yiisoft/i18n": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/di": "^1.2" + }, + "suggest": { + "ext-intl": "Allows using intl message formatter", + "ext-tokenizer": "Allows using message extraction", + "yiisoft/event-dispatcher": "To listen for events about missing categories and messages" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Translator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Message Translator", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "i18n", + "internationalization", + "translation" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/translator/issues?state=open", + "source": "https://github.com/yiisoft/translator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-17T13:16:40+00:00" + }, + { + "name": "yiisoft/translator-message-php", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/translator-message-php.git", + "reference": "67a0c64c132e5098f6824017ca4bccd45cc79030" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/translator-message-php/zipball/67a0c64c132e5098f6824017ca4bccd45cc79030", + "reference": "67a0c64c132e5098f6824017ca4bccd45cc79030", + "shasum": "" + }, + "require": { + "php": "^8.0", + "yiisoft/translator": "^1.0|^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.15.4", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Translator\\Message\\Php\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Translator PHP Message Storage", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "formatting", + "i18n", + "internationalization", + "message storage" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/translator-message-php/issues?state=open", + "source": "https://github.com/yiisoft/translator-message-php", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-02-19T11:29:34+00:00" + }, + { + "name": "yiisoft/user", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/user.git", + "reference": "7bd541166949ac56a722a9555d43dac29976f424" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/user/zipball/7bd541166949ac56a722a9555d43dac29976f424", + "reference": "7bd541166949ac56a722a9555d43dac29976f424", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.4|^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0", + "yiisoft/access": "^1.0", + "yiisoft/auth": "^2.0|^3.0", + "yiisoft/cookies": "^1.2", + "yiisoft/http": "^1.2", + "yiisoft/session": "^1.0|^2.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "phpunit/phpunit": "^9.5", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.0", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\User\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Convenient user identity management and access checking", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "user", + "yiisoft" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/user/issues?state=open", + "source": "https://github.com/yiisoft/user", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-02-15T10:47:39+00:00" + }, + { + "name": "yiisoft/validator", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/validator.git", + "reference": "9e8ad99e66c750aceda96fd96033ff4b5d4a7e62" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/validator/zipball/9e8ad99e66c750aceda96fd96033ff4b5d4a7e62", + "reference": "9e8ad99e66c750aceda96fd96033ff4b5d4a7e62", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": "^8.1", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.0|^2.0", + "yiisoft/arrays": "^2.1|^3.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/network-utilities": "^1.2", + "yiisoft/strings": "^2.1", + "yiisoft/translator": "^2.1|^3.0" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.3", + "phpbench/phpbench": "^1.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.24", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0", + "yiisoft/translator-message-php": "^1.1", + "yiisoft/yii-debug": "dev-master|dev-php80" + }, + "suggest": { + "ext-fileinfo": "To use image rule", + "ext-intl": "Allows using date rules and IDN validation for emails", + "yiisoft/di": "To create rule handlers via Yii DI" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di": "di.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Validator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Validator", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "validation", + "validator" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/validator/issues?state=open", + "source": "https://github.com/yiisoft/validator", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-12T12:10:04+00:00" + }, + { + "name": "yiisoft/var-dumper", + "version": "1.7.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/var-dumper.git", + "reference": "c7f6a40d117b905abe26ac093593eaf7c57b9bd5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/var-dumper/zipball/c7f6a40d117b905abe26ac093593eaf7c57b9bd5", + "reference": "c7f6a40d117b905abe26ac093593eaf7c57b9bd5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "ext-tokenizer": "*", + "php": "^8.0", + "yiisoft/arrays": "^1.0|^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.3" + }, + "suggest": { + "ext-sockets": "Send dumps to a server through UDP/TCP protocols" + }, + "type": "library", + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Yiisoft\\VarDumper\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Enhances functionality of var_dump() and var_export(). It is dealing with recursive references, may highlight syntax and export closures.", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "helper", + "var-dumper", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/var-dumper/issues", + "source": "https://github.com/yiisoft/var-dumper", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-10-08T11:21:24+00:00" + }, + { + "name": "yiisoft/view", + "version": "10.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/view.git", + "reference": "4416d30e4e286e23887d9f525701f37e3a15f9ca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/view/zipball/4416d30e4e286e23887d9f525701f37e3a15f9ca", + "reference": "4416d30e4e286e23887d9f525701f37e3a15f9ca", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "1.0.0", + "psr/event-dispatcher-implementation": "1.0.0", + "yiisoft/arrays": "^2.0|^3.0", + "yiisoft/cache": "^1.0|^2.0|^3.0", + "yiisoft/files": "^1.0|^2.0", + "yiisoft/html": "^2.5|^3.0", + "yiisoft/json": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "1.0.*", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.20", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.2", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^1.4|^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "di-web": "di-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\View\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii View Rendering Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "view", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/view/issues?state=open", + "source": "https://github.com/yiisoft/view", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-06-28T10:02:35+00:00" + }, + { + "name": "yiisoft/widget", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/widget.git", + "reference": "d469c67698b4ee8bc4824c2adb0adbef645c1cff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/widget/zipball/d469c67698b4ee8bc4824c2adb0adbef645c1cff", + "reference": "d469c67698b4ee8bc4824c2adb0adbef645c1cff", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/definitions": "^3.1", + "yiisoft/factory": "^1.2", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/html": "^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "bootstrap": "bootstrap.php", + "widgets": [], + "widgets-themes": [] + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Widget\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Widget", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "widgets", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/widget/issues?state=open", + "source": "https://github.com/yiisoft/widget", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2023-12-25T18:47:09+00:00" + }, + { + "name": "yiisoft/yii-bootstrap5", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-bootstrap5.git", + "reference": "76d3a7a8f9c8bada906929c517c01c1bd4678ed6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-bootstrap5/zipball/76d3a7a8f9c8bada906929c517c01c1bd4678ed6", + "reference": "76d3a7a8f9c8bada906929c517c01c1bd4678ed6", + "shasum": "" + }, + "require": { + "php": "^8.1", + "yiisoft/arrays": "^1.0|^2.0|^3.0", + "yiisoft/assets": "^4.0", + "yiisoft/files": "^2.0", + "yiisoft/html": "^3.0", + "yiisoft/json": "^1.0", + "yiisoft/widget": "^2.0" + }, + "provide": { + "yiisoft/yii-bootstrap": "1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.3", + "phpunit/phpunit": "^9.6", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/aliases": "^3.0", + "yiisoft/di": "^1.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Bootstrap5\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Framework Twitter Bootstrap 5 Extension", + "keywords": [ + "bootstrap5", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-bootstrap5/issues?state=open", + "source": "https://github.com/yiisoft/yii-bootstrap5", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-07-12T17:56:26+00:00" + }, + { + "name": "yiisoft/yii-console", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-console.git", + "reference": "7942fc70df59965bb1b33ac4671c915a145d2dcf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-console/zipball/7942fc70df59965bb1b33ac4671c915a145d2dcf", + "reference": "7942fc70df59965bb1b33ac4671c915a145d2dcf", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "psr/event-dispatcher": "^1.0", + "psr/log": "^1.0|^2.0|^3.0", + "symfony/console": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher-contracts": "^2.2|^3.0", + "yiisoft/friendly-exception": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^3.8|^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "vimeo/psalm": "^4.30|^5.20", + "yiisoft/config": "^1.3", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config", + "merge-plan-file": "../tests/environment/.merge-plan.php" + }, + "config-plugin": { + "params-console": "params-console.php", + "di-console": "di-console.php", + "events-console": "events-console.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Console\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Symfony console wrapper with additional features", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "console", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-console/issues?state=open", + "source": "https://github.com/yiisoft/yii-console", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-02-17T13:10:12+00:00" + }, + { + "name": "yiisoft/yii-cycle", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-cycle.git", + "reference": "071361f0a97ed314add6c2e285953ee02b3973a6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-cycle/zipball/071361f0a97ed314add6c2e285953ee02b3973a6", + "reference": "071361f0a97ed314add6c2e285953ee02b3973a6", + "shasum": "" + }, + "require": { + "cycle/annotated": "^3.5", + "cycle/database": "^2.8", + "cycle/migrations": "^3.1.1|^4.0", + "cycle/orm": "^2.7", + "cycle/schema-builder": "^2.8", + "cycle/schema-migrations-generator": "^2.0", + "cycle/schema-provider": "^1.0", + "cycle/schema-renderer": "^1.2", + "php": "^8.1", + "psr/container": "^2.0", + "psr/event-dispatcher": "^1.0", + "psr/log": "^3.0", + "psr/simple-cache": "^2.0|^3.0", + "spiral/attributes": "^2.7|^3.0", + "spiral/core": "^3.12", + "spiral/tokenizer": "^3.12", + "symfony/console": "^6.4", + "symfony/finder": "^5.4", + "webmozart/glob": "^4.7", + "yiisoft/aliases": "^1.1|^2.0|^3.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/injector": "^1.1" + }, + "require-dev": { + "cycle/entity-behavior": "^1.0", + "ext-uopz": "*", + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.3", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.7", + "yiisoft/definitions": "^3.2", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "cycle/entity-behavior": "To use PHP attributes that add behaviors to Cycle ORM entities." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "di-console": "di-console.php", + "events-console": "events-console.php", + "di-delegates": "di-delegates.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Cycle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Cycle ORM v2 support", + "homepage": "http://www.yiiframework.com/", + "keywords": [ + "cycle", + "migrations", + "orm", + "yii" + ], + "support": { + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-cycle/issues?state=open", + "source": "https://github.com/yiisoft/yii-cycle", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-03-21T08:34:37+00:00" + }, + { + "name": "yiisoft/yii-dataview", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-dataview.git", + "reference": "c26babddba3a6b12cb679d92e13fe324eda9142a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-dataview/zipball/c26babddba3a6b12cb679d92e13fe324eda9142a", + "reference": "c26babddba3a6b12cb679d92e13fe324eda9142a", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.1", + "psr/container": "^1.0|^2.0", + "yiisoft/arrays": "^3.1", + "yiisoft/data": "dev-master", + "yiisoft/factory": "^1.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/html": "^3.0", + "yiisoft/injector": "^1.2", + "yiisoft/json": "^1.0", + "yiisoft/router": "^3.0", + "yiisoft/strings": "^2.0", + "yiisoft/translator": "^3.0", + "yiisoft/validator": "^2.0", + "yiisoft/view": "^10.0", + "yiisoft/widget": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.7", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.1.1", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/di": "^1.2", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/router-fastroute": "^3.0.1", + "yiisoft/test-support": "^3.0", + "yiisoft/translator-message-php": "^1.1" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "widgets-themes": "widgets-themes.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\DataView\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Framework Data Widgets Package", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "data", + "grid", + "list", + "view", + "widget", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-dataview/issues?state=open", + "source": "https://github.com/yiisoft/yii-dataview", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-11T07:56:12+00:00" + }, + { + "name": "yiisoft/yii-debug", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-debug.git", + "reference": "90bb1960841cf3b054433d7c54210fd203d3fe8f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-debug/zipball/90bb1960841cf3b054433d7c54210fd203d3fe8f", + "reference": "90bb1960841cf3b054433d7c54210fd203d3fe8f", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "guzzlehttp/psr7": "^2.4", + "jetbrains/phpstorm-attributes": "^1.0", + "php": "^8.1", + "psr/container": "^2.0", + "psr/event-dispatcher": "^1.0", + "psr/http-client": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/log": "^1.0|^2.0|^3.0", + "symfony/console": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.4", + "yiisoft/aliases": "^3.0", + "yiisoft/arrays": "^2.0|^3.0", + "yiisoft/config": "^1.3", + "yiisoft/di": "^1.0", + "yiisoft/files": "^2.0", + "yiisoft/json": "^1.0", + "yiisoft/profiler": "^3.0", + "yiisoft/proxy": "^1.0.1", + "yiisoft/strings": "^2.2", + "yiisoft/var-dumper": "^1.7" + }, + "require-dev": { + "ext-curl": "*", + "ext-sockets": "*", + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.3", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/error-handler": "^3.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-http": "^1.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "bootstrap": "bootstrap.php", + "di": "di.php", + "di-console": "di-console.php", + "di-web": "di-web.php", + "di-providers": "di-providers.php", + "events-web": "events-web.php", + "events-console": "events-console.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Debug\\": "src", + "Yiisoft\\Yii\\Debug\\Tests\\Shared\\": "tests/Shared" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Framework Debug Panel Extension", + "keywords": [ + "debug", + "debugger", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-debug/issues?state=open", + "source": "https://github.com/yiisoft/yii-debug", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-17T07:39:11+00:00" + }, + { + "name": "yiisoft/yii-debug-api", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-debug-api.git", + "reference": "8349f8d6f250e0f17bec8ab187390124e491c8c0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-debug-api/zipball/8349f8d6f250e0f17bec8ab187390124e491c8c0", + "reference": "8349f8d6f250e0f17bec8ab187390124e491c8c0", + "shasum": "" + }, + "require": { + "alexkart/curl-builder": "^1.0", + "gitonomy/gitlib": "^1.3", + "guzzlehttp/guzzle": "^7.5", + "guzzlehttp/psr7": "^2.4", + "httpsoft/http-message": "^1.1", + "php": "^8.1", + "psr/container": "^2.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/simple-cache": "^2.0|^3.0", + "symfony/process": "^5.4|^6.0", + "yiisoft/aliases": "^3.0", + "yiisoft/config": "^1.1", + "yiisoft/data-response": "^2.0", + "yiisoft/di": "^1.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/http": "^1.2", + "yiisoft/middleware-dispatcher": "^5.2", + "yiisoft/router": "^3.0", + "yiisoft/translator": "^3.0", + "yiisoft/var-dumper": "^1.4", + "yiisoft/yii-debug": "dev-master", + "yiisoft/yii-middleware": "^1.0", + "zircote/swagger-php": "^4.0" + }, + "require-dev": { + "codeception/codeception": "^5.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.6", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.22", + "yiisoft/active-record": "dev-master", + "yiisoft/assets": "^4.0", + "yiisoft/csrf": "^2.0", + "yiisoft/db": "1.2 as dev-master", + "yiisoft/db-sqlite": "^1.0", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/router-fastroute": "^3.0", + "yiisoft/test-support": "^3.0", + "yiisoft/yii-cycle": "dev-master", + "yiisoft/yii-view": "^6.0" + }, + "suggest": { + "yiisoft/assets": "Support custom debug panels", + "yiisoft/yii-view": "Support custom debug panels" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "bootstrap-web": "bootstrap-web.php", + "params": "params.php", + "di-web": "di-web.php", + "routes": "routes.php", + "di-providers-web": "di-providers-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Debug\\Api\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Debug API", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "api", + "debug", + "yii", + "yii-debug-api", + "yiisoft" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-debug-api/issues?state=open", + "source": "https://github.com/yiisoft/yii-debug-api", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-15T14:39:54+00:00" + }, + { + "name": "yiisoft/yii-event", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-event.git", + "reference": "2e02986a09235d20b3c02382f8cc5d7ad2e452fb" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-event/zipball/2e02986a09235d20b3c02382f8cc5d7ad2e452fb", + "reference": "2e02986a09235d20b3c02382f8cc5d7ad2e452fb", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/injector": "^1.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.18.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/config": "^1.3", + "yiisoft/di": "^1.2", + "yiisoft/test-support": "^1.3" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config", + "merge-plan-file": "../tests/environment/.merge-plan.php" + }, + "config-plugin": { + "params-web": "params-web.php", + "params-console": "params-console.php", + "di": "di.php", + "di-web": "di-web.php", + "di-console": "di-console.php", + "events-web": [], + "events-console": [] + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Event\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Event", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "event", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-event/issues?state=open", + "source": "https://github.com/yiisoft/yii-event", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2023-11-04T15:57:42+00:00" + }, + { + "name": "yiisoft/yii-http", + "version": "1.0.4", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-http.git", + "reference": "2555514a091ec9339259f10abc7e8970ef9e5db6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-http/zipball/2555514a091ec9339259f10abc7e8970ef9e5db6", + "reference": "2555514a091ec9339259f10abc7e8970ef9e5db6", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/middleware-dispatcher": "^3.0|^4.0|^5.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.4", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii HTTP Application", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "application", + "http", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-http/issues?state=open", + "source": "https://github.com/yiisoft/yii-http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-07T07:54:13+00:00" + }, + { + "name": "yiisoft/yii-middleware", + "version": "1.0.4", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-middleware.git", + "reference": "b2a8157ae2c94847a2b2f2e3b63dc23366b5e42a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-middleware/zipball/b2a8157ae2c94847a2b2f2e3b63dc23366b5e42a", + "reference": "b2a8157ae2c94847a2b2f2e3b63dc23366b5e42a", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/event-dispatcher": "^1.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^3.0", + "yiisoft/aliases": "^3.0", + "yiisoft/cookies": "^1.2", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/http": "^1.2", + "yiisoft/network-utilities": "^1.2", + "yiisoft/router": "^3.0", + "yiisoft/session": "^2.0", + "yiisoft/strings": "^2.1", + "yiisoft/validator": "^1.0|^2.0" + }, + "require-dev": { + "ext-uopz": "*", + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.16", + "slope-it/clock-mock": "^0.3.6", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25", + "yiisoft/router-fastroute": "^3.0", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/event-dispatcher": "For using events", + "yiisoft/translator": "For updating translator's locale" + }, + "type": "library", + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Middleware\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Middleware", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "framework", + "middleware", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-middleware/issues?state=open", + "source": "https://github.com/yiisoft/yii-middleware", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-03T19:34:10+00:00" + }, + { + "name": "yiisoft/yii-runner", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-runner.git", + "reference": "69d8392ecc0c9e47ac7d5a56c1a8596d5c1ac896" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-runner/zipball/69d8392ecc0c9e47ac7d5a56c1a8596d5c1ac896", + "reference": "69d8392ecc0c9e47ac7d5a56c1a8596d5c1ac896", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/config": "^1.1", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/di": "^1.0", + "yiisoft/yii-event": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.20", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.21", + "yiisoft/test-support": "^3.0" + }, + "suggest": { + "yiisoft/yii-runner-console": "Allows to run console application", + "yiisoft/yii-runner-http": "Allows to run HTTP application", + "yiisoft/yii-runner-roadrunner": "Allows to run HTTP application for RoadRunner" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Runner\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii application runner", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "runner", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-runner/issues?state=open", + "source": "https://github.com/yiisoft/yii-runner", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-09T14:10:08+00:00" + }, + { + "name": "yiisoft/yii-runner-console", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-runner-console.git", + "reference": "e92f4e72778508e7c2918f8fc8c3e75b758eb61a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-runner-console/zipball/e92f4e72778508e7c2918f8fc8c3e75b758eb61a", + "reference": "e92f4e72778508e7c2918f8fc8c3e75b758eb61a", + "shasum": "" + }, + "require": { + "php": "^8.0", + "symfony/console": "^5.4|^6.0|^7.0", + "yiisoft/config": "^1.1", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/di": "^1.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-runner": "^2.2" + }, + "require-dev": { + "codeception/codeception": "^5.0", + "codeception/module-cli": "^2.0", + "maglnet/composer-require-checker": "^4.2", + "rector/rector": "^1.0.0", + "vimeo/psalm": "^4.30|^5.2" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Runner\\Console\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Console application runner", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "console", + "runner", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-runner-console/issues?state=open", + "source": "https://github.com/yiisoft/yii-runner-console", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-10T10:06:34+00:00" + }, + { + "name": "yiisoft/yii-runner-http", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-runner-http.git", + "reference": "798c37abbcceb6b0053744b4bde0c476cd53e15e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-runner-http/zipball/798c37abbcceb6b0053744b4bde0c476cd53e15e", + "reference": "798c37abbcceb6b0053744b4bde0c476cd53e15e", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0|^2.0 ", + "yiisoft/config": "^1.1", + "yiisoft/definitions": "^1.0|^2.0|^3.0", + "yiisoft/di": "^1.0", + "yiisoft/error-handler": "^3.0", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/http": "^1.2", + "yiisoft/log": "^2.0", + "yiisoft/log-target-file": "^3.0", + "yiisoft/yii-http": "^1.0", + "yiisoft/yii-runner": "^2.2" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0.0", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.2", + "xepozz/internal-mocker": "^1.4", + "yiisoft/middleware-dispatcher": "^5.0", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Runner\\Http\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "HTTP application runner", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "http", + "runner", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/yii-runner-http/issues?state=open", + "source": "https://github.com/yiisoft/yii-runner-http", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-03-10T10:08:37+00:00" + }, + { + "name": "yiisoft/yii-sentry", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-sentry.git", + "reference": "d030e6c3017fe9b73b0f07b0429d4ac8b114b070" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-sentry/zipball/d030e6c3017fe9b73b0f07b0429d4ac8b114b070", + "reference": "d030e6c3017fe9b73b0f07b0429d4ac8b114b070", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "sentry/sdk": "^3.2", + "sentry/sentry": "^3.11", + "symfony/console": "^5.4|^6.0", + "yiisoft/di": "^1.0" + }, + "require-dev": { + "guzzlehttp/guzzle": "^7.3", + "httpsoft/http-message": "^1.0.9", + "maglnet/composer-require-checker": "^4.2", + "php-http/guzzle7-adapter": "^1.0", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.14.3", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/error-handler": "^2.1", + "yiisoft/yii-console": "^1.0", + "yiisoft/yii-event": "^1.0" + }, + "suggest": { + "yiisoft/yii-console": "Add error catching to console application", + "yiisoft/yii-event": "Add error catching to console application" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "bootstrap": "bootstrap.php", + "di": "di.php", + "events-console": "events-console.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Sentry\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "A Sentry integration for Yii Framework", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "sentry", + "sentry-sdk", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-sentry/issues?state=open", + "source": "https://github.com/yiisoft/yii-sentry", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-15T17:44:28+00:00" + }, + { + "name": "yiisoft/yii-swagger", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-swagger.git", + "reference": "c0fe0483b04719a6724fb13650f679614e1b0cef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-swagger/zipball/c0fe0483b04719a6724fb13650f679614e1b0cef", + "reference": "c0fe0483b04719a6724fb13650f679614e1b0cef", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/http-message": "^1.0|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "swagger-api/swagger-ui": "^4.1|^5.0", + "yiisoft/aliases": "^1.1|^2.0|^3.0", + "yiisoft/arrays": "^3.0", + "yiisoft/assets": "^2.0|^3.0|^4.0", + "yiisoft/cache": "^1.0|^2.0|^3.0", + "yiisoft/data-response": "^1.0|^2.0", + "yiisoft/html": "^3.0", + "yiisoft/yii-view-renderer": "^7.1.0", + "zircote/swagger-php": "^4.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.4", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/csrf": "^2.0", + "yiisoft/di": "^1.2", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "di-web": "di-web.php", + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Swagger\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "OpenAPI Swagger for Yii Framework", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "api", + "swagger", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-swagger/issues?state=open", + "source": "https://github.com/yiisoft/yii-swagger", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-04T21:55:48+00:00" + }, + { + "name": "yiisoft/yii-view-renderer", + "version": "7.1.0", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-view-renderer.git", + "reference": "cb11468f554d251c2deb87bf228a302c794134a3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-view-renderer/zipball/cb11468f554d251c2deb87bf228a302c794134a3", + "reference": "cb11468f554d251c2deb87bf228a302c794134a3", + "shasum": "" + }, + "require": { + "php": "^8.0", + "psr/container": "^1.0|^2.0", + "yiisoft/aliases": "^2.0|^3.0", + "yiisoft/csrf": "^1.2|^2.0", + "yiisoft/data-response": "^1.0|^2.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/html": "^2.5|^3.0", + "yiisoft/strings": "^2.0", + "yiisoft/view": "^10.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.0", + "maglnet/composer-require-checker": "^4.3", + "nyholm/psr7": "^1.5", + "phpunit/phpunit": "^9.5", + "rector/rector": "1.0.*", + "roave/infection-static-analysis-plugin": "^1.25", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.25", + "yiisoft/di": "^1.2", + "yiisoft/psr-dummy-provider": "^1.0", + "yiisoft/test-support": "^3.0", + "yiisoft/yii-debug": "dev-master|dev-php80" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-web": "di-web.php", + "events-web": "events-web.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\View\\Renderer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "PSR-7 compatible view renderer", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "renderer", + "view", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-view-renderer/issues?state=open", + "source": "https://github.com/yiisoft/yii-view-renderer", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-07-01T11:56:55+00:00" + }, + { + "name": "zircote/swagger-php", + "version": "4.10.6", + "source": { + "type": "git", + "url": "https://github.com/zircote/swagger-php.git", + "reference": "e462ff5269ea0ec91070edd5d51dc7215bdea3b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/zircote/swagger-php/zipball/e462ff5269ea0ec91070edd5d51dc7215bdea3b6", + "reference": "e462ff5269ea0ec91070edd5d51dc7215bdea3b6", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": ">=7.2", + "psr/log": "^1.1 || ^2.0 || ^3.0", + "symfony/deprecation-contracts": "^2 || ^3", + "symfony/finder": ">=2.2", + "symfony/yaml": ">=3.3" + }, + "require-dev": { + "composer/package-versions-deprecated": "^1.11", + "doctrine/annotations": "^1.7 || ^2.0", + "friendsofphp/php-cs-fixer": "^2.17 || ^3.47.1", + "phpstan/phpstan": "^1.6", + "phpunit/phpunit": ">=8", + "vimeo/psalm": "^4.23" + }, + "suggest": { + "doctrine/annotations": "^1.7 || ^2.0" + }, + "bin": [ + "bin/openapi" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, + "autoload": { + "psr-4": { + "OpenApi\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Robert Allen", + "email": "zircote@gmail.com" + }, + { + "name": "Bob Fanger", + "email": "bfanger@gmail.com", + "homepage": "https://bfanger.nl" + }, + { + "name": "Martin Rademacher", + "email": "mano@radebatz.net", + "homepage": "https://radebatz.net" + } + ], + "description": "swagger-php - Generate interactive documentation for your RESTful API using phpdoc annotations", + "homepage": "https://github.com/zircote/swagger-php/", + "keywords": [ + "api", + "json", + "rest", + "service discovery" + ], + "support": { + "issues": "https://github.com/zircote/swagger-php/issues", + "source": "https://github.com/zircote/swagger-php/tree/4.10.6" + }, + "time": "2024-07-26T03:04:43+00:00" + } + ], + "packages-dev": [ + { + "name": "amphp/amp", + "version": "v2.6.4", + "source": { + "type": "git", + "url": "https://github.com/amphp/amp.git", + "reference": "ded3d9be08f526089eb7ee8d9f16a9768f9dec2d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/amp/zipball/ded3d9be08f526089eb7ee8d9f16a9768f9dec2d", + "reference": "ded3d9be08f526089eb7ee8d9f16a9768f9dec2d", + "shasum": "" + }, + "require": { + "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": "^7 | ^8 | ^9", + "react/promise": "^2", + "vimeo/psalm": "^3.12" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "files": [ + "lib/functions.php", + "lib/Internal/functions.php" + ], + "psr-4": { + "Amp\\": "lib" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Daniel Lowrey", + "email": "rdlowrey@php.net" + }, + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Bob Weinand", + "email": "bobwei9@hotmail.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A non-blocking concurrency framework for PHP applications.", + "homepage": "https://amphp.org/amp", + "keywords": [ + "async", + "asynchronous", + "awaitable", + "concurrency", + "event", + "event-loop", + "future", + "non-blocking", + "promise" + ], + "support": { + "irc": "irc://irc.freenode.org/amphp", + "issues": "https://github.com/amphp/amp/issues", + "source": "https://github.com/amphp/amp/tree/v2.6.4" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-03-21T18:52:26+00:00" + }, + { + "name": "amphp/byte-stream", + "version": "v1.8.2", + "source": { + "type": "git", + "url": "https://github.com/amphp/byte-stream.git", + "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/amphp/byte-stream/zipball/4f0e968ba3798a423730f567b1b50d3441c16ddc", + "reference": "4f0e968ba3798a423730f567b1b50d3441c16ddc", + "shasum": "" + }, + "require": { + "amphp/amp": "^2", + "php": ">=7.1" + }, + "require-dev": { + "amphp/php-cs-fixer-config": "dev-master", + "amphp/phpunit-util": "^1.4", + "friendsofphp/php-cs-fixer": "^2.3", + "jetbrains/phpstorm-stubs": "^2019.3", + "phpunit/phpunit": "^6 || ^7 || ^8", + "psalm/phar": "^3.11.4" + }, + "type": "library", + "autoload": { + "files": [ + "lib/functions.php" + ], + "psr-4": { + "Amp\\ByteStream\\": "lib" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Aaron Piotrowski", + "email": "aaron@trowski.com" + }, + { + "name": "Niklas Keller", + "email": "me@kelunik.com" + } + ], + "description": "A stream abstraction to make working with non-blocking I/O simple.", + "homepage": "https://amphp.org/byte-stream", + "keywords": [ + "amp", + "amphp", + "async", + "io", + "non-blocking", + "stream" + ], + "support": { + "issues": "https://github.com/amphp/byte-stream/issues", + "source": "https://github.com/amphp/byte-stream/tree/v1.8.2" + }, + "funding": [ + { + "url": "https://github.com/amphp", + "type": "github" + } + ], + "time": "2024-04-13T18:00:56+00:00" + }, + { + "name": "behat/gherkin", + "version": "v4.9.0", + "source": { + "type": "git", + "url": "https://github.com/Behat/Gherkin.git", + "reference": "0bc8d1e30e96183e4f36db9dc79caead300beff4" + }, + "dist": { + "type": "zip", + "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-22.0.0", + "phpunit/phpunit": "~8|~9", + "symfony/yaml": "~3|~4|~5" + }, + "suggest": { + "symfony/yaml": "If you want to parse features, represented in YAML files" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev" + } + }, + "autoload": { + "psr-0": { + "Behat\\Gherkin": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Konstantin Kudryashov", + "email": "ever.zet@gmail.com", + "homepage": "http://everzet.com" + } + ], + "description": "Gherkin DSL parser for PHP", + "homepage": "http://behat.org/", + "keywords": [ + "BDD", + "Behat", + "Cucumber", + "DSL", + "gherkin", + "parser" + ], + "support": { + "issues": "https://github.com/Behat/Gherkin/issues", + "source": "https://github.com/Behat/Gherkin/tree/v4.9.0" + }, + "time": "2021-10-12T13:05:09+00:00" + }, + { + "name": "clue/stdio-react", + "version": "v2.6.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-stdio.git", + "reference": "dfa6c378aabdff718202d4e2453f752c38ea3399" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-stdio/zipball/dfa6c378aabdff718202d4e2453f752c38ea3399", + "reference": "dfa6c378aabdff718202d4e2453f752c38ea3399", + "shasum": "" + }, + "require": { + "clue/term-react": "^1.0 || ^0.1.1", + "clue/utf8-react": "^1.0 || ^0.1", + "php": ">=5.3", + "react/event-loop": "^1.2", + "react/stream": "^1.2" + }, + "require-dev": { + "clue/arguments": "^2.0", + "clue/commander": "^1.2", + "phpunit/phpunit": "^9.3 || ^5.7 || ^4.8.35" + }, + "suggest": { + "ext-mbstring": "Using ext-mbstring should provide slightly better performance for handling I/O" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\Stdio\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Async, event-driven console input & output (STDIN, STDOUT) for truly interactive CLI applications, built on top of ReactPHP", + "homepage": "https://github.com/clue/reactphp-stdio", + "keywords": [ + "async", + "autocomplete", + "autocompletion", + "cli", + "history", + "interactive", + "reactphp", + "readline", + "stdin", + "stdio", + "stdout" + ], + "support": { + "issues": "https://github.com/clue/reactphp-stdio/issues", + "source": "https://github.com/clue/reactphp-stdio/tree/v2.6.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2022-03-18T15:09:30+00:00" + }, + { + "name": "clue/term-react", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-term.git", + "reference": "00f297dc597eaee2ebf98af8f27cca5d21d60fa3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-term/zipball/00f297dc597eaee2ebf98af8f27cca5d21d60fa3", + "reference": "00f297dc597eaee2ebf98af8f27cca5d21d60fa3", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "react/stream": "^1.2" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/event-loop": "^1.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\Term\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Streaming terminal emulator, built on top of ReactPHP.", + "homepage": "https://github.com/clue/reactphp-term", + "keywords": [ + "C0", + "CSI", + "ansi", + "apc", + "ascii", + "c1", + "control codes", + "dps", + "osc", + "pm", + "reactphp", + "streaming", + "terminal", + "vt100", + "xterm" + ], + "support": { + "issues": "https://github.com/clue/reactphp-term/issues", + "source": "https://github.com/clue/reactphp-term/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2024-01-30T10:22:09+00:00" + }, + { + "name": "clue/utf8-react", + "version": "v1.3.0", + "source": { + "type": "git", + "url": "https://github.com/clue/reactphp-utf8.git", + "reference": "d5cd04d39cb5457aa5df830b7c4b301d2694217e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/clue/reactphp-utf8/zipball/d5cd04d39cb5457aa5df830b7c4b301d2694217e", + "reference": "d5cd04d39cb5457aa5df830b7c4b301d2694217e", + "shasum": "" + }, + "require": { + "php": ">=5.3", + "react/stream": "^1.0 || ^0.7 || ^0.6 || ^0.5 || ^0.4 || ^0.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36", + "react/stream": "^1.0 || ^0.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Clue\\React\\Utf8\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering" + } + ], + "description": "Streaming UTF-8 parser, built on top of ReactPHP.", + "homepage": "https://github.com/clue/reactphp-utf8", + "keywords": [ + "reactphp", + "streaming", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "issues": "https://github.com/clue/reactphp-utf8/issues", + "source": "https://github.com/clue/reactphp-utf8/tree/v1.3.0" + }, + "funding": [ + { + "url": "https://clue.engineering/support", + "type": "custom" + }, + { + "url": "https://github.com/clue", + "type": "github" + } + ], + "time": "2023-12-06T14:52:17+00:00" + }, + { + "name": "codeception/c3", + "version": "2.9.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/c3.git", + "reference": "e23298a1cd5e7745973ea26a53572a3d9b013439" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/c3/zipball/e23298a1cd5e7745973ea26a53572a3d9b013439", + "reference": "e23298a1cd5e7745973ea26a53572a3d9b013439", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0 || ^2.0", + "php": ">=5.5.0" + }, + "require-dev": { + "composer/composer": "^1.0 || ^2.0" + }, + "type": "composer-plugin", + "extra": { + "class": "Codeception\\c3\\Installer" + }, + "autoload": { + "psr-4": { + "Codeception\\c3\\": "." + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tiger Seo", + "email": "tiger.seo@gmail.com" + }, + { + "name": "Michael Bodnarchuk", + "email": "davert.php@codegyre.com", + "homepage": "http://codegyre.com" + } + ], + "description": "CodeCoverage collector for Codeception", + "homepage": "http://codeception.com/", + "keywords": [ + "code coverage", + "codecoverage" + ], + "support": { + "issues": "https://github.com/Codeception/c3/issues", + "source": "https://github.com/Codeception/c3/tree/2.9.0" + }, + "time": "2023-10-15T17:57:07+00:00" + }, + { + "name": "codeception/codeception", + "version": "5.1.2", + "source": { + "type": "git", + "url": "https://github.com/Codeception/Codeception.git", + "reference": "3b2d7d1a88e7e1d9dc0acb6d3c8f0acda0a37374" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/Codeception/zipball/3b2d7d1a88e7e1d9dc0acb6d3c8f0acda0a37374", + "reference": "3b2d7d1a88e7e1d9dc0acb6d3c8f0acda0a37374", + "shasum": "" + }, + "require": { + "behat/gherkin": "^4.6.2", + "codeception/lib-asserts": "^2.0", + "codeception/stub": "^4.1", + "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "phpunit/php-code-coverage": "^9.2 || ^10.0 || ^11.0", + "phpunit/php-text-template": "^2.0 || ^3.0 || ^4.0", + "phpunit/php-timer": "^5.0.3 || ^6.0 || ^7.0", + "phpunit/phpunit": "^9.5.20 || ^10.0 || ^11.0", + "psy/psysh": "^0.11.2 || ^0.12", + "sebastian/comparator": "^4.0.5 || ^5.0 || ^6.0", + "sebastian/diff": "^4.0.3 || ^5.0 || ^6.0", + "symfony/console": ">=4.4.24 <8.0", + "symfony/css-selector": ">=4.4.24 <8.0", + "symfony/event-dispatcher": ">=4.4.24 <8.0", + "symfony/finder": ">=4.4.24 <8.0", + "symfony/var-dumper": ">=4.4.24 <8.0", + "symfony/yaml": ">=4.4.24 <8.0" + }, + "conflict": { + "codeception/lib-innerbrowser": "<3.1.3", + "codeception/module-filesystem": "<3.0", + "codeception/module-phpbrowser": "<2.5" + }, + "replace": { + "codeception/phpunit-wrapper": "*" + }, + "require-dev": { + "codeception/lib-innerbrowser": "*@dev", + "codeception/lib-web": "^1.0", + "codeception/module-asserts": "*@dev", + "codeception/module-cli": "*@dev", + "codeception/module-db": "*@dev", + "codeception/module-filesystem": "*@dev", + "codeception/module-phpbrowser": "*@dev", + "codeception/util-universalframework": "*@dev", + "ext-simplexml": "*", + "jetbrains/phpstorm-attributes": "^1.0", + "symfony/dotenv": ">=4.4.24 <8.0", + "symfony/process": ">=4.4.24 <8.0", + "vlucas/phpdotenv": "^5.1" + }, + "suggest": { + "codeception/specify": "BDD-style code blocks", + "codeception/verify": "BDD-style assertions", + "ext-simplexml": "For loading params from XML files", + "stecman/symfony-console-completion": "For BASH autocompletion", + "symfony/dotenv": "For loading params from .env files", + "symfony/phpunit-bridge": "For phpunit-bridge support", + "vlucas/phpdotenv": "For loading params from .env files" + }, + "bin": [ + "codecept" + ], + "type": "library", + "autoload": { + "files": [ + "functions.php" + ], + "psr-4": { + "Codeception\\": "src/Codeception", + "Codeception\\Extension\\": "ext" + }, + "classmap": [ + "src/PHPUnit/TestCase.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk", + "email": "davert.ua@gmail.com", + "homepage": "https://codeception.com" + } + ], + "description": "BDD-style testing framework", + "homepage": "https://codeception.com/", + "keywords": [ + "BDD", + "TDD", + "acceptance testing", + "functional testing", + "unit testing" + ], + "support": { + "issues": "https://github.com/Codeception/Codeception/issues", + "source": "https://github.com/Codeception/Codeception/tree/5.1.2" + }, + "funding": [ + { + "url": "https://opencollective.com/codeception", + "type": "open_collective" + } + ], + "time": "2024-03-07T07:19:42+00:00" + }, + { + "name": "codeception/lib-asserts", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-asserts.git", + "reference": "b8c7dff552249e560879c682ba44a4b963af91bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/b8c7dff552249e560879c682ba44a4b963af91bc", + "reference": "b8c7dff552249e560879c682ba44a4b963af91bc", + "shasum": "" + }, + "require": { + "codeception/phpunit-wrapper": "^7.7.1 | ^8.0.3 | ^9.0", + "ext-dom": "*", + "php": "^7.4 | ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk", + "email": "davert@mail.ua", + "homepage": "http://codegyre.com" + }, + { + "name": "Gintautas Miselis" + }, + { + "name": "Gustavo Nieves", + "homepage": "https://medium.com/@ganieves" + } + ], + "description": "Assertion methods used by Codeception core and Asserts module", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-asserts/issues", + "source": "https://github.com/Codeception/lib-asserts/tree/2.1.0" + }, + "time": "2023-02-10T18:36:23+00:00" + }, + { + "name": "codeception/lib-innerbrowser", + "version": "3.1.3", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-innerbrowser.git", + "reference": "10482f7e34c0537bf5b87bc82a3d65a1842a8b4f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-innerbrowser/zipball/10482f7e34c0537bf5b87bc82a3d65a1842a8b4f", + "reference": "10482f7e34c0537bf5b87bc82a3d65a1842a8b4f", + "shasum": "" + }, + "require": { + "codeception/codeception": "^5.0", + "codeception/lib-web": "^1.0.1", + "ext-dom": "*", + "ext-json": "*", + "ext-mbstring": "*", + "php": "^8.0", + "phpunit/phpunit": "^9.5", + "symfony/browser-kit": "^4.4.24 || ^5.4 || ^6.0", + "symfony/dom-crawler": "^4.4.30 || ^5.4 || ^6.0" + }, + "require-dev": { + "codeception/util-universalframework": "dev-master" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk", + "email": "davert@mail.ua", + "homepage": "https://codegyre.com" + }, + { + "name": "Gintautas Miselis" + } + ], + "description": "Parent library for all Codeception framework modules and PhpBrowser", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-innerbrowser/issues", + "source": "https://github.com/Codeception/lib-innerbrowser/tree/3.1.3" + }, + "time": "2022-10-03T15:33:34+00:00" + }, + { + "name": "codeception/lib-web", + "version": "1.0.6", + "source": { + "type": "git", + "url": "https://github.com/Codeception/lib-web.git", + "reference": "01ff7f9ed8760ba0b0805a0b3a843b4e74165a60" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/lib-web/zipball/01ff7f9ed8760ba0b0805a0b3a843b4e74165a60", + "reference": "01ff7f9ed8760ba0b0805a0b3a843b4e74165a60", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "guzzlehttp/psr7": "^2.0", + "php": "^8.0", + "phpunit/phpunit": "^9.5 | ^10.0 | ^11.0", + "symfony/css-selector": ">=4.4.24 <8.0" + }, + "conflict": { + "codeception/codeception": "<5.0.0-alpha3" + }, + "require-dev": { + "php-webdriver/webdriver": "^1.12" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gintautas Miselis" + } + ], + "description": "Library containing files used by module-webdriver and lib-innerbrowser or module-phpbrowser", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/lib-web/issues", + "source": "https://github.com/Codeception/lib-web/tree/1.0.6" + }, + "time": "2024-02-06T20:50:08+00:00" + }, + { + "name": "codeception/module-asserts", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-asserts.git", + "reference": "1b6b150b30586c3614e7e5761b31834ed7968603" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-asserts/zipball/1b6b150b30586c3614e7e5761b31834ed7968603", + "reference": "1b6b150b30586c3614e7e5761b31834ed7968603", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "codeception/lib-asserts": "^2.0", + "php": "^8.0" + }, + "conflict": { + "codeception/codeception": "<5.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + }, + { + "name": "Gintautas Miselis" + }, + { + "name": "Gustavo Nieves", + "homepage": "https://medium.com/@ganieves" + } + ], + "description": "Codeception module containing various assertions", + "homepage": "https://codeception.com/", + "keywords": [ + "assertions", + "asserts", + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/module-asserts/issues", + "source": "https://github.com/Codeception/module-asserts/tree/3.0.0" + }, + "time": "2022-02-16T19:48:08+00:00" + }, + { + "name": "codeception/module-cli", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-cli.git", + "reference": "a3a101fae4049fa2f810107f7bd5db3b3266ce63" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-cli/zipball/a3a101fae4049fa2f810107f7bd5db3b3266ce63", + "reference": "a3a101fae4049fa2f810107f7bd5db3b3266ce63", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "codeception/module-asserts": "*", + "php": "^7.4 || ^8.0" + }, + "conflict": { + "codeception/codeception": "<4.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + } + ], + "description": "Codeception module for testing basic shell commands and shell output", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception" + ], + "support": { + "issues": "https://github.com/Codeception/module-cli/issues", + "source": "https://github.com/Codeception/module-cli/tree/2.0.1" + }, + "time": "2023-01-13T18:41:03+00:00" + }, + { + "name": "codeception/module-phpbrowser", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/Codeception/module-phpbrowser.git", + "reference": "a972411f60cd00d00d5e5e3b35496ba4a23bcffc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/module-phpbrowser/zipball/a972411f60cd00d00d5e5e3b35496ba4a23bcffc", + "reference": "a972411f60cd00d00d5e5e3b35496ba4a23bcffc", + "shasum": "" + }, + "require": { + "codeception/codeception": "*@dev", + "codeception/lib-innerbrowser": "*@dev", + "ext-json": "*", + "guzzlehttp/guzzle": "^7.4", + "php": "^8.0", + "symfony/browser-kit": "^5.4 || ^6.0 || ^7.0" + }, + "conflict": { + "codeception/codeception": "<5.0", + "codeception/lib-innerbrowser": "<3.0" + }, + "require-dev": { + "aws/aws-sdk-php": "^3.199", + "codeception/module-rest": "^2.0 || *@dev", + "ext-curl": "*" + }, + "suggest": { + "codeception/phpbuiltinserver": "Start and stop PHP built-in web server for your tests" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Michael Bodnarchuk" + }, + { + "name": "Gintautas Miselis" + } + ], + "description": "Codeception module for testing web application over HTTP", + "homepage": "https://codeception.com/", + "keywords": [ + "codeception", + "functional-testing", + "http" + ], + "support": { + "issues": "https://github.com/Codeception/module-phpbrowser/issues", + "source": "https://github.com/Codeception/module-phpbrowser/tree/3.0.1" + }, + "time": "2023-12-08T19:41:28+00:00" + }, + { + "name": "codeception/stub", + "version": "4.1.3", + "source": { + "type": "git", + "url": "https://github.com/Codeception/Stub.git", + "reference": "4fcad2c165f365377486dc3fd8703b07f1f2fcae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Codeception/Stub/zipball/4fcad2c165f365377486dc3fd8703b07f1f2fcae", + "reference": "4fcad2c165f365377486dc3fd8703b07f1f2fcae", + "shasum": "" + }, + "require": { + "php": "^7.4 | ^8.0", + "phpunit/phpunit": "^8.4 | ^9.0 | ^10.0 | ^11" + }, + "conflict": { + "codeception/codeception": "<5.0.6" + }, + "require-dev": { + "consolidation/robo": "^3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Codeception\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Flexible Stub wrapper for PHPUnit's Mock Builder", + "support": { + "issues": "https://github.com/Codeception/Stub/issues", + "source": "https://github.com/Codeception/Stub/tree/4.1.3" + }, + "time": "2024-02-02T19:21:00+00:00" + }, + { + "name": "colinodell/json5", + "version": "v2.3.0", + "source": { + "type": "git", + "url": "https://github.com/colinodell/json5.git", + "reference": "15b063f8cb5e6deb15f0cd39123264ec0d19c710" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/colinodell/json5/zipball/15b063f8cb5e6deb15f0cd39123264ec0d19c710", + "reference": "15b063f8cb5e6deb15f0cd39123264ec0d19c710", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-mbstring": "*", + "php": "^7.1.3|^8.0" + }, + "conflict": { + "scrutinizer/ocular": "1.7.*" + }, + "require-dev": { + "mikehaertl/php-shellcommand": "^1.2.5", + "phpstan/phpstan": "^1.4", + "scrutinizer/ocular": "^1.6", + "squizlabs/php_codesniffer": "^2.3 || ^3.0", + "symfony/finder": "^4.4|^5.4|^6.0", + "symfony/phpunit-bridge": "^5.4|^6.0" + }, + "bin": [ + "bin/json5" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + } + }, + "autoload": { + "files": [ + "src/global.php" + ], + "psr-4": { + "ColinODell\\Json5\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Developer" + } + ], + "description": "UTF-8 compatible JSON5 parser for PHP", + "homepage": "https://github.com/colinodell/json5", + "keywords": [ + "JSON5", + "json", + "json5_decode", + "json_decode" + ], + "support": { + "issues": "https://github.com/colinodell/json5/issues", + "source": "https://github.com/colinodell/json5/tree/v2.3.0" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://www.patreon.com/colinodell", + "type": "patreon" + } + ], + "time": "2022-12-27T16:44:40+00:00" + }, + { + "name": "composer/package-versions-deprecated", + "version": "1.11.99.5", + "source": { + "type": "git", + "url": "https://github.com/composer/package-versions-deprecated.git", + "reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b4f54f74ef3453349c24a845d22392cd31e65f1d", + "reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1.0 || ^2.0", + "php": "^7 || ^8" + }, + "replace": { + "ocramius/package-versions": "1.11.99" + }, + "require-dev": { + "composer/composer": "^1.9.3 || ^2.0@dev", + "ext-zip": "^1.13", + "phpunit/phpunit": "^6.5 || ^7" + }, + "type": "composer-plugin", + "extra": { + "class": "PackageVersions\\Installer", + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "PackageVersions\\": "src/PackageVersions" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" + } + ], + "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/1.11.99.5" + }, + "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-01-17T14:14:24+00:00" + }, + { + "name": "composer/pcre", + "version": "3.3.1", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/63aaeac21d7e775ff9bc9d45021e1745c97521c4", + "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<1.11.10" + }, + "require-dev": { + "phpstan/phpstan": "^1.11.10", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "^8 || ^9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "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.3.1" + }, + "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": "2024-08-27T18:44:43+00:00" + }, + { + "name": "composer/semver", + "version": "3.4.3", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "reference": "4313d26ada5e0c4edfbd1dc481a92ff7bff91f12", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.11", + "symfony/phpunit-bridge": "^3 || ^7" + }, + "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": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/semver/issues", + "source": "https://github.com/composer/semver/tree/3.4.3" + }, + "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": "2024-09-19T14:15:21+00:00" + }, + { + "name": "composer/xdebug-handler", + "version": "3.0.5", + "source": { + "type": "git", + "url": "https://github.com/composer/xdebug-handler.git", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/6c1925561632e83d60a44492e0b344cf48ab85ef", + "reference": "6c1925561632e83d60a44492e0b344cf48ab85ef", + "shasum": "" + }, + "require": { + "composer/pcre": "^1 || ^2 || ^3", + "php": "^7.2.5 || ^8.0", + "psr/log": "^1 || ^2 || ^3" + }, + "require-dev": { + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "^8.5 || ^9.6 || ^10.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Composer\\XdebugHandler\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "John Stevenson", + "email": "john-stevenson@blueyonder.co.uk" + } + ], + "description": "Restarts a process without Xdebug.", + "keywords": [ + "Xdebug", + "performance" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/xdebug-handler/issues", + "source": "https://github.com/composer/xdebug-handler/tree/3.0.5" + }, + "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": "2024-05-06T16:37:16+00:00" + }, + { + "name": "dnoegel/php-xdg-base-dir", + "version": "v0.1.1", + "source": { + "type": "git", + "url": "https://github.com/dnoegel/php-xdg-base-dir.git", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dnoegel/php-xdg-base-dir/zipball/8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "reference": "8f8a6e48c5ecb0f991c2fdcf5f154a47d85f9ffd", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "require-dev": { + "phpunit/phpunit": "~7.0|~6.0|~5.0|~4.8.35" + }, + "type": "library", + "autoload": { + "psr-4": { + "XdgBaseDir\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "implementation of xdg base directory specification for php", + "support": { + "issues": "https://github.com/dnoegel/php-xdg-base-dir/issues", + "source": "https://github.com/dnoegel/php-xdg-base-dir/tree/v0.1.1" + }, + "time": "2019-12-04T15:06:13+00:00" + }, + { + "name": "evenement/evenement", + "version": "v3.0.2", + "source": { + "type": "git", + "url": "https://github.com/igorw/evenement.git", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/igorw/evenement/zipball/0a16b0d71ab13284339abb99d9d2bd813640efbc", + "reference": "0a16b0d71ab13284339abb99d9d2bd813640efbc", + "shasum": "" + }, + "require": { + "php": ">=7.0" + }, + "require-dev": { + "phpunit/phpunit": "^9 || ^6" + }, + "type": "library", + "autoload": { + "psr-4": { + "Evenement\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + } + ], + "description": "Événement is a very simple event dispatching library for PHP", + "keywords": [ + "event-dispatcher", + "event-emitter" + ], + "support": { + "issues": "https://github.com/igorw/evenement/issues", + "source": "https://github.com/igorw/evenement/tree/v3.0.2" + }, + "time": "2023-08-08T05:53:35+00:00" + }, + { + "name": "felixfbecker/advanced-json-rpc", + "version": "v3.2.1", + "source": { + "type": "git", + "url": "https://github.com/felixfbecker/php-advanced-json-rpc.git", + "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/felixfbecker/php-advanced-json-rpc/zipball/b5f37dbff9a8ad360ca341f3240dc1c168b45447", + "reference": "b5f37dbff9a8ad360ca341f3240dc1c168b45447", + "shasum": "" + }, + "require": { + "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": { + "phpunit/phpunit": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "AdvancedJsonRpc\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Felix Becker", + "email": "felix.b@outlook.com" + } + ], + "description": "A more advanced JSONRPC implementation", + "support": { + "issues": "https://github.com/felixfbecker/php-advanced-json-rpc/issues", + "source": "https://github.com/felixfbecker/php-advanced-json-rpc/tree/v3.2.1" + }, + "time": "2021-06-11T22:34:44+00:00" + }, + { + "name": "felixfbecker/language-server-protocol", + "version": "v1.5.2", + "source": { + "type": "git", + "url": "https://github.com/felixfbecker/php-language-server-protocol.git", + "reference": "6e82196ffd7c62f7794d778ca52b69feec9f2842" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/felixfbecker/php-language-server-protocol/zipball/6e82196ffd7c62f7794d778ca52b69feec9f2842", + "reference": "6e82196ffd7c62f7794d778ca52b69feec9f2842", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "phpstan/phpstan": "*", + "squizlabs/php_codesniffer": "^3.1", + "vimeo/psalm": "^4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "LanguageServerProtocol\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "ISC" + ], + "authors": [ + { + "name": "Felix Becker", + "email": "felix.b@outlook.com" + } + ], + "description": "PHP classes for the Language Server Protocol", + "keywords": [ + "language", + "microsoft", + "php", + "server" + ], + "support": { + "issues": "https://github.com/felixfbecker/php-language-server-protocol/issues", + "source": "https://github.com/felixfbecker/php-language-server-protocol/tree/v1.5.2" + }, + "time": "2022-03-02T22:36:06+00:00" + }, + { + "name": "fidry/cpu-core-counter", + "version": "1.2.0", + "source": { + "type": "git", + "url": "https://github.com/theofidry/cpu-core-counter.git", + "reference": "8520451a140d3f46ac33042715115e290cf5785f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/8520451a140d3f46ac33042715115e290cf5785f", + "reference": "8520451a140d3f46ac33042715115e290cf5785f", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "fidry/makefile": "^0.2.0", + "fidry/php-cs-fixer-config": "^1.1.2", + "phpstan/extension-installer": "^1.2.0", + "phpstan/phpstan": "^1.9.2", + "phpstan/phpstan-deprecation-rules": "^1.0.0", + "phpstan/phpstan-phpunit": "^1.2.2", + "phpstan/phpstan-strict-rules": "^1.4.4", + "phpunit/phpunit": "^8.5.31 || ^9.5.26", + "webmozarts/strict-phpunit": "^7.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Fidry\\CpuCoreCounter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com" + } + ], + "description": "Tiny utility to get the number of CPU cores.", + "keywords": [ + "CPU", + "core" + ], + "support": { + "issues": "https://github.com/theofidry/cpu-core-counter/issues", + "source": "https://github.com/theofidry/cpu-core-counter/tree/1.2.0" + }, + "funding": [ + { + "url": "https://github.com/theofidry", + "type": "github" + } + ], + "time": "2024-08-06T10:04:20+00:00" + }, + { + "name": "httpsoft/http-basis", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-basis.git", + "reference": "63c4306c516375e3fa08358a58194e159bfbb984" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-basis/zipball/63c4306c516375e3fa08358a58194e159bfbb984", + "reference": "63c4306c516375e3fa08358a58194e159bfbb984", + "shasum": "" + }, + "require": { + "ext-json": "*", + "httpsoft/http-cookie": "^1.1", + "httpsoft/http-emitter": "^1.1", + "httpsoft/http-error-handler": "^1.1", + "httpsoft/http-message": "^1.1", + "httpsoft/http-response": "^1.1", + "httpsoft/http-router": "^1.1", + "httpsoft/http-runner": "^1.1", + "httpsoft/http-server-request": "^1.1", + "php": "^7.4|^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "psr/log": "^1.1|^2.0|^3.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-handler-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "devanych/di-container": "^2.1", + "devanych/view-renderer": "^1.0", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Basis\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Simple and fast HTTP microframework implementing PSR standards", + "homepage": "https://httpsoft.org/", + "keywords": [ + "PSR-11", + "http", + "http-framework", + "microframework", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/basis", + "issues": "https://github.com/httpsoft/http-basis/issues", + "source": "https://github.com/httpsoft/http-basis" + }, + "time": "2023-05-05T22:15:06+00:00" + }, + { + "name": "httpsoft/http-cookie", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-cookie.git", + "reference": "c304b7d9888ed27bf2bcdb95762d87263a457644" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-cookie/zipball/c304b7d9888ed27bf2bcdb95762d87263a457644", + "reference": "c304b7d9888ed27bf2bcdb95762d87263a457644", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Cookie\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Managing cookies with PSR-7 support", + "homepage": "https://httpsoft.org/", + "keywords": [ + "cookie", + "cookies", + "http", + "http-cookie", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/cookie", + "issues": "https://github.com/httpsoft/http-cookie/issues", + "source": "https://github.com/httpsoft/http-cookie" + }, + "time": "2023-05-05T20:37:18+00:00" + }, + { + "name": "httpsoft/http-emitter", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-emitter.git", + "reference": "b09e2834b6d40e022f0c0eb7417f97f496e376b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-emitter/zipball/b09e2834b6d40e022f0c0eb7417f97f496e376b6", + "reference": "b09e2834b6d40e022f0c0eb7417f97f496e376b6", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "psr/http-message": "^1.1|^2.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Emitter\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Emitting of PSR-7 Response implementation", + "homepage": "https://httpsoft.org/", + "keywords": [ + "emitter", + "http", + "http-emitter", + "http-message", + "php", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/emitter", + "issues": "https://github.com/httpsoft/http-emitter/issues", + "source": "https://github.com/httpsoft/http-emitter" + }, + "time": "2023-05-05T20:18:44+00:00" + }, + { + "name": "httpsoft/http-error-handler", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-error-handler.git", + "reference": "f5bfb10cdf6de7420e59d8342ba12f19749e7bc1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-error-handler/zipball/f5bfb10cdf6de7420e59d8342ba12f19749e7bc1", + "reference": "f5bfb10cdf6de7420e59d8342ba12f19749e7bc1", + "shasum": "" + }, + "require": { + "httpsoft/http-response": "^1.1", + "php": "^7.4|^8.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-handler-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-server-request": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\ErrorHandler\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Error handling PSR-7 and PSR-15 components", + "homepage": "https://httpsoft.org/", + "keywords": [ + "error-handler", + "error-middleware", + "http", + "http-error", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/error-handler", + "issues": "https://github.com/httpsoft/http-error-handler/issues", + "source": "https://github.com/httpsoft/http-error-handler" + }, + "time": "2023-05-05T21:14:04+00:00" + }, + { + "name": "httpsoft/http-response", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-response.git", + "reference": "6e9d25a540506ba8a5165817fdd856a856e32c02" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-response/zipball/6e9d25a540506ba8a5165817fdd856a856e32c02", + "reference": "6e9d25a540506ba8a5165817fdd856a856e32c02", + "shasum": "" + }, + "require": { + "httpsoft/http-message": "^1.1", + "php": "^7.4|^8.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Response\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "PSR-7 Response implementations", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-message", + "http-response", + "php", + "psr-7", + "responses" + ], + "support": { + "docs": "https://httpsoft.org/docs/response", + "issues": "https://github.com/httpsoft/http-response/issues", + "source": "https://github.com/httpsoft/http-response" + }, + "time": "2023-05-05T20:55:06+00:00" + }, + { + "name": "httpsoft/http-router", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-router.git", + "reference": "460ee40b15ceb61d86a7c511d321c4580960601e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-router/zipball/460ee40b15ceb61d86a7c511d321c4580960601e", + "reference": "460ee40b15ceb61d86a7c511d321c4580960601e", + "shasum": "" + }, + "require": { + "httpsoft/http-runner": "^1.1", + "php": "^7.4|^8.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Router\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Simple and fast HTTP request router providing PSR-7 and PSR-15", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-router", + "php", + "psr-15", + "psr-7", + "route", + "router" + ], + "support": { + "docs": "https://httpsoft.org/docs/router", + "issues": "https://github.com/httpsoft/http-router/issues", + "source": "https://github.com/httpsoft/http-router" + }, + "time": "2023-05-05T22:02:47+00:00" + }, + { + "name": "httpsoft/http-runner", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-runner.git", + "reference": "00ddc625dbf8f0acb786e899575537c7e8327847" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-runner/zipball/00ddc625dbf8f0acb786e899575537c7e8327847", + "reference": "00ddc625dbf8f0acb786e899575537c7e8327847", + "shasum": "" + }, + "require": { + "httpsoft/http-emitter": "^1.1", + "php": "^7.4|^8.0", + "psr/container": "^1.0|^2.0", + "psr/http-message": "^1.1|^2.0", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0" + }, + "provide": { + "psr/http-message-implementation": "1.0", + "psr/http-server-handler-implementation": "1.0", + "psr/http-server-middleware-implementation": "1.0" + }, + "require-dev": { + "devanych/di-container": "^2.1", + "httpsoft/http-message": "^1.1", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\Runner\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Running PSR-7 components and building PSR-15 middleware pipelines", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-middleware", + "middleware-pipeline", + "php", + "psr-15", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/runner", + "issues": "https://github.com/httpsoft/http-runner/issues", + "source": "https://github.com/httpsoft/http-runner" + }, + "time": "2023-05-05T21:47:55+00:00" + }, + { + "name": "httpsoft/http-server-request", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/httpsoft/http-server-request.git", + "reference": "3d773c8bcaa1c44793d35842fcd82a9d5fd5f193" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/httpsoft/http-server-request/zipball/3d773c8bcaa1c44793d35842fcd82a9d5fd5f193", + "reference": "3d773c8bcaa1c44793d35842fcd82a9d5fd5f193", + "shasum": "" + }, + "require": { + "httpsoft/http-message": "^1.1", + "php": "^7.4|^8.0" + }, + "provide": { + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.7", + "vimeo/psalm": "^4.9|^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "HttpSoft\\ServerRequest\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Evgeniy Zyubin", + "email": "mail@devanych.ru", + "homepage": "https://devanych.ru/", + "role": "Founder and lead developer" + } + ], + "description": "Infrastructure for creating PSR-7 ServerRequest and UploadedFile", + "homepage": "https://httpsoft.org/", + "keywords": [ + "http", + "http-message", + "http-server-request", + "php", + "psr-7" + ], + "support": { + "docs": "https://httpsoft.org/docs/server-request", + "issues": "https://github.com/httpsoft/http-server-request/issues", + "source": "https://github.com/httpsoft/http-server-request" + }, + "time": "2023-05-05T19:55:05+00:00" + }, + { + "name": "infection/abstract-testframework-adapter", + "version": "0.5.0", + "source": { + "type": "git", + "url": "https://github.com/infection/abstract-testframework-adapter.git", + "reference": "18925e20d15d1a5995bb85c9dc09e8751e1e069b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/abstract-testframework-adapter/zipball/18925e20d15d1a5995bb85c9dc09e8751e1e069b", + "reference": "18925e20d15d1a5995bb85c9dc09e8751e1e069b", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8", + "friendsofphp/php-cs-fixer": "^2.17", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Infection\\AbstractTestFramework\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com" + } + ], + "description": "Abstract Test Framework Adapter for Infection", + "support": { + "issues": "https://github.com/infection/abstract-testframework-adapter/issues", + "source": "https://github.com/infection/abstract-testframework-adapter/tree/0.5.0" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2021-08-17T18:49:12+00:00" + }, + { + "name": "infection/extension-installer", + "version": "0.1.2", + "source": { + "type": "git", + "url": "https://github.com/infection/extension-installer.git", + "reference": "9b351d2910b9a23ab4815542e93d541e0ca0cdcf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/extension-installer/zipball/9b351d2910b9a23ab4815542e93d541e0ca0cdcf", + "reference": "9b351d2910b9a23ab4815542e93d541e0ca0cdcf", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1 || ^2.0" + }, + "require-dev": { + "composer/composer": "^1.9 || ^2.0", + "friendsofphp/php-cs-fixer": "^2.18, <2.19", + "infection/infection": "^0.15.2", + "php-coveralls/php-coveralls": "^2.4", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.10", + "phpstan/phpstan-phpunit": "^0.12.6", + "phpstan/phpstan-strict-rules": "^0.12.2", + "phpstan/phpstan-webmozart-assert": "^0.12.2", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^4.8" + }, + "type": "composer-plugin", + "extra": { + "class": "Infection\\ExtensionInstaller\\Plugin" + }, + "autoload": { + "psr-4": { + "Infection\\ExtensionInstaller\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com" + } + ], + "description": "Infection Extension Installer", + "support": { + "issues": "https://github.com/infection/extension-installer/issues", + "source": "https://github.com/infection/extension-installer/tree/0.1.2" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2021-10-20T22:08:34+00:00" + }, + { + "name": "infection/include-interceptor", + "version": "0.2.5", + "source": { + "type": "git", + "url": "https://github.com/infection/include-interceptor.git", + "reference": "0cc76d95a79d9832d74e74492b0a30139904bdf7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/include-interceptor/zipball/0cc76d95a79d9832d74e74492b0a30139904bdf7", + "reference": "0cc76d95a79d9832d74e74492b0a30139904bdf7", + "shasum": "" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.16", + "infection/infection": "^0.15.0", + "phan/phan": "^2.4 || ^3", + "php-coveralls/php-coveralls": "^2.2", + "phpstan/phpstan": "^0.12.8", + "phpunit/phpunit": "^8.5", + "vimeo/psalm": "^3.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "Infection\\StreamWrapper\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com" + } + ], + "description": "Stream Wrapper: Include Interceptor. Allows to replace included (autoloaded) file with another one.", + "support": { + "issues": "https://github.com/infection/include-interceptor/issues", + "source": "https://github.com/infection/include-interceptor/tree/0.2.5" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2021-08-09T10:03:57+00:00" + }, + { + "name": "infection/infection", + "version": "0.27.10", + "source": { + "type": "git", + "url": "https://github.com/infection/infection.git", + "reference": "873cd3335774a114bef9ca93388e623bf362d820" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/infection/infection/zipball/873cd3335774a114bef9ca93388e623bf362d820", + "reference": "873cd3335774a114bef9ca93388e623bf362d820", + "shasum": "" + }, + "require": { + "colinodell/json5": "^2.2", + "composer-runtime-api": "^2.0", + "composer/xdebug-handler": "^2.0 || ^3.0", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "fidry/cpu-core-counter": "^0.4.0 || ^0.5.0 || ^1.0", + "infection/abstract-testframework-adapter": "^0.5.0", + "infection/extension-installer": "^0.1.0", + "infection/include-interceptor": "^0.2.5", + "justinrainbow/json-schema": "^5.2.10", + "nikic/php-parser": "^4.15.1", + "ondram/ci-detector": "^4.1.0", + "php": "^8.1", + "sanmai/later": "^0.1.1", + "sanmai/pipeline": "^5.1 || ^6", + "sebastian/diff": "^3.0.2 || ^4.0 || ^5.0 || ^6.0", + "symfony/console": "^5.4 || ^6.0 || ^7.0", + "symfony/filesystem": "^5.4 || ^6.0 || ^7.0", + "symfony/finder": "^5.4 || ^6.0 || ^7.0", + "symfony/process": "^5.4 || ^6.0 || ^7.0", + "thecodingmachine/safe": "^2.1.2", + "webmozart/assert": "^1.11" + }, + "conflict": { + "antecedent/patchwork": "<2.1.25", + "dg/bypass-finals": "<1.4.1", + "phpunit/php-code-coverage": ">9,<9.1.4 || >9.2.17,<9.2.21" + }, + "require-dev": { + "brianium/paratest": "^6.11", + "ext-simplexml": "*", + "fidry/makefile": "^0.2.0", + "helmich/phpunit-json-assert": "^3.0", + "phpspec/prophecy": "^1.15", + "phpspec/prophecy-phpunit": "^2.0", + "phpstan/extension-installer": "^1.1.0", + "phpstan/phpstan": "^1.10.15", + "phpstan/phpstan-phpunit": "^1.0.0", + "phpstan/phpstan-strict-rules": "^1.1.0", + "phpstan/phpstan-webmozart-assert": "^1.0.2", + "phpunit/phpunit": "^9.6", + "rector/rector": "^0.16.0", + "sidz/phpstan-rules": "^0.4.0", + "symfony/phpunit-bridge": "^5.4 || ^6.0 || ^7.0", + "symfony/yaml": "^5.4 || ^6.0 || ^7.0", + "thecodingmachine/phpstan-safe-rule": "^1.2.0" + }, + "bin": [ + "bin/infection" + ], + "type": "library", + "autoload": { + "psr-4": { + "Infection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Maks Rafalko", + "email": "maks.rafalko@gmail.com", + "homepage": "https://twitter.com/maks_rafalko" + }, + { + "name": "Oleg Zhulnev", + "homepage": "https://github.com/sidz" + }, + { + "name": "Gert de Pagter", + "homepage": "https://github.com/BackEndTea" + }, + { + "name": "Théo FIDRY", + "email": "theo.fidry@gmail.com", + "homepage": "https://twitter.com/tfidry" + }, + { + "name": "Alexey Kopytko", + "email": "alexey@kopytko.com", + "homepage": "https://www.alexeykopytko.com" + }, + { + "name": "Andreas Möller", + "email": "am@localheinz.com", + "homepage": "https://localheinz.com" + } + ], + "description": "Infection is a Mutation Testing framework for PHP. The mutation adequacy score can be used to measure the effectiveness of a test set in terms of its ability to detect faults.", + "keywords": [ + "coverage", + "mutant", + "mutation framework", + "mutation testing", + "testing", + "unit testing" + ], + "support": { + "issues": "https://github.com/infection/infection/issues", + "source": "https://github.com/infection/infection/tree/0.27.10" + }, + "funding": [ + { + "url": "https://github.com/infection", + "type": "github" + }, + { + "url": "https://opencollective.com/infection", + "type": "open_collective" + } + ], + "time": "2024-02-20T00:08:52+00:00" + }, + { + "name": "jolicode/jolinotif", + "version": "v2.7.2", + "source": { + "type": "git", + "url": "https://github.com/jolicode/JoliNotif.git", + "reference": "b34dac1826c8d33e9fd5c300546261e94f1ebdb8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/b34dac1826c8d33e9fd5c300546261e94f1ebdb8", + "reference": "b34dac1826c8d33e9fd5c300546261e94f1ebdb8", + "shasum": "" + }, + "require": { + "jolicode/php-os-helper": "^0.1.0", + "php": ">=8.1", + "psr/log": "^1.0 || ^2.0 || ^3.0", + "symfony/deprecation-contracts": "^3", + "symfony/process": "^5.4 || ^6.0 || ^7.0" + }, + "require-dev": { + "symfony/finder": "^5.4 || ^6.0 || ^7.0", + "symfony/phpunit-bridge": "^5.4 || ^6.0 || ^7.0" + }, + "suggest": { + "ext-ffi": "Needed to send notifications via libnotify on Linux" + }, + "bin": [ + "jolinotif" + ], + "type": "library", + "autoload": { + "psr-4": { + "Joli\\JoliNotif\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Loïck Piera", + "email": "pyrech@gmail.com" + } + ], + "description": "Send desktop notifications on Windows, Linux, MacOS.", + "keywords": [ + "MAC", + "growl", + "linux", + "notification", + "windows" + ], + "support": { + "issues": "https://github.com/jolicode/JoliNotif/issues", + "source": "https://github.com/jolicode/JoliNotif/tree/v2.7.2" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/jolicode/jolinotif", + "type": "tidelift" + } + ], + "time": "2024-06-01T06:05:49+00:00" + }, + { + "name": "jolicode/php-os-helper", + "version": "v0.1.0", + "source": { + "type": "git", + "url": "https://github.com/jolicode/php-os-helper.git", + "reference": "1622ad8bbcab98e62b5c041397e8519f10d90e29" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jolicode/php-os-helper/zipball/1622ad8bbcab98e62b5c041397e8519f10d90e29", + "reference": "1622ad8bbcab98e62b5c041397e8519f10d90e29", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "require-dev": { + "symfony/phpunit-bridge": "^6.3.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "JoliCode\\PhpOsHelper\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Loïck Piera", + "email": "pyrech@gmail.com" + } + ], + "description": "Helpers to detect the OS of the machine where PHP is running.", + "keywords": [ + "linux", + "os", + "osx", + "php", + "windows" + ], + "support": { + "issues": "https://github.com/jolicode/php-os-helper/issues", + "source": "https://github.com/jolicode/php-os-helper/tree/v0.1.0" + }, + "time": "2023-12-03T12:46:03+00:00" + }, + { + "name": "justinrainbow/json-schema", + "version": "5.3.0", + "source": { + "type": "git", + "url": "https://github.com/jsonrainbow/json-schema.git", + "reference": "feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8", + "reference": "feb2ca6dd1cebdaf1ed60a4c8de2e53ce11c4fd8", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "~2.2.20||~2.15.1", + "json-schema/json-schema-test-suite": "1.2.0", + "phpunit/phpunit": "^4.8.35" + }, + "bin": [ + "bin/validate-json" + ], + "type": "library", + "autoload": { + "psr-4": { + "JsonSchema\\": "src/JsonSchema/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bruno Prieto Reis", + "email": "bruno.p.reis@gmail.com" + }, + { + "name": "Justin Rainbow", + "email": "justin.rainbow@gmail.com" + }, + { + "name": "Igor Wiedler", + "email": "igor@wiedler.ch" + }, + { + "name": "Robert Schönthal", + "email": "seroscho@googlemail.com" + } + ], + "description": "A library to validate a json schema.", + "homepage": "https://github.com/justinrainbow/json-schema", + "keywords": [ + "json", + "schema" + ], + "support": { + "issues": "https://github.com/jsonrainbow/json-schema/issues", + "source": "https://github.com/jsonrainbow/json-schema/tree/5.3.0" + }, + "time": "2024-07-06T21:00:26+00:00" + }, + { + "name": "masterminds/html5", + "version": "2.9.0", + "source": { + "type": "git", + "url": "https://github.com/Masterminds/html5-php.git", + "reference": "f5ac2c0b0a2eefca70b2ce32a5809992227e75a6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Masterminds/html5-php/zipball/f5ac2c0b0a2eefca70b2ce32a5809992227e75a6", + "reference": "f5ac2c0b0a2eefca70b2ce32a5809992227e75a6", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7.21 || ^6 || ^7 || ^8 || ^9" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Masterminds\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Matt Butcher", + "email": "technosophos@gmail.com" + }, + { + "name": "Matt Farina", + "email": "matt@mattfarina.com" + }, + { + "name": "Asmir Mustafic", + "email": "goetas@gmail.com" + } + ], + "description": "An HTML5 parser and serializer.", + "homepage": "http://masterminds.github.io/html5-php", + "keywords": [ + "HTML5", + "dom", + "html", + "parser", + "querypath", + "serializer", + "xml" + ], + "support": { + "issues": "https://github.com/Masterminds/html5-php/issues", + "source": "https://github.com/Masterminds/html5-php/tree/2.9.0" + }, + "time": "2024-03-31T07:05:07+00:00" + }, + { + "name": "myclabs/deep-copy", + "version": "1.12.0", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/collections": "<1.6.8", + "doctrine/common": "<2.13.3 || >=3 <3.2.2" + }, + "require-dev": { + "doctrine/collections": "^1.6.8", + "doctrine/common": "^2.13.3 || ^3.2.2", + "phpspec/prophecy": "^1.10", + "phpunit/phpunit": "^7.5.20 || ^8.5.23 || ^9.5.13" + }, + "type": "library", + "autoload": { + "files": [ + "src/DeepCopy/deep_copy.php" + ], + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", + "keywords": [ + "clone", + "copy", + "duplicate", + "object", + "object graph" + ], + "support": { + "issues": "https://github.com/myclabs/DeepCopy/issues", + "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2024-06-12T14:39:25+00:00" + }, + { + "name": "netresearch/jsonmapper", + "version": "v4.5.0", + "source": { + "type": "git", + "url": "https://github.com/cweiske/jsonmapper.git", + "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/cweiske/jsonmapper/zipball/8e76efb98ee8b6afc54687045e1b8dba55ac76e5", + "reference": "8e76efb98ee8b6afc54687045e1b8dba55ac76e5", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-pcre": "*", + "ext-reflection": "*", + "ext-spl": "*", + "php": ">=7.1" + }, + "require-dev": { + "phpunit/phpunit": "~7.5 || ~8.0 || ~9.0 || ~10.0", + "squizlabs/php_codesniffer": "~3.5" + }, + "type": "library", + "autoload": { + "psr-0": { + "JsonMapper": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "OSL-3.0" + ], + "authors": [ + { + "name": "Christian Weiske", + "email": "cweiske@cweiske.de", + "homepage": "http://github.com/cweiske/jsonmapper/", + "role": "Developer" + } + ], + "description": "Map nested JSON structures onto PHP classes", + "support": { + "email": "cweiske@cweiske.de", + "issues": "https://github.com/cweiske/jsonmapper/issues", + "source": "https://github.com/cweiske/jsonmapper/tree/v4.5.0" + }, + "time": "2024-09-08T10:13:13+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.19.2", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "0ed4c8949a32986043e977dbe14776c14d644c45" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/0ed4c8949a32986043e977dbe14776c14d644c45", + "reference": "0ed4c8949a32986043e977dbe14776c14d644c45", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=7.1" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.2" + }, + "time": "2024-09-17T19:36:00+00:00" + }, + { + "name": "nyholm/psr7", + "version": "1.8.2", + "source": { + "type": "git", + "url": "https://github.com/Nyholm/psr7.git", + "reference": "a71f2b11690f4b24d099d6b16690a90ae14fc6f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Nyholm/psr7/zipball/a71f2b11690f4b24d099d6b16690a90ae14fc6f3", + "reference": "a71f2b11690f4b24d099d6b16690a90ae14fc6f3", + "shasum": "" + }, + "require": { + "php": ">=7.2", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.1 || ^2.0" + }, + "provide": { + "php-http/message-factory-implementation": "1.0", + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "http-interop/http-factory-tests": "^0.9", + "php-http/message-factory": "^1.0", + "php-http/psr7-integration-tests": "^1.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.4", + "symfony/error-handler": "^4.4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8-dev" + } + }, + "autoload": { + "psr-4": { + "Nyholm\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com" + }, + { + "name": "Martijn van der Ven", + "email": "martijn@vanderven.se" + } + ], + "description": "A fast PHP7 implementation of PSR-7", + "homepage": "https://tnyholm.se", + "keywords": [ + "psr-17", + "psr-7" + ], + "support": { + "issues": "https://github.com/Nyholm/psr7/issues", + "source": "https://github.com/Nyholm/psr7/tree/1.8.2" + }, + "funding": [ + { + "url": "https://github.com/Zegnat", + "type": "github" + }, + { + "url": "https://github.com/nyholm", + "type": "github" + } + ], + "time": "2024-09-09T07:06:30+00:00" + }, + { + "name": "ondram/ci-detector", + "version": "4.2.0", + "source": { + "type": "git", + "url": "https://github.com/OndraM/ci-detector.git", + "reference": "8b0223b5ed235fd377c75fdd1bfcad05c0f168b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/OndraM/ci-detector/zipball/8b0223b5ed235fd377c75fdd1bfcad05c0f168b8", + "reference": "8b0223b5ed235fd377c75fdd1bfcad05c0f168b8", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.13.2", + "lmc/coding-standard": "^3.0.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.1.0", + "phpstan/phpstan": "^1.2.0", + "phpstan/phpstan-phpunit": "^1.0.0", + "phpunit/phpunit": "^9.6.13" + }, + "type": "library", + "autoload": { + "psr-4": { + "OndraM\\CiDetector\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ondřej Machulda", + "email": "ondrej.machulda@gmail.com" + } + ], + "description": "Detect continuous integration environment and provide unified access to properties of current build", + "keywords": [ + "CircleCI", + "Codeship", + "Wercker", + "adapter", + "appveyor", + "aws", + "aws codebuild", + "azure", + "azure devops", + "azure pipelines", + "bamboo", + "bitbucket", + "buddy", + "ci-info", + "codebuild", + "continuous integration", + "continuousphp", + "devops", + "drone", + "github", + "gitlab", + "interface", + "jenkins", + "pipelines", + "sourcehut", + "teamcity", + "travis" + ], + "support": { + "issues": "https://github.com/OndraM/ci-detector/issues", + "source": "https://github.com/OndraM/ci-detector/tree/4.2.0" + }, + "time": "2024-03-12T13:22:30+00:00" + }, + { + "name": "openlss/lib-array2xml", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/nullivex/lib-array2xml.git", + "reference": "a91f18a8dfc69ffabe5f9b068bc39bb202c81d90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nullivex/lib-array2xml/zipball/a91f18a8dfc69ffabe5f9b068bc39bb202c81d90", + "reference": "a91f18a8dfc69ffabe5f9b068bc39bb202c81d90", + "shasum": "" + }, + "require": { + "php": ">=5.3.2" + }, + "type": "library", + "autoload": { + "psr-0": { + "LSS": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Bryan Tong", + "email": "bryan@nullivex.com", + "homepage": "https://www.nullivex.com" + }, + { + "name": "Tony Butler", + "email": "spudz76@gmail.com", + "homepage": "https://www.nullivex.com" + } + ], + "description": "Array2XML conversion library credit to lalit.org", + "homepage": "https://www.nullivex.com", + "keywords": [ + "array", + "array conversion", + "xml", + "xml conversion" + ], + "support": { + "issues": "https://github.com/nullivex/lib-array2xml/issues", + "source": "https://github.com/nullivex/lib-array2xml/tree/master" + }, + "time": "2019-03-29T20:06:56+00:00" + }, + { + "name": "phar-io/manifest", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "54750ef60c58e43759730615a392c31c80e23176" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176", + "reference": "54750ef60c58e43759730615a392c31c80e23176", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-phar": "*", + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2024-03-03T12:33:53+00:00" + }, + { + "name": "phar-io/version", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Library for handling version information and constraints", + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/3.2.1" + }, + "time": "2022-02-21T01:04:05+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "5.4.1", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "reference": "9d07b3f7fdcf5efec5d1609cba3c19c5ea2bdc9c", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.1", + "ext-filter": "*", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^1.7", + "phpstan/phpdoc-parser": "^1.7", + "webmozart/assert": "^1.9.1" + }, + "require-dev": { + "mockery/mockery": "~1.3.5", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-webmozart-assert": "^1.2", + "phpunit/phpunit": "^9.5", + "vimeo/psalm": "^5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + }, + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.4.1" + }, + "time": "2024-05-21T05:55:05+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "1.8.2", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "153ae662783729388a584b4361f2545e4d841e3c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/153ae662783729388a584b4361f2545e4d841e3c", + "reference": "153ae662783729388a584b4361f2545e4d841e3c", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.0", + "php": "^7.3 || ^8.0", + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^1.13" + }, + "require-dev": { + "ext-tokenizer": "*", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^9.5", + "rector/rector": "^0.13.9", + "vimeo/psalm": "^4.25" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "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.8.2" + }, + "time": "2024-02-23T11:10:43+00:00" + }, + { + "name": "phpspec/php-diff", + "version": "v1.1.3", + "source": { + "type": "git", + "url": "https://github.com/phpspec/php-diff.git", + "reference": "fc1156187f9f6c8395886fe85ed88a0a245d72e9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpspec/php-diff/zipball/fc1156187f9f6c8395886fe85ed88a0a245d72e9", + "reference": "fc1156187f9f6c8395886fe85ed88a0a245d72e9", + "shasum": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-0": { + "Diff": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Chris Boulton", + "homepage": "http://github.com/chrisboulton" + } + ], + "description": "A comprehensive library for generating differences between two hashable objects (strings or arrays).", + "support": { + "source": "https://github.com/phpspec/php-diff/tree/v1.1.3" + }, + "time": "2020-09-18T13:47:07+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "1.30.1", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "51b95ec8670af41009e2b2b56873bad96682413e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/51b95ec8670af41009e2b2b56873bad96682413e", + "reference": "51b95ec8670af41009e2b2b56873bad96682413e", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "nikic/php-parser": "^4.15", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.5", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.30.1" + }, + "time": "2024-09-07T20:13:05+00:00" + }, + { + "name": "phpunit/php-code-coverage", + "version": "9.2.32", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5", + "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-xmlwriter": "*", + "nikic/php-parser": "^4.19.1 || ^5.1.0", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0.6", + "phpunit/php-text-template": "^2.0.4", + "sebastian/code-unit-reverse-lookup": "^2.0.3", + "sebastian/complexity": "^2.0.3", + "sebastian/environment": "^5.1.5", + "sebastian/lines-of-code": "^1.0.4", + "sebastian/version": "^3.0.2", + "theseer/tokenizer": "^1.2.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.6" + }, + "suggest": { + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "9.2.x-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 that provides collection, processing, and rendering functionality for PHP code coverage information.", + "homepage": "https://github.com/sebastianbergmann/php-code-coverage", + "keywords": [ + "coverage", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.32" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-08-22T04:23:01+00:00" + }, + { + "name": "phpunit/php-file-iterator", + "version": "3.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.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": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", + "keywords": [ + "filesystem", + "iterator" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-12-02T12:48:52+00:00" + }, + { + "name": "phpunit/php-invoker", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "shasum": "" + }, + "require": { + "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/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "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" + } + ], + "time": "2020-09-28T05:58:55+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "shasum": "" + }, + "require": { + "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": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "keywords": [ + "template" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T05:33:50+00:00" + }, + { + "name": "phpunit/php-timer", + "version": "5.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.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": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", + "keywords": [ + "timer" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:16:10+00:00" + }, + { + "name": "phpunit/phpunit", + "version": "9.6.21", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.5.0 || ^2", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-xml": "*", + "ext-xmlwriter": "*", + "myclabs/deep-copy": "^1.12.0", + "phar-io/manifest": "^2.0.4", + "phar-io/version": "^3.2.1", + "php": ">=7.3", + "phpunit/php-code-coverage": "^9.2.32", + "phpunit/php-file-iterator": "^3.0.6", + "phpunit/php-invoker": "^3.1.1", + "phpunit/php-text-template": "^2.0.4", + "phpunit/php-timer": "^5.0.3", + "sebastian/cli-parser": "^1.0.2", + "sebastian/code-unit": "^1.0.8", + "sebastian/comparator": "^4.0.8", + "sebastian/diff": "^4.0.6", + "sebastian/environment": "^5.1.5", + "sebastian/exporter": "^4.0.6", + "sebastian/global-state": "^5.0.7", + "sebastian/object-enumerator": "^4.0.4", + "sebastian/resource-operations": "^3.0.4", + "sebastian/type": "^3.2.1", + "sebastian/version": "^3.0.2" + }, + "suggest": { + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + }, + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.6-dev" + } + }, + "autoload": { + "files": [ + "src/Framework/Assert/Functions.php" + ], + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "The PHP Unit Testing framework.", + "homepage": "https://phpunit.de/", + "keywords": [ + "phpunit", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "security": "https://github.com/sebastianbergmann/phpunit/security/policy", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21" + }, + "funding": [ + { + "url": "https://phpunit.de/sponsors.html", + "type": "custom" + }, + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", + "type": "tidelift" + } + ], + "time": "2024-09-19T10:50:18+00:00" + }, + { + "name": "psy/psysh", + "version": "v0.12.4", + "source": { + "type": "git", + "url": "https://github.com/bobthecow/psysh.git", + "reference": "2fd717afa05341b4f8152547f142cd2f130f6818" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/2fd717afa05341b4f8152547f142cd2f130f6818", + "reference": "2fd717afa05341b4f8152547f142cd2f130f6818", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "nikic/php-parser": "^5.0 || ^4.0", + "php": "^8.0 || ^7.4", + "symfony/console": "^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4", + "symfony/var-dumper": "^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4" + }, + "conflict": { + "symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2" + }, + "suggest": { + "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", + "ext-pdo-sqlite": "The doc command requires SQLite to work.", + "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well." + }, + "bin": [ + "bin/psysh" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.12.x-dev" + }, + "bamarni-bin": { + "bin-links": false, + "forward-command": false + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Psy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Justin Hileman", + "email": "justin@justinhileman.info", + "homepage": "http://justinhileman.com" + } + ], + "description": "An interactive shell for modern PHP.", + "homepage": "http://psysh.org", + "keywords": [ + "REPL", + "console", + "interactive", + "shell" + ], + "support": { + "issues": "https://github.com/bobthecow/psysh/issues", + "source": "https://github.com/bobthecow/psysh/tree/v0.12.4" + }, + "time": "2024-06-10T01:18:23+00:00" + }, + { + "name": "react/event-loop", + "version": "v1.5.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/event-loop.git", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "suggest": { + "ext-pcntl": "For signal handling support when using the StreamSelectLoop" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\EventLoop\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.", + "keywords": [ + "asynchronous", + "event-loop" + ], + "support": { + "issues": "https://github.com/reactphp/event-loop/issues", + "source": "https://github.com/reactphp/event-loop/tree/v1.5.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2023-11-13T13:48:05+00:00" + }, + { + "name": "react/stream", + "version": "v1.4.0", + "source": { + "type": "git", + "url": "https://github.com/reactphp/stream.git", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/reactphp/stream/zipball/1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "reference": "1e5b0acb8fe55143b5b426817155190eb6f5b18d", + "shasum": "" + }, + "require": { + "evenement/evenement": "^3.0 || ^2.0 || ^1.0", + "php": ">=5.3.8", + "react/event-loop": "^1.2" + }, + "require-dev": { + "clue/stream-filter": "~1.2", + "phpunit/phpunit": "^9.6 || ^5.7 || ^4.8.36" + }, + "type": "library", + "autoload": { + "psr-4": { + "React\\Stream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Christian Lück", + "email": "christian@clue.engineering", + "homepage": "https://clue.engineering/" + }, + { + "name": "Cees-Jan Kiewiet", + "email": "reactphp@ceesjankiewiet.nl", + "homepage": "https://wyrihaximus.net/" + }, + { + "name": "Jan Sorgalla", + "email": "jsorgalla@gmail.com", + "homepage": "https://sorgalla.com/" + }, + { + "name": "Chris Boden", + "email": "cboden@gmail.com", + "homepage": "https://cboden.dev/" + } + ], + "description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP", + "keywords": [ + "event-driven", + "io", + "non-blocking", + "pipe", + "reactphp", + "readable", + "stream", + "writable" + ], + "support": { + "issues": "https://github.com/reactphp/stream/issues", + "source": "https://github.com/reactphp/stream/tree/v1.4.0" + }, + "funding": [ + { + "url": "https://opencollective.com/reactphp", + "type": "open_collective" + } + ], + "time": "2024-06-11T12:45:25+00:00" + }, + { + "name": "roave/infection-static-analysis-plugin", + "version": "1.35.0", + "source": { + "type": "git", + "url": "https://github.com/Roave/infection-static-analysis-plugin.git", + "reference": "3cb32845c5f758913a4b9eafd91ae18eafc26d82" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Roave/infection-static-analysis-plugin/zipball/3cb32845c5f758913a4b9eafd91ae18eafc26d82", + "reference": "3cb32845c5f758913a4b9eafd91ae18eafc26d82", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2.2", + "infection/infection": "0.27.10", + "php": "~8.1.0 || ~8.2.0 || ~8.3.0", + "sanmai/later": "^0.1.4", + "vimeo/psalm": "^4.30.0 || ^5.15" + }, + "require-dev": { + "doctrine/coding-standard": "^12.0.0", + "phpunit/phpunit": "^10.5.12" + }, + "bin": [ + "bin/roave-infection-static-analysis-plugin" + ], + "type": "library", + "autoload": { + "psr-4": { + "Roave\\InfectionStaticAnalysis\\": "src/Roave/InfectionStaticAnalysis" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "Static analysis on top of mutation testing - prevents escaped mutants from being invalid according to static analysis", + "support": { + "issues": "https://github.com/Roave/infection-static-analysis-plugin/issues", + "source": "https://github.com/Roave/infection-static-analysis-plugin/tree/1.35.0" + }, + "time": "2024-03-10T11:55:48+00:00" + }, + { + "name": "roave/security-advisories", + "version": "dev-latest", + "source": { + "type": "git", + "url": "https://github.com/Roave/SecurityAdvisories.git", + "reference": "4b6b927472278272e2411f4341dba95d96c8c7d7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/4b6b927472278272e2411f4341dba95d96c8c7d7", + "reference": "4b6b927472278272e2411f4341dba95d96c8c7d7", + "shasum": "" + }, + "conflict": { + "3f/pygmentize": "<1.2", + "admidio/admidio": "<4.3.10", + "adodb/adodb-php": "<=5.20.20|>=5.21,<=5.21.3", + "aheinze/cockpit": "<2.2", + "aimeos/ai-admin-graphql": ">=2022.04.1,<2022.10.10|>=2023.04.1,<2023.10.6|>=2024.04.1,<2024.04.6", + "aimeos/ai-admin-jsonadm": "<2020.10.13|>=2021.04.1,<2021.10.6|>=2022.04.1,<2022.10.3|>=2023.04.1,<2023.10.4|==2024.04.1", + "aimeos/ai-client-html": ">=2020.04.1,<2020.10.27|>=2021.04.1,<2021.10.22|>=2022.04.1,<2022.10.13|>=2023.04.1,<2023.10.15|>=2024.04.1,<2024.04.7", + "aimeos/ai-controller-frontend": "<2020.10.15|>=2021.04.1,<2021.10.8|>=2022.04.1,<2022.10.8|>=2023.04.1,<2023.10.9", + "aimeos/aimeos-core": ">=2022.04.1,<2022.10.17|>=2023.04.1,<2023.10.17|>=2024.04.1,<2024.04.7", + "aimeos/aimeos-typo3": "<19.10.12|>=20,<20.10.5", + "airesvsg/acf-to-rest-api": "<=3.1", + "akaunting/akaunting": "<2.1.13", + "akeneo/pim-community-dev": "<5.0.119|>=6,<6.0.53", + "alextselegidis/easyappointments": "<1.5", + "alterphp/easyadmin-extension-bundle": ">=1.2,<1.2.11|>=1.3,<1.3.1", + "amazing/media2click": ">=1,<1.3.3", + "amphp/artax": "<1.0.6|>=2,<2.0.6", + "amphp/http": "<=1.7.2|>=2,<=2.1", + "amphp/http-client": ">=4,<4.4", + "anchorcms/anchor-cms": "<=0.12.7", + "andreapollastri/cipi": "<=3.1.15", + "andrewhaine/silverstripe-form-capture": ">=0.2,<=0.2.3|>=1,<1.0.2|>=2,<2.2.5", + "apache-solr-for-typo3/solr": "<2.8.3", + "apereo/phpcas": "<1.6", + "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6|>=2.6,<2.7.10|>=3,<3.0.12|>=3.1,<3.1.3", + "appwrite/server-ce": "<=1.2.1", + "arc/web": "<3", + "area17/twill": "<1.2.5|>=2,<2.5.3", + "artesaos/seotools": "<0.17.2", + "asymmetricrypt/asymmetricrypt": "<9.9.99", + "athlon1600/php-proxy": "<=5.1", + "athlon1600/php-proxy-app": "<=3", + "austintoddj/canvas": "<=3.4.2", + "auth0/wordpress": "<=4.6", + "automad/automad": "<2.0.0.0-alpha5", + "automattic/jetpack": "<9.8", + "awesome-support/awesome-support": "<=6.0.7", + "aws/aws-sdk-php": "<3.288.1", + "azuracast/azuracast": "<0.18.3", + "backdrop/backdrop": "<1.27.3|>=1.28,<1.28.2", + "backpack/crud": "<3.4.9", + "bacula-web/bacula-web": "<8.0.0.0-RC2-dev", + "badaso/core": "<2.7", + "bagisto/bagisto": "<2.1", + "barrelstrength/sprout-base-email": "<1.2.7", + "barrelstrength/sprout-forms": "<3.9", + "barryvdh/laravel-translation-manager": "<0.6.2", + "barzahlen/barzahlen-php": "<2.0.1", + "baserproject/basercms": "<5.0.9", + "bassjobsen/bootstrap-3-typeahead": ">4.0.2", + "bbpress/bbpress": "<2.6.5", + "bcosca/fatfree": "<3.7.2", + "bedita/bedita": "<4", + "bigfork/silverstripe-form-capture": ">=3,<3.1.1", + "billz/raspap-webgui": "<=3.1.4", + "bk2k/bootstrap-package": ">=7.1,<7.1.2|>=8,<8.0.8|>=9,<9.0.4|>=9.1,<9.1.3|>=10,<10.0.10|>=11,<11.0.3", + "blueimp/jquery-file-upload": "==6.4.4", + "bmarshall511/wordpress_zero_spam": "<5.2.13", + "bolt/bolt": "<3.7.2", + "bolt/core": "<=4.2", + "born05/craft-twofactorauthentication": "<3.3.4", + "bottelet/flarepoint": "<2.2.1", + "bref/bref": "<2.1.17", + "brightlocal/phpwhois": "<=4.2.5", + "brotkrueml/codehighlight": "<2.7", + "brotkrueml/schema": "<1.13.1|>=2,<2.5.1", + "brotkrueml/typo3-matomo-integration": "<1.3.2", + "buddypress/buddypress": "<7.2.1", + "bugsnag/bugsnag-laravel": ">=2,<2.0.2", + "bytefury/crater": "<6.0.2", + "cachethq/cachet": "<2.5.1", + "cakephp/cakephp": "<3.10.3|>=4,<4.0.10|>=4.1,<4.1.4|>=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10", + "cakephp/database": ">=4.2,<4.2.12|>=4.3,<4.3.11|>=4.4,<4.4.10", + "cardgate/magento2": "<2.0.33", + "cardgate/woocommerce": "<=3.1.15", + "cart2quote/module-quotation": ">=4.1.6,<=4.4.5|>=5,<5.4.4", + "cart2quote/module-quotation-encoded": ">=4.1.6,<=4.4.5|>=5,<5.4.4", + "cartalyst/sentry": "<=2.1.6", + "catfan/medoo": "<1.7.5", + "causal/oidc": "<2.1", + "cecil/cecil": "<7.47.1", + "centreon/centreon": "<22.10.15", + "cesnet/simplesamlphp-module-proxystatistics": "<3.1", + "chriskacerguis/codeigniter-restserver": "<=2.7.1", + "civicrm/civicrm-core": ">=4.2,<4.2.9|>=4.3,<4.3.3", + "ckeditor/ckeditor": "<4.24", + "cockpit-hq/cockpit": "<2.7|==2.7", + "codeception/codeception": "<3.1.3|>=4,<4.1.22", + "codeigniter/framework": "<3.1.9", + "codeigniter4/framework": "<4.4.7", + "codeigniter4/shield": "<1.0.0.0-beta8", + "codiad/codiad": "<=2.8.4", + "composer/composer": "<1.10.27|>=2,<2.2.24|>=2.3,<2.7.7", + "concrete5/concrete5": "<9.3.4", + "concrete5/core": "<8.5.8|>=9,<9.1", + "contao-components/mediaelement": ">=2.14.2,<2.21.1", + "contao/comments-bundle": ">=2,<4.13.40|>=5.0.0.0-RC1-dev,<5.3.4", + "contao/contao": ">=3,<3.5.37|>=4,<4.4.56|>=4.5,<4.9.40|>=4.10,<4.11.7|>=4.13,<4.13.21|>=5.1,<5.1.4", + "contao/core": "<3.5.39", + "contao/core-bundle": "<4.13.49|>=5,<5.3.15|>=5.4,<5.4.3", + "contao/listing-bundle": ">=3,<=3.5.30|>=4,<4.4.8", + "contao/managed-edition": "<=1.5", + "corveda/phpsandbox": "<1.3.5", + "cosenary/instagram": "<=2.3", + "craftcms/cms": "<4.6.2|>=5,<=5.2.2", + "croogo/croogo": "<4", + "cuyz/valinor": "<0.12", + "czim/file-handling": "<1.5|>=2,<2.3", + "czproject/git-php": "<4.0.3", + "damienharper/auditor-bundle": "<5.2.6", + "dapphp/securimage": "<3.6.6", + "darylldoyle/safe-svg": "<1.9.10", + "datadog/dd-trace": ">=0.30,<0.30.2", + "datatables/datatables": "<1.10.10", + "david-garcia/phpwhois": "<=4.3.1", + "dbrisinajumi/d2files": "<1", + "dcat/laravel-admin": "<=2.1.3", + "derhansen/fe_change_pwd": "<2.0.5|>=3,<3.0.3", + "derhansen/sf_event_mgt": "<4.3.1|>=5,<5.1.1|>=7,<7.4", + "desperado/xml-bundle": "<=0.1.7", + "devgroup/dotplant": "<2020.09.14-dev", + "directmailteam/direct-mail": "<6.0.3|>=7,<7.0.3|>=8,<9.5.2", + "doctrine/annotations": "<1.2.7", + "doctrine/cache": ">=1,<1.3.2|>=1.4,<1.4.2", + "doctrine/common": "<2.4.3|>=2.5,<2.5.1", + "doctrine/dbal": ">=2,<2.0.8|>=2.1,<2.1.2|>=3,<3.1.4", + "doctrine/doctrine-bundle": "<1.5.2", + "doctrine/doctrine-module": "<0.7.2", + "doctrine/mongodb-odm": "<1.0.2", + "doctrine/mongodb-odm-bundle": "<3.0.1", + "doctrine/orm": ">=1,<1.2.4|>=2,<2.4.8|>=2.5,<2.5.1|>=2.8.3,<2.8.4", + "dolibarr/dolibarr": "<19.0.2", + "dompdf/dompdf": "<2.0.4", + "doublethreedigital/guest-entries": "<3.1.2", + "drupal/core": ">=6,<6.38|>=7,<7.96|>=8,<10.1.8|>=10.2,<10.2.2|==11.9999999.9999999.9999999-dev", + "drupal/core-recommended": "==11.9999999.9999999.9999999-dev", + "drupal/drupal": ">=5,<5.11|>=6,<6.38|>=7,<7.80|>=8,<8.9.16|>=9,<9.1.12|>=9.2,<9.2.4|==11.9999999.9999999.9999999-dev", + "duncanmcclean/guest-entries": "<3.1.2", + "dweeves/magmi": "<=0.7.24", + "ec-cube/ec-cube": "<2.4.4|>=2.11,<=2.17.1|>=3,<=3.0.18.0-patch4|>=4,<=4.1.2", + "ecodev/newsletter": "<=4", + "ectouch/ectouch": "<=2.7.2", + "egroupware/egroupware": "<23.1.20240624", + "elefant/cms": "<2.0.7", + "elgg/elgg": "<3.3.24|>=4,<4.0.5", + "elijaa/phpmemcacheadmin": "<=1.3", + "encore/laravel-admin": "<=1.8.19", + "endroid/qr-code-bundle": "<3.4.2", + "enhavo/enhavo-app": "<=0.13.1", + "enshrined/svg-sanitize": "<0.15", + "erusev/parsedown": "<1.7.2", + "ether/logs": "<3.0.4", + "evolutioncms/evolution": "<=3.2.3", + "exceedone/exment": "<4.4.3|>=5,<5.0.3", + "exceedone/laravel-admin": "<2.2.3|==3", + "ezsystems/demobundle": ">=5.4,<5.4.6.1-dev", + "ezsystems/ez-support-tools": ">=2.2,<2.2.3", + "ezsystems/ezdemo-ls-extension": ">=5.4,<5.4.2.1-dev", + "ezsystems/ezfind-ls": ">=5.3,<5.3.6.1-dev|>=5.4,<5.4.11.1-dev|>=2017.12,<2017.12.0.1-dev", + "ezsystems/ezplatform": "<=1.13.6|>=2,<=2.5.24", + "ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26|>=3.3,<3.3.39", + "ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2.1|>=5,<5.0.1|>=5.1,<5.1.1", + "ezsystems/ezplatform-graphql": ">=1.0.0.0-RC1-dev,<1.0.13|>=2.0.0.0-beta1,<2.3.12", + "ezsystems/ezplatform-kernel": "<1.2.5.1-dev|>=1.3,<1.3.35", + "ezsystems/ezplatform-rest": ">=1.2,<=1.2.2|>=1.3,<1.3.8", + "ezsystems/ezplatform-richtext": ">=2.3,<2.3.7.1-dev|>=3.3,<3.3.40", + "ezsystems/ezplatform-solr-search-engine": ">=1.7,<1.7.12|>=2,<2.0.2|>=3.3,<3.3.15", + "ezsystems/ezplatform-user": ">=1,<1.0.1", + "ezsystems/ezpublish-kernel": "<6.13.8.2-dev|>=7,<7.5.31", + "ezsystems/ezpublish-legacy": "<=2017.12.7.3|>=2018.6,<=2019.03.5.1", + "ezsystems/platform-ui-assets-bundle": ">=4.2,<4.2.3", + "ezsystems/repository-forms": ">=2.3,<2.3.2.1-dev|>=2.5,<2.5.15", + "ezyang/htmlpurifier": "<4.1.1", + "facade/ignition": "<1.16.15|>=2,<2.4.2|>=2.5,<2.5.2", + "facturascripts/facturascripts": "<=2022.08", + "fastly/magento2": "<1.2.26", + "feehi/cms": "<=2.1.1", + "feehi/feehicms": "<=2.1.1", + "fenom/fenom": "<=2.12.1", + "filegator/filegator": "<7.8", + "filp/whoops": "<2.1.13", + "fineuploader/php-traditional-server": "<=1.2.2", + "firebase/php-jwt": "<6", + "fisharebest/webtrees": "<=2.1.18", + "fixpunkt/fp-masterquiz": "<2.2.1|>=3,<3.5.2", + "fixpunkt/fp-newsletter": "<1.1.1|>=2,<2.1.2|>=2.2,<3.2.6", + "flarum/core": "<1.8.5", + "flarum/flarum": "<0.1.0.0-beta8", + "flarum/framework": "<1.8.5", + "flarum/mentions": "<1.6.3", + "flarum/sticky": ">=0.1.0.0-beta14,<=0.1.0.0-beta15", + "flarum/tags": "<=0.1.0.0-beta13", + "floriangaerber/magnesium": "<0.3.1", + "fluidtypo3/vhs": "<5.1.1", + "fof/byobu": ">=0.3.0.0-beta2,<1.1.7", + "fof/upload": "<1.2.3", + "foodcoopshop/foodcoopshop": ">=3.2,<3.6.1", + "fooman/tcpdf": "<6.2.22", + "forkcms/forkcms": "<5.11.1", + "fossar/tcpdf-parser": "<6.2.22", + "francoisjacquet/rosariosis": "<=11.5.1", + "frappant/frp-form-answers": "<3.1.2|>=4,<4.0.2", + "friendsofsymfony/oauth2-php": "<1.3", + "friendsofsymfony/rest-bundle": ">=1.2,<1.2.2", + "friendsofsymfony/user-bundle": ">=1,<1.3.5", + "friendsofsymfony1/swiftmailer": ">=4,<5.4.13|>=6,<6.2.5", + "friendsofsymfony1/symfony1": ">=1.1,<1.5.19", + "friendsoftypo3/mediace": ">=7.6.2,<7.6.5", + "friendsoftypo3/openid": ">=4.5,<4.5.31|>=4.7,<4.7.16|>=6,<6.0.11|>=6.1,<6.1.6", + "froala/wysiwyg-editor": "<3.2.7|>=4.0.1,<=4.1.3", + "froxlor/froxlor": "<=2.2.0.0-RC3", + "frozennode/administrator": "<=5.0.12", + "fuel/core": "<1.8.1", + "funadmin/funadmin": "<=3.2|>=3.3.2,<=3.3.3", + "gaoming13/wechat-php-sdk": "<=1.10.2", + "genix/cms": "<=1.1.11", + "getformwork/formwork": "<1.13.1|==2.0.0.0-beta1", + "getgrav/grav": "<1.7.46", + "getkirby/cms": "<=3.6.6.5|>=3.7,<=3.7.5.4|>=3.8,<=3.8.4.3|>=3.9,<=3.9.8.1|>=3.10,<=3.10.1|>=4,<=4.3", + "getkirby/kirby": "<=2.5.12", + "getkirby/panel": "<2.5.14", + "getkirby/starterkit": "<=3.7.0.2", + "gilacms/gila": "<=1.15.4", + "gleez/cms": "<=1.3|==2", + "globalpayments/php-sdk": "<2", + "gogentooss/samlbase": "<1.2.7", + "google/protobuf": "<3.15", + "gos/web-socket-bundle": "<1.10.4|>=2,<2.6.1|>=3,<3.3", + "gree/jose": "<2.2.1", + "gregwar/rst": "<1.0.3", + "grumpydictator/firefly-iii": "<6.1.17", + "gugoan/economizzer": "<=0.9.0.0-beta1", + "guzzlehttp/guzzle": "<6.5.8|>=7,<7.4.5", + "guzzlehttp/psr7": "<1.9.1|>=2,<2.4.5", + "haffner/jh_captcha": "<=2.1.3|>=3,<=3.0.2", + "harvesthq/chosen": "<1.8.7", + "helloxz/imgurl": "<=2.31", + "hhxsv5/laravel-s": "<3.7.36", + "hillelcoren/invoice-ninja": "<5.3.35", + "himiklab/yii2-jqgrid-widget": "<1.0.8", + "hjue/justwriting": "<=1", + "hov/jobfair": "<1.0.13|>=2,<2.0.2", + "httpsoft/http-message": "<1.0.12", + "hyn/multi-tenant": ">=5.6,<5.7.2", + "ibexa/admin-ui": ">=4.2,<4.2.3|>=4.6.0.0-beta1,<4.6.9", + "ibexa/core": ">=4,<4.0.7|>=4.1,<4.1.4|>=4.2,<4.2.3|>=4.5,<4.5.6|>=4.6,<4.6.2", + "ibexa/fieldtype-richtext": ">=4.6,<4.6.10", + "ibexa/graphql": ">=2.5,<2.5.31|>=3.3,<3.3.28|>=4.2,<4.2.3", + "ibexa/post-install": "<=1.0.4", + "ibexa/solr": ">=4.5,<4.5.4", + "ibexa/user": ">=4,<4.4.3", + "icecoder/icecoder": "<=8.1", + "idno/known": "<=1.3.1", + "ilicmiljan/secure-props": ">=1.2,<1.2.2", + "illuminate/auth": "<5.5.10", + "illuminate/cookie": ">=4,<=4.0.11|>=4.1,<6.18.31|>=7,<7.22.4", + "illuminate/database": "<6.20.26|>=7,<7.30.5|>=8,<8.40", + "illuminate/encryption": ">=4,<=4.0.11|>=4.1,<=4.1.31|>=4.2,<=4.2.22|>=5,<=5.0.35|>=5.1,<=5.1.46|>=5.2,<=5.2.45|>=5.3,<=5.3.31|>=5.4,<=5.4.36|>=5.5,<5.5.40|>=5.6,<5.6.15", + "illuminate/view": "<6.20.42|>=7,<7.30.6|>=8,<8.75", + "imdbphp/imdbphp": "<=5.1.1", + "impresscms/impresscms": "<=1.4.5", + "impresspages/impresspages": "<=1.0.12", + "in2code/femanager": "<5.5.3|>=6,<6.3.4|>=7,<7.2.3", + "in2code/ipandlanguageredirect": "<5.1.2", + "in2code/lux": "<17.6.1|>=18,<24.0.2", + "in2code/powermail": "<7.5.1|>=8,<8.5.1|>=9,<10.9.1|>=11,<12.4.1", + "innologi/typo3-appointments": "<2.0.6", + "intelliants/subrion": "<4.2.2", + "inter-mediator/inter-mediator": "==5.5", + "ipl/web": "<0.10.1", + "islandora/islandora": ">=2,<2.4.1", + "ivankristianto/phpwhois": "<=4.3", + "jackalope/jackalope-doctrine-dbal": "<1.7.4", + "james-heinrich/getid3": "<1.9.21", + "james-heinrich/phpthumb": "<1.7.12", + "jasig/phpcas": "<1.3.3", + "jcbrand/converse.js": "<3.3.3", + "johnbillion/wp-crontrol": "<1.16.2", + "joomla/application": "<1.0.13", + "joomla/archive": "<1.1.12|>=2,<2.0.1", + "joomla/filesystem": "<1.6.2|>=2,<2.0.1", + "joomla/filter": "<1.4.4|>=2,<2.0.1", + "joomla/framework": "<1.5.7|>=2.5.4,<=3.8.12", + "joomla/input": ">=2,<2.0.2", + "joomla/joomla-cms": ">=2.5,<3.9.12", + "joomla/session": "<1.3.1", + "joyqi/hyper-down": "<=2.4.27", + "jsdecena/laracom": "<2.0.9", + "jsmitty12/phpwhois": "<5.1", + "juzaweb/cms": "<=3.4", + "jweiland/events2": "<8.3.8|>=9,<9.0.6", + "kazist/phpwhois": "<=4.2.6", + "kelvinmo/simplexrd": "<3.1.1", + "kevinpapst/kimai2": "<1.16.7", + "khodakhah/nodcms": "<=3", + "kimai/kimai": "<=2.20.1", + "kitodo/presentation": "<3.2.3|>=3.3,<3.3.4", + "klaviyo/magento2-extension": ">=1,<3", + "knplabs/knp-snappy": "<=1.4.2", + "kohana/core": "<3.3.3", + "krayin/laravel-crm": "<1.2.2", + "kreait/firebase-php": ">=3.2,<3.8.1", + "kumbiaphp/kumbiapp": "<=1.1.1", + "la-haute-societe/tcpdf": "<6.2.22", + "laminas/laminas-diactoros": "<2.18.1|==2.19|==2.20|==2.21|==2.22|==2.23|>=2.24,<2.24.2|>=2.25,<2.25.2", + "laminas/laminas-form": "<2.17.1|>=3,<3.0.2|>=3.1,<3.1.1", + "laminas/laminas-http": "<2.14.2", + "laravel/fortify": "<1.11.1", + "laravel/framework": "<6.20.44|>=7,<7.30.6|>=8,<8.75", + "laravel/laravel": ">=5.4,<5.4.22", + "laravel/socialite": ">=1,<2.0.10", + "latte/latte": "<2.10.8", + "lavalite/cms": "<=9|==10.1", + "lcobucci/jwt": ">=3.4,<3.4.6|>=4,<4.0.4|>=4.1,<4.1.5", + "league/commonmark": "<0.18.3", + "league/flysystem": "<1.1.4|>=2,<2.1.1", + "league/oauth2-server": ">=8.3.2,<8.4.2|>=8.5,<8.5.3", + "lexik/jwt-authentication-bundle": "<2.10.7|>=2.11,<2.11.3", + "libreform/libreform": ">=2,<=2.0.8", + "librenms/librenms": "<2017.08.18", + "liftkit/database": "<2.13.2", + "lightsaml/lightsaml": "<1.3.5", + "limesurvey/limesurvey": "<3.27.19", + "livehelperchat/livehelperchat": "<=3.91", + "livewire/livewire": ">2.2.4,<2.2.6|>=3.3.5,<3.4.9", + "lms/routes": "<2.1.1", + "localizationteam/l10nmgr": "<7.4|>=8,<8.7|>=9,<9.2", + "luyadev/yii-helpers": "<1.2.1", + "magento/community-edition": "<2.4.5|==2.4.5|>=2.4.5.0-patch1,<2.4.5.0-patch9|==2.4.6|>=2.4.6.0-patch1,<2.4.6.0-patch7|==2.4.7|>=2.4.7.0-patch1,<2.4.7.0-patch2", + "magento/core": "<=1.9.4.5", + "magento/magento1ce": "<1.9.4.3-dev", + "magento/magento1ee": ">=1,<1.14.4.3-dev", + "magento/product-community-edition": "<2.4.4.0-patch9|>=2.4.5,<2.4.5.0-patch8|>=2.4.6,<2.4.6.0-patch6|>=2.4.7,<2.4.7.0-patch1", + "magneto/core": "<1.9.4.4-dev", + "maikuolan/phpmussel": ">=1,<1.6", + "mainwp/mainwp": "<=4.4.3.3", + "mantisbt/mantisbt": "<2.26.2", + "marcwillmann/turn": "<0.3.3", + "matyhtf/framework": "<3.0.6", + "mautic/core": "<4.4.13|>=5,<5.1.1", + "mautic/core-lib": ">=1.0.0.0-beta,<4.4.13|>=5.0.0.0-alpha,<5.1.1", + "mdanter/ecc": "<2", + "mediawiki/core": "<1.36.2", + "mediawiki/matomo": "<2.4.3", + "mediawiki/semantic-media-wiki": "<4.0.2", + "melisplatform/melis-asset-manager": "<5.0.1", + "melisplatform/melis-cms": "<5.0.1", + "melisplatform/melis-front": "<5.0.1", + "mezzio/mezzio-swoole": "<3.7|>=4,<4.3", + "mgallegos/laravel-jqgrid": "<=1.3", + "microsoft/microsoft-graph": ">=1.16,<1.109.1|>=2,<2.0.1", + "microsoft/microsoft-graph-beta": "<2.0.1", + "microsoft/microsoft-graph-core": "<2.0.2", + "microweber/microweber": "<=2.0.16", + "mikehaertl/php-shellcommand": "<1.6.1", + "miniorange/miniorange-saml": "<1.4.3", + "mittwald/typo3_forum": "<1.2.1", + "mobiledetect/mobiledetectlib": "<2.8.32", + "modx/revolution": "<=2.8.3.0-patch", + "mojo42/jirafeau": "<4.4", + "mongodb/mongodb": ">=1,<1.9.2", + "monolog/monolog": ">=1.8,<1.12", + "moodle/moodle": "<4.3.5|>=4.4.0.0-beta,<4.4.1", + "mos/cimage": "<0.7.19", + "movim/moxl": ">=0.8,<=0.10", + "movingbytes/social-network": "<=1.2.1", + "mpdf/mpdf": "<=7.1.7", + "munkireport/comment": "<4.1", + "munkireport/managedinstalls": "<2.6", + "munkireport/munki_facts": "<1.5", + "munkireport/munkireport": ">=2.5.3,<5.6.3", + "munkireport/reportdata": "<3.5", + "munkireport/softwareupdate": "<1.6", + "mustache/mustache": ">=2,<2.14.1", + "namshi/jose": "<2.2", + "nategood/httpful": "<1", + "neoan3-apps/template": "<1.1.1", + "neorazorx/facturascripts": "<2022.04", + "neos/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.12|>=3.1,<3.1.10|>=3.2,<3.2.13|>=3.3,<3.3.13|>=4,<4.0.6", + "neos/form": ">=1.2,<4.3.3|>=5,<5.0.9|>=5.1,<5.1.3", + "neos/media-browser": "<7.3.19|>=8,<8.0.16|>=8.1,<8.1.11|>=8.2,<8.2.11|>=8.3,<8.3.9", + "neos/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4|>=2.3,<3.0.20|>=3.1,<3.1.18|>=3.2,<3.2.14|>=3.3,<5.3.10|>=7,<7.0.9|>=7.1,<7.1.7|>=7.2,<7.2.6|>=7.3,<7.3.4|>=8,<8.0.2", + "neos/swiftmailer": "<5.4.5", + "netgen/tagsbundle": ">=3.4,<3.4.11|>=4,<4.0.15", + "nette/application": ">=2,<2.0.19|>=2.1,<2.1.13|>=2.2,<2.2.10|>=2.3,<2.3.14|>=2.4,<2.4.16|>=3,<3.0.6", + "nette/nette": ">=2,<2.0.19|>=2.1,<2.1.13", + "nilsteampassnet/teampass": "<3.0.10", + "nonfiction/nterchange": "<4.1.1", + "notrinos/notrinos-erp": "<=0.7", + "noumo/easyii": "<=0.9", + "novaksolutions/infusionsoft-php-sdk": "<1", + "nukeviet/nukeviet": "<4.5.02", + "nyholm/psr7": "<1.6.1", + "nystudio107/craft-seomatic": "<3.4.12", + "nzedb/nzedb": "<0.8", + "nzo/url-encryptor-bundle": ">=4,<4.3.2|>=5,<5.0.1", + "october/backend": "<1.1.2", + "october/cms": "<1.0.469|==1.0.469|==1.0.471|==1.1.1", + "october/october": "<=3.4.4", + "october/rain": "<1.0.472|>=1.1,<1.1.2", + "october/system": "<1.0.476|>=1.1,<1.1.12|>=2,<2.2.34|>=3,<3.5.15", + "omeka/omeka-s": "<4.0.3", + "onelogin/php-saml": "<2.10.4", + "oneup/uploader-bundle": ">=1,<1.9.3|>=2,<2.1.5", + "open-web-analytics/open-web-analytics": "<1.7.4", + "opencart/opencart": ">=0", + "openid/php-openid": "<2.3", + "openmage/magento-lts": "<20.10.1", + "opensolutions/vimbadmin": "<=3.0.15", + "opensource-workshop/connect-cms": "<1.7.2|>=2,<2.3.2", + "orchid/platform": ">=9,<9.4.4|>=14.0.0.0-alpha4,<14.5", + "oro/calendar-bundle": ">=4.2,<=4.2.6|>=5,<=5.0.6|>=5.1,<5.1.1", + "oro/commerce": ">=4.1,<5.0.11|>=5.1,<5.1.1", + "oro/crm": ">=1.7,<1.7.4|>=3.1,<4.1.17|>=4.2,<4.2.7", + "oro/crm-call-bundle": ">=4.2,<=4.2.5|>=5,<5.0.4|>=5.1,<5.1.1", + "oro/customer-portal": ">=4.1,<=4.1.13|>=4.2,<=4.2.10|>=5,<=5.0.11|>=5.1,<=5.1.3", + "oro/platform": ">=1.7,<1.7.4|>=3.1,<3.1.29|>=4.1,<4.1.17|>=4.2,<=4.2.10|>=5,<=5.0.12|>=5.1,<=5.1.3", + "oveleon/contao-cookiebar": "<1.16.3|>=2,<2.1.3", + "oxid-esales/oxideshop-ce": "<4.5", + "oxid-esales/paymorrow-module": ">=1,<1.0.2|>=2,<2.0.1", + "packbackbooks/lti-1-3-php-library": "<5", + "padraic/humbug_get_contents": "<1.1.2", + "pagarme/pagarme-php": "<3", + "pagekit/pagekit": "<=1.0.18", + "paragonie/ecc": "<2.0.1", + "paragonie/random_compat": "<2", + "passbolt/passbolt_api": "<4.6.2", + "paypal/adaptivepayments-sdk-php": "<=3.9.2", + "paypal/invoice-sdk-php": "<=3.9", + "paypal/merchant-sdk-php": "<3.12", + "paypal/permissions-sdk-php": "<=3.9.1", + "pear/archive_tar": "<1.4.14", + "pear/auth": "<1.2.4", + "pear/crypt_gpg": "<1.6.7", + "pear/pear": "<=1.10.1", + "pegasus/google-for-jobs": "<1.5.1|>=2,<2.1.1", + "personnummer/personnummer": "<3.0.2", + "phanan/koel": "<5.1.4", + "phenx/php-svg-lib": "<0.5.2", + "php-censor/php-censor": "<2.0.13|>=2.1,<2.1.5", + "php-mod/curl": "<2.3.2", + "phpbb/phpbb": "<3.2.10|>=3.3,<3.3.1", + "phpems/phpems": ">=6,<=6.1.3", + "phpfastcache/phpfastcache": "<6.1.5|>=7,<7.1.2|>=8,<8.0.7", + "phpmailer/phpmailer": "<6.5", + "phpmussel/phpmussel": ">=1,<1.6", + "phpmyadmin/phpmyadmin": "<5.2.1", + "phpmyfaq/phpmyfaq": "<3.2.5|==3.2.5", + "phpoffice/common": "<0.2.9", + "phpoffice/phpexcel": "<1.8", + "phpoffice/phpspreadsheet": "<1.29.1|>=2,<2.1.1|>=2.2,<2.2.1", + "phpseclib/phpseclib": "<2.0.47|>=3,<3.0.36", + "phpservermon/phpservermon": "<3.6", + "phpsysinfo/phpsysinfo": "<3.4.3", + "phpunit/phpunit": ">=4.8.19,<4.8.28|>=5.0.10,<5.6.3", + "phpwhois/phpwhois": "<=4.2.5", + "phpxmlrpc/extras": "<0.6.1", + "phpxmlrpc/phpxmlrpc": "<4.9.2", + "pi/pi": "<=2.5", + "pimcore/admin-ui-classic-bundle": "<1.5.4", + "pimcore/customer-management-framework-bundle": "<4.0.6", + "pimcore/data-hub": "<1.2.4", + "pimcore/data-importer": "<1.8.9|>=1.9,<1.9.3", + "pimcore/demo": "<10.3", + "pimcore/ecommerce-framework-bundle": "<1.0.10", + "pimcore/perspective-editor": "<1.5.1", + "pimcore/pimcore": "<11.2.4", + "pixelfed/pixelfed": "<0.11.11", + "plotly/plotly.js": "<2.25.2", + "pocketmine/bedrock-protocol": "<8.0.2", + "pocketmine/pocketmine-mp": "<5.11.2", + "pocketmine/raklib": ">=0.14,<0.14.6|>=0.15,<0.15.1", + "pressbooks/pressbooks": "<5.18", + "prestashop/autoupgrade": ">=4,<4.10.1", + "prestashop/blockreassurance": "<=5.1.3", + "prestashop/blockwishlist": ">=2,<2.1.1", + "prestashop/contactform": ">=1.0.1,<4.3", + "prestashop/gamification": "<2.3.2", + "prestashop/prestashop": "<8.1.6", + "prestashop/productcomments": "<5.0.2", + "prestashop/ps_emailsubscription": "<2.6.1", + "prestashop/ps_facetedsearch": "<3.4.1", + "prestashop/ps_linklist": "<3.1", + "privatebin/privatebin": "<1.4|>=1.5,<1.7.4", + "processwire/processwire": "<=3.0.229", + "propel/propel": ">=2.0.0.0-alpha1,<=2.0.0.0-alpha7", + "propel/propel1": ">=1,<=1.7.1", + "pterodactyl/panel": "<1.11.6", + "ptheofan/yii2-statemachine": ">=2.0.0.0-RC1-dev,<=2", + "ptrofimov/beanstalk_console": "<1.7.14", + "pubnub/pubnub": "<6.1", + "pusher/pusher-php-server": "<2.2.1", + "pwweb/laravel-core": "<=0.3.6.0-beta", + "pxlrbt/filament-excel": "<1.1.14|>=2.0.0.0-alpha,<2.3.3", + "pyrocms/pyrocms": "<=3.9.1", + "qcubed/qcubed": "<=3.1.1", + "quickapps/cms": "<=2.0.0.0-beta2", + "rainlab/blog-plugin": "<1.4.1", + "rainlab/debugbar-plugin": "<3.1", + "rainlab/user-plugin": "<=1.4.5", + "rankmath/seo-by-rank-math": "<=1.0.95", + "rap2hpoutre/laravel-log-viewer": "<0.13", + "react/http": ">=0.7,<1.9", + "really-simple-plugins/complianz-gdpr": "<6.4.2", + "redaxo/source": "<=5.15.1", + "remdex/livehelperchat": "<4.29", + "reportico-web/reportico": "<=8.1", + "rhukster/dom-sanitizer": "<1.0.7", + "rmccue/requests": ">=1.6,<1.8", + "robrichards/xmlseclibs": ">=1,<3.0.4", + "roots/soil": "<4.1", + "rudloff/alltube": "<3.0.3", + "s-cart/core": "<6.9", + "s-cart/s-cart": "<6.9", + "sabberworm/php-css-parser": ">=1,<1.0.1|>=2,<2.0.1|>=3,<3.0.1|>=4,<4.0.1|>=5,<5.0.9|>=5.1,<5.1.3|>=5.2,<5.2.1|>=6,<6.0.2|>=7,<7.0.4|>=8,<8.0.1|>=8.1,<8.1.1|>=8.2,<8.2.1|>=8.3,<8.3.1", + "sabre/dav": ">=1.6,<1.7.11|>=1.8,<1.8.9", + "scheb/two-factor-bundle": "<3.26|>=4,<4.11", + "sensiolabs/connect": "<4.2.3", + "serluck/phpwhois": "<=4.2.6", + "sfroemken/url_redirect": "<=1.2.1", + "sheng/yiicms": "<=1.2", + "shopware/core": "<=6.5.8.12|>=6.6,<=6.6.5", + "shopware/platform": "<=6.5.8.12|>=6.6,<=6.6.5", + "shopware/production": "<=6.3.5.2", + "shopware/shopware": "<=5.7.17", + "shopware/storefront": "<=6.4.8.1|>=6.5.8,<6.5.8.7-dev", + "shopxo/shopxo": "<=6.1", + "showdoc/showdoc": "<2.10.4", + "silverstripe-australia/advancedreports": ">=1,<=2", + "silverstripe/admin": "<1.13.19|>=2,<2.1.8", + "silverstripe/assets": ">=1,<1.11.1", + "silverstripe/cms": "<4.11.3", + "silverstripe/comments": ">=1.3,<3.1.1", + "silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3", + "silverstripe/framework": "<5.2.16", + "silverstripe/graphql": ">=2,<2.0.5|>=3,<3.8.2|>=4,<4.3.7|>=5,<5.1.3", + "silverstripe/hybridsessions": ">=1,<2.4.1|>=2.5,<2.5.1", + "silverstripe/recipe-cms": ">=4.5,<4.5.3", + "silverstripe/registry": ">=2.1,<2.1.2|>=2.2,<2.2.1", + "silverstripe/reports": "<5.2.3", + "silverstripe/restfulserver": ">=1,<1.0.9|>=2,<2.0.4|>=2.1,<2.1.2", + "silverstripe/silverstripe-omnipay": "<2.5.2|>=3,<3.0.2|>=3.1,<3.1.4|>=3.2,<3.2.1", + "silverstripe/subsites": ">=2,<2.6.1", + "silverstripe/taxonomy": ">=1.3,<1.3.1|>=2,<2.0.1", + "silverstripe/userforms": "<3|>=5,<5.4.2", + "silverstripe/versioned-admin": ">=1,<1.11.1", + "simple-updates/phpwhois": "<=1", + "simplesamlphp/saml2": "<1.10.6|>=2,<2.3.8|>=3,<3.1.4|==5.0.0.0-alpha12", + "simplesamlphp/simplesamlphp": "<1.18.6", + "simplesamlphp/simplesamlphp-module-infocard": "<1.0.1", + "simplesamlphp/simplesamlphp-module-openid": "<1", + "simplesamlphp/simplesamlphp-module-openidprovider": "<0.9", + "simplesamlphp/xml-security": "==1.6.11", + "simplito/elliptic-php": "<1.0.6", + "sitegeist/fluid-components": "<3.5", + "sjbr/sr-freecap": "<2.4.6|>=2.5,<2.5.3", + "slim/psr7": "<1.4.1|>=1.5,<1.5.1|>=1.6,<1.6.1", + "slim/slim": "<2.6", + "slub/slub-events": "<3.0.3", + "smarty/smarty": "<4.5.3|>=5,<5.1.1", + "snipe/snipe-it": "<6.4.2", + "socalnick/scn-social-auth": "<1.15.2", + "socialiteproviders/steam": "<1.1", + "spatie/browsershot": "<3.57.4", + "spatie/image-optimizer": "<1.7.3", + "spipu/html2pdf": "<5.2.8", + "spoon/library": "<1.4.1", + "spoonity/tcpdf": "<6.2.22", + "squizlabs/php_codesniffer": ">=1,<2.8.1|>=3,<3.0.1", + "ssddanbrown/bookstack": "<24.05.1", + "statamic/cms": "<4.46|>=5.3,<5.6.2", + "stormpath/sdk": "<9.9.99", + "studio-42/elfinder": "<=2.1.64", + "studiomitte/friendlycaptcha": "<0.1.4", + "subhh/libconnect": "<7.0.8|>=8,<8.1", + "sukohi/surpass": "<1", + "sulu/form-bundle": ">=2,<2.5.3", + "sulu/sulu": "<1.6.44|>=2,<2.4.17|>=2.5,<2.5.13", + "sumocoders/framework-user-bundle": "<1.4", + "superbig/craft-audit": "<3.0.2", + "swag/paypal": "<5.4.4", + "swiftmailer/swiftmailer": "<6.2.5", + "swiftyedit/swiftyedit": "<1.2", + "sylius/admin-bundle": ">=1,<1.0.17|>=1.1,<1.1.9|>=1.2,<1.2.2", + "sylius/grid": ">=1,<1.1.19|>=1.2,<1.2.18|>=1.3,<1.3.13|>=1.4,<1.4.5|>=1.5,<1.5.1", + "sylius/grid-bundle": "<1.10.1", + "sylius/paypal-plugin": ">=1,<1.2.4|>=1.3,<1.3.1", + "sylius/resource-bundle": ">=1,<1.3.14|>=1.4,<1.4.7|>=1.5,<1.5.2|>=1.6,<1.6.4", + "sylius/sylius": "<1.12.19|>=1.13.0.0-alpha1,<1.13.4", + "symbiote/silverstripe-multivaluefield": ">=3,<3.1", + "symbiote/silverstripe-queuedjobs": ">=3,<3.0.2|>=3.1,<3.1.4|>=4,<4.0.7|>=4.1,<4.1.2|>=4.2,<4.2.4|>=4.3,<4.3.3|>=4.4,<4.4.3|>=4.5,<4.5.1|>=4.6,<4.6.4", + "symbiote/silverstripe-seed": "<6.0.3", + "symbiote/silverstripe-versionedfiles": "<=2.0.3", + "symfont/process": ">=0", + "symfony/cache": ">=3.1,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8", + "symfony/dependency-injection": ">=2,<2.0.17|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", + "symfony/error-handler": ">=4.4,<4.4.4|>=5,<5.0.4", + "symfony/form": ">=2.3,<2.3.35|>=2.4,<2.6.12|>=2.7,<2.7.50|>=2.8,<2.8.49|>=3,<3.4.20|>=4,<4.0.15|>=4.1,<4.1.9|>=4.2,<4.2.1", + "symfony/framework-bundle": ">=2,<2.3.18|>=2.4,<2.4.8|>=2.5,<2.5.2|>=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7|>=5.3.14,<5.3.15|>=5.4.3,<5.4.4|>=6.0.3,<6.0.4", + "symfony/http-foundation": ">=2,<2.8.52|>=3,<3.4.35|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7", + "symfony/http-kernel": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", + "symfony/intl": ">=2.7,<2.7.38|>=2.8,<2.8.31|>=3,<3.2.14|>=3.3,<3.3.13", + "symfony/maker-bundle": ">=1.27,<1.29.2|>=1.30,<1.31.1", + "symfony/mime": ">=4.3,<4.3.8", + "symfony/phpunit-bridge": ">=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", + "symfony/polyfill": ">=1,<1.10", + "symfony/polyfill-php55": ">=1,<1.10", + "symfony/proxy-manager-bridge": ">=2.7,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.1.12|>=4.2,<4.2.7", + "symfony/routing": ">=2,<2.0.19", + "symfony/security": ">=2,<2.7.51|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.8", + "symfony/security-bundle": ">=2,<4.4.50|>=5,<5.4.20|>=6,<6.0.20|>=6.1,<6.1.12|>=6.2,<6.2.6", + "symfony/security-core": ">=2.4,<2.6.13|>=2.7,<2.7.9|>=2.7.30,<2.7.32|>=2.8,<3.4.49|>=4,<4.4.24|>=5,<5.2.9", + "symfony/security-csrf": ">=2.4,<2.7.48|>=2.8,<2.8.41|>=3,<3.3.17|>=3.4,<3.4.11|>=4,<4.0.11", + "symfony/security-guard": ">=2.8,<3.4.48|>=4,<4.4.23|>=5,<5.2.8", + "symfony/security-http": ">=2.3,<2.3.41|>=2.4,<2.7.51|>=2.8,<2.8.50|>=3,<3.4.26|>=4,<4.2.12|>=4.3,<4.3.8|>=4.4,<4.4.7|>=5,<5.0.7|>=5.1,<5.2.8|>=5.3,<5.3.2|>=5.4,<5.4.31|>=6,<6.3.8", + "symfony/serializer": ">=2,<2.0.11|>=4.1,<4.4.35|>=5,<5.3.12", + "symfony/symfony": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", + "symfony/translation": ">=2,<2.0.17", + "symfony/twig-bridge": ">=2,<4.4.51|>=5,<5.4.31|>=6,<6.3.8", + "symfony/ux-autocomplete": "<2.11.2", + "symfony/validator": ">=2,<2.0.24|>=2.1,<2.1.12|>=2.2,<2.2.5|>=2.3,<2.3.3", + "symfony/var-exporter": ">=4.2,<4.2.12|>=4.3,<4.3.8", + "symfony/web-profiler-bundle": ">=2,<2.3.19|>=2.4,<2.4.9|>=2.5,<2.5.4", + "symfony/webhook": ">=6.3,<6.3.8", + "symfony/yaml": ">=2,<2.0.22|>=2.1,<2.1.7|>=2.2.0.0-beta1,<2.2.0.0-beta2", + "symphonycms/symphony-2": "<2.6.4", + "t3/dce": "<0.11.5|>=2.2,<2.6.2", + "t3g/svg-sanitizer": "<1.0.3", + "t3s/content-consent": "<1.0.3|>=2,<2.0.2", + "tastyigniter/tastyigniter": "<3.3", + "tcg/voyager": "<=1.4", + "tecnickcom/tcpdf": "<=6.7.4", + "terminal42/contao-tablelookupwizard": "<3.3.5", + "thelia/backoffice-default-template": ">=2.1,<2.1.2", + "thelia/thelia": ">=2.1,<2.1.3", + "theonedemon/phpwhois": "<=4.2.5", + "thinkcmf/thinkcmf": "<6.0.8", + "thorsten/phpmyfaq": "<3.2.2", + "tikiwiki/tiki-manager": "<=17.1", + "timber/timber": ">=0.16.6,<1.23.1|>=1.24,<1.24.1|>=2,<2.1", + "tinymce/tinymce": "<7.2", + "tinymighty/wiki-seo": "<1.2.2", + "titon/framework": "<9.9.99", + "tobiasbg/tablepress": "<=2.0.0.0-RC1", + "topthink/framework": "<6.0.17|>=6.1,<=8.0.4", + "topthink/think": "<=6.1.1", + "topthink/thinkphp": "<=3.2.3", + "torrentpier/torrentpier": "<=2.4.3", + "tpwd/ke_search": "<4.0.3|>=4.1,<4.6.6|>=5,<5.0.2", + "tribalsystems/zenario": "<9.5.60602", + "truckersmp/phpwhois": "<=4.3.1", + "ttskch/pagination-service-provider": "<1", + "twbs/bootstrap": "<=3.4.1|>=4,<=4.6.2", + "twig/twig": "<1.44.8|>=2,<2.16.1|>=3,<3.11.1|>=3.12,<3.14", + "typo3/cms": "<9.5.29|>=10,<10.4.35|>=11,<11.5.23|>=12,<12.2", + "typo3/cms-backend": "<4.1.14|>=4.2,<4.2.15|>=4.3,<4.3.7|>=4.4,<4.4.4|>=7,<=7.6.50|>=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", + "typo3/cms-core": "<=8.7.56|>=9,<=9.5.47|>=10,<=10.4.44|>=11,<=11.5.36|>=12,<=12.4.14|>=13,<=13.1", + "typo3/cms-extbase": "<6.2.24|>=7,<7.6.8|==8.1.1", + "typo3/cms-fluid": "<4.3.4|>=4.4,<4.4.1", + "typo3/cms-form": ">=8,<=8.7.39|>=9,<=9.5.24|>=10,<=10.4.13|>=11,<=11.1", + "typo3/cms-frontend": "<4.3.9|>=4.4,<4.4.5", + "typo3/cms-install": "<4.1.14|>=4.2,<4.2.16|>=4.3,<4.3.9|>=4.4,<4.4.5|>=12.2,<12.4.8", + "typo3/cms-rte-ckeditor": ">=9.5,<9.5.42|>=10,<10.4.39|>=11,<11.5.30", + "typo3/flow": ">=1,<1.0.4|>=1.1,<1.1.1|>=2,<2.0.1|>=2.3,<2.3.16|>=3,<3.0.12|>=3.1,<3.1.10|>=3.2,<3.2.13|>=3.3,<3.3.13|>=4,<4.0.6", + "typo3/html-sanitizer": ">=1,<=1.5.2|>=2,<=2.1.3", + "typo3/neos": ">=1.1,<1.1.3|>=1.2,<1.2.13|>=2,<2.0.4|>=2.3,<2.3.99|>=3,<3.0.20|>=3.1,<3.1.18|>=3.2,<3.2.14|>=3.3,<3.3.23|>=4,<4.0.17|>=4.1,<4.1.16|>=4.2,<4.2.12|>=4.3,<4.3.3", + "typo3/phar-stream-wrapper": ">=1,<2.1.1|>=3,<3.1.1", + "typo3/swiftmailer": ">=4.1,<4.1.99|>=5.4,<5.4.5", + "typo3fluid/fluid": ">=2,<2.0.8|>=2.1,<2.1.7|>=2.2,<2.2.4|>=2.3,<2.3.7|>=2.4,<2.4.4|>=2.5,<2.5.11|>=2.6,<2.6.10", + "ua-parser/uap-php": "<3.8", + "uasoft-indonesia/badaso": "<=2.9.7", + "unisharp/laravel-filemanager": "<2.6.4", + "userfrosting/userfrosting": ">=0.3.1,<4.6.3", + "usmanhalalit/pixie": "<1.0.3|>=2,<2.0.2", + "uvdesk/community-skeleton": "<=1.1.1", + "uvdesk/core-framework": "<=1.1.1", + "vanilla/safecurl": "<0.9.2", + "verbb/comments": "<1.5.5", + "verbb/formie": "<2.1.6", + "verbb/image-resizer": "<2.0.9", + "verbb/knock-knock": "<1.2.8", + "verot/class.upload.php": "<=2.1.6", + "villagedefrance/opencart-overclocked": "<=1.11.1", + "vova07/yii2-fileapi-widget": "<0.1.9", + "vrana/adminer": "<4.8.1", + "vufind/vufind": ">=2,<9.1.1", + "waldhacker/hcaptcha": "<2.1.2", + "wallabag/tcpdf": "<6.2.22", + "wallabag/wallabag": "<2.6.7", + "wanglelecc/laracms": "<=1.0.3", + "web-auth/webauthn-framework": ">=3.3,<3.3.4|>=4.5,<4.9", + "web-auth/webauthn-lib": ">=4.5,<4.9", + "web-feet/coastercms": "==5.5", + "webbuilders-group/silverstripe-kapost-bridge": "<0.4", + "webcoast/deferred-image-processing": "<1.0.2", + "webklex/laravel-imap": "<5.3", + "webklex/php-imap": "<5.3", + "webpa/webpa": "<3.1.2", + "wikibase/wikibase": "<=1.39.3", + "wikimedia/parsoid": "<0.12.2", + "willdurand/js-translation-bundle": "<2.1.1", + "winter/wn-backend-module": "<1.2.4", + "winter/wn-dusk-plugin": "<2.1", + "winter/wn-system-module": "<1.2.4", + "wintercms/winter": "<=1.2.3", + "wireui/wireui": "<1.19.3|>=2,<2.1.3", + "woocommerce/woocommerce": "<6.6|>=8.8,<8.8.5|>=8.9,<8.9.3", + "wp-cli/wp-cli": ">=0.12,<2.5", + "wp-graphql/wp-graphql": "<=1.14.5", + "wp-premium/gravityforms": "<2.4.21", + "wpanel/wpanel4-cms": "<=4.3.1", + "wpcloud/wp-stateless": "<3.2", + "wpglobus/wpglobus": "<=1.9.6", + "wwbn/avideo": "<14.3", + "xataface/xataface": "<3", + "xpressengine/xpressengine": "<3.0.15", + "yab/quarx": "<2.4.5", + "yeswiki/yeswiki": "<4.1", + "yetiforce/yetiforce-crm": "<=6.4", + "yidashi/yii2cmf": "<=2", + "yii2mod/yii2-cms": "<1.9.2", + "yiisoft/yii": "<1.1.29", + "yiisoft/yii2": "<2.0.49.4-dev", + "yiisoft/yii2-authclient": "<2.2.15", + "yiisoft/yii2-bootstrap": "<2.0.4", + "yiisoft/yii2-dev": "<2.0.43", + "yiisoft/yii2-elasticsearch": "<2.0.5", + "yiisoft/yii2-gii": "<=2.2.4", + "yiisoft/yii2-jui": "<2.0.4", + "yiisoft/yii2-redis": "<2.0.8", + "yikesinc/yikes-inc-easy-mailchimp-extender": "<6.8.6", + "yoast-seo-for-typo3/yoast_seo": "<7.2.3", + "yourls/yourls": "<=1.8.2", + "yuan1994/tpadmin": "<=1.3.12", + "zencart/zencart": "<=1.5.7.0-beta", + "zendesk/zendesk_api_client_php": "<2.2.11", + "zendframework/zend-cache": ">=2.4,<2.4.8|>=2.5,<2.5.3", + "zendframework/zend-captcha": ">=2,<2.4.9|>=2.5,<2.5.2", + "zendframework/zend-crypt": ">=2,<2.4.9|>=2.5,<2.5.2", + "zendframework/zend-db": "<2.2.10|>=2.3,<2.3.5", + "zendframework/zend-developer-tools": ">=1.2.2,<1.2.3", + "zendframework/zend-diactoros": "<1.8.4", + "zendframework/zend-feed": "<2.10.3", + "zendframework/zend-form": ">=2,<2.2.7|>=2.3,<2.3.1", + "zendframework/zend-http": "<2.8.1", + "zendframework/zend-json": ">=2.1,<2.1.6|>=2.2,<2.2.6", + "zendframework/zend-ldap": ">=2,<2.0.99|>=2.1,<2.1.99|>=2.2,<2.2.8|>=2.3,<2.3.3", + "zendframework/zend-mail": "<2.4.11|>=2.5,<2.7.2", + "zendframework/zend-navigation": ">=2,<2.2.7|>=2.3,<2.3.1", + "zendframework/zend-session": ">=2,<2.2.9|>=2.3,<2.3.4", + "zendframework/zend-validator": ">=2.3,<2.3.6", + "zendframework/zend-view": ">=2,<2.2.7|>=2.3,<2.3.1", + "zendframework/zend-xmlrpc": ">=2.1,<2.1.6|>=2.2,<2.2.6", + "zendframework/zendframework": "<=3", + "zendframework/zendframework1": "<1.12.20", + "zendframework/zendopenid": "<2.0.2", + "zendframework/zendrest": "<2.0.2", + "zendframework/zendservice-amazon": "<2.0.3", + "zendframework/zendservice-api": "<1", + "zendframework/zendservice-audioscrobbler": "<2.0.2", + "zendframework/zendservice-nirvanix": "<2.0.2", + "zendframework/zendservice-slideshare": "<2.0.2", + "zendframework/zendservice-technorati": "<2.0.2", + "zendframework/zendservice-windowsazure": "<2.0.2", + "zendframework/zendxml": ">=1,<1.0.1", + "zenstruck/collection": "<0.2.1", + "zetacomponents/mail": "<1.8.2", + "zf-commons/zfc-user": "<1.2.2", + "zfcampus/zf-apigility-doctrine": ">=1,<1.0.3", + "zfr/zfr-oauth2-server-module": "<0.1.2", + "zoujingli/thinkadmin": "<=6.1.53" + }, + "default-branch": true, + "type": "metapackage", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "role": "maintainer" + }, + { + "name": "Ilya Tribusean", + "email": "slash3b@gmail.com", + "role": "maintainer" + } + ], + "description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it", + "keywords": [ + "dev" + ], + "support": { + "issues": "https://github.com/Roave/SecurityAdvisories/issues", + "source": "https://github.com/Roave/SecurityAdvisories/tree/latest" + }, + "funding": [ + { + "url": "https://github.com/Ocramius", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/roave/security-advisories", + "type": "tidelift" + } + ], + "time": "2024-09-19T17:04:43+00:00" + }, + { + "name": "sanmai/later", + "version": "0.1.4", + "source": { + "type": "git", + "url": "https://github.com/sanmai/later.git", + "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sanmai/later/zipball/e24c4304a4b1349c2a83151a692cec0c10579f60", + "reference": "e24c4304a4b1349c2a83151a692cec0c10579f60", + "shasum": "" + }, + "require": { + "php": ">=7.4" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8", + "friendsofphp/php-cs-fixer": "^3.35.1", + "infection/infection": ">=0.27.6", + "phan/phan": ">=2", + "php-coveralls/php-coveralls": "^2.0", + "phpstan/phpstan": ">=1.4.5", + "phpunit/phpunit": ">=9.5 <10", + "vimeo/psalm": ">=2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.1.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Later\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Alexey Kopytko", + "email": "alexey@kopytko.com" + } + ], + "description": "Later: deferred wrapper object", + "support": { + "issues": "https://github.com/sanmai/later/issues", + "source": "https://github.com/sanmai/later/tree/0.1.4" + }, + "funding": [ + { + "url": "https://github.com/sanmai", + "type": "github" + } + ], + "time": "2023-10-24T00:25:28+00:00" + }, + { + "name": "sanmai/pipeline", + "version": "v6.11", + "source": { + "type": "git", + "url": "https://github.com/sanmai/pipeline.git", + "reference": "a5fa2a6c6ca93efa37e7c24aab72f47448a6b110" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sanmai/pipeline/zipball/a5fa2a6c6ca93efa37e7c24aab72f47448a6b110", + "reference": "a5fa2a6c6ca93efa37e7c24aab72f47448a6b110", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "ergebnis/composer-normalize": "^2.8", + "friendsofphp/php-cs-fixer": "^3.17", + "infection/infection": ">=0.10.5", + "league/pipeline": "^0.3 || ^1.0", + "phan/phan": ">=1.1", + "php-coveralls/php-coveralls": "^2.4.1", + "phpstan/phpstan": ">=0.10", + "phpunit/phpunit": ">=9.4", + "vimeo/psalm": ">=2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "v6.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Pipeline\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Alexey Kopytko", + "email": "alexey@kopytko.com" + } + ], + "description": "General-purpose collections pipeline", + "support": { + "issues": "https://github.com/sanmai/pipeline/issues", + "source": "https://github.com/sanmai/pipeline/tree/v6.11" + }, + "funding": [ + { + "url": "https://github.com/sanmai", + "type": "github" + } + ], + "time": "2024-06-15T03:11:19+00:00" + }, + { + "name": "sebastian/cli-parser", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "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.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:27:43+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": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "shasum": "" + }, + "require": { + "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" + } + ], + "description": "Looks up which function or method a line of code belongs to", + "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/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:30:19+00:00" + }, + { + "name": "sebastian/comparator", + "version": "4.0.8", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", + "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/diff": "^4.0", + "sebastian/exporter": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + } + ], + "description": "Provides the functionality to compare PHP values for equality", + "homepage": "https://github.com/sebastianbergmann/comparator", + "keywords": [ + "comparator", + "compare", + "equality" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-09-14T12:41:17+00:00" + }, + { + "name": "sebastian/complexity", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", + "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.18 || ^5.0", + "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.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-12-22T06:19:30+00:00" + }, + { + "name": "sebastian/diff", + "version": "4.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", + "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:30:58+00:00" + }, + { + "name": "sebastian/environment", + "version": "5.1.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-posix": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "http://www.github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T06:03:51+00:00" + }, + { + "name": "sebastian/exporter", + "version": "4.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72", + "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-mbstring": "*", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "https://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:33:00+00:00" + }, + { + "name": "sebastian/global-state", + "version": "5.0.7", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", + "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-dom": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-uopz": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Snapshotting of global state", + "homepage": "http://www.github.com/sebastianbergmann/global-state", + "keywords": [ + "global state" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-02T06:35:11+00:00" + }, + { + "name": "sebastian/lines-of-code", + "version": "1.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.18 || ^5.0", + "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.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-12-22T06:20:34+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:12:34+00:00" + }, + { + "name": "sebastian/object-reflector", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "shasum": "" + }, + "require": { + "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" + } + ], + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:14:26+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "4.0.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "https://github.com/sebastianbergmann/recursion-context", + "support": { + "issues": "https://github.com/sebastianbergmann/recursion-context/issues", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T06:07:39+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "3.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "support": { + "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2024-03-14T16:00:52+00:00" + }, + { + "name": "sebastian/type", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", + "support": { + "issues": "https://github.com/sebastianbergmann/type/issues", + "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2023-02-03T06:13:03+00:00" + }, + { + "name": "sebastian/version", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c6c1022351a901512170118436c764e473f6de8c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", + "reference": "c6c1022351a901512170118436c764e473f6de8c", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.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 that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version", + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:39:44+00:00" + }, + { + "name": "spatie/phpunit-watcher", + "version": "1.23.6", + "source": { + "type": "git", + "url": "https://github.com/spatie/phpunit-watcher.git", + "reference": "c192fff763810c8378511bcf0069df4b91478866" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/phpunit-watcher/zipball/c192fff763810c8378511bcf0069df4b91478866", + "reference": "c192fff763810c8378511bcf0069df4b91478866", + "shasum": "" + }, + "require": { + "clue/stdio-react": "^2.4", + "jolicode/jolinotif": "^2.2", + "php": "^7.2 | ^8.0 | ^8.1", + "symfony/console": "^5 | ^6", + "symfony/finder": "^5.4 | ^6", + "symfony/process": "^5.4 | ^6", + "symfony/yaml": "^5.2 | ^6", + "yosymfony/resource-watcher": "^2.0 | ^3.0" + }, + "conflict": { + "symfony/console": "<5.2", + "yosymfony/resource-watcher": "<2.0" + }, + "require-dev": { + "phpunit/phpunit": "^8.6 | ^9.0" + }, + "bin": [ + "phpunit-watcher" + ], + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\PhpUnitWatcher\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Automatically rerun PHPUnit tests when source code changes", + "homepage": "https://github.com/spatie/phpunit-watcher", + "keywords": [ + "phpunit-watcher", + "spatie" + ], + "support": { + "issues": "https://github.com/spatie/phpunit-watcher/issues", + "source": "https://github.com/spatie/phpunit-watcher/tree/1.23.6" + }, + "time": "2022-01-31T11:57:13+00:00" + }, + { + "name": "symfony/browser-kit", + "version": "v6.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/browser-kit.git", + "reference": "62ab90b92066ef6cce5e79365625b4b1432464c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/62ab90b92066ef6cce5e79365625b4b1432464c8", + "reference": "62ab90b92066ef6cce5e79365625b4b1432464c8", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/dom-crawler": "^5.4|^6.0|^7.0" + }, + "require-dev": { + "symfony/css-selector": "^5.4|^6.0|^7.0", + "symfony/http-client": "^5.4|^6.0|^7.0", + "symfony/mime": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\BrowserKit\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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/v6.4.8" + }, + "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": "2024-05-31T14:49:08+00:00" + }, + { + "name": "symfony/css-selector", + "version": "v7.1.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/css-selector.git", + "reference": "1c7cee86c6f812896af54434f8ce29c8d94f9ff4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/1c7cee86c6f812896af54434f8ce29c8d94f9ff4", + "reference": "1c7cee86c6f812896af54434f8ce29c8d94f9ff4", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\CssSelector\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Converts CSS selectors to XPath expressions", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/css-selector/tree/v7.1.1" + }, + "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": "2024-05-31T14:57:53+00:00" + }, + { + "name": "symfony/dom-crawler", + "version": "v6.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/dom-crawler.git", + "reference": "9d307ecbcb917001692be333cdc58f474fdb37f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/9d307ecbcb917001692be333cdc58f474fdb37f0", + "reference": "9d307ecbcb917001692be333cdc58f474fdb37f0", + "shasum": "" + }, + "require": { + "masterminds/html5": "^2.6", + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0" + }, + "require-dev": { + "symfony/css-selector": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DomCrawler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases DOM navigation for HTML and XML documents", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dom-crawler/tree/v6.4.12" + }, + "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": "2024-09-15T06:35:36+00:00" + }, + { + "name": "symfony/filesystem", + "version": "v7.1.5", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", + "reference": "61fe0566189bf32e8cfee78335d8776f64a66f5a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/61fe0566189bf32e8cfee78335d8776f64a66f5a", + "reference": "61fe0566189bf32e8cfee78335d8776f64a66f5a", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8" + }, + "require-dev": { + "symfony/process": "^6.4|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides basic utilities for the filesystem", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/filesystem/tree/v7.1.5" + }, + "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": "2024-09-17T09:16:35+00:00" + }, + { + "name": "thecodingmachine/safe", + "version": "v2.5.0", + "source": { + "type": "git", + "url": "https://github.com/thecodingmachine/safe.git", + "reference": "3115ecd6b4391662b4931daac4eba6b07a2ac1f0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thecodingmachine/safe/zipball/3115ecd6b4391662b4931daac4eba6b07a2ac1f0", + "reference": "3115ecd6b4391662b4931daac4eba6b07a2ac1f0", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.5", + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "^3.2", + "thecodingmachine/phpstan-strict-rules": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2.x-dev" + } + }, + "autoload": { + "files": [ + "deprecated/apc.php", + "deprecated/array.php", + "deprecated/datetime.php", + "deprecated/libevent.php", + "deprecated/misc.php", + "deprecated/password.php", + "deprecated/mssql.php", + "deprecated/stats.php", + "deprecated/strings.php", + "lib/special_cases.php", + "deprecated/mysqli.php", + "generated/apache.php", + "generated/apcu.php", + "generated/array.php", + "generated/bzip2.php", + "generated/calendar.php", + "generated/classobj.php", + "generated/com.php", + "generated/cubrid.php", + "generated/curl.php", + "generated/datetime.php", + "generated/dir.php", + "generated/eio.php", + "generated/errorfunc.php", + "generated/exec.php", + "generated/fileinfo.php", + "generated/filesystem.php", + "generated/filter.php", + "generated/fpm.php", + "generated/ftp.php", + "generated/funchand.php", + "generated/gettext.php", + "generated/gmp.php", + "generated/gnupg.php", + "generated/hash.php", + "generated/ibase.php", + "generated/ibmDb2.php", + "generated/iconv.php", + "generated/image.php", + "generated/imap.php", + "generated/info.php", + "generated/inotify.php", + "generated/json.php", + "generated/ldap.php", + "generated/libxml.php", + "generated/lzf.php", + "generated/mailparse.php", + "generated/mbstring.php", + "generated/misc.php", + "generated/mysql.php", + "generated/network.php", + "generated/oci8.php", + "generated/opcache.php", + "generated/openssl.php", + "generated/outcontrol.php", + "generated/pcntl.php", + "generated/pcre.php", + "generated/pgsql.php", + "generated/posix.php", + "generated/ps.php", + "generated/pspell.php", + "generated/readline.php", + "generated/rpminfo.php", + "generated/rrd.php", + "generated/sem.php", + "generated/session.php", + "generated/shmop.php", + "generated/sockets.php", + "generated/sodium.php", + "generated/solr.php", + "generated/spl.php", + "generated/sqlsrv.php", + "generated/ssdeep.php", + "generated/ssh2.php", + "generated/stream.php", + "generated/strings.php", + "generated/swoole.php", + "generated/uodbc.php", + "generated/uopz.php", + "generated/url.php", + "generated/var.php", + "generated/xdiff.php", + "generated/xml.php", + "generated/xmlrpc.php", + "generated/yaml.php", + "generated/yaz.php", + "generated/zip.php", + "generated/zlib.php" + ], + "classmap": [ + "lib/DateTime.php", + "lib/DateTimeImmutable.php", + "lib/Exceptions/", + "deprecated/Exceptions/", + "generated/Exceptions/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHP core functions that throw exceptions instead of returning FALSE on error", + "support": { + "issues": "https://github.com/thecodingmachine/safe/issues", + "source": "https://github.com/thecodingmachine/safe/tree/v2.5.0" + }, + "time": "2023-04-05T11:54:14+00:00" + }, + { + "name": "theseer/tokenizer", + "version": "1.2.3", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + } + ], + "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/1.2.3" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2024-03-03T12:36:25+00:00" + }, + { + "name": "vimeo/psalm", + "version": "4.30.0", + "source": { + "type": "git", + "url": "https://github.com/vimeo/psalm.git", + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vimeo/psalm/zipball/d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "reference": "d0bc6e25d89f649e4f36a534f330f8bb4643dd69", + "shasum": "" + }, + "require": { + "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 || ^2.0 || ^3.0", + "dnoegel/php-xdg-base-dir": "^0.1.1", + "ext-ctype": "*", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-tokenizer": "*", + "felixfbecker/advanced-json-rpc": "^3.0.3", + "felixfbecker/language-server-protocol": "^1.5", + "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0", + "nikic/php-parser": "^4.13", + "openlss/lib-array2xml": "^1.0", + "php": "^7.1|^8", + "sebastian/diff": "^3.0 || ^4.0", + "symfony/console": "^3.4.17 || ^4.1.6 || ^5.0 || ^6.0", + "symfony/polyfill-php80": "^1.25", + "webmozart/path-util": "^2.3" + }, + "provide": { + "psalm/psalm": "self.version" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2", + "brianium/paratest": "^4.0||^6.0", + "ext-curl": "*", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpdocumentor/reflection-docblock": "^5", + "phpmyadmin/sql-parser": "5.1.0||dev-master", + "phpspec/prophecy": ">=1.9.0", + "phpstan/phpdoc-parser": "1.2.* || 1.6.4", + "phpunit/phpunit": "^9.0", + "psalm/plugin-phpunit": "^0.16", + "slevomat/coding-standard": "^7.0", + "squizlabs/php_codesniffer": "^3.5", + "symfony/process": "^4.3 || ^5.0 || ^6.0", + "weirdan/prophecy-shim": "^1.0 || ^2.0" + }, + "suggest": { + "ext-curl": "In order to send data to shepherd", + "ext-igbinary": "^2.0.5 is required, used to serialize caching data" + }, + "bin": [ + "psalm", + "psalm-language-server", + "psalm-plugin", + "psalm-refactor", + "psalter" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.x-dev", + "dev-3.x": "3.x-dev", + "dev-2.x": "2.x-dev", + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php", + "src/spl_object_id.php" + ], + "psr-4": { + "Psalm\\": "src/Psalm/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Matthew Brown" + } + ], + "description": "A static analysis tool for finding errors in PHP applications", + "keywords": [ + "code", + "inspection", + "php" + ], + "support": { + "issues": "https://github.com/vimeo/psalm/issues", + "source": "https://github.com/vimeo/psalm/tree/4.30.0" + }, + "time": "2022-11-06T20:37:08+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.11.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "php": "^7.2 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.11.0" + }, + "time": "2022-06-03T18:03:27+00:00" + }, + { + "name": "webmozart/path-util", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/webmozart/path-util.git", + "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozart/path-util/zipball/d939f7edc24c9a1bb9c0dee5cb05d8e859490725", + "reference": "d939f7edc24c9a1bb9c0dee5cb05d8e859490725", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "webmozart/assert": "~1.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.6", + "sebastian/version": "^1.0.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\PathUtil\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "A robust cross-platform utility for normalizing, comparing and modifying file paths.", + "support": { + "issues": "https://github.com/webmozart/path-util/issues", + "source": "https://github.com/webmozart/path-util/tree/2.3.0" + }, + "abandoned": "symfony/filesystem", + "time": "2015-12-17T08:42:14+00:00" + }, + { + "name": "yiisoft/active-record", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/active-record.git", + "reference": "5c4151d74fc8025261b0d3921f649513261a0144" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/active-record/zipball/5c4151d74fc8025261b0d3921f649513261a0144", + "reference": "5c4151d74fc8025261b0d3921f649513261a0144", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^8.1", + "yiisoft/db": "dev-master" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^10.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.34", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/aliases": "^2.0", + "yiisoft/arrays": "^3.1", + "yiisoft/cache": "^3.0", + "yiisoft/db-sqlite": "dev-master", + "yiisoft/di": "^1.0", + "yiisoft/factory": "^1.2", + "yiisoft/json": "^1.0", + "yiisoft/middleware-dispatcher": "^5.2" + }, + "suggest": { + "yiisoft/arrays": "For \\Yiisoft\\Arrays\\ArrayableInterface support", + "yiisoft/db-mssql": "For MSSQL database support", + "yiisoft/db-mysql": "For MySQL database support", + "yiisoft/db-oracle": "For Oracle database support", + "yiisoft/db-pgsql": "For PostgreSQL database support", + "yiisoft/db-sqlite": "For SQLite database support", + "yiisoft/factory": "For factory support", + "yiisoft/middleware-dispatcher": "For middleware support" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\ActiveRecord\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii ActiveRecord Library", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "Active Record", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/active-record/issues?state=open", + "source": "https://github.com/yiisoft/active-record", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-16T09:27:14+00:00" + }, + { + "name": "yiisoft/db", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/db.git", + "reference": "c765ca43af502dda2ec2aed01f368d0f15e8b290" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/db/zipball/c765ca43af502dda2ec2aed01f368d0f15e8b290", + "reference": "c765ca43af502dda2ec2aed01f368d0f15e8b290", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-json": "*", + "ext-mbstring": "*", + "ext-pdo": "*", + "php": "^8.1", + "psr/log": "^2.0|^3.0", + "psr/simple-cache": "^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^10.0", + "rector/rector": "^1.1.1", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.25", + "yiisoft/aliases": "^3.0", + "yiisoft/cache-file": "^3.1", + "yiisoft/di": "^1.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/json": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/var-dumper": "^1.5", + "yiisoft/yii-debug": "dev-master" + }, + "default-branch": true, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Db\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Database", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "database", + "dbal", + "query-builder", + "sql", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/db/issues/issues?state=open", + "source": "https://github.com/yiisoft/db", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-16T10:51:44+00:00" + }, + { + "name": "yiisoft/translator-extractor", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/translator-extractor.git", + "reference": "673bb3d79dc866f3d85d97cc49e1a9a24b2bc727" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/translator-extractor/zipball/673bb3d79dc866f3d85d97cc49e1a9a24b2bc727", + "reference": "673bb3d79dc866f3d85d97cc49e1a9a24b2bc727", + "shasum": "" + }, + "require": { + "php": "^8.0", + "symfony/console": "^5.4|^6.0|^7.0", + "yiisoft/friendly-exception": "^1.0", + "yiisoft/translator": "^1.0|^2.0|^3.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "rector/rector": "^1.0", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6", + "yiisoft/di": "^1.0", + "yiisoft/yii-console": "^2.0" + }, + "type": "library", + "extra": { + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di-console": "di-console.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\TranslatorExtractor\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii message extractor", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "dev", + "extractor", + "i18n", + "internationalization" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "irc://irc.freenode.net/yii", + "issues": "https://github.com/yiisoft/translator-extractor/issues?state=open", + "source": "https://github.com/yiisoft/translator-extractor", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "open_collective" + } + ], + "time": "2024-02-13T13:39:33+00:00" + }, + { + "name": "yiisoft/yii-debug-viewer", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-debug-viewer.git", + "reference": "89f2704b5ae8aa8e188732c3dd4a8947a2cad774" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-debug-viewer/zipball/89f2704b5ae8aa8e188732c3dd4a8947a2cad774", + "reference": "89f2704b5ae8aa8e188732c3dd4a8947a2cad774", + "shasum": "" + }, + "require": { + "nyholm/psr7": "^1.3", + "php": "^8.0", + "psr/http-message": "^1.1", + "psr/http-server-handler": "^1.0", + "psr/http-server-middleware": "^1.0", + "yiisoft/assets": "^4.0", + "yiisoft/data-response": "^2.0", + "yiisoft/http": "^1.1", + "yiisoft/router": "^3.1", + "yiisoft/view": "^10.0", + "yiisoft/yii-view-renderer": "^7.1" + }, + "require-dev": { + "httpsoft/http-message": "^1.0.5", + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "phpunit/phpunit": "^9.5", + "psr/container": "^2.0", + "psr/http-factory": "^1.0", + "psr/log": "^2.0|^3.0", + "rector/rector": "^0.15.1", + "roave/infection-static-analysis-plugin": "^1.21", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.18", + "yiisoft/aliases": "^3.0", + "yiisoft/config": "^1.0", + "yiisoft/di": "^1.1", + "yiisoft/error-handler": "^3.0", + "yiisoft/factory": "^1.0", + "yiisoft/files": "^2.0", + "yiisoft/injector": "^1.0", + "yiisoft/log": "^2.0", + "yiisoft/log-target-file": "^3.0", + "yiisoft/router-fastroute": "^3.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-event": "^2.0", + "yiisoft/yii-http": "^1.0", + "yiisoft/yii-runner-console": "^2.0", + "yiisoft/yii-runner-http": "^2.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin-environments": { + "yii-debug-viewer-app": { + "params": [ + "app/params.php" + ], + "di": "app/di.php", + "di-console": "$di", + "di-web": [ + "$di", + "app/web.php" + ], + "events": [], + "events-web": "$events", + "events-console": "$events", + "di-providers": [], + "di-providers-web": "$di-providers", + "di-providers-console": "$di-providers", + "routes": [], + "bootstrap": [], + "bootstrap-web": "$bootstrap", + "bootstrap-console": "$bootstrap" + } + }, + "config-plugin": { + "di-web": "di-web.php", + "params": "params.php", + "routes": "routes.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Debug\\Viewer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Debug Viewer", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "debug", + "dev", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-debug-viewer/issues?state=open", + "source": "https://github.com/yiisoft/yii-debug-viewer", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-06T13:05:25+00:00" + }, + { + "name": "yiisoft/yii-gii", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-gii.git", + "reference": "cf2f56d5d3a0a8fb00636da24ba13df3a1082350" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-gii/zipball/cf2f56d5d3a0a8fb00636da24ba13df3a1082350", + "reference": "cf2f56d5d3a0a8fb00636da24ba13df3a1082350", + "shasum": "" + }, + "require": { + "httpsoft/http-basis": "^1.1", + "php": "^8.1", + "phpspec/php-diff": "^1.1.3", + "psr/http-message": "^1.0|^2.0", + "symfony/console": "^6.0|^7.0", + "yiisoft/active-record": "dev-master", + "yiisoft/aliases": "^3.0", + "yiisoft/arrays": "^2.1|^3.0", + "yiisoft/csrf": "^2.1.1", + "yiisoft/data-response": "^2.0", + "yiisoft/db": "*", + "yiisoft/friendly-exception": "^1.1", + "yiisoft/http": "^1.2", + "yiisoft/hydrator": "^1.0", + "yiisoft/injector": "^1.1", + "yiisoft/input-http": "^1.0", + "yiisoft/json": "^1.0", + "yiisoft/router": "^3.0", + "yiisoft/strings": "^2.1", + "yiisoft/validator": "^2.0", + "yiisoft/yii-console": "^2.0", + "yiisoft/yii-middleware": "^1.0" + }, + "require-dev": { + "jetbrains/phpstorm-attributes": "^1.0", + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.5", + "phpunit/phpunit": "^10.2", + "rector/rector": "^1.2", + "roave/infection-static-analysis-plugin": "^1.23", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^5.13", + "yiisoft/cache": "^3.0", + "yiisoft/db-sqlite": "dev-master", + "yiisoft/di": "^1.1", + "yiisoft/dummy-provider": "^1.0", + "yiisoft/event-dispatcher": "^1.0", + "yiisoft/files": "^2.0", + "yiisoft/log": "^2.0", + "yiisoft/translator": "^3.0" + }, + "default-branch": true, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + }, + "config-plugin-options": { + "source-directory": "config" + }, + "config-plugin": { + "params": "params.php", + "di": "di.php", + "routes": "routes.php" + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Gii\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "Yii Framework Code Generator Extension", + "keywords": [ + "code generator", + "dev", + "gii", + "yii" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-gii/issues?state=open", + "source": "https://github.com/yiisoft/yii-gii", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-09-19T05:22:18+00:00" + }, + { + "name": "yiisoft/yii-testing", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/yiisoft/yii-testing.git", + "reference": "d90cce1c6f33990ad2a0f9e7781da88202a57229" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yiisoft/yii-testing/zipball/d90cce1c6f33990ad2a0f9e7781da88202a57229", + "reference": "d90cce1c6f33990ad2a0f9e7781da88202a57229", + "shasum": "" + }, + "require": { + "php": "^8.0", + "phpunit/phpunit": "^9.5", + "psr/container": "^2.0", + "psr/http-message": "^1.0|^2.0", + "yiisoft/config": "^1.1", + "yiisoft/di": "^1.1", + "yiisoft/error-handler": "^3.0", + "yiisoft/yii-http": "^1.0", + "yiisoft/yii-runner": "^2.0", + "yiisoft/yii-runner-console": "^2.0", + "yiisoft/yii-runner-http": "^2.0" + }, + "require-dev": { + "maglnet/composer-require-checker": "^4.2", + "nyholm/psr7": "^1.5", + "rector/rector": "^0.15.2", + "roave/infection-static-analysis-plugin": "^1.16", + "spatie/phpunit-watcher": "^1.23", + "vimeo/psalm": "^4.30|^5.6" + }, + "default-branch": true, + "type": "library", + "extra": { + "config-plugin-options": { + "build-merge-plan": false + } + }, + "autoload": { + "psr-4": { + "Yiisoft\\Yii\\Testing\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "yii-testing", + "homepage": "https://www.yiiframework.com/", + "keywords": [ + "testing", + "yii3" + ], + "support": { + "chat": "https://t.me/yii3en", + "forum": "https://www.yiiframework.com/forum/", + "irc": "ircs://irc.libera.chat:6697/yii", + "issues": "https://github.com/yiisoft/yii-testing/issues?state=open", + "source": "https://github.com/yiisoft/yii-testing", + "wiki": "https://www.yiiframework.com/wiki/" + }, + "funding": [ + { + "url": "https://github.com/sponsors/yiisoft", + "type": "github" + }, + { + "url": "https://opencollective.com/yiisoft", + "type": "opencollective" + } + ], + "time": "2024-06-04T07:04:12+00:00" + }, + { + "name": "yosymfony/resource-watcher", + "version": "v3.0.0", + "source": { + "type": "git", + "url": "https://github.com/yosymfony/resource-watcher.git", + "reference": "2f197cee0231c06db865d4ad2d8d7cd3faead2f8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/yosymfony/resource-watcher/zipball/2f197cee0231c06db865d4ad2d8d7cd3faead2f8", + "reference": "2f197cee0231c06db865d4ad2d8d7cd3faead2f8", + "shasum": "" + }, + "require": { + "php": ">=5.6", + "symfony/finder": "^2.7|^3.0|^4.0|^5.0" + }, + "require-dev": { + "phpunit/phpunit": "^5.7", + "symfony/filesystem": "^2.7|^3.0|^4.0|^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Yosymfony\\ResourceWatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Victor Puertas", + "email": "vpgugr@gmail.com" + } + ], + "description": "A simple resource watcher using Symfony Finder", + "homepage": "http://yosymfony.com", + "keywords": [ + "finder", + "resources", + "symfony", + "watcher" + ], + "support": { + "issues": "https://github.com/yosymfony/resource-watcher/issues", + "source": "https://github.com/yosymfony/resource-watcher/tree/master" + }, + "time": "2020-06-10T14:58:36+00:00" + } + ], + "aliases": [], + "minimum-stability": "dev", + "stability-flags": { + "cebe/markdown": 20, + "yiisoft/data": 20, + "yiisoft/data-cycle": 20, + "yiisoft/rate-limiter": 20, + "yiisoft/yii-bootstrap5": 20, + "yiisoft/yii-dataview": 20, + "yiisoft/yii-debug": 20, + "yiisoft/yii-debug-api": 20, + "roave/security-advisories": 20, + "yiisoft/yii-debug-viewer": 20, + "yiisoft/yii-gii": 20, + "yiisoft/yii-testing": 20 + }, + "prefer-stable": true, + "prefer-lowest": false, + "platform": { + "php": ">=8.3 <8.4", + "ext-mbstring": "*", + "ext-pdo_sqlite": "*" + }, + "platform-dev": [], + "plugin-api-version": "2.3.0" +} diff --git a/blog/config/common/di/hydrator.php b/blog/config/common/di/hydrator.php new file mode 100644 index 000000000..1561583dc --- /dev/null +++ b/blog/config/common/di/hydrator.php @@ -0,0 +1,13 @@ + ContainerAttributeResolverFactory::class, + ObjectFactoryInterface::class => ContainerObjectFactory::class, +]; diff --git a/blog/config/common/di/router.php b/blog/config/common/di/router.php index d192a6d17..fcab40c46 100644 --- a/blog/config/common/di/router.php +++ b/blog/config/common/di/router.php @@ -5,28 +5,39 @@ use Yiisoft\Config\Config; use Yiisoft\Csrf\CsrfMiddleware; use Yiisoft\DataResponse\Middleware\FormatDataResponse; +use Yiisoft\Router\FastRoute\UrlGenerator; use Yiisoft\Router\Group; use Yiisoft\Router\RouteCollection; use Yiisoft\Router\RouteCollectionInterface; use Yiisoft\Router\RouteCollectorInterface; -use Yiisoft\Yii\Debug\Viewer\Middleware\ToolbarMiddleware; +use Yiisoft\Router\UrlGeneratorInterface; -/** @var Config $config */ +/** + * @var Config $config + * @var array $params + */ return [ + UrlGeneratorInterface::class => [ + 'class' => UrlGenerator::class, + 'setEncodeRaw()' => [$params['yiisoft/router-fastroute']['encodeRaw']], + 'setDefaultArgument()' => ['_language', 'en'], + 'reset' => function () { + $this->defaultArguments = ['_language', 'en']; + }, + ], + RouteCollectionInterface::class => static function (RouteCollectorInterface $collector) use ($config) { $collector ->middleware(CsrfMiddleware::class) ->middleware(FormatDataResponse::class) ->addGroup( - Group::create('/{_language}') - ->routes(...$config->get('routes')) + Group::create('/{_language}')->routes(...$config->get('app-routes')), + ) + ->addGroup( + Group::create()->routes(...$config->get('routes')), ); - if (!str_starts_with(getenv('YII_ENV') ?: '', 'prod')) { - $collector->middleware(ToolbarMiddleware::class); - } - return new RouteCollection($collector); }, ]; diff --git a/blog/config/common/params.php b/blog/config/common/params.php index fe4e56c8a..bc5fa805f 100644 --- a/blog/config/common/params.php +++ b/blog/config/common/params.php @@ -8,6 +8,7 @@ use App\ViewInjection\MetaTagsViewInjection; use Cycle\Database\Config\SQLite\FileConnectionConfig; use Cycle\Database\Config\SQLiteDriverConfig; +use Cycle\Schema\Provider\PhpFileSchemaProvider; use Yiisoft\Assets\AssetManager; use Yiisoft\Definitions\Reference; use Yiisoft\Form\Field\SubmitButton; @@ -16,8 +17,7 @@ use Yiisoft\Translator\TranslatorInterface; use Yiisoft\Yii\Cycle\Schema\Conveyor\AttributedSchemaConveyor; use Yiisoft\Yii\Cycle\Schema\Provider\FromConveyorSchemaProvider; -use Yiisoft\Yii\Cycle\Schema\Provider\PhpFileSchemaProvider; -use Yiisoft\Yii\View\CsrfViewInjection; +use Yiisoft\Yii\View\Renderer\CsrfViewInjection; return [ 'mailer' => [ @@ -44,7 +44,7 @@ ], 'yiisoft/form' => [ - 'configs' => [ + 'themes' => [ 'default' => [ 'containerClass' => 'form-floating mb-3', 'inputClass' => 'form-control', @@ -92,7 +92,7 @@ 'secretKey' => '53136271c432a1af377c3806c3112ddf', ], - 'yiisoft/yii-view' => [ + 'yiisoft/yii-view-renderer' => [ 'viewPath' => '@views', 'layout' => '@views/layout/main', 'injections' => [ @@ -181,6 +181,7 @@ 'yiisoft/yii-swagger' => [ 'annotation-paths' => [ '@src/Controller', + '@src/Middleware', '@src/User/Controller', ], ], diff --git a/blog/config/common/routes/routes.php b/blog/config/common/routes/routes.php index 16fa838be..3d4dbd3d9 100644 --- a/blog/config/common/routes/routes.php +++ b/blog/config/common/routes/routes.php @@ -32,6 +32,7 @@ use Yiisoft\Router\UrlGeneratorInterface; use Yiisoft\Swagger\Middleware\SwaggerJson; use Yiisoft\Swagger\Middleware\SwaggerUi; +use Yiisoft\Yii\Middleware\CorsAllowAll; use Yiisoft\Yii\Middleware\HttpCache; use Yiisoft\Yii\RateLimiter\Counter; use Yiisoft\Yii\RateLimiter\LimitRequestsMiddleware; @@ -69,7 +70,7 @@ ->middleware(fn ( ResponseFactoryInterface $responseFactory, StorageInterface $storage - ) => new LimitRequestsMiddleware(new Counter($storage, 5, 5), $responseFactory)) + ) => new LimitRequestsMiddleware(new Counter($storage, 10, 10), $responseFactory)) ->action([SignupController::class, 'signup']) ->name('auth/signup'), @@ -186,6 +187,7 @@ ->name('swagger/index'), Route::get('/openapi.json') ->middleware(FormatDataResponseAsJson::class) - ->action(SwaggerJson::class), + ->middleware(CorsAllowAll::class) + ->action([SwaggerJson::class, 'process']), ), ]; diff --git a/blog/config/web/di/application.php b/blog/config/web/di/application.php index edb21888e..76fc28aec 100644 --- a/blog/config/web/di/application.php +++ b/blog/config/web/di/application.php @@ -7,7 +7,7 @@ use Yiisoft\Definitions\Reference; use Yiisoft\Middleware\Dispatcher\MiddlewareDispatcher; use Yiisoft\Yii\Middleware\Locale; -use Yiisoft\Yii\Middleware\SubFolder; +use Yiisoft\Yii\Middleware\Subfolder; /** @var array $params */ @@ -23,11 +23,11 @@ ], Locale::class => [ '__construct()' => [ - 'locales' => $params['locale']['locales'], - 'ignoredRequests' => $params['locale']['ignoredRequests'], + 'supportedLocales' => $params['locale']['locales'], + 'ignoredRequestUrlPatterns' => $params['locale']['ignoredRequests'], ], ], - SubFolder::class => [ + Subfolder::class => [ '__construct()' => [ 'prefix' => !empty(trim($_ENV['BASE_URL'] ?? '', '/')) ? $_ENV['BASE_URL'] : null, ], diff --git a/blog/config/web/di/middleware-dispatcher.php b/blog/config/web/di/middleware-dispatcher.php index fd505727d..65962fbe0 100644 --- a/blog/config/web/di/middleware-dispatcher.php +++ b/blog/config/web/di/middleware-dispatcher.php @@ -2,14 +2,22 @@ declare(strict_types=1); +use Yiisoft\Definitions\Reference; +use Yiisoft\Input\Http\HydratorAttributeParametersResolver; +use Yiisoft\Input\Http\RequestInputParametersResolver; +use Yiisoft\Middleware\Dispatcher\CompositeParametersResolver; +use Yiisoft\Middleware\Dispatcher\ParametersResolverInterface; /** * @var array $params */ -use Yiisoft\Middleware\Dispatcher\ParametersResolverInterface; -use Yiisoft\RequestModel\HandlerParametersResolver; - return [ - ParametersResolverInterface::class => HandlerParametersResolver::class, + ParametersResolverInterface::class => [ + 'class' => CompositeParametersResolver::class, + '__construct()' => [ + Reference::to(HydratorAttributeParametersResolver::class), + Reference::to(RequestInputParametersResolver::class), + ], + ], ]; diff --git a/blog/config/web/events.php b/blog/config/web/events.php index fffb00e90..c8373efd0 100644 --- a/blog/config/web/events.php +++ b/blog/config/web/events.php @@ -3,10 +3,15 @@ declare(strict_types=1); use App\Timer; +use Yiisoft\Translator\TranslatorInterface; use Yiisoft\Yii\Http\Event\ApplicationStartup; +use Yiisoft\Yii\Middleware\Event\SetLocaleEvent; return [ ApplicationStartup::class => [ - static fn (Timer $timer) => $timer->start('overall'), + static fn(Timer $timer) => $timer->start('overall'), + ], + SetLocaleEvent::class => [ + static fn(TranslatorInterface $translator, SetLocaleEvent $event) => $translator->setLocale($event->getLocale()), ], ]; diff --git a/blog/config/web/params.php b/blog/config/web/params.php index 8a1c14138..a2e8992cb 100644 --- a/blog/config/web/params.php +++ b/blog/config/web/params.php @@ -4,28 +4,31 @@ use Yiisoft\Cookies\CookieMiddleware; use Yiisoft\ErrorHandler\Middleware\ErrorCatcher; +use Yiisoft\RequestProvider\RequestCatcherMiddleware; use Yiisoft\Router\Middleware\Router; use Yiisoft\Session\SessionMiddleware; use Yiisoft\User\Login\Cookie\CookieLoginMiddleware; use Yiisoft\Yii\Middleware\Locale; -use Yiisoft\Yii\Middleware\SubFolder; +use Yiisoft\Yii\Middleware\Subfolder; use Yiisoft\Yii\Sentry\SentryMiddleware; return [ 'middlewares' => [ + RequestCatcherMiddleware::class, ErrorCatcher::class, SentryMiddleware::class, SessionMiddleware::class, CookieMiddleware::class, CookieLoginMiddleware::class, - SubFolder::class, + Subfolder::class, Locale::class, Router::class, ], 'locale' => [ - 'locales' => ['en' => 'en-US', 'ru' => 'ru-RU', 'id' => 'id-ID', 'sk' => 'sk-SK'], + 'locales' => ['en' => 'en-US', 'ru' => 'ru-RU', 'id' => 'id-ID', 'sk' => 'sk-SK', 'de' => 'de-DE'], 'ignoredRequests' => [ + '/gii**', '/debug**', '/inspect**', ], diff --git a/blog/configuration.php b/blog/configuration.php index 20520fe03..918ce8a47 100644 --- a/blog/configuration.php +++ b/blog/configuration.php @@ -44,7 +44,7 @@ '$events', 'console/events.php', ], - 'routes' => [ + 'app-routes' => [ 'common/routes/*.php', ], 'bootstrap' => [ diff --git a/blog/docker-compose.yml b/blog/docker-compose.yml index b8295a7c4..bdbd304ac 100644 --- a/blog/docker-compose.yml +++ b/blog/docker-compose.yml @@ -1,12 +1,10 @@ -version: '3' - services: - php: - image: yiisoftware/yii-php:8.1-apache - working_dir: /app - volumes: - - ./:/app - # host-volume for composer cache - - ~/.composer-docker/cache:/root/.composer/cache:delegated - ports: - - '30080:80' + php: + image: yiisoftware/yii-php:8.3-apache + working_dir: /app + volumes: + - ./:/app + # host-volume for composer cache + - ~/.composer-docker/cache:/root/.composer/cache:delegated + ports: + - "30080:80" diff --git a/blog/package-lock.json b/blog/package-lock.json new file mode 100644 index 000000000..aaad2a1c1 --- /dev/null +++ b/blog/package-lock.json @@ -0,0 +1,13 @@ +{ + "name": "yii3-demo-blog", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==" + } + } +} diff --git a/blog/package.json b/blog/package.json new file mode 100644 index 000000000..ec1ad179b --- /dev/null +++ b/blog/package.json @@ -0,0 +1,10 @@ +{ + "name": "yii3-demo-blog", + "version": "1.0.0", + "description": "Yii3 Demo Blog", + "dependencies": { + "bootstrap": "^5.3.1" + }, + "devDependencies": {}, + "license": "BSD-3-Clause" +} diff --git a/blog/resources/messages/de/app.php b/blog/resources/messages/de/app.php new file mode 100644 index 000000000..d79a610d0 --- /dev/null +++ b/blog/resources/messages/de/app.php @@ -0,0 +1,55 @@ + 'API', + 'gridview.create.at' => 'Erzeugt am', + 'gridview.login' => 'Anmelden', + 'gridview.profile' => 'Profil', + 'gridview.title' => 'Liste der Benutzer', + 'home.caption.slide1' => '
Hello, everyone!

Ein toller Tag, um Yii 3 auszuprobieren, richtig?

', + 'home.caption.slide2' => '
Der Code wartet!

Schau dir den Projektcode an. Er ist nicht ideal, da es sich auch um eine Entwicklungs-Sandbox handelt, bietet aber einen mittelmäßigen Überblick über die Funktionen von Yii 3.

', + 'home.caption.slide3' => '
Wir brauchen Rückmeldungen!

Bitte gib uns deine Rückmeldungen über die im README genannten Telegram- und Slack-Kanäle.

', + 'layout.add.post' => 'Neuer Beitrag', + 'layout.add.random-content' => 'Füge zufälligen Inhalt ein', + 'layout.add.tag' => 'Neues Stichwort', + 'layout.add' => 'Hinzufügen', + 'layout.archive.for-year' => 'Archiv für {year}', + 'layout.archive' => 'Archiv', + 'layout.blog' => 'Blog', + 'layout.change-language' => 'Kanal Sprache', + 'layout.console' => 'Konsole', + 'layout.content' => 'Inhalt', + 'layout.create.new-user' => 'Erstelle neuen Benutzer', + 'layout.db.schema' => 'DB Schema', + 'layout.go.home' => 'Zurück zur Startseite', + 'layout.login' => 'Anmelden', + 'layout.migrations' => 'Migrationen', + 'layout.no-records' => 'Keine Einträge', + 'layout.not-found' => 'Nicht gefunden', + 'layout.page.not-found' => 'Die Seite {url} konnte nicht gefunden werden.', + 'layout.pagination-summary' => 'Zeige {pageSize} von {total} Beiträgen', + 'layout.password-verify' => 'Wiederhole Passwort', + 'layout.password' => 'Passwort', + 'layout.rbac.assign-role' => 'Rolle zuweisen', + 'layout.remember' => 'Erinnere dich an mich', + 'layout.reset' => 'Zurücksetzen', + 'layout.show-more' => 'Zeige mehr', + 'layout.submit' => 'Absenden', + 'layout.title' => 'Titel', + 'layout.total.posts' => 'Insgesamt {count} Beiträge', + 'menu.blog' => 'Blog', + 'menu.comments-feed' => 'Kommentar-Feed', + 'menu.contact' => 'Kontakt', + 'menu.language' => 'Sprache', + 'menu.login' => 'Anmelden', + 'menu.logout' => 'Abmelden ({login})', + 'menu.signup' => 'Registrieren', + 'menu.swagger' => 'Swagger', + 'menu.users' => 'Benutzer', + 'signup' => 'Registrieren', + 'validator.invalid.login.password' => 'Ungültiger Benutzername oder Passwort', + 'validator.password.not.match' => 'Passwörter stimmen nicht überein', + 'validator.user.exist' => 'Ein Benutzer mit diesem Namen ist bereits vorhanden', +]; diff --git a/blog/resources/views/auth/login.php b/blog/resources/views/auth/login.php index 7ec710c50..a396e5482 100644 --- a/blog/resources/views/auth/login.php +++ b/blog/resources/views/auth/login.php @@ -3,7 +3,7 @@ declare(strict_types=1); use App\Auth\Form\LoginForm; -use Yiisoft\Form\Field; +use Yiisoft\FormModel\Field; use Yiisoft\Html\Html; use Yiisoft\Html\Tag\Form; use Yiisoft\Router\UrlGeneratorInterface; diff --git a/blog/resources/views/blog/comments/_comments.php b/blog/resources/views/blog/comments/_comments.php index c9db5fcf1..336e2e472 100644 --- a/blog/resources/views/blog/comments/_comments.php +++ b/blog/resources/views/blog/comments/_comments.php @@ -33,7 +33,7 @@
diff --git a/blog/resources/views/layout/main.php b/blog/resources/views/layout/main.php index 3751e71f7..34634bc28 100644 --- a/blog/resources/views/layout/main.php +++ b/blog/resources/views/layout/main.php @@ -125,6 +125,10 @@ 'label' => 'Indonesia', 'url' => $urlGenerator->generateFromCurrent(['_language' => 'id'], fallbackRouteName: 'site/index'), ], + [ + 'label' => 'German', + 'url' => $urlGenerator->generateFromCurrent(['_language' => 'de'], fallbackRouteName: 'site/index'), + ], ], ], [ @@ -193,4 +197,4 @@ endPage(true); +$this->endPage(); diff --git a/blog/resources/views/signup/signup.php b/blog/resources/views/signup/signup.php index 491e48f29..833e57edb 100644 --- a/blog/resources/views/signup/signup.php +++ b/blog/resources/views/signup/signup.php @@ -3,7 +3,7 @@ declare(strict_types=1); use App\Auth\Form\SignupForm; -use Yiisoft\Form\Field; +use Yiisoft\FormModel\Field; use Yiisoft\Html\Html; use Yiisoft\Html\Tag\Form; use Yiisoft\Router\UrlGeneratorInterface; diff --git a/blog/resources/views/user/index.php b/blog/resources/views/user/index.php index 04c0b253e..7720e2075 100644 --- a/blog/resources/views/user/index.php +++ b/blog/resources/views/user/index.php @@ -2,6 +2,7 @@ declare(strict_types=1); +use App\User\User; use Yiisoft\Data\Paginator\OffsetPaginator; use Yiisoft\Html\Html; use Yiisoft\Html\Tag\A; @@ -86,53 +87,52 @@ columns( - DataColumn::create() - ->attribute('id') - ->value(static fn (object $data) => $data->getId()), - DataColumn::create() - ->attribute('login') - ->label($translator->translate('gridview.login')) - ->value(static fn (object $data) => $data->getLogin()), - DataColumn::create() - ->attribute('create_at') - ->label($translator->translate('gridview.create.at')) - ->value(static fn (object $data) => $data->getCreatedAt()->format('r')), - DataColumn::create() - ->attribute('api') - ->label($translator->translate('gridview.api')) - ->value( - static function (object $data) use ($urlGenerator): string { - return Html::a( - 'API User Data', - $urlGenerator->generate('api/user/profile', ['login' => $data->getLogin()]), - ['target' => '_blank'], - )->render(); - }, - ), - DataColumn::create() - ->attribute('profile') - ->label($translator->translate('gridview.profile')) - ->value( - static function (object $data) use ($urlGenerator): string { - return Html::a( - Html::tag('i', '', [ - 'class' => 'bi bi-person-fill ms-1', - 'style' => 'font-size: 1.5em;', - ]), - $urlGenerator->generate('user/profile', ['login' => $data->getLogin()]), - ['class' => 'btn btn-link'], - )->render(); - }, - ), + new DataColumn( + 'id', + content: static fn (User $user) => $user->getId(), + ), + new DataColumn( + 'login', + content: static fn (User $user) => $user->getLogin(), + header: $translator->translate('gridview.login'), + ), + new DataColumn( + 'login', + content: static fn (User $user) => $user->getCreatedAt()->format('r'), + header: $translator->translate('gridview.create.at'), + ), + new DataColumn( + 'api', + content: static function (User $user) use ($urlGenerator): string { + return Html::a( + 'API User Data', + $urlGenerator->generate('api/user/profile', ['login' => $user->getLogin()]), + ['target' => '_blank'], + )->render(); + }, + header: $translator->translate('gridview.api'), + ), + new DataColumn( + 'profile', + content: static function (User $user) use ($urlGenerator): string { + return Html::a( + Html::tag('i', '', [ + 'class' => 'bi bi-person-fill ms-1', + 'style' => 'font-size: 1.5em;', + ]), + $urlGenerator->generate('user/profile', ['login' => $user->getLogin()]), + ['class' => 'btn btn-link'], + )->render(); + }, + header: $translator->translate('gridview.profile'), + ), ) ->header($header) ->id('w1-grid') - ->paginator($paginator) + ->dataReader($paginator) ->pagination( OffsetPagination::widget() - ->menuClass('pagination justify-content-center') ->paginator($paginator) - ->urlArguments([]) ->render(), ) ->rowAttributes(['class' => 'align-middle']) diff --git a/blog/resources/views/user/profile.php b/blog/resources/views/user/profile.php index 2acc58b6c..78e83360b 100644 --- a/blog/resources/views/user/profile.php +++ b/blog/resources/views/user/profile.php @@ -3,13 +3,15 @@ declare(strict_types=1); /** - * @var User $item + * @var User $item * @var WebView $this + * @var $translator TranslatorInterface */ use App\User\User; use Yiisoft\Html\Html; use Yiisoft\Html\Tag\H2; +use Yiisoft\Translator\TranslatorInterface; use Yiisoft\View\WebView; use Yiisoft\Yii\DataView\DetailView; use Yiisoft\Yii\DataView\Field\DataField; diff --git a/blog/src/Auth/Controller/AuthController.php b/blog/src/Auth/Controller/AuthController.php index da26e7823..036b77f20 100644 --- a/blog/src/Auth/Controller/AuthController.php +++ b/blog/src/Auth/Controller/AuthController.php @@ -9,18 +9,17 @@ use App\Service\WebControllerService; use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; -use Yiisoft\Http\Method; +use Yiisoft\FormModel\FormHydrator; use Yiisoft\Translator\TranslatorInterface; use Yiisoft\User\Login\Cookie\CookieLogin; use Yiisoft\User\Login\Cookie\CookieLoginIdentityInterface; -use Yiisoft\Validator\ValidatorInterface; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class AuthController { public function __construct( - private AuthService $authService, - private WebControllerService $webService, + private readonly AuthService $authService, + private readonly WebControllerService $webService, private ViewRenderer $viewRenderer, ) { $this->viewRenderer = $viewRenderer->withControllerName('auth'); @@ -29,26 +28,19 @@ public function __construct( public function login( ServerRequestInterface $request, TranslatorInterface $translator, - ValidatorInterface $validator, + FormHydrator $formHydrator, CookieLogin $cookieLogin ): ResponseInterface { if (!$this->authService->isGuest()) { return $this->redirectToMain(); } - $body = $request->getParsedBody(); $loginForm = new LoginForm($this->authService, $translator); - if ( - $request->getMethod() === Method::POST - && $loginForm->load(is_array($body) ? $body : []) - && $validator - ->validate($loginForm) - ->isValid() - ) { + if ($formHydrator->populateFromPostAndValidate($loginForm, $request)) { $identity = $this->authService->getIdentity(); - if ($identity instanceof CookieLoginIdentityInterface && $loginForm->getAttributeValue('rememberMe')) { + if ($identity instanceof CookieLoginIdentityInterface && $loginForm->getPropertyValue('rememberMe')) { return $cookieLogin->addCookie($identity, $this->redirectToMain()); } diff --git a/blog/src/Auth/Controller/SignupController.php b/blog/src/Auth/Controller/SignupController.php index 97cf232bb..3e15ee77b 100644 --- a/blog/src/Auth/Controller/SignupController.php +++ b/blog/src/Auth/Controller/SignupController.php @@ -9,8 +9,8 @@ use App\Service\WebControllerService; use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; -use Yiisoft\Http\Method; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\FormModel\FormHydrator; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class SignupController { @@ -22,16 +22,15 @@ public function __construct(private WebControllerService $webService, private Vi public function signup( AuthService $authService, ServerRequestInterface $request, + FormHydrator $formHydrator, SignupForm $signupForm ): ResponseInterface { if (!$authService->isGuest()) { return $this->redirectToMain(); } - if ($request->getMethod() === Method::POST - && $signupForm->load($request->getParsedBody()) - && $signupForm->signup() - ) { + if ($formHydrator->populateFromPostAndValidate($signupForm, $request)) { + $signupForm->signup(); return $this->redirectToMain(); } diff --git a/blog/src/Auth/Form/LoginForm.php b/blog/src/Auth/Form/LoginForm.php index 98e49308d..3a422278e 100644 --- a/blog/src/Auth/Form/LoginForm.php +++ b/blog/src/Auth/Form/LoginForm.php @@ -5,24 +5,29 @@ namespace App\Auth\Form; use App\Auth\AuthService; -use Yiisoft\Form\FormModel; +use Yiisoft\FormModel\FormModel; use Yiisoft\Translator\TranslatorInterface; +use Yiisoft\Validator\PropertyTranslator\ArrayPropertyTranslator; +use Yiisoft\Validator\PropertyTranslatorInterface; +use Yiisoft\Validator\PropertyTranslatorProviderInterface; use Yiisoft\Validator\Result; use Yiisoft\Validator\Rule\Callback; use Yiisoft\Validator\Rule\Required; +use Yiisoft\Validator\RulesProviderInterface; -final class LoginForm extends FormModel +final class LoginForm extends FormModel implements RulesProviderInterface, PropertyTranslatorProviderInterface { private string $login = ''; private string $password = ''; private bool $rememberMe = false; - public function __construct(private AuthService $authService, private TranslatorInterface $translator) - { - parent::__construct(); + public function __construct( + private AuthService $authService, + private TranslatorInterface $translator, + ) { } - public function getAttributeLabels(): array + public function getPropertyLabels(): array { return [ 'login' => $this->translator->translate('layout.login'), @@ -53,9 +58,6 @@ private function passwordRules(): array $result = new Result(); if (!$this->authService->login($this->login, $this->password)) { - $this - ->getFormErrors() - ->addError('login', ''); $result->addError($this->translator->translate('validator.invalid.login.password')); } @@ -65,4 +67,9 @@ private function passwordRules(): array ), ]; } + + public function getPropertyTranslator(): ?PropertyTranslatorInterface + { + return new ArrayPropertyTranslator($this->getPropertyLabels()); + } } diff --git a/blog/src/Auth/Form/SignupForm.php b/blog/src/Auth/Form/SignupForm.php index c8c905d36..909e5e795 100644 --- a/blog/src/Auth/Form/SignupForm.php +++ b/blog/src/Auth/Form/SignupForm.php @@ -6,29 +6,30 @@ use App\User\User; use App\User\UserRepository; -use Yiisoft\Form\FormModel; +use Yiisoft\FormModel\FormModel; use Yiisoft\Translator\TranslatorInterface; +use Yiisoft\Validator\PropertyTranslator\ArrayPropertyTranslator; +use Yiisoft\Validator\PropertyTranslatorInterface; +use Yiisoft\Validator\PropertyTranslatorProviderInterface; use Yiisoft\Validator\Result; use Yiisoft\Validator\Rule\Equal; use Yiisoft\Validator\Rule\Length; use Yiisoft\Validator\Rule\Required; -use Yiisoft\Validator\ValidatorInterface; +use Yiisoft\Validator\RulesProviderInterface; -final class SignupForm extends FormModel +final class SignupForm extends FormModel implements RulesProviderInterface, PropertyTranslatorProviderInterface { private string $login = ''; private string $password = ''; private string $passwordVerify = ''; public function __construct( - private ValidatorInterface $validator, - private TranslatorInterface $translator, - private UserRepository $userRepository, + private readonly TranslatorInterface $translator, + private readonly UserRepository $userRepository, ) { - parent::__construct(); } - public function getAttributeLabels(): array + public function getPropertyLabels(): array { return [ 'login' => $this->translator->translate('layout.login'), @@ -52,16 +53,11 @@ public function getPassword(): string return $this->password; } - public function signup(): false|User + public function signup(): User { - if ($this->validator->validate($this)->isValid()) { - $user = new User($this->getLogin(), $this->getPassword()); - $this->userRepository->save($user); - - return $user; - } - - return false; + $user = new User($this->getLogin(), $this->getPassword()); + $this->userRepository->save($user); + return $user; } public function getRules(): array @@ -92,4 +88,9 @@ function ($value): Result { ], ]; } + + public function getPropertyTranslator(): ?PropertyTranslatorInterface + { + return new ArrayPropertyTranslator($this->getPropertyLabels()); + } } diff --git a/blog/src/Auth/IdentityRepository.php b/blog/src/Auth/IdentityRepository.php index 559280c3a..69c9cbcb3 100644 --- a/blog/src/Auth/IdentityRepository.php +++ b/blog/src/Auth/IdentityRepository.php @@ -7,7 +7,7 @@ use Cycle\ORM\Select; use Throwable; use Yiisoft\Auth\IdentityRepositoryInterface; -use Yiisoft\Yii\Cycle\Data\Writer\EntityWriter; +use Yiisoft\Data\Cycle\Writer\EntityWriter; final class IdentityRepository extends Select\Repository implements IdentityRepositoryInterface { diff --git a/blog/src/Backend/Controller/SiteController.php b/blog/src/Backend/Controller/SiteController.php index 7014ef750..cc6045e09 100644 --- a/blog/src/Backend/Controller/SiteController.php +++ b/blog/src/Backend/Controller/SiteController.php @@ -5,7 +5,7 @@ namespace App\Backend\Controller; use Psr\Http\Message\ResponseInterface; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class SiteController { diff --git a/blog/src/Blog/Archive/ArchiveController.php b/blog/src/Blog/Archive/ArchiveController.php index 004c20606..25f0a4d0d 100644 --- a/blog/src/Blog/Archive/ArchiveController.php +++ b/blog/src/Blog/Archive/ArchiveController.php @@ -7,8 +7,8 @@ use App\Blog\Tag\TagRepository; use Psr\Http\Message\ResponseInterface as Response; use Yiisoft\Data\Paginator\OffsetPaginator; -use Yiisoft\RequestModel\Attribute\Route; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Router\HydratorAttribute\RouteArgument; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class ArchiveController { @@ -29,9 +29,9 @@ public function index(ArchiveRepository $archiveRepo): Response public function monthlyArchive( TagRepository $tagRepository, ArchiveRepository $archiveRepo, - #[Route('page')] int $pageNum = 1, - #[Route('year')] int $year = 0, - #[Route('month')] int $month = 0, + #[RouteArgument('page')] int $pageNum = 1, + #[RouteArgument('year')] int $year = 0, + #[RouteArgument('month')] int $month = 0, ): Response { $dataReader = $archiveRepo->getMonthlyArchive($year, $month); $paginator = (new OffsetPaginator($dataReader)) @@ -51,7 +51,7 @@ public function monthlyArchive( return $this->viewRenderer->render('monthly-archive', $data); } - public function yearlyArchive(ArchiveRepository $archiveRepo, #[Route('year')] int $year = 0): Response + public function yearlyArchive(ArchiveRepository $archiveRepo, #[RouteArgument('year')] int $year = 0): Response { $data = [ 'year' => $year, diff --git a/blog/src/Blog/Archive/ArchiveRepository.php b/blog/src/Blog/Archive/ArchiveRepository.php index 562693166..b9ce92bac 100644 --- a/blog/src/Blog/Archive/ArchiveRepository.php +++ b/blog/src/Blog/Archive/ArchiveRepository.php @@ -15,9 +15,9 @@ use Cycle\ORM\ORMInterface; use Cycle\ORM\Select; use DateTimeImmutable; +use Yiisoft\Data\Cycle\Reader\EntityReader; use Yiisoft\Data\Reader\DataReaderInterface; use Yiisoft\Data\Reader\Sort; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; /** * This repository is not associated with Post entity. @@ -107,10 +107,10 @@ private function extractFromDateColumn(string $attr): FragmentInterface if ($driver instanceof SQLiteDriver) { $str = ['year' => '%Y', 'month' => '%m', 'day' => '%d'][$attr]; - return new Fragment("strftime('{$str}', post.published_at) {$wrappedField}"); + return new Fragment("strftime('$str', post.published_at) $wrappedField"); } - return new Fragment("extract({$attr} from post.published_at) {$wrappedField}"); + return new Fragment("extract($attr from post.published_at) $wrappedField"); } private function getDriver(): DriverInterface diff --git a/blog/src/Blog/BlogController.php b/blog/src/Blog/BlogController.php index 011795095..7da0ad6fb 100644 --- a/blog/src/Blog/BlogController.php +++ b/blog/src/Blog/BlogController.php @@ -9,9 +9,9 @@ use App\Blog\Tag\TagRepository; use Psr\Http\Message\ResponseInterface as Response; use Yiisoft\Data\Paginator\OffsetPaginator; -use Yiisoft\RequestModel\Attribute\Route; +use Yiisoft\Router\HydratorAttribute\RouteArgument; use Yiisoft\User\CurrentUser; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class BlogController { @@ -31,12 +31,12 @@ public function index( TagRepository $tagRepository, ArchiveRepository $archiveRepo, CurrentUser $currentUser, - #[Route('page')] $pageNum = 1, + #[RouteArgument('page')] $pageNum = 1, ): Response { $dataReader = $postRepository->findAllPreloaded(); $paginator = (new OffsetPaginator($dataReader)) ->withPageSize(self::POSTS_PER_PAGE) - ->withCurrentPage($pageNum); + ->withCurrentPage((int)$pageNum); $data = [ 'paginator' => $paginator, diff --git a/blog/src/Blog/Comment/CommentRepository.php b/blog/src/Blog/Comment/CommentRepository.php index 6318fdd2d..0a3ccdeca 100644 --- a/blog/src/Blog/Comment/CommentRepository.php +++ b/blog/src/Blog/Comment/CommentRepository.php @@ -8,10 +8,15 @@ use Cycle\ORM\Select; use Yiisoft\Data\Reader\DataReaderInterface; use Yiisoft\Data\Reader\Sort; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; +use Yiisoft\Data\Cycle\Reader\EntityReader; final class CommentRepository extends Select\Repository { + public function __construct(Select $select) + { + parent::__construct($select); + } + /** * @psalm-return DataReaderInterface */ @@ -21,8 +26,16 @@ public function getReader(): DataReaderInterface ->withSort($this->getSort()); } - private function getSort(): Sort + public function getSort(): Sort { return Sort::only(['id', 'public', 'created_at', 'post_id', 'user_id'])->withOrder(['id' => 'asc']); } + + public function findAll(array $scope = [], array $orderBy = []): DataReaderInterface + { + return new EntityReader($this + ->select() + ->where($scope) + ->orderBy($orderBy)); + } } diff --git a/blog/src/Blog/CommentController.php b/blog/src/Blog/CommentController.php index 303cc420c..e0d3fbe55 100644 --- a/blog/src/Blog/CommentController.php +++ b/blog/src/Blog/CommentController.php @@ -4,14 +4,19 @@ namespace App\Blog; -use App\Blog\Comment\CommentService; +use App\Blog\Comment\CommentRepository; use Psr\Http\Message\ResponseInterface as Response; use Psr\Http\Message\ServerRequestInterface as Request; -use Yiisoft\RequestModel\Attribute\Route; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Data\Paginator\OffsetPaginator; +use Yiisoft\Data\Paginator\PageToken; +use Yiisoft\Input\Http\Attribute\Parameter\Body; +use Yiisoft\Input\Http\Attribute\Parameter\Query; +use Yiisoft\Router\HydratorAttribute\RouteArgument; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class CommentController { + private const COMMENTS_FEED_PER_PAGE = 10; private ViewRenderer $viewRenderer; public function __construct(ViewRenderer $viewRenderer) @@ -19,12 +24,25 @@ public function __construct(ViewRenderer $viewRenderer) $this->viewRenderer = $viewRenderer->withControllerName('blog/comments'); } - public function index(Request $request, CommentService $service, #[Route('next')] ?string $next): Response - { - $paginator = $service->getFeedPaginator(); - if ($next !== null) { - $paginator = $paginator->withNextPageToken($next); + public function index( + Request $request, + CommentRepository $repository, + #[Body] ?array $body, + #[Query('sort')] ?string $sortOrder = null, + #[RouteArgument('page')] int $page = 1, + #[RouteArgument('pagesize')] int $pageSize = null, + ): Response { + $dataReader = $repository + ->findAll() + ->withSort($repository->getSort() + ->withOrderString($sortOrder ?? 'id')); + + if ($pageSize === null) { + $pageSize = (int) ($body['pageSize'] ?? self::COMMENTS_FEED_PER_PAGE); } + $paginator = (new OffsetPaginator($dataReader)); + $paginator = $paginator->withToken(PageToken::next((string) $page))->withPageSize($pageSize); + if ($this->isAjaxRequest($request)) { return $this->viewRenderer->renderPartial('_comments', ['data' => $paginator]); diff --git a/blog/src/Blog/Post/PostController.php b/blog/src/Blog/Post/PostController.php index e5e43130d..0530d8d0e 100644 --- a/blog/src/Blog/Post/PostController.php +++ b/blog/src/Blog/Post/PostController.php @@ -9,10 +9,10 @@ use App\User\UserService; use Psr\Http\Message\ResponseInterface as Response; use Psr\Http\Message\ServerRequestInterface as Request; +use Yiisoft\FormModel\FormHydrator; use Yiisoft\Http\Method; use Yiisoft\Router\CurrentRoute; -use Yiisoft\Validator\ValidatorInterface; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class PostController { @@ -37,7 +37,7 @@ public function index(CurrentRoute $currentRoute, PostRepository $postRepository return $this->viewRenderer->render('index', ['item' => $item, 'canEdit' => $canEdit, 'slug' => $slug]); } - public function add(Request $request, ValidatorInterface $validator): Response + public function add(Request $request, FormHydrator $formHydrator): Response { $parameters = [ 'title' => 'Add post', @@ -48,15 +48,13 @@ public function add(Request $request, ValidatorInterface $validator): Response if ($request->getMethod() === Method::POST) { $form = new PostForm(); - if ($form->load($parameters['body']) && $validator - ->validate($form) - ->isValid()) { + if ($formHydrator->populateAndValidate($form, $parameters['body'])) { $this->postService->savePost($this->userService->getUser(), new Post(), $form); return $this->webService->getRedirectResponse('blog/index'); } - $parameters['errors'] = $form->getFormErrors(); + $parameters['errors'] = $form->getValidationResult()->getErrorMessagesIndexedByProperty(); } return $this->viewRenderer->render('__form', $parameters); @@ -65,8 +63,8 @@ public function add(Request $request, ValidatorInterface $validator): Response public function edit( Request $request, PostRepository $postRepository, - ValidatorInterface $validator, - CurrentRoute $currentRoute + CurrentRoute $currentRoute, + FormHydrator $formHydrator ): Response { $slug = $currentRoute->getArgument('slug'); $post = $postRepository->fullPostPage($slug); @@ -88,16 +86,13 @@ public function edit( if ($request->getMethod() === Method::POST) { $form = new PostForm(); $body = $request->getParsedBody(); - if ($form->load($body) && $validator - ->validate($form) - ->isValid()) { + if ($formHydrator->populateAndValidate($form, $body)) { $this->postService->savePost($this->userService->getUser(), $post, $form); - return $this->webService->getRedirectResponse('blog/index'); } $parameters['body'] = $body; - $parameters['errors'] = $form->getFormErrors(); + $parameters['errors'] = $form->getValidationResult()->getErrorMessagesIndexedByProperty(); } return $this->viewRenderer->render('__form', $parameters); diff --git a/blog/src/Blog/Post/PostForm.php b/blog/src/Blog/Post/PostForm.php index 05890ce7f..6c9b0c083 100644 --- a/blog/src/Blog/Post/PostForm.php +++ b/blog/src/Blog/Post/PostForm.php @@ -4,13 +4,17 @@ namespace App\Blog\Post; -use Yiisoft\Form\FormModel; +use Yiisoft\FormModel\FormModel; use Yiisoft\Validator\Rule\Required; final class PostForm extends FormModel { + #[Required] private ?string $title = null; + + #[Required] private ?string $content = null; + private array $tags = []; public function getTitle(): string @@ -32,12 +36,4 @@ public function getTags(): array { return $this->tags; } - - public function getRules(): array - { - return [ - 'title' => [new Required()], - 'content' => [new Required()], - ]; - } } diff --git a/blog/src/Blog/Post/PostRepository.php b/blog/src/Blog/Post/PostRepository.php index f0d002144..0207d7a32 100644 --- a/blog/src/Blog/Post/PostRepository.php +++ b/blog/src/Blog/Post/PostRepository.php @@ -9,10 +9,10 @@ use DateTimeImmutable; use DateTimeInterface; use Throwable; +use Yiisoft\Data\Cycle\Reader\EntityReader; +use Yiisoft\Data\Cycle\Writer\EntityWriter; use Yiisoft\Data\Reader\DataReaderInterface; use Yiisoft\Data\Reader\Sort; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; -use Yiisoft\Yii\Cycle\Data\Writer\EntityWriter; final class PostRepository extends Select\Repository { diff --git a/blog/src/Blog/Tag/TagController.php b/blog/src/Blog/Tag/TagController.php index d640cf654..277aeeae9 100644 --- a/blog/src/Blog/Tag/TagController.php +++ b/blog/src/Blog/Tag/TagController.php @@ -9,7 +9,7 @@ use Psr\Http\Message\ResponseInterface as Response; use Yiisoft\Data\Paginator\OffsetPaginator; use Yiisoft\Router\CurrentRoute; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class TagController { diff --git a/blog/src/Blog/Tag/TagRepository.php b/blog/src/Blog/Tag/TagRepository.php index 10b5227eb..6963efbd9 100644 --- a/blog/src/Blog/Tag/TagRepository.php +++ b/blog/src/Blog/Tag/TagRepository.php @@ -11,9 +11,9 @@ use Cycle\ORM\ORMInterface; use Cycle\ORM\Select; use Cycle\ORM\Select\Repository; +use Yiisoft\Data\Cycle\Reader\EntityReader; use Yiisoft\Data\Reader\DataReaderInterface; use Yiisoft\Data\Reader\Sort; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; final class TagRepository extends Repository { diff --git a/blog/src/Command/Fixture/AddCommand.php b/blog/src/Command/Fixture/AddCommand.php index cad64e14f..f9e7cfd2e 100644 --- a/blog/src/Command/Fixture/AddCommand.php +++ b/blog/src/Command/Fixture/AddCommand.php @@ -21,9 +21,9 @@ use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Style\SymfonyStyle; use Throwable; +use Yiisoft\Data\Cycle\Writer\EntityWriter; use Yiisoft\Yii\Console\ExitCode; use Yiisoft\Yii\Cycle\Command\CycleDependencyProxy; -use Yiisoft\Yii\Cycle\Data\Writer\EntityWriter; final class AddCommand extends Command { @@ -129,15 +129,15 @@ private function addPosts(int $count): void for ($i = 0; $i < $count; $i++) { /** @var User $postUser */ $postUser = $this->users[array_rand($this->users)]; - $post = new Post($this->faker->text(64), $this->faker->realText(rand(1000, 4000))); + $post = new Post($this->faker->text(64), $this->faker->realText(random_int(1000, 4000))); $postUser->addPost($post); - $public = rand(0, 2) > 0; + $public = random_int(0, 2) > 0; $post->setPublic($public); if ($public) { - $post->setPublishedAt(new DateTimeImmutable(date('r', rand(strtotime('-2 years'), time())))); + $post->setPublishedAt(new DateTimeImmutable(date('r', random_int(strtotime('-2 years'), time())))); } // link tags - $postTags = (array) array_rand($this->tags, rand(1, count($this->tags))); + $postTags = (array) array_rand($this->tags, random_int(1, count($this->tags))); foreach ($postTags as $tagId) { $tag = $this->tags[$tagId]; $post->addTag($tag); @@ -145,13 +145,13 @@ private function addPosts(int $count): void // $tag->addPost($post); } // add comments - $commentsCount = rand(0, $count); + $commentsCount = random_int(0, $count); for ($j = 0; $j <= $commentsCount; $j++) { - $comment = new Comment($this->faker->realText(rand(100, 500))); - $commentPublic = rand(0, 3) > 0; + $comment = new Comment($this->faker->realText(random_int(100, 500))); + $commentPublic = random_int(0, 3) > 0; $comment->setPublic($commentPublic); if ($commentPublic) { - $comment->setPublishedAt(new DateTimeImmutable(date('r', rand(strtotime('-1 years'), time())))); + $comment->setPublishedAt(new DateTimeImmutable(date('r', random_int(strtotime('-1 years'), time())))); } $commentUser = $this->users[array_rand($this->users)]; $commentUser->addComment($comment); diff --git a/blog/src/Contact/ContactController.php b/blog/src/Contact/ContactController.php index 180ac097d..ee855b4fe 100644 --- a/blog/src/Contact/ContactController.php +++ b/blog/src/Contact/ContactController.php @@ -7,12 +7,11 @@ use Psr\Http\Message\ResponseFactoryInterface; use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; +use Yiisoft\FormModel\FormHydrator; use Yiisoft\Http\Header; -use Yiisoft\Http\Method; use Yiisoft\Http\Status; use Yiisoft\Router\UrlGeneratorInterface; -use Yiisoft\Validator\ValidatorInterface; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class ContactController { @@ -28,21 +27,18 @@ public function __construct( } public function contact( - ValidatorInterface $validator, - ServerRequestInterface $request + FormHydrator $formHydrator, + ServerRequestInterface $request, ): ResponseInterface { - $body = $request->getParsedBody(); $form = new ContactForm(); - if (($request->getMethod() === Method::POST) && $form->load((array) $body) && $validator - ->validate($form) - ->isValid()) { - $this->mailer->send($form, $request); - - return $this->responseFactory - ->createResponse(Status::FOUND) - ->withHeader(Header::LOCATION, $this->url->generate('site/contact')); + if (!$formHydrator->populateFromPostAndValidate($form, $request)) { + return $this->viewRenderer->render('form', ['form' => $form]); } - return $this->viewRenderer->render('form', ['form' => $form]); + $this->mailer->send($form); + + return $this->responseFactory + ->createResponse(Status::FOUND) + ->withHeader(Header::LOCATION, $this->url->generate('site/contact')); } } diff --git a/blog/src/Contact/ContactForm.php b/blog/src/Contact/ContactForm.php index 182570215..b5ad5304d 100644 --- a/blog/src/Contact/ContactForm.php +++ b/blog/src/Contact/ContactForm.php @@ -4,19 +4,26 @@ namespace App\Contact; -use Yiisoft\Form\FormModel; +use Yiisoft\FormModel\FormModel; +use Yiisoft\Input\Http\Attribute\Parameter\UploadedFiles; +use Yiisoft\Validator\PropertyTranslator\ArrayPropertyTranslator; +use Yiisoft\Validator\PropertyTranslatorInterface; +use Yiisoft\Validator\PropertyTranslatorProviderInterface; use Yiisoft\Validator\Rule\Email; use Yiisoft\Validator\Rule\Required; +use Yiisoft\Validator\RulesProviderInterface; -final class ContactForm extends FormModel +final class ContactForm extends FormModel implements RulesProviderInterface, PropertyTranslatorProviderInterface { private string $name = ''; private string $email = ''; private string $subject = ''; private string $body = ''; - private ?array $attachFiles = null; - public function getAttributeLabels(): array + #[UploadedFiles('ContactForm.attachFiles')] + private array $attachFiles = []; + + public function getPropertyLabels(): array { return [ 'name' => 'Name', @@ -40,4 +47,9 @@ public function getRules(): array 'body' => [new Required()], ]; } + + public function getPropertyTranslator(): ?PropertyTranslatorInterface + { + return new ArrayPropertyTranslator($this->getPropertyLabels()); + } } diff --git a/blog/src/Contact/ContactMailer.php b/blog/src/Contact/ContactMailer.php index 6212bf70d..82fea5807 100644 --- a/blog/src/Contact/ContactMailer.php +++ b/blog/src/Contact/ContactMailer.php @@ -5,9 +5,7 @@ namespace App\Contact; use Exception; -use Psr\Http\Message\ServerRequestInterface; use Psr\Log\LoggerInterface; -use Yiisoft\Form\FormModelInterface; use Yiisoft\Mailer\File; use Yiisoft\Mailer\MailerInterface; use Yiisoft\Mailer\MessageBodyTemplate; @@ -28,22 +26,21 @@ public function __construct( $this->mailer = $this->mailer->withTemplate(new MessageBodyTemplate(__DIR__ . '/mail/')); } - public function send(FormModelInterface $form, ServerRequestInterface $request): void + public function send(ContactForm $form): void { $message = $this->mailer ->compose( 'contact-email', [ - 'content' => $form->getAttributeValue('body'), + 'content' => $form->getPropertyValue('body'), ] ) - ->withSubject($form->getAttributeValue('subject')) - ->withFrom([$form->getAttributeValue('email') => $form->getAttributeValue('name')]) + ->withSubject($form->getPropertyValue('subject')) + ->withFrom([$form->getPropertyValue('email') => $form->getPropertyValue('name')]) ->withSender($this->sender) ->withTo($this->to); - $attachFiles = $request->getUploadedFiles(); - foreach ($attachFiles as $attachFile) { + foreach ($form->getPropertyValue('attachFiles') as $attachFile) { foreach ($attachFile as $file) { if ($file[0]?->getError() === UPLOAD_ERR_OK) { $message = $message->withAttached( diff --git a/blog/src/Contact/views/contact/form.php b/blog/src/Contact/views/contact/form.php index 45d72a3b9..60ab70392 100644 --- a/blog/src/Contact/views/contact/form.php +++ b/blog/src/Contact/views/contact/form.php @@ -4,7 +4,7 @@ use App\Contact\ContactForm; use App\Widget\FlashMessage; -use Yiisoft\Form\Field; +use Yiisoft\FormModel\Field; use Yiisoft\Html\Html; use Yiisoft\Html\Tag\Form; use Yiisoft\Router\UrlGeneratorInterface; @@ -12,7 +12,7 @@ use Yiisoft\View\WebView; /** - * @var Yiisoft\Yii\View\Csrf $csrf + * @var Yiisoft\Yii\View\Renderer\Csrf $csrf * @var ContactForm $form * @var UrlGeneratorInterface $url * @var WebView $this diff --git a/blog/src/Controller/Actions/ApiInfo.php b/blog/src/Controller/Actions/ApiInfo.php index dc83f1c06..f4e65c51c 100644 --- a/blog/src/Controller/Actions/ApiInfo.php +++ b/blog/src/Controller/Actions/ApiInfo.php @@ -4,16 +4,14 @@ namespace App\Controller\Actions; -use OpenApi\Annotations as OA; use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\MiddlewareInterface; use Psr\Http\Server\RequestHandlerInterface; use Yiisoft\DataResponse\DataResponseFactoryInterface; +use OpenApi\Attributes as OA; -/** - * @OA\Info(title="Yii demo API", version="2.0") - */ +#[OA\Info(version: '2.0', title: 'Yii demo API')] final class ApiInfo implements MiddlewareInterface { private DataResponseFactoryInterface $responseFactory; @@ -23,13 +21,28 @@ public function __construct(DataResponseFactoryInterface $responseFactory) $this->responseFactory = $responseFactory; } - /** - * @OA\Get( - * path="/api/info/v2", - * - * @OA\Response(response="200", description="Get api version") - * ) - */ + #[OA\Get( + path: '/api/info/v2', + description: '', + summary: 'Returns info about the API', + responses: [ + new OA\Response( + response:'200', + description:'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property(property: 'data', properties: [ + new OA\Property(property: 'version', type: 'string', example: '2.0'), + new OA\Property(property: 'author', type: 'string', example: 'yiisoft'), + ], type: 'object'), + ]), + ] + ), + ), + ] + )] public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { return $this->responseFactory->createResponse(['version' => '2.0', 'author' => 'yiisoft']); diff --git a/blog/src/Controller/SiteController.php b/blog/src/Controller/SiteController.php index 9e46c8d0b..a1718e374 100644 --- a/blog/src/Controller/SiteController.php +++ b/blog/src/Controller/SiteController.php @@ -8,8 +8,8 @@ use Psr\Http\Message\ResponseInterface; use Yiisoft\DataResponse\Middleware\FormatDataResponseAsJson; use Yiisoft\DataResponse\Middleware\FormatDataResponseAsXml; -use Yiisoft\Yii\View\ViewRenderer; use Yiisoft\Router\Route; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class SiteController { diff --git a/blog/src/Handler/NotFoundHandler.php b/blog/src/Handler/NotFoundHandler.php index 3b689b0e8..84a9187c5 100644 --- a/blog/src/Handler/NotFoundHandler.php +++ b/blog/src/Handler/NotFoundHandler.php @@ -8,7 +8,7 @@ use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\RequestHandlerInterface; use Yiisoft\Http\Status; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class NotFoundHandler implements RequestHandlerInterface { diff --git a/blog/src/Middleware/ApiDataWrapper.php b/blog/src/Middleware/ApiDataWrapper.php index 70803cb63..89793e308 100644 --- a/blog/src/Middleware/ApiDataWrapper.php +++ b/blog/src/Middleware/ApiDataWrapper.php @@ -9,7 +9,16 @@ use Psr\Http\Server\MiddlewareInterface; use Psr\Http\Server\RequestHandlerInterface; use Yiisoft\DataResponse\DataResponse; +use OpenApi\Attributes as OA; +#[OA\Schema( + schema: 'Response', + properties: [ + new OA\Property(property: 'status', type: 'string', enum: ['success', 'failed']), + new OA\Property(property: 'error', type:'object', nullable: true), + new OA\Property(property: 'data', type: 'object', nullable: true), + ] +)] final class ApiDataWrapper implements MiddlewareInterface { public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface diff --git a/blog/src/User/Console/CreateCommand.php b/blog/src/User/Console/CreateCommand.php index f712327dd..a8c8e23de 100644 --- a/blog/src/User/Console/CreateCommand.php +++ b/blog/src/User/Console/CreateCommand.php @@ -12,6 +12,7 @@ use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Style\SymfonyStyle; use Throwable; +use Yiisoft\FormModel\FormHydrator; use Yiisoft\Rbac\Manager; use Yiisoft\Yii\Console\ExitCode; @@ -19,8 +20,11 @@ final class CreateCommand extends Command { protected static $defaultName = 'user/create'; - public function __construct(private SignupForm $signupForm, private Manager $manager) - { + public function __construct( + private readonly SignupForm $signupForm, + private readonly Manager $manager, + private readonly FormHydrator $formHydrator + ) { parent::__construct(); } @@ -41,25 +45,21 @@ protected function execute(InputInterface $input, OutputInterface $output): int $login = (string) $input->getArgument('login'); $password = (string) $input->getArgument('password'); $isAdmin = (bool) $input->getArgument('isAdmin'); - - $this->signupForm->load([ - 'login' => $login, - 'password' => $password, - 'passwordVerify' => $password, - ], ''); - try { + $this->formHydrator->populate(model: $this->signupForm, data: [ + 'login' => $login, + 'password' => $password, + 'passwordVerify' => $password, + ], scope: ''); $user = $this->signupForm->signup(); } catch (Throwable $t) { $io->error($t->getMessage() . ' ' . $t->getFile() . ' ' . $t->getLine()); - return $t->getCode() ?: ExitCode::UNSPECIFIED_ERROR; } if ($user === false) { - $errors = $this->signupForm->getFormErrors()->getFirstErrors(); - array_walk($errors, fn ($error, $attribute) => $io->error("$attribute: $error")); - + $errors = $this->signupForm->getValidationResult()?->getErrorMessagesIndexedByProperty(); + array_walk($errors, fn($error, $attribute) => $io->error("$attribute: " . implode("\n", (array) $error))); return ExitCode::DATAERR; } diff --git a/blog/src/User/Controller/ApiUserController.php b/blog/src/User/Controller/ApiUserController.php index 9f0c4e55f..ce43136da 100644 --- a/blog/src/User/Controller/ApiUserController.php +++ b/blog/src/User/Controller/ApiUserController.php @@ -6,32 +6,47 @@ use App\User\User; use App\User\UserRepository; -use OpenApi\Annotations as OA; use Psr\Http\Message\ResponseInterface; use Yiisoft\Data\Reader\Sort; use Yiisoft\DataResponse\DataResponseFactoryInterface; use Yiisoft\Router\CurrentRoute; +use OpenApi\Attributes as OA; -/** - * @OA\Tag( - * name="user", - * description="User" - * ) - */ +#[OA\Tag(name: 'user', description: 'User')] final class ApiUserController { public function __construct(private DataResponseFactoryInterface $responseFactory) { } - /** - * @OA\Get( - * path="/api/user", - * tags={"user"}, - * - * @OA\Response(response="200", description="Get users list") - * ) - */ + #[OA\Get( + path: '/api/user', + description: '', + summary: 'Get users list', + tags: ['user'], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\XmlContent( + xml: new OA\Xml(name: 'response'), + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property( + property: 'data', + type: 'array', + items: new OA\Items(properties: [ + new OA\Property(property: 'login', type: 'string', example: 'exampleLogin'), + new OA\Property(property: 'created_at', type: 'string', example: '13.12.2020 00:04:20'), + ]) + ), + ]), + ] + ) + ), + ] + )] public function index(UserRepository $userRepository): ResponseInterface { $dataReader = $userRepository @@ -49,22 +64,32 @@ public function index(UserRepository $userRepository): ResponseInterface return $this->responseFactory->createResponse($items); } - /** - * @OA\Get( - * path="/api/user/{login}", - * tags={"user"}, - * - * @OA\Parameter( - * - * @OA\Schema(type="string"), - * in="path", - * name="login", - * parameter="login" - * ), - * - * @OA\Response(response="200", description="Get user info") - * ) - */ + #[OA\Get( + path: '/api/user/{login}', + description: '', + summary: 'Get user info', + tags: ['user'], + parameters: [ + new OA\Parameter(parameter: 'login', name: 'Login', in: 'path'), + ], + responses: [ + new OA\Response( + response: '200', + description: 'Success', + content: new OA\JsonContent( + allOf: [ + new OA\Schema(ref: '#/components/schemas/Response'), + new OA\Schema(properties: [ + new OA\Property(property: 'data', properties: [ + new OA\Property(property: 'login', type: 'string', example: 'exampleLogin'), + new OA\Property(property: 'created_at', type: 'string', example: '13.12.2020 00:04:20'), + ], type: 'object'), + ]), + ] + ), + ), + ] + )] public function profile(UserRepository $userRepository, CurrentRoute $currentRoute): ResponseInterface { $login = $currentRoute->getArgument('login'); diff --git a/blog/src/User/Controller/UserController.php b/blog/src/User/Controller/UserController.php index 3174bb79c..d6387b354 100644 --- a/blog/src/User/Controller/UserController.php +++ b/blog/src/User/Controller/UserController.php @@ -5,19 +5,18 @@ namespace App\User\Controller; use App\User\UserRepository; +use Yiisoft\Data\Paginator\PageToken; use Psr\Http\Message\ResponseFactoryInterface; use Psr\Http\Message\ResponseInterface as Response; use Yiisoft\Data\Paginator\OffsetPaginator; use Yiisoft\Data\Reader\Sort; -use Yiisoft\RequestModel\Attribute\Body; -use Yiisoft\RequestModel\Attribute\Query; -use Yiisoft\RequestModel\Attribute\Route; -use Yiisoft\Yii\View\ViewRenderer; +use Yiisoft\Input\Http\Attribute\Parameter\Body; +use Yiisoft\Input\Http\Attribute\Parameter\Query; +use Yiisoft\Router\HydratorAttribute\RouteArgument; +use Yiisoft\Yii\View\Renderer\ViewRenderer; final class UserController { - private const PAGINATION_INDEX = 5; - public function __construct(private ViewRenderer $viewRenderer) { $this->viewRenderer = $viewRenderer->withControllerName('user'); @@ -25,28 +24,28 @@ public function __construct(private ViewRenderer $viewRenderer) public function index( UserRepository $userRepository, - #[Body] array $body, - #[Query] array $sortOrder, - #[Route('page')] int $page = 1, - #[Route('pagesize')] int $pageSize = null, + #[Body] ?array $body, + #[Query('sort')] ?string $sortOrder = null, + #[RouteArgument('page')] int $page = 1, + #[RouteArgument('pagesize')] int $pageSize = null, ): Response { $dataReader = $userRepository ->findAll() ->withSort(Sort::only(['id', 'login']) - ->withOrderString($sortOrder['sort'] ?? 'id')); + ->withOrderString($sortOrder ?? 'id')); if ($pageSize === null) { $pageSize = (int) ($body['pageSize'] ?? OffSetPaginator::DEFAULT_PAGE_SIZE); } $paginator = (new OffsetPaginator($dataReader)); - $paginator = $paginator->withNextPageToken((string) $page)->withPageSize($pageSize); + $paginator = $paginator->withToken(PageToken::next((string) $page))->withPageSize($pageSize); return $this->viewRenderer->render('index', ['paginator' => $paginator]); } public function profile( - #[Route('login')] string $login, + #[RouteArgument('login')] string $login, ResponseFactoryInterface $responseFactory, UserRepository $userRepository ): Response { diff --git a/blog/src/User/UserRepository.php b/blog/src/User/UserRepository.php index 9237fb044..00d7a7b2e 100644 --- a/blog/src/User/UserRepository.php +++ b/blog/src/User/UserRepository.php @@ -6,10 +6,10 @@ use Cycle\ORM\Select; use Throwable; +use Yiisoft\Data\Cycle\Reader\EntityReader; +use Yiisoft\Data\Cycle\Writer\EntityWriter; use Yiisoft\Data\Reader\DataReaderInterface; use Yiisoft\Data\Reader\Sort; -use Yiisoft\Yii\Cycle\Data\Reader\EntityReader; -use Yiisoft\Yii\Cycle\Data\Writer\EntityWriter; final class UserRepository extends Select\Repository { diff --git a/blog/src/ViewInjection/CommonViewInjection.php b/blog/src/ViewInjection/CommonViewInjection.php index 530849468..ec5fa0b81 100644 --- a/blog/src/ViewInjection/CommonViewInjection.php +++ b/blog/src/ViewInjection/CommonViewInjection.php @@ -5,7 +5,7 @@ namespace App\ViewInjection; use Yiisoft\Router\UrlGeneratorInterface; -use Yiisoft\Yii\View\CommonParametersInjectionInterface; +use Yiisoft\Yii\View\Renderer\CommonParametersInjectionInterface; final class CommonViewInjection implements CommonParametersInjectionInterface { diff --git a/blog/src/ViewInjection/LayoutViewInjection.php b/blog/src/ViewInjection/LayoutViewInjection.php index 9a6d41447..86b98c7ef 100644 --- a/blog/src/ViewInjection/LayoutViewInjection.php +++ b/blog/src/ViewInjection/LayoutViewInjection.php @@ -6,7 +6,7 @@ use App\Auth\Identity; use Yiisoft\User\CurrentUser; -use Yiisoft\Yii\View\LayoutParametersInjectionInterface; +use Yiisoft\Yii\View\Renderer\LayoutParametersInjectionInterface; final class LayoutViewInjection implements LayoutParametersInjectionInterface { diff --git a/blog/src/ViewInjection/LinkTagsViewInjection.php b/blog/src/ViewInjection/LinkTagsViewInjection.php index 13286282d..d2ac7dc8a 100644 --- a/blog/src/ViewInjection/LinkTagsViewInjection.php +++ b/blog/src/ViewInjection/LinkTagsViewInjection.php @@ -4,7 +4,7 @@ namespace App\ViewInjection; -use Yiisoft\Yii\View\LinkTagsInjectionInterface; +use Yiisoft\Yii\View\Renderer\LinkTagsInjectionInterface; final class LinkTagsViewInjection implements LinkTagsInjectionInterface { diff --git a/blog/src/ViewInjection/MetaTagsViewInjection.php b/blog/src/ViewInjection/MetaTagsViewInjection.php index bbdd0dc41..ba4884e86 100644 --- a/blog/src/ViewInjection/MetaTagsViewInjection.php +++ b/blog/src/ViewInjection/MetaTagsViewInjection.php @@ -4,7 +4,7 @@ namespace App\ViewInjection; -use Yiisoft\Yii\View\MetaTagsInjectionInterface; +use Yiisoft\Yii\View\Renderer\MetaTagsInjectionInterface; final class MetaTagsViewInjection implements MetaTagsInjectionInterface { diff --git a/blog/src/Widget/OffsetPagination.php b/blog/src/Widget/OffsetPagination.php index c820b6d5b..cca652972 100644 --- a/blog/src/Widget/OffsetPagination.php +++ b/blog/src/Widget/OffsetPagination.php @@ -37,7 +37,7 @@ public function urlGenerator(Closure $generator): self public function isRequired(): bool { - return $this->paginator !== null && $this->paginator->isRequired(); + return $this->paginator !== null && $this->paginator->isPaginationRequired(); } /** diff --git a/blog/tests/Acceptance.suite.yml b/blog/tests/Acceptance.suite.yml index 94370b4a5..d4c578c4c 100644 --- a/blog/tests/Acceptance.suite.yml +++ b/blog/tests/Acceptance.suite.yml @@ -7,6 +7,6 @@ extensions: modules: enabled: - PhpBrowser: - url: http://127.0.0.1:8881 + url: http://127.0.0.1:8881%BASE_URL% - \App\Tests\Support\Helper\Acceptance step_decorators: ~ diff --git a/blog/tests/Acceptance/BlogPageCest.php b/blog/tests/Acceptance/BlogPageCest.php index a70be885e..499354706 100644 --- a/blog/tests/Acceptance/BlogPageCest.php +++ b/blog/tests/Acceptance/BlogPageCest.php @@ -18,6 +18,7 @@ public function testBlogPage(AcceptanceTester $I): void { $I->expectTo('see blog page.'); $I->see('Blog'); - $I->see('No records'); + $I->see('Popular tags'); + $I->see('Archive'); } } diff --git a/blog/tests/Acceptance/LoginAcceptanceCest.php b/blog/tests/Acceptance/LoginAcceptanceCest.php index 2d2b66423..022beff39 100644 --- a/blog/tests/Acceptance/LoginAcceptanceCest.php +++ b/blog/tests/Acceptance/LoginAcceptanceCest.php @@ -28,8 +28,8 @@ public function testLoginEmptyDataTest(AcceptanceTester $I): void $I->click('Submit', '#loginForm'); $I->expectTo('see validations errors.'); - $I->see('Value cannot be blank'); - $I->see('Value cannot be blank'); + $I->see('Login cannot be blank.'); + $I->see('Password cannot be blank.'); $I->seeElement('button', ['name' => 'login-button']); } @@ -66,7 +66,7 @@ public function testLoginSubmitFormWrongDataPassword(AcceptanceTester $I): void } /** - * @depends \App\Tests\Acceptance\SignupAcceptanceCest:testRegisterSuccess + * @depends App\Tests\Acceptance\SignupAcceptanceCest:testRegisterSuccess */ public function testLoginUsernameSubmitFormSuccessData(AcceptanceTester $I): void { diff --git a/blog/tests/Acceptance/SignupAcceptanceCest.php b/blog/tests/Acceptance/SignupAcceptanceCest.php index 6bf61c19b..ccd7e3b28 100644 --- a/blog/tests/Acceptance/SignupAcceptanceCest.php +++ b/blog/tests/Acceptance/SignupAcceptanceCest.php @@ -44,9 +44,10 @@ public function testRegisterEmptyData(AcceptanceTester $I): void $I->click('Submit', '#signupForm'); $I->expectTo('see registration register validation.'); - $I->see('Value cannot be blank'); - $I->see('Value cannot be blank'); - $I->see('Value cannot be blank'); + $I->see('Login cannot be blank.'); + $I->see('Password cannot be blank.'); + $I->see('Password must contain at least 8 characters.'); + $I->see('Confirm password cannot be blank.'); $I->seeElement('button', ['name' => 'register-button']); } diff --git a/blog/tests/Cli/ConsoleCest.php b/blog/tests/Cli/ConsoleCest.php index 2949fea78..7cf9f997f 100644 --- a/blog/tests/Cli/ConsoleCest.php +++ b/blog/tests/Cli/ConsoleCest.php @@ -30,6 +30,13 @@ public function testCommandListCommand(CliTester $I): void $I->seeResultCodeIs(ExitCode::OK); } + public function testCommandUserCreateSuccessCommand(CliTester $I): void + { + $command = dirname(__DIR__, 2) . '/yii'; + $I->runShellCommand($command . ' user/create user create123456'); + $I->seeResultCodeIs(ExitCode::OK); + } + /** * Clear all data created with testCommandFixtureAdd(). * Clearing database prevents from getting errors during multiple continuous testing with other test, diff --git a/blog/tests/Functional.suite.yml b/blog/tests/Functional.suite.yml index 289db8882..125f6c5bb 100644 --- a/blog/tests/Functional.suite.yml +++ b/blog/tests/Functional.suite.yml @@ -7,6 +7,6 @@ extensions: modules: enabled: - PhpBrowser: - url: http://127.0.0.1:8881 + url: http://127.0.0.1:8881%BASE_URL% - \App\Tests\Support\Helper\Functional step_decorators: ~ diff --git a/blog/tests/Functional/ContactCest.php b/blog/tests/Functional/ContactCest.php index 9a30936d4..a15d119ec 100644 --- a/blog/tests/Functional/ContactCest.php +++ b/blog/tests/Functional/ContactCest.php @@ -24,7 +24,11 @@ public function submitEmptyForm(FunctionalTester $I) { $I->submitForm('#form-contact', []); $I->expectTo('see validations errors'); - $I->see('Value cannot be blank.'); + $I->see('Name cannot be blank.'); + $I->see('Email cannot be blank.'); + $I->see('Email is not a valid email address.'); + $I->see('Subject cannot be blank.'); + $I->see('Body cannot be blank.'); } public function submitFormWithIncorrectEmail(FunctionalTester $I) @@ -37,7 +41,7 @@ public function submitFormWithIncorrectEmail(FunctionalTester $I) 'ContactForm[verifyCode]' => 'testme', ]); $I->expectTo('see that email address is wrong'); - $I->see('This value is not a valid email address.'); + $I->see('Email is not a valid email address.'); } public function submitFormSuccessfully(FunctionalTester $I) diff --git a/blog/tests/Functional/EventListenerConfigurationTest.php b/blog/tests/Functional/EventListenerConfigurationTest.php index f752ca32a..721dfd400 100644 --- a/blog/tests/Functional/EventListenerConfigurationTest.php +++ b/blog/tests/Functional/EventListenerConfigurationTest.php @@ -24,7 +24,7 @@ public function testConsoleListenerConfiguration(): void ReverseMerge::groups('events', 'events-web', 'events-console'), RecursiveMerge::groups('params', 'params-web', 'params-console', 'events', 'events-web', 'events-console'), ], - 'params', + 'params-console', ); $container = new Container(