From 21c594a2fdec6c32cab7c32e050dfa4240a4a21e Mon Sep 17 00:00:00 2001 From: Tykayn Date: Tue, 20 Apr 2021 16:14:34 +0200 Subject: [PATCH] upgrade all, add migration from framadate v1 --- .env | 9 - .gitignore | 9 - README.md | 13 +- assets/app.js | 14 - bin/console | 13 +- composer.json | 155 +- composer.lock | 5440 ++++++++--------- config/bootstrap.php | 23 - config/bundles.php | 15 +- config/packages/assets.yaml | 3 - config/packages/cache.yaml | 6 +- config/packages/dev/jms_serializer.yaml | 0 config/packages/dev/swiftmailer.yaml | 2 +- config/packages/doctrine.yaml | 41 +- config/packages/doctrine_migrations.yaml | 9 +- config/packages/fos_rest.yaml | 31 +- config/packages/framework.yaml | 1 + config/packages/graphql.yaml | 10 - config/packages/jms_serializer.yaml | 0 config/packages/mailer.yaml | 3 - config/packages/nelmio_api_doc.yaml | 9 - config/packages/nelmio_cors.yaml | 15 - config/packages/prod/doctrine.yaml | 24 +- config/packages/prod/jms_serializer.yaml | 0 config/packages/prod/routing.yaml | 0 config/packages/prod/webpack_encore.yaml | 4 - config/packages/routing.yaml | 4 + config/packages/sensio_framework_extra.yaml | 2 - config/packages/swiftmailer.yaml | 0 config/packages/test/doctrine.yaml | 12 +- config/packages/test/framework.yaml | 3 - config/packages/test/swiftmailer.yaml | 0 config/packages/test/twig.yaml | 0 config/packages/test/validator.yaml | 3 - config/packages/test/webpack_encore.yaml | 2 - config/packages/twig.yaml | 8 +- config/packages/validator.yaml | 8 - config/packages/webpack_encore.yaml | 25 - config/preload.php | 5 + config/routes.yaml | 0 config/routes/annotations.yaml | 4 + config/routes/dev/framework.yaml | 3 + config/routes/dev/twig.yaml | 3 - config/routes/graphql.yaml | 3 - config/routes/nelmio_api_doc.yaml | 12 - config/services.yaml | 17 +- doc/evolutions.md | 15 + doc/migration.md | 16 + .../graphql/types => migrations}/.gitignore | 0 migrations/Version20210419202522.php | 31 + package.json | 40 - public/index.php | 15 +- src/Controller/.gitignore | 0 src/Controller/MigrationController.php | 235 + src/Controller/PollController.php | 9 +- src/Controller/api/PollController.php | 34 +- src/Entity/.gitignore | 0 src/Entity/Comment.php | 87 +- src/Entity/Poll.php | 1163 ++-- src/Kernel.php | 53 +- src/Repository/.gitignore | 0 src/Repository/PollRepository.php | 6 +- symfony.lock | 394 +- templates/admin/index.html.twig | 20 + templates/default/index.html.twig | 20 + templates/migration/index.html.twig | 20 + templates/owner/index.html.twig | 20 + templates/pages/funky.html.twig | 14 + templates/pages/migration.html.twig | 82 + templates/vote/index.html.twig | 20 + webpack.config.js | 74 - 71 files changed, 4179 insertions(+), 4152 deletions(-) delete mode 100644 assets/app.js mode change 100755 => 100644 composer.json mode change 100755 => 100644 composer.lock delete mode 100755 config/bootstrap.php mode change 100755 => 100644 config/bundles.php delete mode 100644 config/packages/assets.yaml mode change 100755 => 100644 config/packages/cache.yaml mode change 100755 => 100644 config/packages/dev/jms_serializer.yaml mode change 100755 => 100644 config/packages/dev/swiftmailer.yaml mode change 100755 => 100644 config/packages/doctrine.yaml mode change 100755 => 100644 config/packages/doctrine_migrations.yaml mode change 100755 => 100644 config/packages/fos_rest.yaml mode change 100755 => 100644 config/packages/framework.yaml delete mode 100644 config/packages/graphql.yaml mode change 100755 => 100644 config/packages/jms_serializer.yaml delete mode 100644 config/packages/mailer.yaml delete mode 100755 config/packages/nelmio_api_doc.yaml delete mode 100755 config/packages/nelmio_cors.yaml mode change 100755 => 100644 config/packages/prod/doctrine.yaml mode change 100755 => 100644 config/packages/prod/jms_serializer.yaml mode change 100755 => 100644 config/packages/prod/routing.yaml delete mode 100644 config/packages/prod/webpack_encore.yaml mode change 100755 => 100644 config/packages/routing.yaml mode change 100755 => 100644 config/packages/sensio_framework_extra.yaml mode change 100755 => 100644 config/packages/swiftmailer.yaml mode change 100755 => 100644 config/packages/test/doctrine.yaml mode change 100755 => 100644 config/packages/test/framework.yaml mode change 100755 => 100644 config/packages/test/swiftmailer.yaml mode change 100755 => 100644 config/packages/test/twig.yaml delete mode 100755 config/packages/test/validator.yaml delete mode 100644 config/packages/test/webpack_encore.yaml mode change 100755 => 100644 config/packages/twig.yaml delete mode 100755 config/packages/validator.yaml delete mode 100644 config/packages/webpack_encore.yaml create mode 100644 config/preload.php mode change 100755 => 100644 config/routes.yaml mode change 100755 => 100644 config/routes/annotations.yaml create mode 100644 config/routes/dev/framework.yaml delete mode 100755 config/routes/dev/twig.yaml delete mode 100644 config/routes/graphql.yaml delete mode 100755 config/routes/nelmio_api_doc.yaml mode change 100755 => 100644 config/services.yaml create mode 100755 doc/evolutions.md create mode 100644 doc/migration.md rename {config/graphql/types => migrations}/.gitignore (100%) create mode 100644 migrations/Version20210419202522.php delete mode 100644 package.json mode change 100755 => 100644 public/index.php mode change 100755 => 100644 src/Controller/.gitignore create mode 100755 src/Controller/MigrationController.php mode change 100755 => 100644 src/Entity/.gitignore mode change 100755 => 100644 src/Kernel.php mode change 100755 => 100644 src/Repository/.gitignore mode change 100755 => 100644 symfony.lock create mode 100644 templates/admin/index.html.twig create mode 100644 templates/default/index.html.twig create mode 100644 templates/migration/index.html.twig create mode 100644 templates/owner/index.html.twig create mode 100644 templates/pages/funky.html.twig create mode 100644 templates/pages/migration.html.twig create mode 100644 templates/vote/index.html.twig delete mode 100644 webpack.config.js diff --git a/.env b/.env index fde3f8a..b50c2c4 100755 --- a/.env +++ b/.env @@ -32,11 +32,6 @@ WEBSITE_LOGO=logo.svg # IMPORTANT: You MUST also configure your db driver and server_version in config/packages/doctrine.yaml DATABASE_URL=mysql://framadate-admin:framadate-admin-password@127.0.0.1:3306/framadate_api ###< doctrine/doctrine-bundle ### - -###> nelmio/cors-bundle ### -CORS_ALLOW_ORIGIN=^https?://(localhost|127\.0\.0\.1)(:[0-9]+)?$ -###< nelmio/cors-bundle ### - ###> symfony/swiftmailer-bundle ### # For Gmail as a transport, use: "gmail://username:password@localhost" # For a generic SMTP server, use: "smtp://localhost:25?encryption=&auth_mode=" @@ -45,7 +40,3 @@ MAILER_URL=sendmail://YOUR_WEBSITE # set the support email who will answer users in case of emergency SUPPORT_EMAIL=YOUR_EMAIL ###< symfony/swiftmailer-bundle ### - -###> symfony/mailer ### -MAILER_DSN=smtp://localhost -###< symfony/mailer ### diff --git a/.gitignore b/.gitignore index 55b9ed2..27e043a 100755 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ - ###> symfony/framework-bundle ### .env.local /.env.local.php @@ -41,12 +40,4 @@ public/* ###< symfony/phpunit-bridge ### node_modules - -###> symfony/webpack-encore-bundle ### -/node_modules/ -/public/build/ -npm-debug.log -yarn-error.log -###< symfony/webpack-encore-bundle ### - funky-framadate-front diff --git a/README.md b/README.md index 4489015..132df45 100755 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ #Funky Framadate API -Experimental REST backend in symfony 4 for Funky framadate frontend. +Experimental REST backend in symfony 5 for Funky framadate frontend. https://framagit.org/framasoft/framadate/funky-framadate-front Follow this guide to setup. @@ -14,7 +14,7 @@ return stack of votes when we want to get the configuration of one poll (see [do *** ### Requirements -You MUST have php version 7+ and [Composer](https://getcomposer.org/download/), and a database like Mysql, or postgresql, or mongodb, or any database that Doctrine can handle. +You MUST have php version 8+ and [Composer](https://getcomposer.org/download/), and a database like Mysql, or postgresql, or mongodb, or any database that Doctrine can handle. Setup access to database by creating a .env.local file, and fill the database user and password data. you can check that the database connection works with the command: ```bash @@ -37,8 +37,10 @@ composer check-platform-reqs ### install the vendors ```bash composer install -```#Funky Framadate API -Experimental REST backend in symfony 4 for Funky framadate frontend. +``` + +#Funky Framadate API +Experimental REST backend in symfony 5 for Funky framadate frontend. https://framagit.org/framasoft/framadate/funky-framadate-front Follow this guide to setup. @@ -53,7 +55,7 @@ return stack of votes when we want to get the configuration of one poll (see [do *** ### Requirements -You MUST have php version 7+ and [Composer](https://getcomposer.org/download/), and a database like Mysql, or postgresql, or mongodb, or any database that Doctrine can handle. +You MUST have php version 8+ and [Composer](https://getcomposer.org/download/), and a database like Mysql, or postgresql, or mongodb, or any database that Doctrine can handle. Setup access to database by creating a .env.local file, and fill the database user and password data. you can check that the database connection works with the command: ```bash @@ -125,6 +127,5 @@ made by B. Lemoine, aka Tykayn, for the framadate funky front end project, a pol ## contacts * contact@cipherbliss.com * https://mastodon.cipherbliss.com/@tykayn -* https://keybase.io/tykayn * https://twitter.com/tykayn * https://cipherbliss.com diff --git a/assets/app.js b/assets/app.js deleted file mode 100644 index 0481817..0000000 --- a/assets/app.js +++ /dev/null @@ -1,14 +0,0 @@ -/* - * Welcome to your app's main JavaScript file! - * - * We recommend including the built version of this JavaScript file - * (and its CSS file) in your base layout (base.html.twig). - */ - -// any CSS you import will output into a single css file (app.css in this case) -import './styles/app.scss'; - -// Need jQuery? Install it with "yarn add jquery", then uncomment to import it. -// import $ from 'jquery'; - -console.log('Hello Webpack Encore! Edit me in assets/app.js'); diff --git a/bin/console b/bin/console index 19c2f6c..8fe9d49 100755 --- a/bin/console +++ b/bin/console @@ -4,18 +4,19 @@ use App\Kernel; use Symfony\Bundle\FrameworkBundle\Console\Application; use Symfony\Component\Console\Input\ArgvInput; -use Symfony\Component\Debug\Debug; +use Symfony\Component\Dotenv\Dotenv; +use Symfony\Component\ErrorHandler\Debug; -if (false === in_array(\PHP_SAPI, ['cli', 'phpdbg', 'embed'], true)) { - echo 'Warning: The console should be invoked via the CLI version of PHP, not the '.\PHP_SAPI.' SAPI'.\PHP_EOL; +if (!in_array(PHP_SAPI, ['cli', 'phpdbg', 'embed'], true)) { + echo 'Warning: The console should be invoked via the CLI version of PHP, not the '.PHP_SAPI.' SAPI'.PHP_EOL; } set_time_limit(0); require dirname(__DIR__).'/vendor/autoload.php'; -if (!class_exists(Application::class)) { - throw new RuntimeException('You need to add "symfony/framework-bundle" as a Composer dependency.'); +if (!class_exists(Application::class) || !class_exists(Dotenv::class)) { + throw new LogicException('You need to add "symfony/framework-bundle" and "symfony/dotenv" as Composer dependencies.'); } $input = new ArgvInput(); @@ -27,7 +28,7 @@ if ($input->hasParameterOption('--no-debug', true)) { putenv('APP_DEBUG='.$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = '0'); } -require dirname(__DIR__).'/config/bootstrap.php'; +(new Dotenv())->bootEnv(dirname(__DIR__).'/.env'); if ($_SERVER['APP_DEBUG']) { umask(0000); diff --git a/composer.json b/composer.json old mode 100755 new mode 100644 index cfcc9b8..934ee5a --- a/composer.json +++ b/composer.json @@ -1,90 +1,75 @@ { - "type": "project", - "license": "AGPLv3", - "require": { - "php": ">=7.1.3", - "ext-ctype": "*", - "ext-iconv": "*", - "ext-json": "*", - "ext-pdo_mysql": "*", - "friendsofsymfony/rest-bundle": "^2.6", - "jms/serializer-bundle": "^3.4", - "nelmio/api-doc-bundle": "^4.0", - "nelmio/cors-bundle": "^2.0", - "overblog/graphql-bundle": "^0.13.4", - "sensio/framework-extra-bundle": "^5.5", - "swiftmailer/swiftmailer": "^6.0", - "symfony/config": "4.3.*", - "symfony/console": "4.3.*", - "symfony/dependency-injection": "4.3.*", - "symfony/dotenv": "4.3.*", - "symfony/expression-language": "4.3.*", - "symfony/flex": "^1.3.1", - "symfony/form": "4.3.*", - "symfony/framework-bundle": "4.3.*", - "symfony/intl": "4.3.*", - "symfony/mailer": "4.3.*", - "symfony/maker-bundle": "^1.14", - "symfony/orm-pack": "^1.0", - "symfony/security-csrf": "4.3.*", - "symfony/swiftmailer-bundle": "^3.4", - "symfony/twig-bundle": "4.3.*", - "symfony/validator": "4.3.*", - "symfony/webpack-encore-bundle": "^1.7", - "symfony/yaml": "4.3.*" - }, - "require-dev": { - "ext-mbstring": "*", - "ext-pdo_sqlite": "*", - "doctrine/doctrine-fixtures-bundle": "^3.2", - "liip/test-fixtures-bundle": "^1.0.0", - "symfony/browser-kit": "4.3.*", - "symfony/phpunit-bridge": "^5.0", - "symfony/web-server-bundle": "4.3.*" - }, - "config": { - "preferred-install": { - "*": "dist" + "type": "project", + "license": "proprietary", + "minimum-stability": "dev", + "prefer-stable": true, + "require": { + "php": ">=7.2.5", + "ext-ctype": "*", + "ext-iconv": "*", + "composer/package-versions-deprecated": "1.11.99.1", + "doctrine/annotations": "^1.12", + "doctrine/doctrine-bundle": "^2.3", + "doctrine/doctrine-migrations-bundle": "^3.1", + "doctrine/orm": "^2.8", + "friendsofsymfony/rest-bundle": "^3.0", + "jms/serializer-bundle": "^3.9", + "sensio/framework-extra-bundle": "^6.1", + "symfony/asset": "5.2.*", + "symfony/console": "5.2.*", + "symfony/dotenv": "5.2.*", + "symfony/flex": "^1.3.1", + "symfony/form": "5.2.*", + "symfony/framework-bundle": "5.2.*", + "symfony/proxy-manager-bridge": "5.2.*", + "symfony/swiftmailer-bundle": "^3.5", + "symfony/twig-bundle": "5.2.*", + "symfony/yaml": "5.2.*" }, - "sort-packages": true - }, - "autoload": { - "psr-4": { - "App\\": "src/" - } - }, - "autoload-dev": { - "psr-4": { - "App\\Tests\\": "tests/" - } - }, - "replace": { - "paragonie/random_compat": "2.*", - "symfony/polyfill-ctype": "*", - "symfony/polyfill-iconv": "*", - "symfony/polyfill-php71": "*", - "symfony/polyfill-php70": "*", - "symfony/polyfill-php56": "*" - }, - "scripts": { - "auto-scripts": { - "cache:clear": "symfony-cmd", - "assets:install %PUBLIC_DIR%": "symfony-cmd" + "config": { + "optimize-autoloader": true, + "preferred-install": { + "*": "dist" + }, + "sort-packages": true }, - "post-install-cmd": [ - "@auto-scripts" - ], - "post-update-cmd": [ - "@auto-scripts" - ] - }, - "conflict": { - "symfony/symfony": "*" - }, - "extra": { - "symfony": { - "allow-contrib": false, - "require": "4.3.*" + "autoload": { + "psr-4": { + "App\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { + "App\\Tests\\": "tests/" + } + }, + "replace": { + "symfony/polyfill-ctype": "*", + "symfony/polyfill-iconv": "*", + "symfony/polyfill-php72": "*" + }, + "scripts": { + "auto-scripts": { + "cache:clear": "symfony-cmd", + "assets:install %PUBLIC_DIR%": "symfony-cmd" + }, + "post-install-cmd": [ + "@auto-scripts" + ], + "post-update-cmd": [ + "@auto-scripts" + ] + }, + "conflict": { + "symfony/symfony": "*" + }, + "extra": { + "symfony": { + "allow-contrib": false, + "require": "5.2.*" + } + }, + "require-dev": { + "symfony/maker-bundle": "^1.30" } - } } diff --git a/composer.lock b/composer.lock old mode 100755 new mode 100644 index c179f29..af06021 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "5dd6e512329e238fbaadcc3f4d5f6217", + "content-hash": "8c0122c4e542f317501dd66ea0f62a40", "packages": [ { "name": "composer/package-versions-deprecated", @@ -59,20 +59,38 @@ } ], "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.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": "2020-11-11T10:22:58+00:00" }, { "name": "doctrine/annotations", - "version": "1.11.1", + "version": "1.12.1", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "ce77a7ba1770462cd705a91a151b6c3746f9c6ad" + "reference": "b17c5014ef81d212ac539f07a1001832df1b6d3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/ce77a7ba1770462cd705a91a151b6c3746f9c6ad", - "reference": "ce77a7ba1770462cd705a91a151b6c3746f9c6ad", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/b17c5014ef81d212ac539f07a1001832df1b6d3b", + "reference": "b17c5014ef81d212ac539f07a1001832df1b6d3b", "shasum": "" }, "require": { @@ -87,11 +105,6 @@ "phpunit/phpunit": "^7.5 || ^9.1.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.11.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" @@ -130,7 +143,11 @@ "docblock", "parser" ], - "time": "2020-10-26T10:28:16+00:00" + "support": { + "issues": "https://github.com/doctrine/annotations/issues", + "source": "https://github.com/doctrine/annotations/tree/1.12.1" + }, + "time": "2021-02-21T21:00:45+00:00" }, { "name": "doctrine/cache", @@ -212,6 +229,24 @@ "redis", "xcache" ], + "support": { + "issues": "https://github.com/doctrine/cache/issues", + "source": "https://github.com/doctrine/cache/tree/1.10.x" + }, + "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%2Fcache", + "type": "tidelift" + } + ], "time": "2020-07-07T18:54:01+00:00" }, { @@ -277,47 +312,40 @@ "iterators", "php" ], + "support": { + "issues": "https://github.com/doctrine/collections/issues", + "source": "https://github.com/doctrine/collections/tree/1.6.7" + }, "time": "2020-07-27T17:53:49+00:00" }, { "name": "doctrine/common", - "version": "2.13.3", + "version": "3.1.2", "source": { "type": "git", "url": "https://github.com/doctrine/common.git", - "reference": "f3812c026e557892c34ef37f6ab808a6b567da7f" + "reference": "a036d90c303f3163b5be8b8fde9b6755b2be4a3a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/common/zipball/f3812c026e557892c34ef37f6ab808a6b567da7f", - "reference": "f3812c026e557892c34ef37f6ab808a6b567da7f", + "url": "https://api.github.com/repos/doctrine/common/zipball/a036d90c303f3163b5be8b8fde9b6755b2be4a3a", + "reference": "a036d90c303f3163b5be8b8fde9b6755b2be4a3a", "shasum": "" }, "require": { - "doctrine/annotations": "^1.0", - "doctrine/cache": "^1.0", - "doctrine/collections": "^1.0", - "doctrine/event-manager": "^1.0", - "doctrine/inflector": "^1.0", - "doctrine/lexer": "^1.0", - "doctrine/persistence": "^1.3.3", - "doctrine/reflection": "^1.0", + "doctrine/persistence": "^2.0", "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^1.0", - "phpstan/phpstan": "^0.11", - "phpstan/phpstan-phpunit": "^0.11", - "phpunit/phpunit": "^7.0", + "doctrine/coding-standard": "^6.0 || ^8.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.5.20 || ^8.5 || ^9.0", "squizlabs/php_codesniffer": "^3.0", - "symfony/phpunit-bridge": "^4.0.5" + "symfony/phpunit-bridge": "^4.0.5", + "vimeo/psalm": "^4.4" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.11.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Common\\": "lib/Doctrine/Common" @@ -353,43 +381,61 @@ "email": "ocramius@gmail.com" } ], - "description": "PHP Doctrine Common project is a library that provides additional functionality that other Doctrine projects depend on such as better reflection support, persistence interfaces, proxies, event system and much more.", + "description": "PHP Doctrine Common project is a library that provides additional functionality that other Doctrine projects depend on such as better reflection support, proxies and much more.", "homepage": "https://www.doctrine-project.org/projects/common.html", "keywords": [ "common", "doctrine", "php" ], - "time": "2020-06-05T16:46:05+00:00" + "support": { + "issues": "https://github.com/doctrine/common/issues", + "source": "https://github.com/doctrine/common/tree/3.1.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%2Fcommon", + "type": "tidelift" + } + ], + "time": "2021-02-10T20:18:51+00:00" }, { "name": "doctrine/dbal", - "version": "2.12.1", + "version": "2.13.0", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "adce7a954a1c2f14f85e94aed90c8489af204086" + "reference": "67d56d3203b33db29834e6b2fcdbfdc50535d796" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/adce7a954a1c2f14f85e94aed90c8489af204086", - "reference": "adce7a954a1c2f14f85e94aed90c8489af204086", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/67d56d3203b33db29834e6b2fcdbfdc50535d796", + "reference": "67d56d3203b33db29834e6b2fcdbfdc50535d796", "shasum": "" }, "require": { "doctrine/cache": "^1.0", + "doctrine/deprecations": "^0.5.3", "doctrine/event-manager": "^1.0", "ext-pdo": "*", - "php": "^7.3 || ^8" + "php": "^7.1 || ^8" }, "require-dev": { - "doctrine/coding-standard": "^8.1", - "jetbrains/phpstorm-stubs": "^2019.1", - "phpstan/phpstan": "^0.12.40", - "phpunit/phpunit": "^9.4", - "psalm/plugin-phpunit": "^0.10.0", + "doctrine/coding-standard": "8.2.0", + "jetbrains/phpstorm-stubs": "2020.2", + "phpstan/phpstan": "0.12.81", + "phpunit/phpunit": "^7.5.20|^8.5|9.5.0", "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", - "vimeo/psalm": "^3.17.2" + "vimeo/psalm": "4.6.4" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -398,11 +444,6 @@ "bin/doctrine-dbal" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\DBAL\\": "lib/Doctrine/DBAL" @@ -453,20 +494,81 @@ "sqlserver", "sqlsrv" ], - "time": "2020-11-14T20:26:58+00:00" + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/2.13.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%2Fdbal", + "type": "tidelift" + } + ], + "time": "2021-03-28T18:10:53+00:00" }, { - "name": "doctrine/doctrine-bundle", - "version": "2.2.1", + "name": "doctrine/deprecations", + "version": "v0.5.3", "source": { "type": "git", - "url": "https://github.com/doctrine/DoctrineBundle.git", - "reference": "9e07bb1ff35d35d9ec4597b79e5d05502d7d4d43" + "url": "https://github.com/doctrine/deprecations.git", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/9e07bb1ff35d35d9ec4597b79e5d05502d7d4d43", - "reference": "9e07bb1ff35d35d9ec4597b79e5d05502d7d4d43", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/9504165960a1f83cc1480e2be1dd0a0478561314", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0|^7.0|^8.0", + "phpunit/phpunit": "^7.0|^8.0|^9.0", + "psr/log": "^1.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/v0.5.3" + }, + "time": "2021-03-21T12:59:47+00:00" + }, + { + "name": "doctrine/doctrine-bundle", + "version": "2.3.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/DoctrineBundle.git", + "reference": "a08bc3b4d8567cdff05e89b272ba1e06e9d71c21" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/a08bc3b4d8567cdff05e89b272ba1e06e9d71c21", + "reference": "a08bc3b4d8567cdff05e89b272ba1e06e9d71c21", "shasum": "" }, "require": { @@ -478,7 +580,7 @@ "symfony/config": "^4.3.3|^5.0", "symfony/console": "^3.4.30|^4.3.3|^5.0", "symfony/dependency-injection": "^4.3.3|^5.0", - "symfony/doctrine-bridge": "^4.3.7|^5.0", + "symfony/doctrine-bridge": "^4.4.7|^5.0", "symfony/framework-bundle": "^3.4.30|^4.3.3|^5.0", "symfony/service-contracts": "^1.1.1|^2.0" }, @@ -489,27 +591,27 @@ "require-dev": { "doctrine/coding-standard": "^8.0", "doctrine/orm": "^2.6", - "ocramius/proxy-manager": "^2.1", - "phpunit/phpunit": "^7.5 || ^9.3", - "symfony/phpunit-bridge": "^4.2", + "friendsofphp/proxy-manager-lts": "^1.0", + "phpunit/phpunit": "^7.5 || ^8.0 || ^9.3", + "psalm/plugin-phpunit": "^0.15.1", + "psalm/plugin-symfony": "^2.2.4", + "symfony/phpunit-bridge": "^5.2", "symfony/property-info": "^4.3.3|^5.0", "symfony/proxy-manager-bridge": "^3.4|^4.3.3|^5.0", + "symfony/security-bundle": "^4.4|5.0", "symfony/twig-bridge": "^3.4.30|^4.3.3|^5.0", "symfony/validator": "^3.4.30|^4.3.3|^5.0", "symfony/web-profiler-bundle": "^3.4.30|^4.3.3|^5.0", "symfony/yaml": "^3.4.30|^4.3.3|^5.0", - "twig/twig": "^1.34|^2.12|^3.0" + "twig/twig": "^1.34|^2.12|^3.0", + "vimeo/psalm": "^4.7" }, "suggest": { "doctrine/orm": "The Doctrine ORM integration is optional in the bundle.", + "ext-pdo": "*", "symfony/web-profiler-bundle": "To use the data collector." }, "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "2.3.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Bundle\\DoctrineBundle\\": "" @@ -545,41 +647,57 @@ "orm", "persistence" ], - "time": "2020-11-10T20:42:15+00:00" + "support": { + "issues": "https://github.com/doctrine/DoctrineBundle/issues", + "source": "https://github.com/doctrine/DoctrineBundle/tree/2.3.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%2Fdoctrine-bundle", + "type": "tidelift" + } + ], + "time": "2021-04-05T14:21:02+00:00" }, { "name": "doctrine/doctrine-migrations-bundle", - "version": "2.2.1", + "version": "3.1.0", "source": { "type": "git", "url": "https://github.com/doctrine/DoctrineMigrationsBundle.git", - "reference": "955077b68c377310cf9538fc982be11d36ab75d4" + "reference": "d1248471734c62b94baac36cb18e9c635775eeb0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/955077b68c377310cf9538fc982be11d36ab75d4", - "reference": "955077b68c377310cf9538fc982be11d36ab75d4", + "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/d1248471734c62b94baac36cb18e9c635775eeb0", + "reference": "d1248471734c62b94baac36cb18e9c635775eeb0", "shasum": "" }, "require": { "doctrine/doctrine-bundle": "~1.0|~2.0", - "doctrine/migrations": "^2.2", - "php": "^7.1", + "doctrine/migrations": "^3.1", + "php": "^7.2|^8.0", "symfony/framework-bundle": "~3.4|~4.0|~5.0" }, "require-dev": { - "doctrine/coding-standard": "^5.0", - "mikey179/vfsstream": "^1.6", - "phpstan/phpstan": "^0.9.2", - "phpstan/phpstan-strict-rules": "^0.9", - "phpunit/phpunit": "^6.4|^7.0" + "doctrine/coding-standard": "^8.0", + "doctrine/orm": "^2.6", + "doctrine/persistence": "^1.3||^2.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-deprecation-rules": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpstan/phpstan-strict-rules": "^0.12", + "phpunit/phpunit": "^7.0|^8.0|^9.0" }, "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "2.1.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Bundle\\MigrationsBundle\\": "" @@ -613,7 +731,25 @@ "migrations", "schema" ], - "time": "2020-11-11T09:59:06+00:00" + "support": { + "issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues", + "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.1.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%2Fdoctrine-migrations-bundle", + "type": "tidelift" + } + ], + "time": "2021-04-05T20:45:07+00:00" }, { "name": "doctrine/event-manager", @@ -689,20 +825,38 @@ "event system", "events" ], + "support": { + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/1.1.x" + }, + "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%2Fevent-manager", + "type": "tidelift" + } + ], "time": "2020-05-29T18:28:51+00:00" }, { "name": "doctrine/inflector", - "version": "1.4.3", + "version": "2.0.3", "source": { "type": "git", "url": "https://github.com/doctrine/inflector.git", - "reference": "4650c8b30c753a76bf44fb2ed00117d6f367490c" + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/4650c8b30c753a76bf44fb2ed00117d6f367490c", - "reference": "4650c8b30c753a76bf44fb2ed00117d6f367490c", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/9cf661f4eb38f7c881cac67c75ea9b00bf97b210", + "reference": "9cf661f4eb38f7c881cac67c75ea9b00bf97b210", "shasum": "" }, "require": { @@ -723,7 +877,6 @@ }, "autoload": { "psr-4": { - "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector", "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" } }, @@ -767,7 +920,25 @@ "uppercase", "words" ], - "time": "2020-05-29T07:19:59+00:00" + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.x" + }, + "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": "2020-05-29T15:13:26+00:00" }, { "name": "doctrine/instantiator", @@ -818,6 +989,24 @@ "constructor", "instantiate" ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/1.4.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": "2020-11-10T18:47:58+00:00" }, { @@ -880,46 +1069,68 @@ "parser", "php" ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.2.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": "2020-05-25T17:44:05+00:00" }, { "name": "doctrine/migrations", - "version": "2.3.0", + "version": "3.1.1", "source": { "type": "git", "url": "https://github.com/doctrine/migrations.git", - "reference": "100e85a8509b521f010901890f042e9401a3043b" + "reference": "e543224170a61ffe49fcadb8e7339c345df1baa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/migrations/zipball/100e85a8509b521f010901890f042e9401a3043b", - "reference": "100e85a8509b521f010901890f042e9401a3043b", + "url": "https://api.github.com/repos/doctrine/migrations/zipball/e543224170a61ffe49fcadb8e7339c345df1baa2", + "reference": "e543224170a61ffe49fcadb8e7339c345df1baa2", "shasum": "" }, "require": { "composer/package-versions-deprecated": "^1.8", - "doctrine/dbal": "^2.9", - "ocramius/proxy-manager": "^2.0.2", - "php": "^7.1", - "symfony/console": "^3.4||^4.0||^5.0", - "symfony/stopwatch": "^3.4||^4.0||^5.0" + "doctrine/dbal": "^2.10", + "doctrine/event-manager": "^1.0", + "friendsofphp/proxy-manager-lts": "^1.0", + "php": "^7.2 || ^8.0", + "psr/log": "^1.1.3", + "symfony/console": "^3.4 || ^4.4.16 || ^5.0", + "symfony/stopwatch": "^3.4 || ^4.0 || ^5.0" }, "require-dev": { - "doctrine/coding-standard": "^6.0", + "doctrine/coding-standard": "^8.0", "doctrine/orm": "^2.6", + "doctrine/persistence": "^1.3 || ^2.0", + "doctrine/sql-formatter": "^1.0", + "ergebnis/composer-normalize": "^2.9", "ext-pdo_sqlite": "*", - "jdorn/sql-formatter": "^1.1", - "mikey179/vfsstream": "^1.6", - "phpstan/phpstan": "^0.10", - "phpstan/phpstan-deprecation-rules": "^0.10", - "phpstan/phpstan-phpunit": "^0.10", - "phpstan/phpstan-strict-rules": "^0.10", - "phpunit/phpunit": "^7.0", - "symfony/process": "^3.4||^4.0||^5.0", - "symfony/yaml": "^3.4||^4.0||^5.0" + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-deprecation-rules": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpstan/phpstan-strict-rules": "^0.12", + "phpstan/phpstan-symfony": "^0.12", + "phpunit/phpunit": "^8.5 || ^9.4", + "symfony/process": "^3.4 || ^4.0 || ^5.0", + "symfony/yaml": "^3.4 || ^4.0 || ^5.0" }, "suggest": { - "jdorn/sql-formatter": "Allows to generate formatted SQL with the diff command.", + "doctrine/sql-formatter": "Allows to generate formatted SQL with the diff command.", "symfony/yaml": "Allows the use of yaml for migration configuration files." }, "bin": [ @@ -928,7 +1139,11 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2.x-dev" + "dev-master": "3.0.x-dev" + }, + "composer-normalize": { + "indent-size": 4, + "indent-style": "space" } }, "autoload": { @@ -959,47 +1174,64 @@ "keywords": [ "database", "dbal", - "migrations", - "php" + "migrations" ], - "time": "2020-07-04T16:28:35+00:00" + "support": { + "issues": "https://github.com/doctrine/migrations/issues", + "source": "https://github.com/doctrine/migrations/tree/3.1.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%2Fmigrations", + "type": "tidelift" + } + ], + "time": "2021-03-14T11:10:58+00:00" }, { "name": "doctrine/orm", - "version": "2.7.4", + "version": "2.8.4", "source": { "type": "git", "url": "https://github.com/doctrine/orm.git", - "reference": "7d84a4998091ece4d645253ac65de9f879eeed2f" + "reference": "a588555ecd837b8d7e89355d9a13902e54d529c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/orm/zipball/7d84a4998091ece4d645253ac65de9f879eeed2f", - "reference": "7d84a4998091ece4d645253ac65de9f879eeed2f", + "url": "https://api.github.com/repos/doctrine/orm/zipball/a588555ecd837b8d7e89355d9a13902e54d529c7", + "reference": "a588555ecd837b8d7e89355d9a13902e54d529c7", "shasum": "" }, "require": { "composer/package-versions-deprecated": "^1.8", - "doctrine/annotations": "^1.8", + "doctrine/annotations": "^1.11.1", "doctrine/cache": "^1.9.1", "doctrine/collections": "^1.5", - "doctrine/common": "^2.11 || ^3.0", - "doctrine/dbal": "^2.9.3", + "doctrine/common": "^3.0.3", + "doctrine/dbal": "^2.10.0", "doctrine/event-manager": "^1.1", - "doctrine/inflector": "^1.0", + "doctrine/inflector": "^1.4|^2.0", "doctrine/instantiator": "^1.3", "doctrine/lexer": "^1.0", - "doctrine/persistence": "^1.3.3 || ^2.0", + "doctrine/persistence": "^2.0", "ext-pdo": "*", - "php": "^7.1", + "php": "^7.2|^8.0", "symfony/console": "^3.0|^4.0|^5.0" }, "require-dev": { - "doctrine/coding-standard": "^5.0", + "doctrine/coding-standard": "^8.0", "phpstan/phpstan": "^0.12.18", - "phpunit/phpunit": "^7.5", + "phpunit/phpunit": "^8.5|^9.4", "symfony/yaml": "^3.4|^4.0|^5.0", - "vimeo/psalm": "^3.11" + "vimeo/psalm": "4.1.1" }, "suggest": { "symfony/yaml": "If you want to use YAML Metadata Mapping Driver" @@ -1008,11 +1240,6 @@ "bin/doctrine" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.7.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\ORM\\": "lib/Doctrine/ORM" @@ -1050,20 +1277,24 @@ "database", "orm" ], - "time": "2020-10-10T17:11:26+00:00" + "support": { + "issues": "https://github.com/doctrine/orm/issues", + "source": "https://github.com/doctrine/orm/tree/2.8.4" + }, + "time": "2021-04-05T18:38:36+00:00" }, { "name": "doctrine/persistence", - "version": "1.3.8", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/doctrine/persistence.git", - "reference": "7a6eac9fb6f61bba91328f15aa7547f4806ca288" + "reference": "9899c16934053880876b920a3b8b02ed2337ac1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/persistence/zipball/7a6eac9fb6f61bba91328f15aa7547f4806ca288", - "reference": "7a6eac9fb6f61bba91328f15aa7547f4806ca288", + "url": "https://api.github.com/repos/doctrine/persistence/zipball/9899c16934053880876b920a3b8b02ed2337ac1d", + "reference": "9899c16934053880876b920a3b8b02ed2337ac1d", "shasum": "" }, "require": { @@ -1071,24 +1302,20 @@ "doctrine/cache": "^1.0", "doctrine/collections": "^1.0", "doctrine/event-manager": "^1.0", - "doctrine/reflection": "^1.2", "php": "^7.1 || ^8.0" }, "conflict": { "doctrine/common": "<2.10@dev" }, "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpstan/phpstan": "^0.11", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "composer/package-versions-deprecated": "^1.11", + "doctrine/coding-standard": "^6.0 || ^8.0", + "doctrine/common": "^3.0", + "phpstan/phpstan": "^0.12", + "phpunit/phpunit": "^7.5.20 || ^8.0 || ^9.0", "vimeo/psalm": "^3.11" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Common\\": "lib/Doctrine/Common", @@ -1134,86 +1361,11 @@ "orm", "persistence" ], - "time": "2020-06-20T12:56:16+00:00" - }, - { - "name": "doctrine/reflection", - "version": "1.2.2", - "source": { - "type": "git", - "url": "https://github.com/doctrine/reflection.git", - "reference": "fa587178be682efe90d005e3a322590d6ebb59a5" + "support": { + "issues": "https://github.com/doctrine/persistence/issues", + "source": "https://github.com/doctrine/persistence/tree/2.1.0" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/reflection/zipball/fa587178be682efe90d005e3a322590d6ebb59a5", - "reference": "fa587178be682efe90d005e3a322590d6ebb59a5", - "shasum": "" - }, - "require": { - "doctrine/annotations": "^1.0", - "ext-tokenizer": "*", - "php": "^7.1 || ^8.0" - }, - "conflict": { - "doctrine/common": "<2.9" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0 || ^8.2.0", - "doctrine/common": "^2.10", - "phpstan/phpstan": "^0.11.0 || ^0.12.20", - "phpstan/phpstan-phpunit": "^0.11.0 || ^0.12.16", - "phpunit/phpunit": "^7.5 || ^9.1.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Common\\": "lib/Doctrine/Common" - } - }, - "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" - }, - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - } - ], - "description": "The Doctrine Reflection project is a simple library used by the various Doctrine projects which adds some additional functionality on top of the reflection functionality that comes with PHP. It allows you to get the reflection information about classes, methods and properties statically.", - "homepage": "https://www.doctrine-project.org/projects/reflection.html", - "keywords": [ - "reflection", - "static" - ], - "abandoned": "roave/better-reflection", - "time": "2020-10-27T21:46:55+00:00" + "time": "2020-10-24T22:13:54+00:00" }, { "name": "doctrine/sql-formatter", @@ -1266,31 +1418,35 @@ "highlight", "sql" ], + "support": { + "issues": "https://github.com/doctrine/sql-formatter/issues", + "source": "https://github.com/doctrine/sql-formatter/tree/1.1.x" + }, "time": "2020-07-30T16:57:33+00:00" }, { "name": "egulias/email-validator", - "version": "2.1.24", + "version": "3.1.1", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "ca90a3291eee1538cd48ff25163240695bd95448" + "reference": "c81f18a3efb941d8c4d2e025f6183b5c6d697307" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ca90a3291eee1538cd48ff25163240695bd95448", - "reference": "ca90a3291eee1538cd48ff25163240695bd95448", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/c81f18a3efb941d8c4d2e025f6183b5c6d697307", + "reference": "c81f18a3efb941d8c4d2e025f6183b5c6d697307", "shasum": "" }, "require": { - "doctrine/lexer": "^1.0.1", - "php": ">=5.5", - "symfony/polyfill-intl-idn": "^1.10" + "doctrine/lexer": "^1.2", + "php": ">=7.2", + "symfony/polyfill-intl-idn": "^1.15" }, "require-dev": { - "dominicsayers/isemail": "^3.0.7", - "phpunit/phpunit": "^4.8.36|^7.5.15", - "satooshi/php-coveralls": "^1.0.1" + "php-coveralls/php-coveralls": "^2.2", + "phpunit/phpunit": "^8.5.8|^9.3.3", + "vimeo/psalm": "^4" }, "suggest": { "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" @@ -1298,7 +1454,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.1.x-dev" + "dev-master": "3.0.x-dev" } }, "autoload": { @@ -1324,78 +1480,165 @@ "validation", "validator" ], - "time": "2020-11-14T15:56:27+00:00" + "support": { + "issues": "https://github.com/egulias/EmailValidator/issues", + "source": "https://github.com/egulias/EmailValidator/tree/3.1.1" + }, + "funding": [ + { + "url": "https://github.com/egulias", + "type": "github" + } + ], + "time": "2021-04-01T18:37:14+00:00" }, { - "name": "friendsofsymfony/rest-bundle", - "version": "2.8.3", + "name": "friendsofphp/proxy-manager-lts", + "version": "v1.0.3", "source": { "type": "git", - "url": "https://github.com/FriendsOfSymfony/FOSRestBundle.git", - "reference": "2000204f4ac6bf5515222fc5d9be1652ed138e8f" + "url": "https://github.com/FriendsOfPHP/proxy-manager-lts.git", + "reference": "121af47c9aee9c03031bdeca3fac0540f59aa5c3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FriendsOfSymfony/FOSRestBundle/zipball/2000204f4ac6bf5515222fc5d9be1652ed138e8f", - "reference": "2000204f4ac6bf5515222fc5d9be1652ed138e8f", + "url": "https://api.github.com/repos/FriendsOfPHP/proxy-manager-lts/zipball/121af47c9aee9c03031bdeca3fac0540f59aa5c3", + "reference": "121af47c9aee9c03031bdeca3fac0540f59aa5c3", "shasum": "" }, "require": { - "doctrine/inflector": "^1.0", - "php": "^7.1|^8.0", + "laminas/laminas-code": "~3.4.1|^4.0", + "php": ">=7.1", + "symfony/filesystem": "^4.4.17|^5.0" + }, + "conflict": { + "laminas/laminas-stdlib": "<3.2.1", + "zendframework/zend-stdlib": "<3.2.1" + }, + "replace": { + "ocramius/proxy-manager": "^2.1" + }, + "require-dev": { + "ext-phar": "*", + "symfony/phpunit-bridge": "^5.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "ocramius/proxy-manager", + "url": "https://github.com/Ocramius/ProxyManager" + } + }, + "autoload": { + "psr-4": { + "ProxyManager\\": "src/ProxyManager" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "http://ocramius.github.io/" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + } + ], + "description": "Adding support for a wider range of PHP versions to ocramius/proxy-manager", + "homepage": "https://github.com/FriendsOfPHP/proxy-manager-lts", + "keywords": [ + "aop", + "lazy loading", + "proxy", + "proxy pattern", + "service proxies" + ], + "support": { + "issues": "https://github.com/FriendsOfPHP/proxy-manager-lts/issues", + "source": "https://github.com/FriendsOfPHP/proxy-manager-lts/tree/v1.0.3" + }, + "funding": [ + { + "url": "https://github.com/Ocramius", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ocramius/proxy-manager", + "type": "tidelift" + } + ], + "time": "2021-01-14T21:52:44+00:00" + }, + { + "name": "friendsofsymfony/rest-bundle", + "version": "3.0.5", + "source": { + "type": "git", + "url": "https://github.com/FriendsOfSymfony/FOSRestBundle.git", + "reference": "8779ceebf715d1c60bd10286fce9d32ed03c484a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FriendsOfSymfony/FOSRestBundle/zipball/8779ceebf715d1c60bd10286fce9d32ed03c484a", + "reference": "8779ceebf715d1c60bd10286fce9d32ed03c484a", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0", "psr/log": "^1.0", - "symfony/config": "^3.4|^4.3", - "symfony/debug": "^3.4|^4.3", - "symfony/dependency-injection": "^3.4|^4.3", - "symfony/event-dispatcher": "^3.4|^4.3", - "symfony/finder": "^3.4|^4.3", - "symfony/framework-bundle": "^3.4|^4.3", - "symfony/http-foundation": "^3.4|^4.3", - "symfony/http-kernel": "^3.4|^4.3", - "symfony/routing": "^3.4|^4.3", - "symfony/security-core": "^3.4|^4.3", + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/event-dispatcher": "^4.4|^5.0", + "symfony/framework-bundle": "^4.4.1|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0", + "symfony/security-core": "^3.4|^4.3|^5.0", "willdurand/jsonp-callback-validator": "^1.0", - "willdurand/negotiation": "^2.0" + "willdurand/negotiation": "^2.0|^3.0" }, "conflict": { "doctrine/inflector": "1.4.0", "jms/serializer": "<1.13.0", - "jms/serializer-bundle": "<2.0.0", - "sensio/framework-extra-bundle": "<3.0.13" + "jms/serializer-bundle": "<2.4.3|3.0.0", + "sensio/framework-extra-bundle": "<5.2.3", + "symfony/error-handler": "<4.4.1" }, "require-dev": { "friendsofphp/php-cs-fixer": "^2.0", "jms/serializer": "^1.13|^2.0|^3.0", - "jms/serializer-bundle": "^2.3.1|^3.0", + "jms/serializer-bundle": "^2.4.3|^3.0.1", "phpoption/phpoption": "^1.1", "psr/http-message": "^1.0", - "sensio/framework-extra-bundle": "^3.0.13|^4.0|^5.0", - "symfony/asset": "^3.4|^4.3", - "symfony/browser-kit": "^3.4|^4.3", - "symfony/css-selector": "^3.4|^4.3", - "symfony/expression-language": "^3.4|^4.3", - "symfony/form": "^3.4|^4.3", - "symfony/phpunit-bridge": "^4.1.8", - "symfony/security-bundle": "^3.4|^4.3", - "symfony/serializer": "^3.4|^4.3", - "symfony/templating": "^3.4|^4.3", - "symfony/twig-bundle": "^3.4|^4.3", - "symfony/validator": "^3.4|^4.3", - "symfony/web-profiler-bundle": "^3.4|^4.3", - "symfony/yaml": "^3.4|^4.3" + "sensio/framework-extra-bundle": "^5.2.3", + "symfony/asset": "^4.4|^5.0", + "symfony/browser-kit": "^4.4|^5.0", + "symfony/css-selector": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/form": "^4.4|^5.0", + "symfony/mime": "^4.4|^5.0", + "symfony/phpunit-bridge": "^5.2", + "symfony/security-bundle": "^4.4|^5.0", + "symfony/serializer": "^4.4|^5.0", + "symfony/twig-bundle": "^4.4|^5.0", + "symfony/validator": "^4.4|^5.0", + "symfony/web-profiler-bundle": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "jms/serializer-bundle": "Add support for advanced serialization capabilities, recommended, requires ^2.0|^3.0", "sensio/framework-extra-bundle": "Add support for the request body converter and the view response listener, requires ^3.0", - "symfony/expression-language": "Add support for using the expression language in the routing, requires ^2.7|^3.0", "symfony/serializer": "Add support for basic serialization capabilities and xml decoding, requires ^2.7|^3.0", "symfony/validator": "Add support for validation capabilities in the ParamFetcher, requires ^2.7|^3.0" }, "type": "symfony-bundle", "extra": { "branch-alias": { - "2.x-dev": "2.8-dev", - "dev-master": "2.7-dev" + "3.x-dev": "3.1-dev" } }, "autoload": { @@ -1430,29 +1673,35 @@ "keywords": [ "rest" ], - "time": "2020-09-10T06:51:53+00:00" + "support": { + "issues": "https://github.com/FriendsOfSymfony/FOSRestBundle/issues", + "source": "https://github.com/FriendsOfSymfony/FOSRestBundle/tree/3.0.5" + }, + "time": "2021-01-02T11:26:24+00:00" }, { "name": "jms/metadata", - "version": "2.3.0", + "version": "2.5.0", "source": { "type": "git", "url": "https://github.com/schmittjoh/metadata.git", - "reference": "6eb35fce7142234946d58d13e1aa829e9b78b095" + "reference": "b5c52549807b2d855b3d7e36ec164c00eb547338" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/metadata/zipball/6eb35fce7142234946d58d13e1aa829e9b78b095", - "reference": "6eb35fce7142234946d58d13e1aa829e9b78b095", + "url": "https://api.github.com/repos/schmittjoh/metadata/zipball/b5c52549807b2d855b3d7e36ec164c00eb547338", + "reference": "b5c52549807b2d855b3d7e36ec164c00eb547338", "shasum": "" }, "require": { - "php": "^7.2" + "php": "^7.2|^8.0" }, "require-dev": { "doctrine/cache": "^1.0", - "doctrine/coding-standard": "^4.0", - "phpunit/phpunit": "^7.0", + "doctrine/coding-standard": "^8.0", + "mikey179/vfsstream": "^1.6.7", + "phpunit/phpunit": "^8.5|^9.0", + "psr/container": "^1.0", "symfony/cache": "^3.1|^4.0|^5.0", "symfony/dependency-injection": "^3.1|^4.0|^5.0" }, @@ -1488,20 +1737,24 @@ "xml", "yaml" ], - "time": "2020-06-06T16:52:59+00:00" + "support": { + "issues": "https://github.com/schmittjoh/metadata/issues", + "source": "https://github.com/schmittjoh/metadata/tree/2.5.0" + }, + "time": "2021-03-07T19:20:09+00:00" }, { "name": "jms/serializer", - "version": "3.10.0", + "version": "3.12.2", "source": { "type": "git", "url": "https://github.com/schmittjoh/serializer.git", - "reference": "0ed0b6aa79cc029772286f2dc262f6933674b0ec" + "reference": "ea54838a0acd960839b7401bfd83fcd6ebe34aed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/serializer/zipball/0ed0b6aa79cc029772286f2dc262f6933674b0ec", - "reference": "0ed0b6aa79cc029772286f2dc262f6933674b0ec", + "url": "https://api.github.com/repos/schmittjoh/serializer/zipball/ea54838a0acd960839b7401bfd83fcd6ebe34aed", + "reference": "ea54838a0acd960839b7401bfd83fcd6ebe34aed", "shasum": "" }, "require": { @@ -1509,7 +1762,8 @@ "doctrine/instantiator": "^1.0.3", "doctrine/lexer": "^1.1", "jms/metadata": "^2.0", - "php": "^7.2" + "php": "^7.2||^8.0", + "phpstan/phpdoc-parser": "^0.4" }, "require-dev": { "doctrine/coding-standard": "^8.1", @@ -1519,6 +1773,7 @@ "ext-pdo_sqlite": "*", "jackalope/jackalope-doctrine-dbal": "^1.1.5", "ocramius/proxy-manager": "^1.0|^2.0", + "phpstan/phpstan": "^0.12.65", "phpunit/phpunit": "^8.0||^9.0", "psr/container": "^1.0", "symfony/dependency-injection": "^3.0|^4.0|^5.0", @@ -1538,7 +1793,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.10-dev" + "dev-master": "3.12-dev" } }, "autoload": { @@ -1569,32 +1824,43 @@ "serialization", "xml" ], - "time": "2020-10-29T20:24:00+00:00" + "support": { + "issues": "https://github.com/schmittjoh/serializer/issues", + "source": "https://github.com/schmittjoh/serializer/tree/3.12.2" + }, + "funding": [ + { + "url": "https://github.com/goetas", + "type": "github" + } + ], + "time": "2021-03-23T12:37:04+00:00" }, { "name": "jms/serializer-bundle", - "version": "3.7.0", + "version": "3.9.1", "source": { "type": "git", "url": "https://github.com/schmittjoh/JMSSerializerBundle.git", - "reference": "0ee8b75bfc484a342aa0471e3c6d9ad96fb430cf" + "reference": "2fbf2385668dd715d030567fd41e181bbf41fb42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/schmittjoh/JMSSerializerBundle/zipball/0ee8b75bfc484a342aa0471e3c6d9ad96fb430cf", - "reference": "0ee8b75bfc484a342aa0471e3c6d9ad96fb430cf", + "url": "https://api.github.com/repos/schmittjoh/JMSSerializerBundle/zipball/2fbf2385668dd715d030567fd41e181bbf41fb42", + "reference": "2fbf2385668dd715d030567fd41e181bbf41fb42", "shasum": "" }, "require": { - "jms/metadata": "^2.3", + "jms/metadata": "^2.5", "jms/serializer": "^3.0", - "php": "^7.2", + "php": "^7.2 || ^8.0", "symfony/dependency-injection": "^3.3 || ^4.0 || ^5.0", "symfony/framework-bundle": "^3.0 || ^4.0 || ^5.0" }, "require-dev": { + "doctrine/coding-standard": "^8.1", "doctrine/orm": "^2.4", - "phpunit/phpunit": "^6.0|^7.0", + "phpunit/phpunit": "^8.0 || ^9.0", "symfony/expression-language": "^3.0 || ^4.0 || ^5.0", "symfony/finder": "^3.0 || ^4.0 || ^5.0", "symfony/form": "^3.0 || ^4.0 || ^5.0", @@ -1605,12 +1871,13 @@ }, "suggest": { "jms/di-extra-bundle": "Required to get lazy loading (de)serialization visitors, ^1.3", + "symfony/expression-language": "Required for opcache preloading, ^3.0 || ^4.0 || ^5.0", "symfony/finder": "Required for cache warmup, supported versions ^3.0|^4.0" }, "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "3.7-dev" + "dev-master": "3.9-dev" } }, "autoload": { @@ -1643,43 +1910,55 @@ "serialization", "xml" ], - "time": "2020-06-28T11:26:21+00:00" + "support": { + "issues": "https://github.com/schmittjoh/JMSSerializerBundle/issues", + "source": "https://github.com/schmittjoh/JMSSerializerBundle/tree/3.9.1" + }, + "funding": [ + { + "url": "https://github.com/goetas", + "type": "github" + } + ], + "time": "2021-03-23T12:21:23+00:00" }, { "name": "laminas/laminas-code", - "version": "3.5.0", + "version": "4.1.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-code.git", - "reference": "cb90ef428da9260c2deaa827b037c20695f968ae" + "reference": "5b553c274b94af3f880cbaaf8fbab047f279a31c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-code/zipball/cb90ef428da9260c2deaa827b037c20695f968ae", - "reference": "cb90ef428da9260c2deaa827b037c20695f968ae", + "url": "https://api.github.com/repos/laminas/laminas-code/zipball/5b553c274b94af3f880cbaaf8fbab047f279a31c", + "reference": "5b553c274b94af3f880cbaaf8fbab047f279a31c", "shasum": "" }, "require": { "laminas/laminas-eventmanager": "^3.3", - "laminas/laminas-zendframework-bridge": "^1.1", - "php": "^7.3 || ~8.0.0" + "php": "^7.4 || ~8.0.0" }, "conflict": { "phpspec/prophecy": "<1.9.0" }, "replace": { - "zendframework/zend-code": "^3.4.1" + "zendframework/zend-code": "self.version" }, "require-dev": { "doctrine/annotations": "^1.10.4", "ext-phar": "*", - "laminas/laminas-coding-standard": "^1.0.0", + "laminas/laminas-coding-standard": "^2.1.4", "laminas/laminas-stdlib": "^3.3.0", - "phpunit/phpunit": "^9.4.2" + "phpunit/phpunit": "^9.4.2", + "psalm/plugin-phpunit": "^0.14.0", + "vimeo/psalm": "^4.3.1" }, "suggest": { "doctrine/annotations": "Doctrine\\Common\\Annotations >=1.0 for annotation features", - "laminas/laminas-stdlib": "Laminas\\Stdlib component" + "laminas/laminas-stdlib": "Laminas\\Stdlib component", + "laminas/laminas-zendframework-bridge": "A bridge with Zend Framework" }, "type": "library", "autoload": { @@ -1695,22 +1974,37 @@ "homepage": "https://laminas.dev", "keywords": [ "code", - "laminas" + "laminas", + "laminasframework" ], - "time": "2020-11-11T22:11:27+00:00" + "support": { + "chat": "https://laminas.dev/chat", + "docs": "https://docs.laminas.dev/laminas-code/", + "forum": "https://discourse.laminas.dev", + "issues": "https://github.com/laminas/laminas-code/issues", + "rss": "https://github.com/laminas/laminas-code/releases.atom", + "source": "https://github.com/laminas/laminas-code" + }, + "funding": [ + { + "url": "https://funding.communitybridge.org/projects/laminas-project", + "type": "community_bridge" + } + ], + "time": "2021-03-27T13:55:31+00:00" }, { "name": "laminas/laminas-eventmanager", - "version": "3.3.0", + "version": "3.3.1", "source": { "type": "git", "url": "https://github.com/laminas/laminas-eventmanager.git", - "reference": "1940ccf30e058b2fd66f5a9d696f1b5e0027b082" + "reference": "966c859b67867b179fde1eff0cd38df51472ce4a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-eventmanager/zipball/1940ccf30e058b2fd66f5a9d696f1b5e0027b082", - "reference": "1940ccf30e058b2fd66f5a9d696f1b5e0027b082", + "url": "https://api.github.com/repos/laminas/laminas-eventmanager/zipball/966c859b67867b179fde1eff0cd38df51472ce4a", + "reference": "966c859b67867b179fde1eff0cd38df51472ce4a", "shasum": "" }, "require": { @@ -1732,12 +2026,6 @@ "laminas/laminas-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3.x-dev", - "dev-develop": "3.4.x-dev" - } - }, "autoload": { "psr-4": { "Laminas\\EventManager\\": "src/" @@ -1755,28 +2043,44 @@ "events", "laminas" ], - "time": "2020-08-25T11:10:44+00:00" + "support": { + "chat": "https://laminas.dev/chat", + "docs": "https://docs.laminas.dev/laminas-eventmanager/", + "forum": "https://discourse.laminas.dev", + "issues": "https://github.com/laminas/laminas-eventmanager/issues", + "rss": "https://github.com/laminas/laminas-eventmanager/releases.atom", + "source": "https://github.com/laminas/laminas-eventmanager" + }, + "funding": [ + { + "url": "https://funding.communitybridge.org/projects/laminas-project", + "type": "community_bridge" + } + ], + "time": "2021-03-08T15:24:29+00:00" }, { "name": "laminas/laminas-zendframework-bridge", - "version": "1.1.1", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "6ede70583e101030bcace4dcddd648f760ddf642" + "reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6ede70583e101030bcace4dcddd648f760ddf642", - "reference": "6ede70583e101030bcace4dcddd648f760ddf642", + "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6cccbddfcfc742eb02158d6137ca5687d92cee32", + "reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32", "shasum": "" }, "require": { - "php": "^5.6 || ^7.0 || ^8.0" + "php": "^7.3 || ^8.0" }, "require-dev": { "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3", - "squizlabs/php_codesniffer": "^3.5" + "psalm/plugin-phpunit": "^0.15.1", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.6" }, "type": "library", "extra": { @@ -1803,528 +2107,86 @@ "laminas", "zf" ], - "time": "2020-09-14T14:23:00+00:00" + "support": { + "forum": "https://discourse.laminas.dev/", + "issues": "https://github.com/laminas/laminas-zendframework-bridge/issues", + "rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom", + "source": "https://github.com/laminas/laminas-zendframework-bridge" + }, + "funding": [ + { + "url": "https://funding.communitybridge.org/projects/laminas-project", + "type": "community_bridge" + } + ], + "time": "2021-02-25T21:54:58+00:00" }, { - "name": "nelmio/api-doc-bundle", - "version": "v4.0.1", + "name": "phpstan/phpdoc-parser", + "version": "0.4.14", "source": { "type": "git", - "url": "https://github.com/nelmio/NelmioApiDocBundle.git", - "reference": "2f8416618da57c276e5f6ad800bff48eecdcbdb5" + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "cf4fc7d2aeca6910fba061901ffd7d107ccfdbcc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nelmio/NelmioApiDocBundle/zipball/2f8416618da57c276e5f6ad800bff48eecdcbdb5", - "reference": "2f8416618da57c276e5f6ad800bff48eecdcbdb5", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/cf4fc7d2aeca6910fba061901ffd7d107ccfdbcc", + "reference": "cf4fc7d2aeca6910fba061901ffd7d107ccfdbcc", "shasum": "" }, "require": { - "ext-json": "*", - "php": "^7.1", - "phpdocumentor/reflection-docblock": "^3.1|^4.0|^5.0", - "symfony/framework-bundle": "^4.0|^5.0", - "symfony/options-resolver": "^4.0|^5.0", - "symfony/property-info": "^4.0|^5.0", - "zircote/swagger-php": "^3.0" - }, - "conflict": { - "symfony/framework-bundle": "4.2.7" + "php": "^7.1 || ^8.0" }, "require-dev": { - "api-platform/core": "^2.4", - "doctrine/annotations": "^1.2", - "doctrine/common": "^2.4", - "friendsofsymfony/rest-bundle": "^2.0|^3.0@beta", - "jms/serializer": "^1.14|^3.0", - "jms/serializer-bundle": "^2.3|^3.0", - "sensio/framework-extra-bundle": "^4.0|^5.0", - "symfony/asset": "^4.0|^5.0", - "symfony/browser-kit": "^4.0|^5.0", - "symfony/cache": "^4.0|^5.0", - "symfony/config": "^4.0|^5.0", - "symfony/console": "^4.0|^5.0", - "symfony/dom-crawler": "^4.0|^5.0", - "symfony/form": "^4.0|^5.0", - "symfony/phpunit-bridge": "^4.0|^5.0", - "symfony/property-access": "^4.0|^5.0", - "symfony/routing": "^4.0|^5.0", - "symfony/stopwatch": "^4.0|^5.0", - "symfony/templating": "^4.0|^5.0", - "symfony/twig-bundle": "^4.0|^5.0", - "symfony/validator": "^4.0|^5.0", - "willdurand/hateoas-bundle": "^1.0|^2.0" - }, - "suggest": { - "api-platform/core": "For using an API oriented framework.", - "friendsofsymfony/rest-bundle": "For using the parameters annotations." - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "4.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Nelmio\\ApiDocBundle\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nelmio", - "homepage": "http://nelm.io" - }, - { - "name": "Symfony Community", - "homepage": "https://github.com/nelmio/NelmioApiDocBundle/contributors" - } - ], - "description": "Generates documentation for your REST API from annotations", - "keywords": [ - "api", - "doc", - "documentation", - "rest" - ], - "time": "2020-09-29T10:31:37+00:00" - }, - { - "name": "nelmio/cors-bundle", - "version": "2.1.0", - "source": { - "type": "git", - "url": "https://github.com/nelmio/NelmioCorsBundle.git", - "reference": "be4d5824caebc86da9e224e935e02e1201b3ea54" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/be4d5824caebc86da9e224e935e02e1201b3ea54", - "reference": "be4d5824caebc86da9e224e935e02e1201b3ea54", - "shasum": "" - }, - "require": { - "symfony/framework-bundle": "^4.3 || ^5.0" - }, - "require-dev": { - "mockery/mockery": "^1.2", - "symfony/phpunit-bridge": "^4.3 || ^5.0" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Nelmio\\CorsBundle\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nelmio", - "homepage": "http://nelm.io" - }, - { - "name": "Symfony Community", - "homepage": "https://github.com/nelmio/NelmioCorsBundle/contributors" - } - ], - "description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Symfony application", - "keywords": [ - "api", - "cors", - "crossdomain" - ], - "time": "2020-07-22T11:44:28+00:00" - }, - { - "name": "nikic/php-parser", - "version": "v4.10.2", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "658f1be311a230e0907f5dfe0213742aff0596de" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/658f1be311a230e0907f5dfe0213742aff0596de", - "reference": "658f1be311a230e0907f5dfe0213742aff0596de", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": ">=7.0" - }, - "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" - ], - "time": "2020-09-26T10:30:38+00:00" - }, - { - "name": "ocramius/proxy-manager", - "version": "2.8.0", - "source": { - "type": "git", - "url": "https://github.com/Ocramius/ProxyManager.git", - "reference": "ac1dd414fd114cfc0da9930e0ab46063c2f5e62a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Ocramius/ProxyManager/zipball/ac1dd414fd114cfc0da9930e0ab46063c2f5e62a", - "reference": "ac1dd414fd114cfc0da9930e0ab46063c2f5e62a", - "shasum": "" - }, - "require": { - "laminas/laminas-code": "^3.4.1", - "ocramius/package-versions": "^1.8.0", - "php": "~7.4.1", - "webimpress/safe-writer": "^2.0.1" - }, - "conflict": { - "doctrine/annotations": "<1.6.1", - "laminas/laminas-stdlib": "<3.2.1", - "zendframework/zend-stdlib": "<3.2.1" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0.0", - "ext-phar": "*", - "infection/infection": "^0.16.2", - "nikic/php-parser": "^4.4.0", - "phpbench/phpbench": "^0.17.0", - "phpunit/phpunit": "^9.1.1", - "slevomat/coding-standard": "^5.0.4", - "squizlabs/php_codesniffer": "^3.5.4", - "vimeo/psalm": "^3.11.1" - }, - "suggest": { - "laminas/laminas-json": "To have the JsonRpc adapter (Remote Object feature)", - "laminas/laminas-soap": "To have the Soap adapter (Remote Object feature)", - "laminas/laminas-xmlrpc": "To have the XmlRpc adapter (Remote Object feature)", - "ocramius/generated-hydrator": "To have very fast object to array to object conversion for ghost objects" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "ProxyManager\\": "src/ProxyManager" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.io/" - } - ], - "description": "A library providing utilities to generate, instantiate and generally operate with Object Proxies", - "homepage": "https://github.com/Ocramius/ProxyManager", - "keywords": [ - "aop", - "lazy loading", - "proxy", - "proxy pattern", - "service proxies" - ], - "time": "2020-04-13T14:42:16+00:00" - }, - { - "name": "overblog/graphql-bundle", - "version": "v0.13.4", - "source": { - "type": "git", - "url": "https://github.com/overblog/GraphQLBundle.git", - "reference": "de2054da37845ba52ceffab0121f66f6ed3f006c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/overblog/GraphQLBundle/zipball/de2054da37845ba52ceffab0121f66f6ed3f006c", - "reference": "de2054da37845ba52ceffab0121f66f6ed3f006c", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": ">=7.2", - "psr/log": "^1.0", - "symfony/config": "^4.3 || ^5.0", - "symfony/dependency-injection": "^4.3 || ^5.0", - "symfony/event-dispatcher": "^4.3 || ^5.0", - "symfony/expression-language": "^4.3 || ^5.0", - "symfony/framework-bundle": "^4.3 || ^5.0", - "symfony/options-resolver": "^4.3 || ^5.0", - "symfony/property-access": "^4.3 || ^5.0", - "webonyx/graphql-php": "^0.13.5" - }, - "replace": { - "overblog/graphql-php-generator": "self.version" - }, - "require-dev": { - "doctrine/orm": "^2.5", + "phing/phing": "^2.16.3", + "php-parallel-lint/php-parallel-lint": "^1.2", "phpstan/extension-installer": "^1.0", - "phpstan/phpstan-phpunit": "^0.11", - "phpstan/phpstan-shim": "^0.11.19", - "phpstan/phpstan-symfony": "^0.11", - "phpunit/phpunit": "<8.3", - "react/promise": "^2.5", - "symfony/asset": "^4.3 || ^5.0", - "symfony/browser-kit": "^4.3 || ^5.0", - "symfony/console": "^4.3 || ^5.0", - "symfony/css-selector": "^4.3 || ^5.0", - "symfony/phpunit-bridge": "^4.3 || ^5.0", - "symfony/process": "^4.3 || ^5.0", - "symfony/security-bundle": "^4.3 || ^5.0", - "symfony/validator": "^4.3 || ^5.0", - "symfony/yaml": "^4.3 || ^5.0" - }, - "suggest": { - "nelmio/cors-bundle": "For more flexibility when using CORS prefight", - "overblog/graphiql-bundle": "If you want to use graphiQL.", - "react/promise": "To use ReactPHP promise adapter", - "symfony/translation": "If you want validation error messages to be translated." - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "0.13-dev" - } - }, - "autoload": { - "psr-4": { - "Overblog\\GraphQLBundle\\": "src/", - "Overblog\\GraphQLGenerator\\": "lib/generator/src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Overblog", - "homepage": "http://www.over-blog.com" - } - ], - "description": "This bundle provides tools to build a GraphQL server in your Symfony App.", - "keywords": [ - "Relay", - "graphql" - ], - "time": "2020-08-17T15:22:39+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" + "phpstan/phpstan": "^0.12.60", + "phpstan/phpstan-strict-rules": "^0.12.5", + "phpunit/phpunit": "^7.5.20", + "symfony/process": "^5.2" }, "type": "library", "extra": { "branch-alias": { - "dev-2.x": "2.x-dev" + "dev-master": "0.4-dev" } }, "autoload": { "psr-4": { - "phpDocumentor\\Reflection\\": "src/" + "PHPStan\\PhpDocParser\\": [ + "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" - ], - "time": "2020-06-27T09:03:43+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "5.2.2", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556" + "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/0.4.14" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556", - "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556", - "shasum": "" - }, - "require": { - "ext-filter": "*", - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.2", - "phpdocumentor/type-resolver": "^1.3", - "webmozart/assert": "^1.9.1" - }, - "require-dev": { - "mockery/mockery": "~1.3.2" - }, - "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": "account@ijaap.nl" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2020-09-03T19:13:55+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "1.4.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" - }, - "require-dev": { - "ext-tokenizer": "*" - }, - "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", - "time": "2020-09-17T18:55:26+00:00" + "time": "2021-03-19T10:54:14+00:00" }, { "name": "psr/cache", - "version": "1.0.1", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/cache.git", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" + "reference": "213f9dbc5b9bfbc4f8db86d2838dc968752ce13b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", + "url": "https://api.github.com/repos/php-fig/cache/zipball/213f9dbc5b9bfbc4f8db86d2838dc968752ce13b", + "reference": "213f9dbc5b9bfbc4f8db86d2838dc968752ce13b", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { @@ -2344,7 +2206,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for caching libraries", @@ -2353,31 +2215,29 @@ "psr", "psr-6" ], - "time": "2016-08-06T20:24:11+00:00" + "support": { + "source": "https://github.com/php-fig/cache/tree/2.0.0" + }, + "time": "2021-02-03T23:23:37+00:00" }, { "name": "psr/container", - "version": "1.0.0", + "version": "1.1.1", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", + "url": "https://api.github.com/repos/php-fig/container/zipball/8622567409010282b7aeebe4bb841fe98b58dcaf", + "reference": "8622567409010282b7aeebe4bb841fe98b58dcaf", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=7.2.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, "autoload": { "psr-4": { "Psr\\Container\\": "src/" @@ -2390,7 +2250,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common Container Interface (PHP FIG PSR-11)", @@ -2402,7 +2262,61 @@ "container-interop", "psr" ], - "time": "2017-02-14T16:28:37+00:00" + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/1.1.1" + }, + "time": "2021-03-05T17:36:06+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/log", @@ -2449,59 +2363,58 @@ "psr", "psr-3" ], + "support": { + "source": "https://github.com/php-fig/log/tree/1.1.3" + }, "time": "2020-03-23T09:12:05+00:00" }, { "name": "sensio/framework-extra-bundle", - "version": "v5.5.3", + "version": "v6.1.1", "source": { "type": "git", "url": "https://github.com/sensiolabs/SensioFrameworkExtraBundle.git", - "reference": "98f0807137b13d0acfdf3c255a731516e97015de" + "reference": "8ef75e99f20332f2725587896364f7079b53de95" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/98f0807137b13d0acfdf3c255a731516e97015de", - "reference": "98f0807137b13d0acfdf3c255a731516e97015de", + "url": "https://api.github.com/repos/sensiolabs/SensioFrameworkExtraBundle/zipball/8ef75e99f20332f2725587896364f7079b53de95", + "reference": "8ef75e99f20332f2725587896364f7079b53de95", "shasum": "" }, "require": { "doctrine/annotations": "^1.0", - "php": ">=7.1.3", - "symfony/config": "^4.3|^5.0", - "symfony/dependency-injection": "^4.3|^5.0", - "symfony/framework-bundle": "^4.3|^5.0", - "symfony/http-kernel": "^4.3|^5.0" + "php": ">=7.2.5", + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/framework-bundle": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0" }, "conflict": { - "doctrine/doctrine-cache-bundle": "<1.3.1" + "doctrine/doctrine-cache-bundle": "<1.3.1", + "doctrine/persistence": "<1.3" }, "require-dev": { + "doctrine/dbal": "^2.10|^3.0", "doctrine/doctrine-bundle": "^1.11|^2.0", "doctrine/orm": "^2.5", - "nyholm/psr7": "^1.1", - "symfony/browser-kit": "^4.3|^5.0", - "symfony/dom-crawler": "^4.3|^5.0", - "symfony/expression-language": "^4.3|^5.0", - "symfony/finder": "^4.3|^5.0", + "symfony/browser-kit": "^4.4|^5.0", + "symfony/doctrine-bridge": "^4.4|^5.0", + "symfony/dom-crawler": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", "symfony/monolog-bridge": "^4.0|^5.0", "symfony/monolog-bundle": "^3.2", - "symfony/phpunit-bridge": "^4.3.5|^5.0", - "symfony/psr-http-message-bridge": "^1.1", - "symfony/security-bundle": "^4.3|^5.0", - "symfony/twig-bundle": "^4.3|^5.0", - "symfony/yaml": "^4.3|^5.0", + "symfony/phpunit-bridge": "^4.4.9|^5.0.9", + "symfony/security-bundle": "^4.4|^5.0", + "symfony/twig-bundle": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0", "twig/twig": "^1.34|^2.4|^3.0" }, - "suggest": { - "symfony/expression-language": "", - "symfony/psr-http-message-bridge": "To use the PSR-7 converters", - "symfony/security-bundle": "" - }, "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "5.5.x-dev" + "dev-master": "6.1.x-dev" } }, "autoload": { @@ -2527,36 +2440,39 @@ "annotations", "controllers" ], - "time": "2019-12-27T08:57:19+00:00" + "support": { + "issues": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/issues", + "source": "https://github.com/sensiolabs/SensioFrameworkExtraBundle/tree/v6.1.1" + }, + "time": "2021-02-23T11:50:58+00:00" }, { "name": "swiftmailer/swiftmailer", - "version": "v6.2.3", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9" + "reference": "15f7faf8508e04471f666633addacf54c0ab5933" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/149cfdf118b169f7840bbe3ef0d4bc795d1780c9", - "reference": "149cfdf118b169f7840bbe3ef0d4bc795d1780c9", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/15f7faf8508e04471f666633addacf54c0ab5933", + "reference": "15f7faf8508e04471f666633addacf54c0ab5933", "shasum": "" }, "require": { - "egulias/email-validator": "~2.0", + "egulias/email-validator": "^2.0|^3.1", "php": ">=7.0.0", "symfony/polyfill-iconv": "^1.0", "symfony/polyfill-intl-idn": "^1.10", "symfony/polyfill-mbstring": "^1.0" }, "require-dev": { - "mockery/mockery": "~0.9.1", - "symfony/phpunit-bridge": "^3.4.19|^4.1.8" + "mockery/mockery": "^1.0", + "symfony/phpunit-bridge": "^4.4|^5.0" }, "suggest": { - "ext-intl": "Needed to support internationalized email addresses", - "true/punycode": "Needed to support internationalized email addresses, if ext-intl is not installed" + "ext-intl": "Needed to support internationalized email addresses" }, "type": "library", "extra": { @@ -2589,38 +2505,48 @@ "mail", "mailer" ], - "time": "2019-11-12T09:31:26+00:00" + "support": { + "issues": "https://github.com/swiftmailer/swiftmailer/issues", + "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.2.7" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/swiftmailer/swiftmailer", + "type": "tidelift" + } + ], + "time": "2021-03-09T12:30:35+00:00" }, { "name": "symfony/asset", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/asset.git", - "reference": "5bdbd8878b69e3be16d036890ea3081172ea28c5" + "reference": "54a42aa50f9359d1184bf7e954521b45ca3d5828" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/asset/zipball/5bdbd8878b69e3be16d036890ea3081172ea28c5", - "reference": "5bdbd8878b69e3be16d036890ea3081172ea28c5", + "url": "https://api.github.com/repos/symfony/asset/zipball/54a42aa50f9359d1184bf7e954521b45ca3d5828", + "reference": "54a42aa50f9359d1184bf7e954521b45ca3d5828", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5" }, "require-dev": { - "symfony/http-foundation": "~3.4|~4.0", - "symfony/http-kernel": "~3.4|~4.0" + "symfony/http-client": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0" }, "suggest": { "symfony/http-foundation": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Asset\\": "" @@ -2643,58 +2569,75 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Asset Component", + "description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files", "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/asset/tree/v5.2.4" + }, + "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": "2021-01-27T10:01:46+00:00" }, { "name": "symfony/cache", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "8794ccf68ac341fc19311919d2287f7557bfccba" + "reference": "093d69bb10c959553c8beb828b8d4ea250a247dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/8794ccf68ac341fc19311919d2287f7557bfccba", - "reference": "8794ccf68ac341fc19311919d2287f7557bfccba", + "url": "https://api.github.com/repos/symfony/cache/zipball/093d69bb10c959553c8beb828b8d4ea250a247dd", + "reference": "093d69bb10c959553c8beb828b8d4ea250a247dd", "shasum": "" }, "require": { - "php": "^7.1.3", - "psr/cache": "~1.0", - "psr/log": "~1.0", - "symfony/cache-contracts": "^1.1", - "symfony/service-contracts": "^1.1", - "symfony/var-exporter": "^4.2" + "php": ">=7.2.5", + "psr/cache": "^1.0|^2.0", + "psr/log": "^1.1", + "symfony/cache-contracts": "^1.1.7|^2", + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1|^2", + "symfony/var-exporter": "^4.4|^5.0" }, "conflict": { - "doctrine/dbal": "<2.5", - "symfony/dependency-injection": "<3.4", - "symfony/var-dumper": "<3.4" + "doctrine/dbal": "<2.10", + "symfony/dependency-injection": "<4.4", + "symfony/http-kernel": "<4.4", + "symfony/var-dumper": "<4.4" }, "provide": { - "psr/cache-implementation": "1.0", + "psr/cache-implementation": "1.0|2.0", "psr/simple-cache-implementation": "1.0", - "symfony/cache-implementation": "1.0" + "symfony/cache-implementation": "1.0|2.0" }, "require-dev": { "cache/integration-tests": "dev-master", - "doctrine/cache": "~1.6", - "doctrine/dbal": "~2.5", - "predis/predis": "~1.1", + "doctrine/cache": "^1.6", + "doctrine/dbal": "^2.10|^3.0", + "predis/predis": "^1.1", "psr/simple-cache": "^1.0", - "symfony/config": "~4.2", - "symfony/dependency-injection": "~3.4|~4.1", - "symfony/var-dumper": "^4.1.1" + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/filesystem": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0", + "symfony/messenger": "^4.4|^5.0", + "symfony/var-dumper": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Cache\\": "" @@ -2717,39 +2660,57 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Cache component with PSR-6, PSR-16, and tags", + "description": "Provides an extended PSR-6, PSR-16 (and tags) implementation", "homepage": "https://symfony.com", "keywords": [ "caching", "psr6" ], - "time": "2020-01-27T09:15:09+00:00" + "support": { + "source": "https://github.com/symfony/cache/tree/v5.2.6" + }, + "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": "2021-03-16T09:10:13+00:00" }, { "name": "symfony/cache-contracts", - "version": "v1.1.10", + "version": "dev-main", "source": { "type": "git", "url": "https://github.com/symfony/cache-contracts.git", - "reference": "8d5489c10ef90aa7413e4921fc3c0520e24cbed7" + "reference": "c0446463729b89dd4fa62e9aeecc80287323615d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/8d5489c10ef90aa7413e4921fc3c0520e24cbed7", - "reference": "8d5489c10ef90aa7413e4921fc3c0520e24cbed7", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/c0446463729b89dd4fa62e9aeecc80287323615d", + "reference": "c0446463729b89dd4fa62e9aeecc80287323615d", "shasum": "" }, "require": { - "php": ">=7.1.3", - "psr/cache": "^1.0" + "php": ">=7.2.5", + "psr/cache": "^1.0|^2.0|^3.0" }, "suggest": { "symfony/cache-implementation": "" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-main": "2.4-dev" }, "thanks": { "name": "symfony/contracts", @@ -2785,46 +2746,60 @@ "interoperability", "standards" ], - "time": "2020-09-02T16:08:58+00:00" + "support": { + "source": "https://github.com/symfony/cache-contracts/tree/main" + }, + "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": "2021-03-23T23:28:01+00:00" }, { "name": "symfony/config", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "7b7d5d35a5ba5a62f2c6c69f574e36595e587d11" + "reference": "212d54675bf203ff8aef7d8cee8eecfb72f4a263" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/7b7d5d35a5ba5a62f2c6c69f574e36595e587d11", - "reference": "7b7d5d35a5ba5a62f2c6c69f574e36595e587d11", + "url": "https://api.github.com/repos/symfony/config/zipball/212d54675bf203ff8aef7d8cee8eecfb72f4a263", + "reference": "212d54675bf203ff8aef7d8cee8eecfb72f4a263", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/filesystem": "~3.4|~4.0", - "symfony/polyfill-ctype": "~1.8" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/filesystem": "^4.4|^5.0", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/finder": "<3.4" + "symfony/finder": "<4.4" }, "require-dev": { - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/event-dispatcher": "~3.4|~4.0", - "symfony/finder": "~3.4|~4.0", - "symfony/messenger": "~4.1", - "symfony/yaml": "~3.4|~4.0" + "symfony/event-dispatcher": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/messenger": "^4.4|^5.0", + "symfony/service-contracts": "^1.1|^2", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "symfony/yaml": "To use the yaml reference dumper" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Config\\": "" @@ -2847,46 +2822,67 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Config Component", + "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/config/tree/v5.2.4" + }, + "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": "2021-02-23T23:58:19+00:00" }, { "name": "symfony/console", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "82aeab8f852a63e83d781617841237944392cd45" + "reference": "35f039df40a3b335ebf310f244cb242b3a83ac8d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/82aeab8f852a63e83d781617841237944392cd45", - "reference": "82aeab8f852a63e83d781617841237944392cd45", + "url": "https://api.github.com/repos/symfony/console/zipball/35f039df40a3b335ebf310f244cb242b3a83ac8d", + "reference": "35f039df40a3b335ebf310f244cb242b3a83ac8d", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php73": "^1.8", - "symfony/service-contracts": "^1.1" + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1|^2", + "symfony/string": "^5.1" }, "conflict": { - "symfony/dependency-injection": "<3.4", - "symfony/event-dispatcher": "<4.3", - "symfony/process": "<3.3" + "symfony/dependency-injection": "<4.4", + "symfony/dotenv": "<5.1", + "symfony/event-dispatcher": "<4.4", + "symfony/lock": "<4.4", + "symfony/process": "<4.4" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/event-dispatcher": "^4.3", - "symfony/lock": "~3.4|~4.0", - "symfony/process": "~3.4|~4.0", - "symfony/var-dumper": "^4.3" + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/event-dispatcher": "^4.4|^5.0", + "symfony/lock": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "symfony/var-dumper": "^4.4|^5.0" }, "suggest": { "psr/log": "For using the console logger", @@ -2895,11 +2891,6 @@ "symfony/process": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Console\\": "" @@ -2922,99 +2913,68 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Console Component", + "description": "Eases the creation of beautiful and testable command line interfaces", "homepage": "https://symfony.com", - "time": "2020-01-25T12:32:28+00:00" - }, - { - "name": "symfony/debug", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/debug.git", - "reference": "8e362996356f2555d493ee3d8285424853955e8f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/8e362996356f2555d493ee3d8285424853955e8f", - "reference": "8e362996356f2555d493ee3d8285424853955e8f", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "psr/log": "~1.0" - }, - "conflict": { - "symfony/http-kernel": "<3.4" - }, - "require-dev": { - "symfony/http-kernel": "~3.4|~4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Debug\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" + "keywords": [ + "cli", + "command line", + "console", + "terminal" ], - "authors": [ + "support": { + "source": "https://github.com/symfony/console/tree/v5.2.6" + }, + "funding": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "url": "https://symfony.com/sponsor", + "type": "custom" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "Symfony Debug Component", - "homepage": "https://symfony.com", - "time": "2020-01-25T12:32:28+00:00" + "time": "2021-03-28T09:42:18+00:00" }, { "name": "symfony/dependency-injection", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "468bfb60a60b7caa03e4722c43f5359df47b4349" + "reference": "1e66194bed2a69fa395d26bf1067e5e34483afac" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/468bfb60a60b7caa03e4722c43f5359df47b4349", - "reference": "468bfb60a60b7caa03e4722c43f5359df47b4349", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/1e66194bed2a69fa395d26bf1067e5e34483afac", + "reference": "1e66194bed2a69fa395d26bf1067e5e34483afac", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "psr/container": "^1.0", - "symfony/service-contracts": "^1.1.6" + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1.6|^2" }, "conflict": { - "symfony/config": "<4.3", - "symfony/finder": "<3.4", - "symfony/proxy-manager-bridge": "<3.4", - "symfony/yaml": "<3.4" + "symfony/config": "<5.1", + "symfony/finder": "<4.4", + "symfony/proxy-manager-bridge": "<4.4", + "symfony/yaml": "<4.4" }, "provide": { "psr/container-implementation": "1.0", - "symfony/service-implementation": "1.0" + "symfony/service-implementation": "1.0|2.0" }, "require-dev": { - "symfony/config": "^4.3", - "symfony/expression-language": "~3.4|~4.0", - "symfony/yaml": "~3.4|~4.0" + "symfony/config": "^5.1", + "symfony/expression-language": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "symfony/config": "", @@ -3024,11 +2984,6 @@ "symfony/yaml": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\DependencyInjection\\": "" @@ -3051,9 +3006,26 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony DependencyInjection Component", + "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", - "time": "2020-01-14T16:43:06+00:00" + "support": { + "source": "https://github.com/symfony/dependency-injection/tree/v5.2.6" + }, + "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": "2021-03-22T11:10:24+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3103,58 +3075,86 @@ ], "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/master" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/doctrine-bridge", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/doctrine-bridge.git", - "reference": "64cbcf5635fb1b38131332d0b3784faeec9a9e9a" + "reference": "72b6d743c6108e2b8d15ab94e1a8a224c4d0d144" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/64cbcf5635fb1b38131332d0b3784faeec9a9e9a", - "reference": "64cbcf5635fb1b38131332d0b3784faeec9a9e9a", + "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/72b6d743c6108e2b8d15ab94e1a8a224c4d0d144", + "reference": "72b6d743c6108e2b8d15ab94e1a8a224c4d0d144", "shasum": "" }, "require": { "doctrine/event-manager": "~1.0", - "doctrine/persistence": "^1.3", - "php": "^7.1.3", + "doctrine/persistence": "^2", + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0", - "symfony/service-contracts": "^1.1" + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1|^2" }, "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", - "symfony/dependency-injection": "<3.4", - "symfony/form": "<4.3", - "symfony/http-kernel": "<4.3.7", - "symfony/messenger": "<4.3" + "doctrine/dbal": "<2.10", + "phpunit/phpunit": "<5.4.3", + "symfony/dependency-injection": "<4.4", + "symfony/form": "<5.1", + "symfony/http-kernel": "<5", + "symfony/messenger": "<4.4", + "symfony/property-info": "<5", + "symfony/security-bundle": "<5", + "symfony/security-core": "<5", + "symfony/validator": "<5.2" }, "require-dev": { - "doctrine/annotations": "~1.7", + "composer/package-versions-deprecated": "^1.8", + "doctrine/annotations": "^1.10.4", "doctrine/cache": "~1.6", "doctrine/collections": "~1.0", - "doctrine/data-fixtures": "1.0.*", - "doctrine/dbal": "~2.4", - "doctrine/orm": "^2.6.3", - "doctrine/reflection": "~1.0", - "symfony/config": "^4.2", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/form": "~4.3", - "symfony/http-kernel": "^4.3.7", - "symfony/messenger": "~4.3", - "symfony/property-access": "~3.4|~4.0", - "symfony/property-info": "~3.4|~4.0", - "symfony/proxy-manager-bridge": "~3.4|~4.0", - "symfony/security-core": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0", - "symfony/translation": "~3.4|~4.0", - "symfony/validator": "^3.4.31|^4.3.4" + "doctrine/data-fixtures": "^1.1", + "doctrine/dbal": "^2.10|^3.0", + "doctrine/orm": "^2.7.3", + "symfony/cache": "^5.1", + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/doctrine-messenger": "^5.1", + "symfony/expression-language": "^4.4|^5.0", + "symfony/form": "^5.1.3", + "symfony/http-kernel": "^5.0", + "symfony/messenger": "^4.4|^5.0", + "symfony/property-access": "^4.4|^5.0", + "symfony/property-info": "^5.0", + "symfony/proxy-manager-bridge": "^4.4|^5.0", + "symfony/security-core": "^5.0", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/translation": "^4.4|^5.0", + "symfony/uid": "^5.1", + "symfony/validator": "^5.2", + "symfony/var-dumper": "^4.4|^5.0" }, "suggest": { "doctrine/data-fixtures": "", @@ -3165,11 +3165,6 @@ "symfony/validator": "" }, "type": "symfony-bridge", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Bridge\\Doctrine\\": "" @@ -3192,36 +3187,49 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Doctrine Bridge", + "description": "Provides integration for Doctrine with various Symfony components", "homepage": "https://symfony.com", - "time": "2020-01-23T10:55:13+00:00" + "support": { + "source": "https://github.com/symfony/doctrine-bridge/tree/v5.2.6" + }, + "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": "2021-03-10T22:10:15+00:00" }, { "name": "symfony/dotenv", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", - "reference": "3e41dc2a3c517819b23cb4d1c95f5116182a8dd0" + "reference": "783f12027c6b40ab0e93d6136d9f642d1d67cd6b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dotenv/zipball/3e41dc2a3c517819b23cb4d1c95f5116182a8dd0", - "reference": "3e41dc2a3c517819b23cb4d1c95f5116182a8dd0", + "url": "https://api.github.com/repos/symfony/dotenv/zipball/783f12027c6b40ab0e93d6136d9f642d1d67cd6b", + "reference": "783f12027c6b40ab0e93d6136d9f642d1d67cd6b", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1" }, "require-dev": { - "symfony/process": "^3.4.2|^4.0" + "symfony/process": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Dotenv\\": "" @@ -3251,52 +3259,136 @@ "env", "environment" ], - "time": "2020-01-08T17:19:22+00:00" + "support": { + "source": "https://github.com/symfony/dotenv/tree/v5.2.4" + }, + "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": "2021-01-27T10:01:46+00:00" }, { - "name": "symfony/event-dispatcher", - "version": "v4.3.11", + "name": "symfony/error-handler", + "version": "v5.2.6", "source": { "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "75f99d7489409207d09c6cd75a6c773ccbb516d5" + "url": "https://github.com/symfony/error-handler.git", + "reference": "bdb7fb4188da7f4211e4b88350ba0dfdad002b03" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/75f99d7489409207d09c6cd75a6c773ccbb516d5", - "reference": "75f99d7489409207d09c6cd75a6c773ccbb516d5", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/bdb7fb4188da7f4211e4b88350ba0dfdad002b03", + "reference": "bdb7fb4188da7f4211e4b88350ba0dfdad002b03", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/event-dispatcher-contracts": "^1.1" + "php": ">=7.2.5", + "psr/log": "^1.0", + "symfony/polyfill-php80": "^1.15", + "symfony/var-dumper": "^4.4|^5.0" + }, + "require-dev": { + "symfony/deprecation-contracts": "^2.1", + "symfony/http-kernel": "^4.4|^5.0", + "symfony/serializer": "^4.4|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\ErrorHandler\\": "" + }, + "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 to manage errors and ease debugging PHP code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/error-handler/tree/v5.2.6" + }, + "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": "2021-03-16T09:07:47+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v5.2.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "d08d6ec121a425897951900ab692b612a61d6240" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d08d6ec121a425897951900ab692b612a61d6240", + "reference": "d08d6ec121a425897951900ab692b612a61d6240", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/event-dispatcher-contracts": "^2", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/dependency-injection": "<3.4" + "symfony/dependency-injection": "<4.4" }, "provide": { "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "1.1" + "symfony/event-dispatcher-implementation": "2.0" }, "require-dev": { "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/http-foundation": "^3.4|^4.0", - "symfony/service-contracts": "^1.1", - "symfony/stopwatch": "~3.4|~4.0" + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/error-handler": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/service-contracts": "^1.1|^2", + "symfony/stopwatch": "^4.4|^5.0" }, "suggest": { "symfony/dependency-injection": "", "symfony/http-kernel": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" @@ -3319,35 +3411,52 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony EventDispatcher Component", + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", - "time": "2020-01-09T13:17:05+00:00" + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v5.2.4" + }, + "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": "2021-02-18T17:12:37+00:00" }, { "name": "symfony/event-dispatcher-contracts", - "version": "v1.1.9", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7" + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/84e23fdcd2517bf37aecbd16967e83f0caee25a7", - "reference": "84e23fdcd2517bf37aecbd16967e83f0caee25a7", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ba7d54483095a198fa51781bc608d17e84dffa2", + "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2", "shasum": "" }, "require": { - "php": ">=7.1.3" + "php": ">=7.2.5", + "psr/event-dispatcher": "^1" }, "suggest": { - "psr/event-dispatcher": "", "symfony/event-dispatcher-implementation": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -3383,83 +3492,44 @@ "interoperability", "standards" ], - "time": "2020-07-06T13:19:58+00:00" - }, - { - "name": "symfony/expression-language", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/expression-language.git", - "reference": "fcc3e2085e4832f52bed94d72663962f650dfb23" + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.2.0" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/expression-language/zipball/fcc3e2085e4832f52bed94d72663962f650dfb23", - "reference": "fcc3e2085e4832f52bed94d72663962f650dfb23", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/cache": "~3.4|~4.0", - "symfony/service-contracts": "^1.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\ExpressionLanguage\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "url": "https://symfony.com/sponsor", + "type": "custom" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "Symfony ExpressionLanguage Component", - "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/filesystem", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "fdc0ac5e64f7555818411a17993bb24be4270769" + "reference": "8c86a82f51658188119e62cff0a050a12d09836f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/fdc0ac5e64f7555818411a17993bb24be4270769", - "reference": "fdc0ac5e64f7555818411a17993bb24be4270769", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/8c86a82f51658188119e62cff0a050a12d09836f", + "reference": "8c86a82f51658188119e62cff0a050a12d09836f", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "symfony/polyfill-ctype": "~1.8" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Filesystem\\": "" @@ -3482,33 +3552,45 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Filesystem Component", + "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", - "time": "2020-01-21T08:20:29+00:00" + "support": { + "source": "https://github.com/symfony/filesystem/tree/v5.2.6" + }, + "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": "2021-03-28T14:30:26+00:00" }, { "name": "symfony/finder", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "8174c13b932c71f10cdd8dfcd8f5e494f1e7003d" + "reference": "0d639a0943822626290d169965804f79400e6a04" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/8174c13b932c71f10cdd8dfcd8f5e494f1e7003d", - "reference": "8174c13b932c71f10cdd8dfcd8f5e494f1e7003d", + "url": "https://api.github.com/repos/symfony/finder/zipball/0d639a0943822626290d169965804f79400e6a04", + "reference": "0d639a0943822626290d169965804f79400e6a04", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Finder\\": "" @@ -3531,22 +3613,39 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Finder Component", + "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/finder/tree/v5.2.4" + }, + "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": "2021-02-15T18:55:04+00:00" }, { "name": "symfony/flex", - "version": "v1.10.0", + "version": "v1.12.2", "source": { "type": "git", "url": "https://github.com/symfony/flex.git", - "reference": "e38520236bdc911c2f219634b485bc328746e980" + "reference": "e472606b4b3173564f0edbca8f5d32b52fc4f2c9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/flex/zipball/e38520236bdc911c2f219634b485bc328746e980", - "reference": "e38520236bdc911c2f219634b485bc328746e980", + "url": "https://api.github.com/repos/symfony/flex/zipball/e472606b4b3173564f0edbca8f5d32b52fc4f2c9", + "reference": "e472606b4b3173564f0edbca8f5d32b52fc4f2c9", "shasum": "" }, "require": { @@ -3556,13 +3655,14 @@ "require-dev": { "composer/composer": "^1.0.2|^2.0", "symfony/dotenv": "^4.4|^5.0", + "symfony/filesystem": "^4.4|^5.0", "symfony/phpunit-bridge": "^4.4|^5.0", "symfony/process": "^3.4|^4.4|^5.0" }, "type": "composer-plugin", "extra": { "branch-alias": { - "dev-main": "1.9-dev" + "dev-main": "1.12-dev" }, "class": "Symfony\\Flex\\Flex" }, @@ -3582,54 +3682,77 @@ } ], "description": "Composer plugin for Symfony", - "time": "2020-11-05T10:56:45+00:00" + "support": { + "issues": "https://github.com/symfony/flex/issues", + "source": "https://github.com/symfony/flex/tree/v1.12.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-02-16T14:05:05+00:00" }, { "name": "symfony/form", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/form.git", - "reference": "05fac4992a100642806a50cc0c84fb4a8a326c14" + "reference": "40fbaed8d4238e37fdd1fecce8e0678a3eb0e48b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/form/zipball/05fac4992a100642806a50cc0c84fb4a8a326c14", - "reference": "05fac4992a100642806a50cc0c84fb4a8a326c14", + "url": "https://api.github.com/repos/symfony/form/zipball/40fbaed8d4238e37fdd1fecce8e0678a3eb0e48b", + "reference": "40fbaed8d4238e37fdd1fecce8e0678a3eb0e48b", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/event-dispatcher": "^4.3", - "symfony/intl": "^4.3", - "symfony/options-resolver": "~4.3", + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/event-dispatcher": "^4.4|^5.0", + "symfony/intl": "^4.4|^5.0", + "symfony/options-resolver": "^5.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0", - "symfony/property-access": "~3.4|~4.0", - "symfony/service-contracts": "~1.1" + "symfony/polyfill-php80": "^1.15", + "symfony/property-access": "^5.0.8", + "symfony/service-contracts": "^1.1|^2" }, "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", - "symfony/console": "<4.3", - "symfony/dependency-injection": "<3.4", - "symfony/doctrine-bridge": "<3.4", - "symfony/framework-bundle": "<3.4", - "symfony/http-kernel": "<4.3", - "symfony/intl": "<4.3", - "symfony/translation": "<4.2", - "symfony/twig-bridge": "<3.4.5|<4.0.5,>=4.0" + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<4.4", + "symfony/dependency-injection": "<4.4", + "symfony/doctrine-bridge": "<4.4", + "symfony/error-handler": "<4.4.5", + "symfony/framework-bundle": "<4.4", + "symfony/http-kernel": "<4.4", + "symfony/intl": "<4.4", + "symfony/translation": "<4.4", + "symfony/translation-contracts": "<1.1.7", + "symfony/twig-bridge": "<4.4" }, "require-dev": { "doctrine/collections": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/console": "^4.3", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/http-foundation": "~3.4|~4.0", - "symfony/http-kernel": "~4.3", - "symfony/security-csrf": "~3.4|~4.0", - "symfony/translation": "~4.2", - "symfony/validator": "^3.4.31|^4.3.4", - "symfony/var-dumper": "^4.3" + "symfony/config": "^4.4|^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0", + "symfony/security-csrf": "^4.4|^5.0", + "symfony/translation": "^4.4|^5.0", + "symfony/validator": "^4.4.17|^5.1.9", + "symfony/var-dumper": "^4.4|^5.0" }, "suggest": { "symfony/security-csrf": "For protecting forms against CSRF attacks.", @@ -3637,11 +3760,6 @@ "symfony/validator": "For form validation." }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Form\\": "" @@ -3664,91 +3782,121 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Form Component", + "description": "Allows to easily create, process and reuse HTML forms", "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/form/tree/v5.2.6" + }, + "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": "2021-03-28T09:59:03+00:00" }, { "name": "symfony/framework-bundle", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "4ea8f63e005af800e140c1bcfb1f748a006defd1" + "reference": "8889da18c6faa76c6149a90e6542be4afe723f2f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/4ea8f63e005af800e140c1bcfb1f748a006defd1", - "reference": "4ea8f63e005af800e140c1bcfb1f748a006defd1", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/8889da18c6faa76c6149a90e6542be4afe723f2f", + "reference": "8889da18c6faa76c6149a90e6542be4afe723f2f", "shasum": "" }, "require": { "ext-xml": "*", - "php": "^7.1.3", - "symfony/cache": "^4.3.4", - "symfony/config": "^4.3.4", - "symfony/debug": "~4.0", - "symfony/dependency-injection": "^4.3", - "symfony/filesystem": "~3.4|~4.0", - "symfony/finder": "~3.4|~4.0", - "symfony/http-foundation": "^4.3", - "symfony/http-kernel": "^4.3.4", + "php": ">=7.2.5", + "symfony/cache": "^5.2", + "symfony/config": "^5.0", + "symfony/dependency-injection": "^5.2", + "symfony/deprecation-contracts": "^2.1", + "symfony/error-handler": "^4.4.1|^5.0.1", + "symfony/event-dispatcher": "^5.1", + "symfony/filesystem": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/http-foundation": "^5.2.1", + "symfony/http-kernel": "^5.2.1", "symfony/polyfill-mbstring": "~1.0", - "symfony/routing": "^4.3" + "symfony/polyfill-php80": "^1.15", + "symfony/routing": "^5.2" }, "conflict": { "doctrine/persistence": "<1.3", - "phpdocumentor/reflection-docblock": "<3.0", - "phpdocumentor/type-resolver": "<0.2.1", - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", - "symfony/asset": "<3.4", - "symfony/browser-kit": "<4.3", - "symfony/console": "<4.3", - "symfony/dom-crawler": "<4.3", - "symfony/dotenv": "<4.2", - "symfony/form": "<4.3.5", - "symfony/messenger": "<4.3.6", - "symfony/property-info": "<3.4", - "symfony/serializer": "<4.2", - "symfony/stopwatch": "<3.4", - "symfony/translation": "<4.3.6", - "symfony/twig-bridge": "<4.1.1", - "symfony/validator": "<4.1", - "symfony/workflow": "<4.3.6" + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "phpunit/phpunit": "<5.4.3", + "symfony/asset": "<5.1", + "symfony/browser-kit": "<4.4", + "symfony/console": "<5.2.5", + "symfony/dom-crawler": "<4.4", + "symfony/dotenv": "<5.1", + "symfony/form": "<5.2", + "symfony/http-client": "<4.4", + "symfony/lock": "<4.4", + "symfony/mailer": "<5.2", + "symfony/messenger": "<4.4", + "symfony/mime": "<4.4", + "symfony/property-access": "<5.2", + "symfony/property-info": "<4.4", + "symfony/serializer": "<5.2", + "symfony/stopwatch": "<4.4", + "symfony/translation": "<5.0", + "symfony/twig-bridge": "<4.4", + "symfony/twig-bundle": "<4.4", + "symfony/validator": "<5.2", + "symfony/web-profiler-bundle": "<4.4", + "symfony/workflow": "<5.2" }, "require-dev": { - "doctrine/annotations": "~1.7", + "doctrine/annotations": "^1.10.4", "doctrine/cache": "~1.0", - "fig/link-util": "^1.0", - "phpdocumentor/reflection-docblock": "^3.0|^4.0", - "symfony/asset": "~3.4|~4.0", - "symfony/browser-kit": "^4.3", - "symfony/console": "^4.3.4", - "symfony/css-selector": "~3.4|~4.0", - "symfony/dom-crawler": "^4.3", - "symfony/expression-language": "~3.4|~4.0", - "symfony/form": "^4.3.5", - "symfony/http-client": "^4.3", - "symfony/lock": "~3.4|~4.0", - "symfony/mailer": "^4.3", - "symfony/messenger": "^4.3.6", - "symfony/mime": "^4.3", + "doctrine/persistence": "^1.3|^2.0", + "paragonie/sodium_compat": "^1.8", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/asset": "^5.1", + "symfony/browser-kit": "^4.4|^5.0", + "symfony/console": "^5.2", + "symfony/css-selector": "^4.4|^5.0", + "symfony/dom-crawler": "^4.4|^5.0", + "symfony/dotenv": "^5.1", + "symfony/expression-language": "^4.4|^5.0", + "symfony/form": "^5.2", + "symfony/http-client": "^4.4|^5.0", + "symfony/lock": "^4.4|^5.0", + "symfony/mailer": "^5.2", + "symfony/messenger": "^5.2", + "symfony/mime": "^4.4|^5.0", "symfony/polyfill-intl-icu": "~1.0", - "symfony/process": "~3.4|~4.0", - "symfony/property-info": "~3.4|~4.0", - "symfony/security-csrf": "~3.4|~4.0", - "symfony/security-http": "~3.4|~4.0", - "symfony/serializer": "^4.3", - "symfony/stopwatch": "~3.4|~4.0", - "symfony/templating": "~3.4|~4.0", - "symfony/translation": "^4.3.7", - "symfony/twig-bundle": "~2.8|~3.2|~4.0", - "symfony/validator": "^4.1", - "symfony/var-dumper": "^4.3", - "symfony/web-link": "~3.4|~4.0", - "symfony/workflow": "^4.3.6", - "symfony/yaml": "~3.4|~4.0", - "twig/twig": "~1.41|~2.10" + "symfony/process": "^4.4|^5.0", + "symfony/property-info": "^4.4|^5.0", + "symfony/security-bundle": "^5.1", + "symfony/security-core": "^4.4|^5.2", + "symfony/security-csrf": "^4.4|^5.0", + "symfony/security-http": "^4.4|^5.0", + "symfony/serializer": "^5.2", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/string": "^5.0", + "symfony/translation": "^5.0", + "symfony/twig-bundle": "^4.4|^5.0", + "symfony/validator": "^5.2", + "symfony/web-link": "^4.4|^5.0", + "symfony/workflow": "^5.2", + "symfony/yaml": "^4.4|^5.0", + "twig/twig": "^2.10|^3.0" }, "suggest": { "ext-apcu": "For best performance of the system caches", @@ -3761,11 +3909,6 @@ "symfony/yaml": "For using the debug:config and lint:yaml commands" }, "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Bundle\\FrameworkBundle\\": "" @@ -3788,39 +3931,136 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony FrameworkBundle", + "description": "Provides a tight integration between Symfony components and the Symfony full-stack framework", "homepage": "https://symfony.com", - "time": "2020-01-14T14:28:35+00:00" + "support": { + "source": "https://github.com/symfony/framework-bundle/tree/v5.2.6" + }, + "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": "2021-03-22T14:43:01+00:00" }, { - "name": "symfony/http-foundation", - "version": "v4.3.11", + "name": "symfony/http-client-contracts", + "version": "v2.3.1", "source": { "type": "git", - "url": "https://github.com/symfony/http-foundation.git", - "reference": "90af881cedc857dca17990cae96f37727b8ae1d6" + "url": "https://github.com/symfony/http-client-contracts.git", + "reference": "41db680a15018f9c1d4b23516059633ce280ca33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/90af881cedc857dca17990cae96f37727b8ae1d6", - "reference": "90af881cedc857dca17990cae96f37727b8ae1d6", + "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/41db680a15018f9c1d4b23516059633ce280ca33", + "reference": "41db680a15018f9c1d4b23516059633ce280ca33", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/mime": "^4.3", - "symfony/polyfill-mbstring": "~1.1" + "php": ">=7.2.5" }, - "require-dev": { - "predis/predis": "~1.0", - "symfony/expression-language": "~3.4|~4.0" + "suggest": { + "symfony/http-client-implementation": "" }, "type": "library", "extra": { + "branch-version": "2.3", "branch-alias": { - "dev-master": "4.3-dev" + "dev-main": "2.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" } }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\HttpClient\\": "" + } + }, + "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/v2.3.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": "2020-10-14T17:08:19+00:00" + }, + { + "name": "symfony/http-foundation", + "version": "v5.2.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "54499baea7f7418bce7b5ec92770fd0799e8e9bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/54499baea7f7418bce7b5ec92770fd0799e8e9bf", + "reference": "54499baea7f7418bce7b5ec92770fd0799e8e9bf", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-mbstring": "~1.1", + "symfony/polyfill-php80": "^1.15" + }, + "require-dev": { + "predis/predis": "~1.0", + "symfony/cache": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/mime": "^4.4|^5.0" + }, + "suggest": { + "symfony/mime": "To use the file extension guesser" + }, + "type": "library", "autoload": { "psr-4": { "Symfony\\Component\\HttpFoundation\\": "" @@ -3843,76 +4083,96 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony HttpFoundation Component", + "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", - "time": "2020-01-31T09:10:37+00:00" + "support": { + "source": "https://github.com/symfony/http-foundation/tree/v5.2.4" + }, + "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": "2021-02-25T17:16:57+00:00" }, { "name": "symfony/http-kernel", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "fcd8fe5b98d435da856b310a01a4f281668607c0" + "reference": "f34de4c61ca46df73857f7f36b9a3805bdd7e3b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/fcd8fe5b98d435da856b310a01a4f281668607c0", - "reference": "fcd8fe5b98d435da856b310a01a4f281668607c0", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/f34de4c61ca46df73857f7f36b9a3805bdd7e3b2", + "reference": "f34de4c61ca46df73857f7f36b9a3805bdd7e3b2", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", "psr/log": "~1.0", - "symfony/debug": "~3.4|~4.0", - "symfony/event-dispatcher": "^4.3", - "symfony/http-foundation": "^4.1.1", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php73": "^1.9" + "symfony/deprecation-contracts": "^2.1", + "symfony/error-handler": "^4.4|^5.0", + "symfony/event-dispatcher": "^5.0", + "symfony/http-client-contracts": "^1.1|^2", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/browser-kit": "<4.3", - "symfony/config": "<3.4", - "symfony/dependency-injection": "<4.3", - "symfony/translation": "<4.2", - "symfony/var-dumper": "<4.1.1", - "twig/twig": "<1.34|<2.4,>=2" + "symfony/browser-kit": "<4.4", + "symfony/cache": "<5.0", + "symfony/config": "<5.0", + "symfony/console": "<4.4", + "symfony/dependency-injection": "<5.1.8", + "symfony/doctrine-bridge": "<5.0", + "symfony/form": "<5.0", + "symfony/http-client": "<5.0", + "symfony/mailer": "<5.0", + "symfony/messenger": "<5.0", + "symfony/translation": "<5.0", + "symfony/twig-bridge": "<5.0", + "symfony/validator": "<5.0", + "twig/twig": "<2.13" }, "provide": { "psr/log-implementation": "1.0" }, "require-dev": { - "psr/cache": "~1.0", - "symfony/browser-kit": "^4.3", - "symfony/config": "~3.4|~4.0", - "symfony/console": "~3.4|~4.0", - "symfony/css-selector": "~3.4|~4.0", - "symfony/dependency-injection": "^4.3", - "symfony/dom-crawler": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/finder": "~3.4|~4.0", - "symfony/process": "~3.4|~4.0", - "symfony/routing": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0", - "symfony/templating": "~3.4|~4.0", - "symfony/translation": "~4.2", - "symfony/translation-contracts": "^1.1", - "symfony/var-dumper": "^4.1.1", - "twig/twig": "^1.34|^2.4" + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/browser-kit": "^4.4|^5.0", + "symfony/config": "^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/css-selector": "^4.4|^5.0", + "symfony/dependency-injection": "^5.1.8", + "symfony/dom-crawler": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "symfony/routing": "^4.4|^5.0", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/translation": "^4.4|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "twig/twig": "^2.13|^3.0.4" }, "suggest": { "symfony/browser-kit": "", "symfony/config": "", "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/var-dumper": "" + "symfony/dependency-injection": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\HttpKernel\\": "" @@ -3935,98 +4195,53 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony HttpKernel Component", + "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", - "time": "2020-01-31T12:38:38+00:00" - }, - { - "name": "symfony/inflector", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/inflector.git", - "reference": "8c699257379098d26fa400edad29f703b380efcf" + "support": { + "source": "https://github.com/symfony/http-kernel/tree/v5.2.6" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/inflector/zipball/8c699257379098d26fa400edad29f703b380efcf", - "reference": "8c699257379098d26fa400edad29f703b380efcf", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/polyfill-ctype": "~1.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Inflector\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" + "url": "https://symfony.com/sponsor", + "type": "custom" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "Symfony Inflector Component", - "homepage": "https://symfony.com", - "keywords": [ - "inflection", - "pluralize", - "singularize", - "string", - "symfony", - "words" - ], - "time": "2020-01-04T12:24:57+00:00" + "time": "2021-03-29T05:16:58+00:00" }, { "name": "symfony/intl", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/intl.git", - "reference": "2d139d02ddae582c382d30cccd2ee4c814043518" + "reference": "11b4217e394c80a2e313d3a4a37262fbe65a7add" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/intl/zipball/2d139d02ddae582c382d30cccd2ee4c814043518", - "reference": "2d139d02ddae582c382d30cccd2ee4c814043518", + "url": "https://api.github.com/repos/symfony/intl/zipball/11b4217e394c80a2e313d3a4a37262fbe65a7add", + "reference": "11b4217e394c80a2e313d3a4a37262fbe65a7add", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/polyfill-intl-icu": "~1.0" + "php": ">=7.2.5", + "symfony/polyfill-intl-icu": "~1.0", + "symfony/polyfill-php80": "^1.15" }, "require-dev": { - "symfony/filesystem": "~3.4|~4.0" + "symfony/filesystem": "^4.4|^5.0" }, "suggest": { "ext-intl": "to use the component with locales other than \"en\"" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Intl\\": "" @@ -4060,7 +4275,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "A PHP replacement layer for the C intl extension that includes additional data from the ICU library.", + "description": "Provides a PHP replacement layer for the C intl extension that includes additional data from the ICU library", "homepage": "https://symfony.com", "keywords": [ "i18n", @@ -4070,222 +4285,46 @@ "l10n", "localization" ], - "time": "2020-01-04T12:24:57+00:00" - }, - { - "name": "symfony/mailer", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/mailer.git", - "reference": "9f1067430479527a21d9dc8461d97f4fbd1907de" + "support": { + "source": "https://github.com/symfony/intl/tree/v5.2.4" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/9f1067430479527a21d9dc8461d97f4fbd1907de", - "reference": "9f1067430479527a21d9dc8461d97f4fbd1907de", - "shasum": "" - }, - "require": { - "egulias/email-validator": "^2.1.10", - "php": "^7.1.3", - "psr/log": "~1.0", - "symfony/event-dispatcher": "^4.3", - "symfony/mime": "^4.3.3" - }, - "require-dev": { - "symfony/amazon-mailer": "^4.3", - "symfony/google-mailer": "^4.3", - "symfony/http-client-contracts": "^1.1", - "symfony/mailchimp-mailer": "^4.3.3", - "symfony/mailgun-mailer": "^4.3.3", - "symfony/postmark-mailer": "^4.3.3", - "symfony/sendgrid-mailer": "^4.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Mailer\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "url": "https://symfony.com/sponsor", + "type": "custom" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Mailer Component", - "homepage": "https://symfony.com", - "time": "2020-01-01T11:51:43+00:00" - }, - { - "name": "symfony/maker-bundle", - "version": "v1.24.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/maker-bundle.git", - "reference": "40b49abf01810453f73e3e239759f1736607f029" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/40b49abf01810453f73e3e239759f1736607f029", - "reference": "40b49abf01810453f73e3e239759f1736607f029", - "shasum": "" - }, - "require": { - "doctrine/inflector": "^1.2", - "nikic/php-parser": "^4.0", - "php": ">=7.1.3", - "symfony/config": "^3.4|^4.0|^5.0", - "symfony/console": "^3.4|^4.0|^5.0", - "symfony/dependency-injection": "^3.4|^4.0|^5.0", - "symfony/deprecation-contracts": "^2.2", - "symfony/filesystem": "^3.4|^4.0|^5.0", - "symfony/finder": "^3.4|^4.0|^5.0", - "symfony/framework-bundle": "^3.4|^4.0|^5.0", - "symfony/http-kernel": "^3.4|^4.0|^5.0" - }, - "require-dev": { - "composer/semver": "^3.0@dev", - "doctrine/doctrine-bundle": "^1.8|^2.0", - "doctrine/orm": "^2.3", - "friendsofphp/php-cs-fixer": "^2.8", - "friendsoftwig/twigcs": "^3.1.2", - "symfony/http-client": "^4.3|^5.0", - "symfony/phpunit-bridge": "^4.3|^5.0", - "symfony/process": "^3.4|^4.0|^5.0", - "symfony/security-core": "^3.4|^4.0|^5.0", - "symfony/yaml": "^3.4|^4.0|^5.0" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-main": "1.0-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Bundle\\MakerBundle\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Maker helps you create empty commands, controllers, form classes, tests and more so you can forget about writing boilerplate code.", - "homepage": "https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html", - "keywords": [ - "code generator", - "generator", - "scaffold", - "scaffolding" - ], - "time": "2020-11-25T17:19:22+00:00" - }, - { - "name": "symfony/mime", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/mime.git", - "reference": "50f65ca2a6c33702728024d33e4b9461f67623c4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/50f65ca2a6c33702728024d33e4b9461f67623c4", - "reference": "50f65ca2a6c33702728024d33e4b9461f67623c4", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.0" - }, - "require-dev": { - "egulias/email-validator": "^2.1.10", - "symfony/dependency-injection": "~3.4|^4.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "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" + "url": "https://github.com/fabpot", + "type": "github" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "A library to manipulate MIME messages", - "homepage": "https://symfony.com", - "keywords": [ - "mime", - "mime-type" - ], - "time": "2020-01-01T11:51:43+00:00" + "time": "2021-02-18T22:42:36+00:00" }, { "name": "symfony/options-resolver", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "3438c6fe65a9794b0e9f3686d0e3771412a2c47a" + "reference": "5d0f633f9bbfcf7ec642a2b5037268e61b0a62ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/3438c6fe65a9794b0e9f3686d0e3771412a2c47a", - "reference": "3438c6fe65a9794b0e9f3686d0e3771412a2c47a", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/5d0f633f9bbfcf7ec642a2b5037268e61b0a62ce", + "reference": "5d0f633f9bbfcf7ec642a2b5037268e61b0a62ce", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php73": "~1.0", + "symfony/polyfill-php80": "^1.15" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\OptionsResolver\\": "" @@ -4308,61 +4347,48 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony OptionsResolver Component", + "description": "Provides an improved replacement for the array_replace PHP function", "homepage": "https://symfony.com", "keywords": [ "config", "configuration", "options" ], - "time": "2020-01-04T12:24:57+00:00" - }, - { - "name": "symfony/orm-pack", - "version": "v1.2.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/orm-pack.git", - "reference": "21ac491414b5815e5ebb7425908c1d1568d2e775" + "support": { + "source": "https://github.com/symfony/options-resolver/tree/v5.2.4" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/orm-pack/zipball/21ac491414b5815e5ebb7425908c1d1568d2e775", - "reference": "21ac491414b5815e5ebb7425908c1d1568d2e775", - "shasum": "" - }, - "require": { - "composer/package-versions-deprecated": "*", - "doctrine/common": "^2", - "doctrine/doctrine-bundle": "^2", - "doctrine/doctrine-migrations-bundle": "^2", - "doctrine/orm": "^2" - }, - "type": "symfony-pack", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" + "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" + } ], - "description": "A pack for the Doctrine ORM", - "time": "2020-08-31T10:20:18+00:00" + "time": "2021-01-27T12:56:27+00:00" }, { - "name": "symfony/polyfill-intl-icu", - "version": "v1.20.0", + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.22.1", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-intl-icu.git", - "reference": "c44d5bf6a75eed79555c6bf37505c6d39559353e" + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/c44d5bf6a75eed79555c6bf37505c6d39559353e", - "reference": "c44d5bf6a75eed79555c6bf37505c6d39559353e", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/5601e09b69f26c1828b13b6bb87cb07cddba3170", + "reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170", "shasum": "" }, "require": { - "php": ">=7.1", - "symfony/intl": "~2.3|~3.0|~4.0|~5.0" + "php": ">=7.1" }, "suggest": { "ext-intl": "For best performance" @@ -4370,7 +4396,88 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill 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.22.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": "2021-01-22T09:19:47+00:00" + }, + { + "name": "symfony/polyfill-intl-icu", + "version": "v1.22.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-icu.git", + "reference": "af1842919c7e7364aaaa2798b29839e3ba168588" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/af1842919c7e7364aaaa2798b29839e3ba168588", + "reference": "af1842919c7e7364aaaa2798b29839e3ba168588", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "For best performance and support of other locales than \"en\"" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4380,6 +4487,15 @@ "autoload": { "files": [ "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Icu\\": "" + }, + "classmap": [ + "Resources/stubs" + ], + "exclude-from-classmap": [ + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -4406,20 +4522,37 @@ "portable", "shim" ], - "time": "2020-10-23T14:02:19+00:00" + "support": { + "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.22.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": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.20.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "3b75acd829741c768bc8b1f84eb33265e7cc5117" + "reference": "2d63434d922daf7da8dd863e7907e67ee3031483" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/3b75acd829741c768bc8b1f84eb33265e7cc5117", - "reference": "3b75acd829741c768bc8b1f84eb33265e7cc5117", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/2d63434d922daf7da8dd863e7907e67ee3031483", + "reference": "2d63434d922daf7da8dd863e7907e67ee3031483", "shasum": "" }, "require": { @@ -4433,7 +4566,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.22-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4476,20 +4609,37 @@ "portable", "shim" ], - "time": "2020-10-23T14:02:19+00:00" + "support": { + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.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": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.20.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "727d1096295d807c309fb01a851577302394c897" + "reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/727d1096295d807c309fb01a851577302394c897", - "reference": "727d1096295d807c309fb01a851577302394c897", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/43a0283138253ed1d48d352ab6d0bdb3f809f248", + "reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248", "shasum": "" }, "require": { @@ -4501,7 +4651,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.22-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4543,20 +4693,37 @@ "portable", "shim" ], - "time": "2020-10-23T14:02:19+00:00" + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.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": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.20.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "39d483bdf39be819deabf04ec872eb0b2410b531" + "reference": "5232de97ee3b75b0360528dae24e73db49566ab1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/39d483bdf39be819deabf04ec872eb0b2410b531", - "reference": "39d483bdf39be819deabf04ec872eb0b2410b531", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1", + "reference": "5232de97ee3b75b0360528dae24e73db49566ab1", "shasum": "" }, "require": { @@ -4568,7 +4735,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.22-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4606,79 +4773,37 @@ "portable", "shim" ], - "time": "2020-10-23T14:02:19+00:00" - }, - { - "name": "symfony/polyfill-php72", - "version": "v1.20.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "cede45fcdfabdd6043b3592e83678e42ec69e930" + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.1" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/cede45fcdfabdd6043b3592e83678e42ec69e930", - "reference": "cede45fcdfabdd6043b3592e83678e42ec69e930", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.20-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" + "url": "https://symfony.com/sponsor", + "type": "custom" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "time": "2020-10-23T14:02:19+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.20.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "8ff431c517be11c78c48a39a66d37431e26a6bed" + "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/8ff431c517be11c78c48a39a66d37431e26a6bed", - "reference": "8ff431c517be11c78c48a39a66d37431e26a6bed", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", + "reference": "a678b42e92f86eca04b7fa4c0f6f19d097fb69e2", "shasum": "" }, "require": { @@ -4687,7 +4812,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.20-dev" + "dev-main": "1.22-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4727,38 +4852,135 @@ "portable", "shim" ], - "time": "2020-10-23T14:02:19+00:00" + "support": { + "source": "https://github.com/symfony/polyfill-php73/tree/v1.22.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": "2021-01-07T16:49:33+00:00" }, { - "name": "symfony/property-access", - "version": "v4.3.11", + "name": "symfony/polyfill-php80", + "version": "v1.22.1", "source": { "type": "git", - "url": "https://github.com/symfony/property-access.git", - "reference": "28ecead27bd17937b3f904396b026a8e3915d0cd" + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/28ecead27bd17937b3f904396b026a8e3915d0cd", - "reference": "28ecead27bd17937b3f904396b026a8e3915d0cd", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/dc3063ba22c2a1fd2f45ed856374d79114998f91", + "reference": "dc3063ba22c2a1fd2f45ed856374d79114998f91", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/inflector": "~3.4|~4.0" + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.22-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "files": [ + "bootstrap.php" + ], + "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.22.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": "2021-01-07T16:49:33+00:00" + }, + { + "name": "symfony/property-access", + "version": "v5.2.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/property-access.git", + "reference": "3af8ed262bd3217512a13b023981fe68f36ad5f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/property-access/zipball/3af8ed262bd3217512a13b023981fe68f36ad5f3", + "reference": "3af8ed262bd3217512a13b023981fe68f36ad5f3", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.15", + "symfony/property-info": "^5.2" }, "require-dev": { - "symfony/cache": "~3.4|~4.0" + "symfony/cache": "^4.4|^5.0" }, "suggest": { "psr/cache-implementation": "To cache access methods." }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\PropertyAccess\\": "" @@ -4781,7 +5003,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony PropertyAccess Component", + "description": "Provides functions to read and write from/to an object or array using a simple string notation", "homepage": "https://symfony.com", "keywords": [ "access", @@ -4794,37 +5016,56 @@ "property path", "reflection" ], - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/property-access/tree/v5.2.4" + }, + "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": "2021-01-27T10:15:41+00:00" }, { "name": "symfony/property-info", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/property-info.git", - "reference": "169aafe8f2a01ec50fb324f5d24bbd61a5799df1" + "reference": "7185bbc74e6f49c3f1b5936b4d9e4ca133921189" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/169aafe8f2a01ec50fb324f5d24bbd61a5799df1", - "reference": "169aafe8f2a01ec50fb324f5d24bbd61a5799df1", + "url": "https://api.github.com/repos/symfony/property-info/zipball/7185bbc74e6f49c3f1b5936b4d9e4ca133921189", + "reference": "7185bbc74e6f49c3f1b5936b4d9e4ca133921189", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/inflector": "~3.4|~4.0" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.15", + "symfony/string": "^5.1" }, "conflict": { - "phpdocumentor/reflection-docblock": "<3.0||>=3.2.0,<3.2.2", - "phpdocumentor/type-resolver": "<0.3.0", - "symfony/dependency-injection": "<3.4" + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "symfony/dependency-injection": "<4.4" }, "require-dev": { - "doctrine/annotations": "~1.7", - "phpdocumentor/reflection-docblock": "^3.0|^4.0", - "symfony/cache": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/serializer": "~3.4|~4.0" + "doctrine/annotations": "^1.10.4", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/cache": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/serializer": "^4.4|^5.0" }, "suggest": { "phpdocumentor/reflection-docblock": "To use the PHPDoc", @@ -4833,11 +5074,6 @@ "symfony/serializer": "To use Serializer metadata" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\PropertyInfo\\": "" @@ -4860,7 +5096,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Property Info Component", + "description": "Extracts information about PHP class' properties using metadata of popular sources", "homepage": "https://symfony.com", "keywords": [ "doctrine", @@ -4870,38 +5106,124 @@ "type", "validator" ], - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/property-info/tree/v5.2.4" + }, + "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": "2021-02-17T15:24:54+00:00" }, { - "name": "symfony/routing", - "version": "v4.3.11", + "name": "symfony/proxy-manager-bridge", + "version": "v5.2.4", "source": { "type": "git", - "url": "https://github.com/symfony/routing.git", - "reference": "6cc4b6a92e3c623b2c7e56180728839b0caf8564" + "url": "https://github.com/symfony/proxy-manager-bridge.git", + "reference": "fd6bb40190b1719abbe831be09adf38e0744d5f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/6cc4b6a92e3c623b2c7e56180728839b0caf8564", - "reference": "6cc4b6a92e3c623b2c7e56180728839b0caf8564", + "url": "https://api.github.com/repos/symfony/proxy-manager-bridge/zipball/fd6bb40190b1719abbe831be09adf38e0744d5f5", + "reference": "fd6bb40190b1719abbe831be09adf38e0744d5f5", "shasum": "" }, "require": { - "php": "^7.1.3" - }, - "conflict": { - "symfony/config": "<4.2", - "symfony/dependency-injection": "<3.4", - "symfony/yaml": "<3.4" + "composer/package-versions-deprecated": "^1.8", + "friendsofphp/proxy-manager-lts": "^1.0.2", + "php": ">=7.2.5", + "symfony/dependency-injection": "^5.0" }, "require-dev": { - "doctrine/annotations": "~1.2", + "symfony/config": "^4.4|^5.0" + }, + "type": "symfony-bridge", + "autoload": { + "psr-4": { + "Symfony\\Bridge\\ProxyManager\\": "" + }, + "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 integration for ProxyManager with various Symfony components", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/proxy-manager-bridge/tree/v5.2.4" + }, + "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": "2021-01-27T10:01:46+00:00" + }, + { + "name": "symfony/routing", + "version": "v5.2.6", + "source": { + "type": "git", + "url": "https://github.com/symfony/routing.git", + "reference": "31fba555f178afd04d54fd26953501b2c3f0c6e6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/routing/zipball/31fba555f178afd04d54fd26953501b2c3f0c6e6", + "reference": "31fba555f178afd04d54fd26953501b2c3f0c6e6", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "symfony/config": "<5.0", + "symfony/dependency-injection": "<4.4", + "symfony/yaml": "<4.4" + }, + "require-dev": { + "doctrine/annotations": "^1.10.4", "psr/log": "~1.0", - "symfony/config": "~4.2", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/http-foundation": "~3.4|~4.0", - "symfony/yaml": "~3.4|~4.0" + "symfony/config": "^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "suggest": { "doctrine/annotations": "For using the annotation loader", @@ -4911,11 +5233,6 @@ "symfony/yaml": "For using the YAML loader" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Routing\\": "" @@ -4938,7 +5255,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Routing Component", + "description": "Maps an HTTP request to a set of configuration variables", "homepage": "https://symfony.com", "keywords": [ "router", @@ -4946,39 +5263,61 @@ "uri", "url" ], - "time": "2020-01-08T14:00:15+00:00" + "support": { + "source": "https://github.com/symfony/routing/tree/v5.2.6" + }, + "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": "2021-03-14T13:53:33+00:00" }, { "name": "symfony/security-core", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/security-core.git", - "reference": "8d008438e4bbdf04086d1048d51cc1b5dfac2046" + "reference": "9dcedab1c2c637fc9a377b3a9313a61087609760" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/8d008438e4bbdf04086d1048d51cc1b5dfac2046", - "reference": "8d008438e4bbdf04086d1048d51cc1b5dfac2046", + "url": "https://api.github.com/repos/symfony/security-core/zipball/9dcedab1c2c637fc9a377b3a9313a61087609760", + "reference": "9dcedab1c2c637fc9a377b3a9313a61087609760", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/event-dispatcher-contracts": "^1.1", - "symfony/service-contracts": "^1.1" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", + "symfony/event-dispatcher-contracts": "^1.1|^2", + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.1.6|^2" }, "conflict": { - "symfony/event-dispatcher": "<4.3", - "symfony/security-guard": "<4.3" + "symfony/event-dispatcher": "<4.4", + "symfony/ldap": "<4.4", + "symfony/security-guard": "<4.4", + "symfony/validator": "<5.2" }, "require-dev": { - "psr/container": "^1.0", + "psr/container": "^1.0|^2.0", "psr/log": "~1.0", - "symfony/event-dispatcher": "^4.3", - "symfony/expression-language": "~3.4|~4.0", - "symfony/http-foundation": "~3.4|~4.0", - "symfony/ldap": "~3.4|~4.0", - "symfony/validator": "^3.4.31|^4.3.4" + "symfony/event-dispatcher": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/ldap": "^4.4|^5.0", + "symfony/translation": "^4.4|^5.0", + "symfony/validator": "^5.2" }, "suggest": { "psr/container-implementation": "To instantiate the Security class", @@ -4989,11 +5328,6 @@ "symfony/validator": "For using the user password constraint" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Security\\Core\\": "" @@ -5018,83 +5352,41 @@ ], "description": "Symfony Security Component - Core Library", "homepage": "https://symfony.com", - "time": "2020-01-31T09:10:37+00:00" - }, - { - "name": "symfony/security-csrf", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/security-csrf.git", - "reference": "9e435026ab45f073880d1fbe0e1b17e7df6bf642" + "support": { + "source": "https://github.com/symfony/security-core/tree/v5.2.6" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/security-csrf/zipball/9e435026ab45f073880d1fbe0e1b17e7df6bf642", - "reference": "9e435026ab45f073880d1fbe0e1b17e7df6bf642", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/security-core": "~3.4|~4.0" - }, - "conflict": { - "symfony/http-foundation": "<3.4" - }, - "require-dev": { - "symfony/http-foundation": "~3.4|~4.0" - }, - "suggest": { - "symfony/http-foundation": "For using the class SessionTokenStorage." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Security\\Csrf\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "url": "https://symfony.com/sponsor", + "type": "custom" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "Symfony Security Component - CSRF Library", - "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "time": "2021-03-10T22:10:15+00:00" }, { "name": "symfony/service-contracts", - "version": "v1.1.9", + "version": "v2.2.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "b776d18b303a39f56c63747bcb977ad4b27aca26" + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/b776d18b303a39f56c63747bcb977ad4b27aca26", - "reference": "b776d18b303a39f56c63747bcb977ad4b27aca26", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", + "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", "shasum": "" }, "require": { - "php": ">=7.1.3", + "php": ">=7.2.5", "psr/container": "^1.0" }, "suggest": { @@ -5103,7 +5395,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.2-dev" }, "thanks": { "name": "symfony/contracts", @@ -5139,32 +5431,44 @@ "interoperability", "standards" ], - "time": "2020-07-06T13:19:58+00:00" + "support": { + "source": "https://github.com/symfony/service-contracts/tree/master" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-09-07T11:33:47+00:00" }, { "name": "symfony/stopwatch", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "4aff3715c98706ee25bdb4aced6591a9dffc3d9b" + "reference": "b12274acfab9d9850c52583d136a24398cdf1a0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/4aff3715c98706ee25bdb4aced6591a9dffc3d9b", - "reference": "4aff3715c98706ee25bdb4aced6591a9dffc3d9b", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/b12274acfab9d9850c52583d136a24398cdf1a0c", + "reference": "b12274acfab9d9850c52583d136a24398cdf1a0c", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/service-contracts": "^1.0" + "php": ">=7.2.5", + "symfony/service-contracts": "^1.0|^2" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Stopwatch\\": "" @@ -5187,47 +5491,144 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Stopwatch Component", + "description": "Provides a way to profile code", "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/stopwatch/tree/v5.2.4" + }, + "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": "2021-01-27T10:15:41+00:00" }, { - "name": "symfony/swiftmailer-bundle", - "version": "v3.4.0", + "name": "symfony/string", + "version": "v5.2.6", "source": { "type": "git", - "url": "https://github.com/symfony/swiftmailer-bundle.git", - "reference": "553d2474288349faed873da8ab7c1551a00d26ae" + "url": "https://github.com/symfony/string.git", + "reference": "ad0bd91bce2054103f5eaa18ebeba8d3bc2a0572" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/553d2474288349faed873da8ab7c1551a00d26ae", - "reference": "553d2474288349faed873da8ab7c1551a00d26ae", + "url": "https://api.github.com/repos/symfony/string/zipball/ad0bd91bce2054103f5eaa18ebeba8d3bc2a0572", + "reference": "ad0bd91bce2054103f5eaa18ebeba8d3bc2a0572", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "~1.15" + }, + "require-dev": { + "symfony/error-handler": "^4.4|^5.0", + "symfony/http-client": "^4.4|^5.0", + "symfony/translation-contracts": "^1.1|^2", + "symfony/var-exporter": "^4.4|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "files": [ + "Resources/functions.php" + ], + "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/v5.2.6" + }, + "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": "2021-03-17T17:12:15+00:00" + }, + { + "name": "symfony/swiftmailer-bundle", + "version": "v3.5.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/swiftmailer-bundle.git", + "reference": "6b72355549f02823a2209180f9c035e46ca3f178" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/swiftmailer-bundle/zipball/6b72355549f02823a2209180f9c035e46ca3f178", + "reference": "6b72355549f02823a2209180f9c035e46ca3f178", "shasum": "" }, "require": { "php": ">=7.1", "swiftmailer/swiftmailer": "^6.1.3", - "symfony/config": "^4.3.8|^5.0", - "symfony/dependency-injection": "^4.3.8|^5.0", - "symfony/http-kernel": "^4.3.8|^5.0" + "symfony/config": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0" }, "conflict": { - "twig/twig": "<1.41|<2.10" + "twig/twig": "<1.41|>=2.0,<2.10" }, "require-dev": { - "symfony/console": "^4.3.8|^5.0", - "symfony/framework-bundle": "^4.3.8|^5.0", - "symfony/phpunit-bridge": "^4.3.8|^5.0", - "symfony/yaml": "^4.3.8|^5.0" - }, - "suggest": { - "psr/log": "Allows logging" + "symfony/console": "^4.4|^5.0", + "symfony/framework-bundle": "^4.4|^5.0", + "symfony/phpunit-bridge": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "3.4-dev" + "dev-main": "3.5-dev" } }, "autoload": { @@ -5254,24 +5655,42 @@ ], "description": "Symfony SwiftmailerBundle", "homepage": "http://symfony.com", - "time": "2019-11-14T16:18:31+00:00" + "support": { + "issues": "https://github.com/symfony/swiftmailer-bundle/issues", + "source": "https://github.com/symfony/swiftmailer-bundle/tree/v3.5.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-01-25T17:31:39+00:00" }, { "name": "symfony/translation-contracts", - "version": "v1.1.10", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "84180a25fad31e23bebd26ca09d89464f082cacc" + "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/84180a25fad31e23bebd26ca09d89464f082cacc", - "reference": "84180a25fad31e23bebd26ca09d89464f082cacc", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e2eaa60b558f26a4b0354e1bbb25636efaaad105", + "reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105", "shasum": "" }, "require": { - "php": ">=7.1.3" + "php": ">=7.2.5" }, "suggest": { "symfony/translation-implementation": "" @@ -5279,7 +5698,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1-dev" + "dev-master": "2.3-dev" }, "thanks": { "name": "symfony/contracts", @@ -5315,59 +5734,84 @@ "interoperability", "standards" ], - "time": "2020-09-02T16:08:58+00:00" + "support": { + "source": "https://github.com/symfony/translation-contracts/tree/v2.3.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-09-28T13:05:58+00:00" }, { "name": "symfony/twig-bridge", - "version": "v4.3.11", + "version": "v5.2.6", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "9574613b74ed066f775eaf94bb15476ef58609de" + "reference": "a65d8d38c66f147f29b73d53d14e8c9a983653b8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/9574613b74ed066f775eaf94bb15476ef58609de", - "reference": "9574613b74ed066f775eaf94bb15476ef58609de", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/a65d8d38c66f147f29b73d53d14e8c9a983653b8", + "reference": "a65d8d38c66f147f29b73d53d14e8c9a983653b8", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/translation-contracts": "^1.1", - "twig/twig": "^1.41|^2.10" + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.15", + "symfony/translation-contracts": "^1.1|^2", + "twig/twig": "^2.13|^3.0.4" }, "conflict": { - "symfony/console": "<3.4", - "symfony/form": "<4.3.5", - "symfony/http-foundation": "<4.3", - "symfony/translation": "<4.2", - "symfony/workflow": "<4.3" + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "symfony/console": "<4.4", + "symfony/form": "<5.1", + "symfony/http-foundation": "<4.4", + "symfony/http-kernel": "<4.4", + "symfony/translation": "<5.2", + "symfony/workflow": "<5.2" }, "require-dev": { - "egulias/email-validator": "^2.1.10", - "fig/link-util": "^1.0", - "symfony/asset": "~3.4|~4.0", - "symfony/console": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/finder": "~3.4|~4.0", - "symfony/form": "^4.3.5", - "symfony/http-foundation": "~4.3", - "symfony/http-kernel": "~3.4|~4.0", - "symfony/mime": "~4.3", + "egulias/email-validator": "^2.1.10|^3", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/asset": "^4.4|^5.0", + "symfony/console": "^4.4|^5.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/expression-language": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/form": "^5.1.9", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-kernel": "^4.4|^5.0", + "symfony/intl": "^4.4|^5.0", + "symfony/mime": "^5.2", "symfony/polyfill-intl-icu": "~1.0", - "symfony/routing": "~3.4|~4.0", - "symfony/security-acl": "~2.8|~3.0", - "symfony/security-core": "~3.0|~4.0", - "symfony/security-csrf": "~3.4|~4.0", - "symfony/security-http": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0", - "symfony/templating": "~3.4|~4.0", - "symfony/translation": "^4.2.1", - "symfony/var-dumper": "~3.4|~4.0", - "symfony/web-link": "~3.4|~4.0", - "symfony/workflow": "~4.3", - "symfony/yaml": "~3.4|~4.0" + "symfony/property-info": "^4.4|^5.1", + "symfony/routing": "^4.4|^5.0", + "symfony/security-acl": "^2.8|^3.0", + "symfony/security-core": "^4.4|^5.0", + "symfony/security-csrf": "^4.4|^5.0", + "symfony/security-http": "^4.4|^5.0", + "symfony/serializer": "^5.2", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/translation": "^5.2", + "symfony/web-link": "^4.4|^5.0", + "symfony/workflow": "^5.2", + "symfony/yaml": "^4.4|^5.0", + "twig/cssinliner-extra": "^2.12|^3", + "twig/inky-extra": "^2.12|^3", + "twig/markdown-extra": "^2.12|^3" }, "suggest": { "symfony/asset": "For using the AssetExtension", @@ -5380,18 +5824,12 @@ "symfony/security-csrf": "For using the CsrfExtension", "symfony/security-http": "For using the LogoutUrlExtension", "symfony/stopwatch": "For using the StopwatchExtension", - "symfony/templating": "For using the TwigEngine", "symfony/translation": "For using the TranslationExtension", "symfony/var-dumper": "For using the DumpExtension", "symfony/web-link": "For using the WebLinkExtension", "symfony/yaml": "For using the YamlExtension" }, "type": "symfony-bridge", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Bridge\\Twig\\": "" @@ -5414,61 +5852,71 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Twig Bridge", + "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", - "time": "2020-01-08T17:19:22+00:00" + "support": { + "source": "https://github.com/symfony/twig-bridge/tree/v5.2.6" + }, + "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": "2021-03-16T09:10:13+00:00" }, { "name": "symfony/twig-bundle", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/twig-bundle.git", - "reference": "0471344717bfb081f10209ad6b8fd520ca8ebd9d" + "reference": "5ebbb5f0e8bfaa0b4b37cb25ff97f83b18caf221" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/0471344717bfb081f10209ad6b8fd520ca8ebd9d", - "reference": "0471344717bfb081f10209ad6b8fd520ca8ebd9d", + "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/5ebbb5f0e8bfaa0b4b37cb25ff97f83b18caf221", + "reference": "5ebbb5f0e8bfaa0b4b37cb25ff97f83b18caf221", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/config": "~4.2", - "symfony/debug": "~4.0", - "symfony/http-foundation": "~4.3", - "symfony/http-kernel": "~4.1", + "php": ">=7.2.5", + "symfony/config": "^4.4|^5.0", + "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-kernel": "^5.0", "symfony/polyfill-ctype": "~1.8", - "symfony/twig-bridge": "^4.3", - "twig/twig": "~1.41|~2.10" + "symfony/twig-bridge": "^5.0", + "twig/twig": "^2.13|^3.0.4" }, "conflict": { - "symfony/dependency-injection": "<4.1", - "symfony/framework-bundle": "<4.3", - "symfony/translation": "<4.2" + "symfony/dependency-injection": "<5.2", + "symfony/framework-bundle": "<5.0", + "symfony/translation": "<5.0" }, "require-dev": { - "doctrine/annotations": "~1.7", + "doctrine/annotations": "^1.10.4", "doctrine/cache": "~1.0", - "symfony/asset": "~3.4|~4.0", - "symfony/dependency-injection": "^4.2.5", - "symfony/expression-language": "~3.4|~4.0", - "symfony/finder": "~3.4|~4.0", - "symfony/form": "~3.4|~4.0", - "symfony/framework-bundle": "~4.3", - "symfony/routing": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0", - "symfony/templating": "~3.4|~4.0", - "symfony/translation": "^4.2", - "symfony/web-link": "~3.4|~4.0", - "symfony/yaml": "~3.4|~4.0" + "symfony/asset": "^4.4|^5.0", + "symfony/dependency-injection": "^5.2", + "symfony/expression-language": "^4.4|^5.0", + "symfony/finder": "^4.4|^5.0", + "symfony/form": "^4.4|^5.0", + "symfony/framework-bundle": "^5.0", + "symfony/routing": "^4.4|^5.0", + "symfony/stopwatch": "^4.4|^5.0", + "symfony/translation": "^5.0", + "symfony/web-link": "^4.4|^5.0", + "symfony/yaml": "^4.4|^5.0" }, "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Bundle\\TwigBundle\\": "" @@ -5491,80 +5939,71 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony TwigBundle", + "description": "Provides a tight integration of Twig into the Symfony full-stack framework", "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "support": { + "source": "https://github.com/symfony/twig-bundle/tree/v5.2.4" + }, + "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": "2021-01-27T10:15:41+00:00" }, { - "name": "symfony/validator", - "version": "v4.3.11", + "name": "symfony/var-dumper", + "version": "v5.2.6", "source": { "type": "git", - "url": "https://github.com/symfony/validator.git", - "reference": "0d2dcf4ae26db5b6781f40fcab9785f427ee7fa4" + "url": "https://github.com/symfony/var-dumper.git", + "reference": "89412a68ea2e675b4e44f260a5666729f77f668e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/0d2dcf4ae26db5b6781f40fcab9785f427ee7fa4", - "reference": "0d2dcf4ae26db5b6781f40fcab9785f427ee7fa4", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/89412a68ea2e675b4e44f260a5666729f77f668e", + "reference": "89412a68ea2e675b4e44f260a5666729f77f668e", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/polyfill-ctype": "~1.8", + "php": ">=7.2.5", "symfony/polyfill-mbstring": "~1.0", - "symfony/translation-contracts": "^1.1" + "symfony/polyfill-php80": "^1.15" }, "conflict": { - "doctrine/lexer": "<1.0.2", - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0", - "symfony/dependency-injection": "<3.4", - "symfony/http-kernel": "<3.4", - "symfony/intl": "<4.3", - "symfony/translation": "<4.2", - "symfony/yaml": "<3.4" + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<4.4" }, "require-dev": { - "doctrine/annotations": "~1.7", - "doctrine/cache": "~1.0", - "egulias/email-validator": "^2.1.10", - "symfony/cache": "~3.4|~4.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/http-client": "^4.3", - "symfony/http-foundation": "~4.1", - "symfony/http-kernel": "~3.4|~4.0", - "symfony/intl": "^4.3", - "symfony/property-access": "~3.4|~4.0", - "symfony/property-info": "~3.4|~4.0", - "symfony/translation": "~4.2", - "symfony/var-dumper": "~3.4|~4.0", - "symfony/yaml": "~3.4|~4.0" + "ext-iconv": "*", + "symfony/console": "^4.4|^5.0", + "symfony/process": "^4.4|^5.0", + "twig/twig": "^2.13|^3.0.4" }, "suggest": { - "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.", - "doctrine/cache": "For using the default cached annotation reader and metadata cache.", - "egulias/email-validator": "Strict (RFC compliant) email validation", - "psr/cache-implementation": "For using the metadata cache.", - "symfony/config": "", - "symfony/expression-language": "For using the Expression validator", - "symfony/http-foundation": "", - "symfony/intl": "", - "symfony/property-access": "For accessing properties within comparison constraints", - "symfony/property-info": "To automatically add NotNull and Type constraints", - "symfony/translation": "For translating validation errors.", - "symfony/yaml": "" + "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", + "ext-intl": "To show region name in time zone dump", + "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" }, + "bin": [ + "Resources/bin/var-dump-server" + ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { + "files": [ + "Resources/functions/dump.php" + ], "psr-4": { - "Symfony\\Component\\Validator\\": "" + "Symfony\\Component\\VarDumper\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -5576,44 +6015,61 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Validator Component", + "description": "Provides mechanisms for walking through any arbitrary PHP variable", "homepage": "https://symfony.com", - "time": "2020-01-31T09:10:37+00:00" + "keywords": [ + "debug", + "dump" + ], + "support": { + "source": "https://github.com/symfony/var-dumper/tree/v5.2.6" + }, + "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": "2021-03-28T09:42:18+00:00" }, { "name": "symfony/var-exporter", - "version": "v4.3.11", + "version": "v5.2.4", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "563f728784ea09c8154ea57cf8192ae5d6f0d277" + "reference": "5aed4875ab514c8cb9b6ff4772baa25fa4c10307" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/563f728784ea09c8154ea57cf8192ae5d6f0d277", - "reference": "563f728784ea09c8154ea57cf8192ae5d6f0d277", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/5aed4875ab514c8cb9b6ff4772baa25fa4c10307", + "reference": "5aed4875ab514c8cb9b6ff4772baa25fa4c10307", "shasum": "" }, "require": { - "php": "^7.1.3" + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.15" }, "require-dev": { - "symfony/var-dumper": "^4.1.1" + "symfony/var-dumper": "^4.4.9|^5.0.9" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\VarExporter\\": "" @@ -5636,7 +6092,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "A blend of var_export() + serialize() to turn any serializable data structure to plain PHP code", + "description": "Allows exporting any serializable PHP data structure to plain PHP code", "homepage": "https://symfony.com", "keywords": [ "clone", @@ -5646,94 +6102,57 @@ "instantiate", "serialize" ], - "time": "2020-01-01T11:51:43+00:00" - }, - { - "name": "symfony/webpack-encore-bundle", - "version": "v1.8.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/webpack-encore-bundle.git", - "reference": "c879bc50c69f6b4f2984b2bb5fe8190bbc5befdd" + "support": { + "source": "https://github.com/symfony/var-exporter/tree/v5.2.4" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/webpack-encore-bundle/zipball/c879bc50c69f6b4f2984b2bb5fe8190bbc5befdd", - "reference": "c879bc50c69f6b4f2984b2bb5fe8190bbc5befdd", - "shasum": "" - }, - "require": { - "php": ">=7.1.3", - "symfony/asset": "^3.4 || ^4.0 || ^5.0", - "symfony/config": "^3.4 || ^4.0 || ^5.0", - "symfony/dependency-injection": "^3.4 || ^4.0 || ^5.0", - "symfony/http-kernel": "^3.4 || ^4.0 || ^5.0", - "symfony/service-contracts": "^1.0 || ^2.0" - }, - "require-dev": { - "symfony/framework-bundle": "^3.4 || ^4.0 || ^5.0", - "symfony/phpunit-bridge": "^4.3.5 || ^5.0", - "symfony/twig-bundle": "^3.4 || ^4.0 || ^5.0", - "symfony/web-link": "^3.4 || ^4.0 || ^5.0" - }, - "type": "symfony-bundle", - "extra": { - "thanks": { - "name": "symfony/webpack-encore", - "url": "https://github.com/symfony/webpack-encore" - } - }, - "autoload": { - "psr-4": { - "Symfony\\WebpackEncoreBundle\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "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" } ], - "description": "Integration with your Symfony app & Webpack Encore!", - "time": "2020-10-28T17:07:25+00:00" + "time": "2021-01-27T10:01:46+00:00" }, { "name": "symfony/yaml", - "version": "v4.3.11", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "8e0a95493b734ca8195acf3e1f3d89e88b957db5" + "reference": "298a08ddda623485208506fcee08817807a251dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/8e0a95493b734ca8195acf3e1f3d89e88b957db5", - "reference": "8e0a95493b734ca8195acf3e1f3d89e88b957db5", + "url": "https://api.github.com/repos/symfony/yaml/zipball/298a08ddda623485208506fcee08817807a251dd", + "reference": "298a08ddda623485208506fcee08817807a251dd", "shasum": "" }, "require": { - "php": "^7.1.3", + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-ctype": "~1.8" }, "conflict": { - "symfony/console": "<3.4" + "symfony/console": "<4.4" }, "require-dev": { - "symfony/console": "~3.4|~4.0" + "symfony/console": "^4.4|^5.0" }, "suggest": { "symfony/console": "For validating YAML files using the lint command" }, + "bin": [ + "Resources/bin/yaml-lint" + ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Yaml\\": "" @@ -5756,22 +6175,39 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony Yaml Component", + "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", - "time": "2020-01-21T11:09:03+00:00" + "support": { + "source": "https://github.com/symfony/yaml/tree/v5.2.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": "2021-03-06T07:59:01+00:00" }, { "name": "twig/twig", - "version": "v2.14.1", + "version": "v3.3.0", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "5eb9ac5dfdd20c3f59495c22841adc5da980d312" + "reference": "1f3b7e2c06cc05d42936a8ad508ff1db7975cdc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/5eb9ac5dfdd20c3f59495c22841adc5da980d312", - "reference": "5eb9ac5dfdd20c3f59495c22841adc5da980d312", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/1f3b7e2c06cc05d42936a8ad508ff1db7975cdc5", + "reference": "1f3b7e2c06cc05d42936a8ad508ff1db7975cdc5", "shasum": "" }, "require": { @@ -5786,13 +6222,10 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.14-dev" + "dev-master": "3.3-dev" } }, "autoload": { - "psr-0": { - "Twig_": "lib/" - }, "psr-4": { "Twig\\": "src/" } @@ -5823,157 +6256,21 @@ "keywords": [ "templating" ], - "time": "2020-10-27T19:25:29+00:00" - }, - { - "name": "webimpress/safe-writer", - "version": "2.1.0", - "source": { - "type": "git", - "url": "https://github.com/webimpress/safe-writer.git", - "reference": "5cfafdec5873c389036f14bf832a5efc9390dcdd" + "support": { + "issues": "https://github.com/twigphp/Twig/issues", + "source": "https://github.com/twigphp/Twig/tree/v3.3.0" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webimpress/safe-writer/zipball/5cfafdec5873c389036f14bf832a5efc9390dcdd", - "reference": "5cfafdec5873c389036f14bf832a5efc9390dcdd", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.8 || ^9.3.7", - "vimeo/psalm": "^3.14.2", - "webimpress/coding-standard": "^1.1.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.1.x-dev", - "dev-develop": "2.2.x-dev", - "dev-release-1.0": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Webimpress\\SafeWriter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-2-Clause" - ], - "description": "Tool to write files safely, to avoid race conditions", - "keywords": [ - "concurrent write", - "file writer", - "race condition", - "safe writer", - "webimpress" - ], - "time": "2020-08-25T07:21:11+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.9.1", - "source": { - "type": "git", - "url": "https://github.com/webmozart/assert.git", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389", - "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0 || ^8.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<3.9.1" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.36 || ^7.5.13" - }, - "type": "library", - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ + "funding": [ { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/twig/twig", + "type": "tidelift" } ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "time": "2020-07-08T17:02:28+00:00" - }, - { - "name": "webonyx/graphql-php", - "version": "v0.13.9", - "source": { - "type": "git", - "url": "https://github.com/webonyx/graphql-php.git", - "reference": "d9a94fddcad0a35d4bced212b8a44ad1bc59bdf3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webonyx/graphql-php/zipball/d9a94fddcad0a35d4bced212b8a44ad1bc59bdf3", - "reference": "d9a94fddcad0a35d4bced212b8a44ad1bc59bdf3", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-mbstring": "*", - "php": "^7.1||^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpbench/phpbench": "^0.14.0", - "phpstan/phpstan": "^0.11.4", - "phpstan/phpstan-phpunit": "^0.11.0", - "phpstan/phpstan-strict-rules": "^0.11.0", - "phpunit/phpcov": "^5.0", - "phpunit/phpunit": "^7.2", - "psr/http-message": "^1.0", - "react/promise": "2.*" - }, - "suggest": { - "psr/http-message": "To use standard GraphQL server", - "react/promise": "To leverage async resolving on React PHP platform" - }, - "type": "library", - "autoload": { - "psr-4": { - "GraphQL\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A PHP port of GraphQL reference implementation", - "homepage": "https://github.com/webonyx/graphql-php", - "keywords": [ - "api", - "graphql" - ], - "time": "2020-07-02T05:49:25+00:00" + "time": "2021-02-08T09:54:36+00:00" }, { "name": "willdurand/jsonp-callback-validator", @@ -6013,32 +6310,36 @@ } ], "description": "JSONP callback validator.", + "support": { + "issues": "https://github.com/willdurand/JsonpCallbackValidator/issues", + "source": "https://github.com/willdurand/JsonpCallbackValidator/tree/master" + }, "time": "2014-01-20T22:35:06+00:00" }, { "name": "willdurand/negotiation", - "version": "v2.3.1", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/willdurand/Negotiation.git", - "reference": "03436ededa67c6e83b9b12defac15384cb399dc9" + "reference": "04e14f38d4edfcc974114a07d2777d90c98f3d9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/willdurand/Negotiation/zipball/03436ededa67c6e83b9b12defac15384cb399dc9", - "reference": "03436ededa67c6e83b9b12defac15384cb399dc9", + "url": "https://api.github.com/repos/willdurand/Negotiation/zipball/04e14f38d4edfcc974114a07d2777d90c98f3d9c", + "reference": "04e14f38d4edfcc974114a07d2777d90c98f3d9c", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { - "phpunit/phpunit": "~4.5" + "symfony/phpunit-bridge": "^5.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.3-dev" + "dev-master": "3.0-dev" } }, "autoload": { @@ -6065,582 +6366,169 @@ "header", "negotiation" ], - "time": "2017-05-14T17:21:12+00:00" - }, - { - "name": "zircote/swagger-php", - "version": "3.1.0", - "source": { - "type": "git", - "url": "https://github.com/zircote/swagger-php.git", - "reference": "9d172471e56433b5c7061006b9a766f262a3edfd" + "support": { + "issues": "https://github.com/willdurand/Negotiation/issues", + "source": "https://github.com/willdurand/Negotiation/tree/3.0.0" }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/zircote/swagger-php/zipball/9d172471e56433b5c7061006b9a766f262a3edfd", - "reference": "9d172471e56433b5c7061006b9a766f262a3edfd", - "shasum": "" - }, - "require": { - "doctrine/annotations": "*", - "ext-json": "*", - "php": ">=7.2", - "symfony/finder": ">=2.2", - "symfony/yaml": ">=3.3" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "^2.16", - "phpunit/phpunit": ">=8" - }, - "bin": [ - "bin/openapi" - ], - "type": "library", - "autoload": { - "psr-4": { - "OpenApi\\": "src" - }, - "files": [ - "src/functions.php" - ] - }, - "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" - ], - "time": "2020-09-03T20:18:43+00:00" + "time": "2020-09-25T08:01:41+00:00" } ], "packages-dev": [ { - "name": "doctrine/data-fixtures", - "version": "1.4.4", + "name": "nikic/php-parser", + "version": "v4.10.4", "source": { "type": "git", - "url": "https://github.com/doctrine/data-fixtures.git", - "reference": "16a03fadb5473f49aad70384002dfd5012fe680e" + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/data-fixtures/zipball/16a03fadb5473f49aad70384002dfd5012fe680e", - "reference": "16a03fadb5473f49aad70384002dfd5012fe680e", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/c6d052fc58cb876152f89f532b95a8d7907e7f0e", + "reference": "c6d052fc58cb876152f89f532b95a8d7907e7f0e", "shasum": "" }, "require": { - "doctrine/common": "^2.13|^3.0", - "doctrine/persistence": "^1.3.3|^2.0", - "php": "^7.2 || ^8.0" - }, - "conflict": { - "doctrine/phpcr-odm": "<1.3.0" + "ext-tokenizer": "*", + "php": ">=7.0" }, "require-dev": { - "doctrine/coding-standard": "^6.0", - "doctrine/dbal": "^2.5.4", - "doctrine/mongodb-odm": "^1.3.0 || ^2.0.0", - "doctrine/orm": "^2.7.0", - "phpunit/phpunit": "^7.0" - }, - "suggest": { - "alcaeus/mongo-php-adapter": "For using MongoDB ODM 1.3 with PHP 7 (deprecated)", - "doctrine/mongodb-odm": "For loading MongoDB ODM fixtures", - "doctrine/orm": "For loading ORM fixtures", - "doctrine/phpcr-odm": "For loading PHPCR ODM fixtures" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Common\\DataFixtures\\": "lib/Doctrine/Common/DataFixtures" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - } - ], - "description": "Data Fixtures for all Doctrine Object Managers", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "database" - ], - "time": "2020-09-01T07:13:28+00:00" - }, - { - "name": "doctrine/doctrine-fixtures-bundle", - "version": "3.4.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/DoctrineFixturesBundle.git", - "reference": "870189619a7770f468ffb0b80925302e065a3b34" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/DoctrineFixturesBundle/zipball/870189619a7770f468ffb0b80925302e065a3b34", - "reference": "870189619a7770f468ffb0b80925302e065a3b34", - "shasum": "" - }, - "require": { - "doctrine/data-fixtures": "^1.3", - "doctrine/doctrine-bundle": "^1.11|^2.0", - "doctrine/orm": "^2.6.0", - "doctrine/persistence": "^1.3.7|^2.0", - "php": "^7.1 || ^8.0", - "symfony/config": "^3.4|^4.3|^5.0", - "symfony/console": "^3.4|^4.3|^5.0", - "symfony/dependency-injection": "^3.4|^4.3|^5.0", - "symfony/doctrine-bridge": "^3.4|^4.1|^5.0", - "symfony/http-kernel": "^3.4|^4.3|^5.0" - }, - "require-dev": { - "doctrine/coding-standard": "^6.0", - "phpunit/phpunit": "^7.4 || ^8.0 || ^9.2", - "symfony/phpunit-bridge": "^4.1|^5.0" - }, - "type": "symfony-bundle", - "autoload": { - "psr-4": { - "Doctrine\\Bundle\\FixturesBundle\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Doctrine Project", - "homepage": "http://www.doctrine-project.org" - }, - { - "name": "Symfony Community", - "homepage": "http://symfony.com/contributors" - } - ], - "description": "Symfony DoctrineFixturesBundle", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "Fixture", - "persistence" - ], - "time": "2020-11-14T09:36:49+00:00" - }, - { - "name": "liip/test-fixtures-bundle", - "version": "1.10.0", - "source": { - "type": "git", - "url": "https://github.com/liip/LiipTestFixturesBundle.git", - "reference": "6931a3e78814e7cd2c5e2c2fc2239933e9680fbb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/liip/LiipTestFixturesBundle/zipball/6931a3e78814e7cd2c5e2c2fc2239933e9680fbb", - "reference": "6931a3e78814e7cd2c5e2c2fc2239933e9680fbb", - "shasum": "" - }, - "require": { - "doctrine/common": "^2.13 || ^3.0", - "php": "^7.1", - "symfony/framework-bundle": "^3.4 || ^4.1 || ^5.0" - }, - "require-dev": { - "doctrine/data-fixtures": "^1.3", - "doctrine/doctrine-bundle": "^1.8 || ^2.0", - "doctrine/doctrine-fixtures-bundle": "^3.0.2", - "doctrine/orm": "^2.6", - "monolog/monolog": "^1.11 || ^2.0", - "phpunit/phpunit": "^7.5 || ^8.0", - "symfony/monolog-bridge": ">=3", - "symfony/monolog-bundle": "^3.2", - "symfony/phpunit-bridge": "^3.4 || ^4.1 || ^5.0", - "theofidry/alice-data-fixtures": "^1.0.1" - }, - "suggest": { - "doctrine/dbal": "Required when using the fixture loading functionality with an ORM and SQLite", - "doctrine/doctrine-fixtures-bundle": "Required when using the fixture loading functionality", - "doctrine/orm": "Required when using the fixture loading functionality with an ORM and SQLite", - "hautelook/alice-bundle": "Required when using loadFixtureFiles functionality with custom providers", - "theofidry/alice-data-fixtures": "Required when using loadFixtureFiles functionality" - }, - "type": "symfony-bundle", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Liip\\TestFixturesBundle\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Liip AG", - "homepage": "http://www.liip.ch/" - }, - { - "name": "Community contributions", - "homepage": "https://github.com/liip/LiipTestFixturesBundle/contributors" - } - ], - "description": "This bundles enables efficient loading of Doctrine fixtures in functional test-cases for Symfony applications", - "keywords": [ - "fixtures", - "symfony", - "testing" - ], - "time": "2020-10-12T11:49:46+00:00" - }, - { - "name": "symfony/browser-kit", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/browser-kit.git", - "reference": "66d301ce3458b522e3b1f2a76ecfccd1834dcf90" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/66d301ce3458b522e3b1f2a76ecfccd1834dcf90", - "reference": "66d301ce3458b522e3b1f2a76ecfccd1834dcf90", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/dom-crawler": "~3.4|~4.0" - }, - "require-dev": { - "symfony/css-selector": "~3.4|~4.0", - "symfony/http-client": "^4.3", - "symfony/mime": "^4.3", - "symfony/process": "~3.4|~4.0" - }, - "suggest": { - "symfony/process": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "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": "Symfony BrowserKit Component", - "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" - }, - { - "name": "symfony/dom-crawler", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/dom-crawler.git", - "reference": "ccf895f6f3ed9430f53ae1ce34566e9bb6c58446" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/ccf895f6f3ed9430f53ae1ce34566e9bb6c58446", - "reference": "ccf895f6f3ed9430f53ae1ce34566e9bb6c58446", - "shasum": "" - }, - "require": { - "php": "^7.1.3", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "masterminds/html5": "<2.6" - }, - "require-dev": { - "masterminds/html5": "^2.6", - "symfony/css-selector": "~3.4|~4.0" - }, - "suggest": { - "symfony/css-selector": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.3-dev" - } - }, - "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": "Symfony DomCrawler Component", - "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" - }, - { - "name": "symfony/phpunit-bridge", - "version": "v5.1.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "61744927348cd391ac12f7c6b70544991275845c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/61744927348cd391ac12f7c6b70544991275845c", - "reference": "61744927348cd391ac12f7c6b70544991275845c", - "shasum": "" - }, - "require": { - "php": ">=5.5.9" - }, - "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0|<6.4,>=6.0|9.1.2" - }, - "require-dev": { - "symfony/deprecation-contracts": "^2.1" - }, - "suggest": { - "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader" + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" }, "bin": [ - "bin/simple-phpunit" + "bin/php-parse" ], - "type": "symfony-bridge", - "extra": { - "thanks": { - "name": "phpunit/phpunit", - "url": "https://github.com/sebastianbergmann/phpunit" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Bridge\\PhpUnit\\": "" - }, - "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": "Symfony PHPUnit Bridge", - "homepage": "https://symfony.com", - "time": "2020-10-24T15:53:55+00:00" - }, - { - "name": "symfony/process", - "version": "v4.3.11", - "source": { - "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "61ab103012c3072fb340447a34598714ba74ba6f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/61ab103012c3072fb340447a34598714ba74ba6f", - "reference": "61ab103012c3072fb340447a34598714ba74ba6f", - "shasum": "" - }, - "require": { - "php": "^7.1.3" - }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-master": "4.9-dev" } }, "autoload": { "psr-4": { - "Symfony\\Component\\Process\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "PhpParser\\": "lib/PhpParser" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" + "BSD-3-Clause" ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "name": "Nikita Popov" } ], - "description": "Symfony Process Component", - "homepage": "https://symfony.com", - "time": "2020-01-09T09:39:05+00:00" + "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.10.4" + }, + "time": "2020-12-20T10:01:03+00:00" }, { - "name": "symfony/web-server-bundle", - "version": "v4.3.11", + "name": "symfony/maker-bundle", + "version": "v1.30.2", "source": { "type": "git", - "url": "https://github.com/symfony/web-server-bundle.git", - "reference": "2338445b78f1fb212a96f4286abdc77ee1e92607" + "url": "https://github.com/symfony/maker-bundle.git", + "reference": "a395a85aa4ded6c1fa3da118d60329b64b6c2acd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-server-bundle/zipball/2338445b78f1fb212a96f4286abdc77ee1e92607", - "reference": "2338445b78f1fb212a96f4286abdc77ee1e92607", + "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/a395a85aa4ded6c1fa3da118d60329b64b6c2acd", + "reference": "a395a85aa4ded6c1fa3da118d60329b64b6c2acd", "shasum": "" }, "require": { - "php": "^7.1.3", - "symfony/config": "~3.4|~4.0", - "symfony/console": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/http-kernel": "~3.4|~4.0", - "symfony/polyfill-ctype": "~1.8", - "symfony/process": "^3.4.2|^4.0.2" + "doctrine/inflector": "^1.2|^2.0", + "nikic/php-parser": "^4.0", + "php": ">=7.1.3", + "symfony/config": "^4.0|^5.0", + "symfony/console": "^4.0|^5.0", + "symfony/dependency-injection": "^4.0|^5.0", + "symfony/deprecation-contracts": "^2.2", + "symfony/filesystem": "^4.0|^5.0", + "symfony/finder": "^4.0|^5.0", + "symfony/framework-bundle": "^4.0|^5.0", + "symfony/http-kernel": "^4.0|^5.0" }, - "suggest": { - "symfony/expression-language": "For using the filter option of the log server.", - "symfony/monolog-bridge": "For using the log server." + "require-dev": { + "composer/semver": "^3.0@dev", + "doctrine/doctrine-bundle": "^1.8|^2.0", + "doctrine/orm": "^2.3", + "friendsofphp/php-cs-fixer": "^2.8", + "friendsoftwig/twigcs": "^4.1.0|^5.0.0", + "symfony/http-client": "^4.3|^5.0", + "symfony/phpunit-bridge": "^4.3|^5.0", + "symfony/process": "^4.0|^5.0", + "symfony/security-core": "^4.0|^5.0", + "symfony/yaml": "^4.0|^5.0" }, "type": "symfony-bundle", "extra": { "branch-alias": { - "dev-master": "4.3-dev" + "dev-main": "1.0-dev" } }, "autoload": { "psr-4": { - "Symfony\\Bundle\\WebServerBundle\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] + "Symfony\\Bundle\\MakerBundle\\": "src/" + } }, "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": "Symfony WebServerBundle", - "homepage": "https://symfony.com", - "time": "2020-01-04T12:24:57+00:00" + "description": "Symfony Maker helps you create empty commands, controllers, form classes, tests and more so you can forget about writing boilerplate code.", + "homepage": "https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html", + "keywords": [ + "code generator", + "generator", + "scaffold", + "scaffolding" + ], + "support": { + "issues": "https://github.com/symfony/maker-bundle/issues", + "source": "https://github.com/symfony/maker-bundle/tree/v1.30.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-03-23T13:53:38+00:00" } ], "aliases": [], - "minimum-stability": "stable", + "minimum-stability": "dev", "stability-flags": [], - "prefer-stable": false, + "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^7.1.3", + "php": ">=7.2.5", "ext-ctype": "*", - "ext-iconv": "*", - "ext-json": "*", - "ext-pdo_mysql": "*" + "ext-iconv": "*" }, - "platform-dev": { - "ext-mbstring": "*", - "ext-pdo_sqlite": "*" - } + "platform-dev": [], + "plugin-api-version": "2.0.0" } diff --git a/config/bootstrap.php b/config/bootstrap.php deleted file mode 100755 index 9c5a99c..0000000 --- a/config/bootstrap.php +++ /dev/null @@ -1,23 +0,0 @@ -=1.2) -if (is_array($env = @include dirname(__DIR__).'/.env.local.php')) { - foreach ($env as $k => $v) { - $_ENV[$k] = $_ENV[$k] ?? (isset($_SERVER[$k]) && 0 !== strpos($k, 'HTTP_') ? $_SERVER[$k] : $v); - } -} elseif (!class_exists(Dotenv::class)) { - throw new RuntimeException('Please run "composer require symfony/dotenv" to load the ".env" files configuring the application.'); -} else { - // load all the .env files - (new Dotenv(false))->loadEnv(dirname(__DIR__).'/.env'); -} - -$_SERVER += $_ENV; -$_SERVER['APP_ENV'] = $_ENV['APP_ENV'] = ($_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? null) ?: 'dev'; -$_SERVER['APP_DEBUG'] = $_SERVER['APP_DEBUG'] ?? $_ENV['APP_DEBUG'] ?? 'prod' !== $_SERVER['APP_ENV']; -$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = (int) $_SERVER['APP_DEBUG'] || filter_var($_SERVER['APP_DEBUG'], FILTER_VALIDATE_BOOLEAN) ? '1' : '0'; diff --git a/config/bundles.php b/config/bundles.php old mode 100755 new mode 100644 index 752b68b..b101c2a --- a/config/bundles.php +++ b/config/bundles.php @@ -2,19 +2,12 @@ return [ Symfony\Bundle\FrameworkBundle\FrameworkBundle::class => ['all' => true], - FOS\RestBundle\FOSRestBundle::class => ['all' => true], + Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle::class => ['all' => true], JMS\SerializerBundle\JMSSerializerBundle::class => ['all' => true], + FOS\RestBundle\FOSRestBundle::class => ['all' => true], Doctrine\Bundle\DoctrineBundle\DoctrineBundle::class => ['all' => true], Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle::class => ['all' => true], - Symfony\Bundle\MakerBundle\MakerBundle::class => ['dev' => true], - Symfony\Bundle\WebServerBundle\WebServerBundle::class => ['dev' => true], - Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true], - Nelmio\ApiDocBundle\NelmioApiDocBundle::class => ['all' => true], - Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle::class => ['all' => true], - Nelmio\CorsBundle\NelmioCorsBundle::class => ['all' => true], Symfony\Bundle\TwigBundle\TwigBundle::class => ['all' => true], - Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle::class => ['all' => true], - Liip\TestFixturesBundle\LiipTestFixturesBundle::class => ['test' => true], - Symfony\WebpackEncoreBundle\WebpackEncoreBundle::class => ['all' => true], - Overblog\GraphQLBundle\OverblogGraphQLBundle::class => ['all' => true], + Symfony\Bundle\MakerBundle\MakerBundle::class => ['dev' => true], + Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle::class => ['all' => true], ]; diff --git a/config/packages/assets.yaml b/config/packages/assets.yaml deleted file mode 100644 index 051d36d..0000000 --- a/config/packages/assets.yaml +++ /dev/null @@ -1,3 +0,0 @@ -framework: - assets: - json_manifest_path: '%kernel.project_dir%/public/build/manifest.json' diff --git a/config/packages/cache.yaml b/config/packages/cache.yaml old mode 100755 new mode 100644 index 4028c9b..6899b72 --- a/config/packages/cache.yaml +++ b/config/packages/cache.yaml @@ -1,10 +1,10 @@ framework: cache: - # Put the unique name of your app here: the prefix seed - # is used to compute stable namespaces for cache keys. + # Unique name of your app: used to compute stable namespaces for cache keys. #prefix_seed: your_vendor_name/app_name - # The app cache caches to the filesystem by default. + # The "app" cache stores to the filesystem by default. + # The data in this cache should persist between deploys. # Other options include: # Redis diff --git a/config/packages/dev/jms_serializer.yaml b/config/packages/dev/jms_serializer.yaml old mode 100755 new mode 100644 diff --git a/config/packages/dev/swiftmailer.yaml b/config/packages/dev/swiftmailer.yaml old mode 100755 new mode 100644 index 007a640..b98158e --- a/config/packages/dev/swiftmailer.yaml +++ b/config/packages/dev/swiftmailer.yaml @@ -1,4 +1,4 @@ # See https://symfony.com/doc/current/email/dev_environment.html swiftmailer: # send all emails to a specific address -# delivery_addresses: ['contact@cipherbliss.com'] + #delivery_addresses: ['me@example.com'] diff --git a/config/packages/doctrine.yaml b/config/packages/doctrine.yaml old mode 100755 new mode 100644 index d157afe..491dc6f --- a/config/packages/doctrine.yaml +++ b/config/packages/doctrine.yaml @@ -1,26 +1,19 @@ doctrine: - dbal: - # configure these for your database server - # use postgresql for PostgreSQL - # use sqlite for SQLite - driver: 'mysql_pdo' - server_version: '8.0.22' + dbal: + override_url: true + url: '%env(resolve:DATABASE_URL)%' - # only needed for MySQL - charset: utf8mb4 - default_table_options: - charset: utf8mb4 - collate: utf8mb4_unicode_ci - - url: '%env(resolve:DATABASE_URL)%' - orm: - auto_generate_proxy_classes: true - naming_strategy: doctrine.orm.naming_strategy.underscore - auto_mapping: true - mappings: - App: - is_bundle: false - type: annotation - dir: '%kernel.project_dir%/src/Entity' - prefix: 'App\Entity' - alias: App + # IMPORTANT: You MUST configure your server version, + # either here or in the DATABASE_URL env var (see .env file) + #server_version: '13' + orm: + auto_generate_proxy_classes: true + naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware + auto_mapping: true + mappings: + App: + is_bundle: false + type: annotation + dir: '%kernel.project_dir%/src/Entity' + prefix: 'App\Entity' + alias: App diff --git a/config/packages/doctrine_migrations.yaml b/config/packages/doctrine_migrations.yaml old mode 100755 new mode 100644 index 3bf0fbc..a0a17a0 --- a/config/packages/doctrine_migrations.yaml +++ b/config/packages/doctrine_migrations.yaml @@ -1,5 +1,6 @@ doctrine_migrations: - dir_name: '%kernel.project_dir%/src/Migrations' - # namespace is arbitrary but should be different from App\Migrations - # as migrations classes should NOT be autoloaded - namespace: DoctrineMigrations + migrations_paths: + # namespace is arbitrary but should be different from App\Migrations + # as migrations classes should NOT be autoloaded + 'DoctrineMigrations': '%kernel.project_dir%/migrations' + enable_profiler: '%kernel.debug%' diff --git a/config/packages/fos_rest.yaml b/config/packages/fos_rest.yaml old mode 100755 new mode 100644 index 4326479..d96294e --- a/config/packages/fos_rest.yaml +++ b/config/packages/fos_rest.yaml @@ -1,18 +1,15 @@ # Read the documentation: https://symfony.com/doc/master/bundles/FOSRestBundle/index.html -fos_rest: - # param_fetcher_listener: true - # allowed_methods_listener: true - # view: - # view_response_listener: true - # exception: - # codes: - # App\Exception\MyException: 403 - # messages: - # App\Exception\MyException: Forbidden area. - routing_loader: true - format_listener: - rules: - - { path: '^/', - prefer_extension: true, - fallback_format: json, - priorities: [ json, html ] } +fos_rest: null +# param_fetcher_listener: true +# allowed_methods_listener: true +# routing_loader: true +# view: +# view_response_listener: true +# exception: +# codes: +# App\Exception\MyException: 403 +# messages: +# App\Exception\MyException: Forbidden area. +# format_listener: +# rules: +# - { path: ^/api, prefer_extension: true, fallback_format: json, priorities: [ json, html ] } diff --git a/config/packages/framework.yaml b/config/packages/framework.yaml old mode 100755 new mode 100644 index 6089f4b..cad7f78 --- a/config/packages/framework.yaml +++ b/config/packages/framework.yaml @@ -1,3 +1,4 @@ +# see https://symfony.com/doc/current/reference/configuration/framework.html framework: secret: '%env(APP_SECRET)%' #csrf_protection: true diff --git a/config/packages/graphql.yaml b/config/packages/graphql.yaml deleted file mode 100644 index 3736e96..0000000 --- a/config/packages/graphql.yaml +++ /dev/null @@ -1,10 +0,0 @@ -overblog_graphql: - definitions: - schema: - query: Query - mappings: - types: - - - type: yaml - dir: "%kernel.project_dir%/config/graphql/types" - suffix: null diff --git a/config/packages/jms_serializer.yaml b/config/packages/jms_serializer.yaml old mode 100755 new mode 100644 diff --git a/config/packages/mailer.yaml b/config/packages/mailer.yaml deleted file mode 100644 index 56a650d..0000000 --- a/config/packages/mailer.yaml +++ /dev/null @@ -1,3 +0,0 @@ -framework: - mailer: - dsn: '%env(MAILER_DSN)%' diff --git a/config/packages/nelmio_api_doc.yaml b/config/packages/nelmio_api_doc.yaml deleted file mode 100755 index 2ae5f06..0000000 --- a/config/packages/nelmio_api_doc.yaml +++ /dev/null @@ -1,9 +0,0 @@ -nelmio_api_doc: - documentation: - info: - title: Poll Bliss - description: Sondages à la framadate par CipherBliss - version: 1.0.0 - areas: # to filter documented areas - path_patterns: - - ^/api(?!/doc$) # Accepts routes under /api except /api/doc diff --git a/config/packages/nelmio_cors.yaml b/config/packages/nelmio_cors.yaml deleted file mode 100755 index b18bd62..0000000 --- a/config/packages/nelmio_cors.yaml +++ /dev/null @@ -1,15 +0,0 @@ -nelmio_cors: - defaults: - origin_regex: true - allow_origin: ['%env(CORS_ALLOW_ORIGIN)%'] - allow_methods: ['GET', 'OPTIONS', 'POST', 'PUT', 'PATCH', 'DELETE'] - allow_headers: ['Content-Type', 'Authorization'] - expose_headers: ['Link'] - max_age: 3600 - paths: - '^/': null - '^/api/': - allow_origin: ['*'] - allow_headers: ['Content-Type', 'Authorization'] - allow_methods: ['GET', 'OPTIONS', 'POST', 'PUT', 'PATCH', 'DELETE'] - max_age: 3600 diff --git a/config/packages/prod/doctrine.yaml b/config/packages/prod/doctrine.yaml old mode 100755 new mode 100644 index 0a7c53b..084f59a --- a/config/packages/prod/doctrine.yaml +++ b/config/packages/prod/doctrine.yaml @@ -2,26 +2,14 @@ doctrine: orm: auto_generate_proxy_classes: false metadata_cache_driver: - type: service - id: doctrine.system_cache_provider + type: pool + pool: doctrine.system_cache_pool query_cache_driver: - type: service - id: doctrine.system_cache_provider + type: pool + pool: doctrine.system_cache_pool result_cache_driver: - type: service - id: doctrine.result_cache_provider - -services: - doctrine.result_cache_provider: - class: Symfony\Component\Cache\DoctrineProvider - public: false - arguments: - - '@doctrine.result_cache_pool' - doctrine.system_cache_provider: - class: Symfony\Component\Cache\DoctrineProvider - public: false - arguments: - - '@doctrine.system_cache_pool' + type: pool + pool: doctrine.result_cache_pool framework: cache: diff --git a/config/packages/prod/jms_serializer.yaml b/config/packages/prod/jms_serializer.yaml old mode 100755 new mode 100644 diff --git a/config/packages/prod/routing.yaml b/config/packages/prod/routing.yaml old mode 100755 new mode 100644 diff --git a/config/packages/prod/webpack_encore.yaml b/config/packages/prod/webpack_encore.yaml deleted file mode 100644 index d0b3ba8..0000000 --- a/config/packages/prod/webpack_encore.yaml +++ /dev/null @@ -1,4 +0,0 @@ -#webpack_encore: - # Cache the entrypoints.json (rebuild Symfony's cache when entrypoints.json changes) - # Available in version 1.2 - #cache: true diff --git a/config/packages/routing.yaml b/config/packages/routing.yaml old mode 100755 new mode 100644 index 7e97762..b45c1ce --- a/config/packages/routing.yaml +++ b/config/packages/routing.yaml @@ -1,3 +1,7 @@ framework: router: utf8: true + + # Configure how to generate URLs in non-HTTP contexts, such as CLI commands. + # See https://symfony.com/doc/current/routing.html#generating-urls-in-commands + #default_uri: http://localhost diff --git a/config/packages/sensio_framework_extra.yaml b/config/packages/sensio_framework_extra.yaml old mode 100755 new mode 100644 index 2288040..1821ccc --- a/config/packages/sensio_framework_extra.yaml +++ b/config/packages/sensio_framework_extra.yaml @@ -1,5 +1,3 @@ sensio_framework_extra: router: annotations: false - request: - converters: true diff --git a/config/packages/swiftmailer.yaml b/config/packages/swiftmailer.yaml old mode 100755 new mode 100644 diff --git a/config/packages/test/doctrine.yaml b/config/packages/test/doctrine.yaml old mode 100755 new mode 100644 index a9b9904..a19e8d9 --- a/config/packages/test/doctrine.yaml +++ b/config/packages/test/doctrine.yaml @@ -1,5 +1,7 @@ -doctrine: - dbal: - driver: pdo_sqlite - path: "%kernel.cache_dir%/test.db" - url: null \ No newline at end of file +#doctrine: +# dbal: +# # Overrides the database name in the test environment only +# # "host", "port", "username", & "password" can also be set to override their respective url parts +# # +# # If you're using ParaTest, "TEST_TOKEN" is set by ParaTest otherwise nothing is appended to the database name. +# dbname: main_test%env(default::TEST_TOKEN)% diff --git a/config/packages/test/framework.yaml b/config/packages/test/framework.yaml old mode 100755 new mode 100644 index d5b0918..d051c84 --- a/config/packages/test/framework.yaml +++ b/config/packages/test/framework.yaml @@ -2,6 +2,3 @@ framework: test: true session: storage_id: session.storage.mock_file -liip_test_fixtures: - cache_db: - sqlite: liip_test_fixtures.services_database_backup.sqlite \ No newline at end of file diff --git a/config/packages/test/swiftmailer.yaml b/config/packages/test/swiftmailer.yaml old mode 100755 new mode 100644 diff --git a/config/packages/test/twig.yaml b/config/packages/test/twig.yaml old mode 100755 new mode 100644 diff --git a/config/packages/test/validator.yaml b/config/packages/test/validator.yaml deleted file mode 100755 index 1e5ab78..0000000 --- a/config/packages/test/validator.yaml +++ /dev/null @@ -1,3 +0,0 @@ -framework: - validation: - not_compromised_password: false diff --git a/config/packages/test/webpack_encore.yaml b/config/packages/test/webpack_encore.yaml deleted file mode 100644 index 02a7651..0000000 --- a/config/packages/test/webpack_encore.yaml +++ /dev/null @@ -1,2 +0,0 @@ -#webpack_encore: -# strict_mode: false diff --git a/config/packages/twig.yaml b/config/packages/twig.yaml old mode 100755 new mode 100644 index 535fbec..b3cdf30 --- a/config/packages/twig.yaml +++ b/config/packages/twig.yaml @@ -1,8 +1,2 @@ twig: - default_path: '%kernel.project_dir%/templates' - debug: '%kernel.debug%' - strict_variables: '%kernel.debug%' - globals: - BASE_URL: '%env(BASE_URL)%' - WEBSITE_NAME: '%env(WEBSITE_NAME)%' - WEBSITE_LOGO: '%env(WEBSITE_LOGO)%' + default_path: '%kernel.project_dir%/templates' diff --git a/config/packages/validator.yaml b/config/packages/validator.yaml deleted file mode 100755 index 350786a..0000000 --- a/config/packages/validator.yaml +++ /dev/null @@ -1,8 +0,0 @@ -framework: - validation: - email_validation_mode: html5 - - # Enables validator auto-mapping support. - # For instance, basic validation constraints will be inferred from Doctrine's metadata. - #auto_mapping: - # App\Entity\: [] diff --git a/config/packages/webpack_encore.yaml b/config/packages/webpack_encore.yaml deleted file mode 100644 index 9191f4f..0000000 --- a/config/packages/webpack_encore.yaml +++ /dev/null @@ -1,25 +0,0 @@ -webpack_encore: - # The path where Encore is building the assets - i.e. Encore.setOutputPath() - output_path: '%kernel.project_dir%/public/build' - # If multiple builds are defined (as shown below), you can disable the default build: - # output_path: false - - # if using Encore.enableIntegrityHashes() and need the crossorigin attribute (default: false, or use 'anonymous' or 'use-credentials') - # crossorigin: 'anonymous' - - # preload all rendered script and link tags automatically via the http2 Link header - # preload: true - - # Throw an exception if the entrypoints.json file is missing or an entry is missing from the data - # strict_mode: false - - # if you have multiple builds: - # builds: - # pass "frontend" as the 3rg arg to the Twig functions - # {{ encore_entry_script_tags('entry1', null, 'frontend') }} - - # frontend: '%kernel.project_dir%/public/frontend/build' - - # Cache the entrypoints.json (rebuild Symfony's cache when entrypoints.json changes) - # Put in config/packages/prod/webpack_encore.yaml - # cache: true diff --git a/config/preload.php b/config/preload.php new file mode 100644 index 0000000..5ebcdb2 --- /dev/null +++ b/config/preload.php @@ -0,0 +1,5 @@ +bootEnv(dirname(__DIR__).'/.env'); if ($_SERVER['APP_DEBUG']) { umask(0000); @@ -12,14 +15,6 @@ if ($_SERVER['APP_DEBUG']) { Debug::enable(); } -if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? $_ENV['TRUSTED_PROXIES'] ?? false) { - Request::setTrustedProxies(explode(',', $trustedProxies), Request::HEADER_X_FORWARDED_ALL ^ Request::HEADER_X_FORWARDED_HOST); -} - -if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? $_ENV['TRUSTED_HOSTS'] ?? false) { - Request::setTrustedHosts([$trustedHosts]); -} - $kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']); $request = Request::createFromGlobals(); $response = $kernel->handle($request); diff --git a/src/Controller/.gitignore b/src/Controller/.gitignore old mode 100755 new mode 100644 diff --git a/src/Controller/MigrationController.php b/src/Controller/MigrationController.php new file mode 100755 index 0000000..1698a8c --- /dev/null +++ b/src/Controller/MigrationController.php @@ -0,0 +1,235 @@ +getParameter( 'UNIQ_INSTALL_KEY' ) ) { + return new JsonResponse( [ + 'error' => 'NOPE! veuillez vérifier votre fichier .env', + ] ); + }; + + + // fetch old Database + + $debug = ''; + + $em = $this->getDoctrine()->getManager(); + $pollsBySlug = []; + + + $pdo_options[ \PDO::ATTR_ERRMODE ] = \PDO::ERRMODE_EXCEPTION; + $bdd = new \PDO( 'mysql:host=localhost;dbname=' . $this->getParameter( 'OLD_DATABASE_NAME' ), + $this->getParameter( 'OLD_DATABASE_USER' ), + $this->getParameter( 'OLD_DATABASE_PASS' ), + $pdo_options ); + $res_polls = $bdd->query( 'SELECT * FROM fd_poll' ); + while ( $d = $res_polls->fetch( \PDO::FETCH_OBJ ) ) { + + $debug .= "
ajout de sondage : ".$d->title .' - '. $d->id ; + + + $newPoll = new Poll(); + $owner = new Owner(); + + $owner->setEmail( $d->admin_mail ) + ->setPseudo( $d->admin_name ) + ->addPoll($newPoll); + + $newPoll + ->setOwner( $owner ) + ->setCustomURL( $d->id ) + ->setKind( $d->id === 'D' ? 'date' : 'text' ) + ->setHideResults( ! $d->results_publicly_visible ) + ->setAdminKey( $d->admin_id ) + ->setTitle( $d->title ) + ->setVotesAllowed( $d->receiveNewVotes ) + ->setCommentsAllowed( $d->receiveNewComments ) + ->setChoicesMax( $d->ValueMax ) + ->setPassword( $d->password_hash ) + ->setDescription( $d->description ) + ->setCreationDate( date_create( $d->creation_date ) ); + + $pollsBySlug[ $d->id ] = $newPoll; + + + $em->persist( $owner ); + $em->persist( $newPoll ); + } + // get choices, slots and link them with poll by their slug + $res_slots = $bdd->query( 'SELECT * FROM fd_slot' ); + $pollChoicesOrderedBySlug = []; + $choicesCreated = []; + + while ( $d = $res_slots->fetch( \PDO::FETCH_OBJ ) ) { + + $debug .= "
ajout de slot, converti en choix de réponse : ".$d->poll_id. ' : '. $d->moments; + + $pollSlug = $d->poll_id; + $poll = $pollsBySlug[$pollSlug]; + + $moments = explode(',' , $d->moments); + foreach ( $moments as $moment ) { + $newChoice = new Choice(); + $newChoice + ->setPoll($poll) + ->setDateTime(date_create( strtotime( $d->title))) + ->setName($moment); + + $pollChoicesOrderedBySlug[$pollSlug][] = $newChoice; + $poll->addChoice($newChoice); + + $em->persist( $newChoice ); + $em->persist( $newPoll ); + $choicesCreated[] = $newChoice; + } + } + + // get votes + $stacksOfVote = []; + $res_votes = $bdd->query( 'SELECT * FROM fd_vote' ); + while ( $d = $res_votes->fetch( \PDO::FETCH_OBJ ) ) { + + $debug .= "
ajout de stack de vote : ".$d->name; + $pollSlug = $d->poll_id; + $poll = $pollsBySlug[ $pollSlug ]; + + $newStack = new StackOfVotes(); + $newOwner = new Owner(); + $newOwner + ->setPseudo($d->name) + ->setEmail('the_anonymous_email_from_@_migration_offramadate.org') + ->setModifierToken($d->uniqId) + ; + + $newStack->setPoll($poll) + ->setOwner($newOwner) + ->setPseudo($d->name) + ; + + // each choice answer is encoded in a value : + + $voteCodes = str_split($d->choices); + // get choices of the poll and answer accordingly + + $ii=0; + foreach ( $voteCodes as $vote_code ) { + if($vote_code !== ' '){ + $choice = $pollChoicesOrderedBySlug[$pollSlug][$ii]; + + $newVote = new Vote(); + + $newVote + ->setChoice($choice) + ->setStacksOfVotes($newStack) + ->setPoll($poll) + ->setValue( $this->mapAnswerNumberToWord($vote_code)) + ; + $newStack->addVote($newVote); + + $em->persist( $newVote ); + $votes[] = $newVote; + } + $ii++; + } + + + $poll->addStackOfVote($newStack); + $em->persist( $newStack ); + $stacksOfVote[] = $newStack; + + } + + $comments = []; + $res_comments = $bdd->query( 'SELECT * FROM fd_comment' ); + while ( $d = $res_comments->fetch( \PDO::FETCH_OBJ ) ) { + + $debug .= "
ajout de commentaire : ".$d->name. ' '. $d->comment; + + $pollSlug = $d->poll_id; + $poll = $pollsBySlug[ $pollSlug ]; + $newComment = new Comment(); + $poll->addComment($newComment); + + $newComment->setPoll($poll) + ->setCreatedAt( date_create($d->date)) + ->setText( $d->comment) + // TODO update entities + ->setPseudo( $d->name); + $em->persist( $newComment ); + $comments[] = $newComment; + + } + // gather objects + // create new polls + $em->flush(); + // success + // failure notice + $debug .= "

ça c'est fait. "; + + return $this->render('pages/migration.html.twig' , [ + "message" => "welcome to the framadate migration endpoint, it has yet to be done", + "debug" => $debug, + "OLD_DATABASE_NAME" => $this->getParameter( 'OLD_DATABASE_NAME' ), + "OLD_DATABASE_USER" => $this->getParameter( 'OLD_DATABASE_USER' ), + "counters" =>[ + 'polls' => count($pollsBySlug), + 'comments' => count($comments), + 'choices' => count($choicesCreated), + 'stacks_of_votes' => count($stacksOfVote), + 'votes' => count($votes), + ] + ]); + } + /** + * @param $numberToConvert + * conversion of answer: + * space character : no answer, 0 : no , 1 : maybe , 2 : yes + * @return string + */ + public function mapAnswerNumberToWord($numberToConvert){ + $word = ''; + switch ($numberToConvert){ + case 0: + $word = 'no'; + break; + case 1: + $word = 'maybe'; + break; + case 2: + $word = 'yes'; + break; + default: + $word = 'no'; + } + return $word; + } + +} diff --git a/src/Controller/PollController.php b/src/Controller/PollController.php index ab099e8..ac82128 100644 --- a/src/Controller/PollController.php +++ b/src/Controller/PollController.php @@ -21,8 +21,15 @@ class PollController extends AbstractController */ public function index(PollRepository $pollRepository): Response { + + $polls = $pollRepository->findAll(); + $titles=[]; + foreach ( $polls as $poll ) { + $titles[] = $poll->getTitle(); + } return $this->render('poll/index.html.twig', [ - 'polls' => count($pollRepository->findAll()), + 'count' => count($polls), + 'polls' => $titles, ]); } diff --git a/src/Controller/api/PollController.php b/src/Controller/api/PollController.php index 8409715..9803b9c 100644 --- a/src/Controller/api/PollController.php +++ b/src/Controller/api/PollController.php @@ -6,6 +6,7 @@ use App\Controller\FramadateController; use App\Entity\Choice; use App\Entity\Owner; use App\Entity\Poll; +use App\Repository\PollRepository; use JMS\Serializer\Exception\RuntimeException; use JMS\Serializer\SerializerBuilder; use JMS\Serializer\SerializerInterface; @@ -33,15 +34,32 @@ class PollController extends FramadateController { * name = "get_all_polls" * ) */ - public function getAllPollsAction() { - $repository = $this->getDoctrine()->getRepository( Poll::class ); - $data = $repository->findAll(); + public function getAllPollsAction(PollRepository $pollRepository): Response { + $data = $pollRepository->findAll(); - return $this->json( [ + $polls = $data; + $titles=[]; + + $pollData = [ 'message' => 'here are your polls', - 'poll' => count( $data ), - ] ); + 'count' => count($polls), + + ]; + + $debug=1; + + if($debug){ + foreach ( $polls as $poll ) { + $titles[] = ['title' => $poll->getTitle(), + 'slug' => $poll->getCustomUrl() + ]; + } + $pollData['polls'] = $titles; + } + + return $this->json( $pollData); + } /** @@ -49,7 +67,7 @@ class PollController extends FramadateController { * message when the poll is not found * @return JsonResponse */ - public function notFoundPoll($id){ + public function notFoundPoll($id): Response{ return $this->json( [ 'message' => $id . ' : poll not found', ], @@ -72,7 +90,7 @@ class PollController extends FramadateController { SerializerInterface $serializer, $id, Request $request - ) { + ): Response { $repository = $this->getDoctrine()->getRepository( Poll::class ); $poll = $repository->findOneByCustomUrl( $id ); diff --git a/src/Entity/.gitignore b/src/Entity/.gitignore old mode 100755 new mode 100644 diff --git a/src/Entity/Comment.php b/src/Entity/Comment.php index c715869..5423116 100755 --- a/src/Entity/Comment.php +++ b/src/Entity/Comment.php @@ -25,6 +25,13 @@ class Comment { */ private $owner; + /** + * @ORM\Column(type="string") + * @Serializer\Type("string") + * @Serializer\Expose() + */ + private $pseudo; + /** * @ORM\Column(type="text") * @Serializer\Type("string") @@ -45,59 +52,71 @@ class Comment { private $poll; function display() { - return [ - 'id' => $this->getId(), - 'text' => $this->getText(), - 'pseudo' => $this->getOwner()->getPseudo(), - 'date' => $this->getCreatedAt(), - ]; - } + return [ + 'id' => $this->getId(), + 'text' => $this->getText(), + 'pseudo' => $this->getOwner()->getPseudo(), + 'date' => $this->getCreatedAt(), + ]; + } function __construct() { - $this->setCreatedAt( new \DateTime() ); - } + $this->setCreatedAt( new \DateTime() ); + } public function getId(): ?int { - return $this->id; - } + return $this->id; + } public function getOwner(): ?Owner { - return $this->owner; - } + return $this->owner; + } public function setOwner( ?Owner $owner ): self { - $this->owner = $owner; - - return $this; - } + $this->owner = $owner; + + return $this; + } public function getText(): ?string { - return $this->text; - } + return $this->text; + } public function setText( string $text ): self { - $this->text = $text; - - return $this; - } + $this->text = $text; + + return $this; + } public function getCreatedAt(): ?DateTimeInterface { - return $this->createdAt; - } + return $this->createdAt; + } public function setCreatedAt( DateTimeInterface $createdAt ): self { - $this->createdAt = $createdAt; - - return $this; - } + $this->createdAt = $createdAt; + + return $this; + } public function getPoll(): ?Poll { - return $this->poll; - } + return $this->poll; + } public function setPoll( ?Poll $poll ): self { - $this->poll = $poll; + $this->poll = $poll; + + return $this; + } - return $this; - } + public function getPseudo(): ?string + { + return $this->pseudo; + } + + public function setPseudo(string $pseudo): self + { + $this->pseudo = $pseudo; + + return $this; + } } diff --git a/src/Entity/Poll.php b/src/Entity/Poll.php index 4b5fced..0110d2b 100755 --- a/src/Entity/Poll.php +++ b/src/Entity/Poll.php @@ -1,6 +1,6 @@ ") - * @Serializer\Expose() - */ - public $votes; - /** - * @ORM\OneToMany(targetEntity="App\Entity\StackOfVotes", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) - * @Serializer\Expose() - */ - public $stacksOfVotes; - /** - * @ORM\OneToMany(targetEntity="App\Entity\Choice", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) - * @Serializer\Expose() - * @Serializer\Type("ArrayCollection") - */ - public $choices; - /** - * @ORM\OneToMany(targetEntity="App\Entity\Comment", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) - * @Serializer\Expose() - * @Serializer\Type("ArrayCollection") - */ - public $comments; - /** - * vote restricted by a password in md5 format - * @ORM\Column(type="string", length=255, nullable=true) - */ - private $password; - /** - * used to allow administration - * @ORM\Column(type="string", length=255) - * @Serializer\Type("string") - */ - private $adminKey; + /** + * @ORM\Column(type="string", length=255) + * @Serializer\Expose() + * @Serializer\Type("string") + */ + public $title; + /** + * @ORM\Column(type="string", length=255, nullable=true) + * @Serializer\Expose() + * @Serializer\Type("string") + */ + public $customUrl; + /** + * @ORM\Column(type="string", length=1000) + * @Serializer\Expose() + * @Serializer\Type("string") + */ + public $description; + /** + * @ORM\Column(type="datetime" , options={"default"="CURRENT_TIMESTAMP"}) + * @Serializer\Expose() + */ + public $creationDate; + /** + * @ORM\Column(type="datetime") + * @Serializer\Expose() + */ + public $expiracyDate; + /** + * @ORM\ManyToOne(targetEntity="App\Entity\Owner", inversedBy="polls",cascade={"persist"}) + * @ORM\JoinColumn(nullable=false) + * @Serializer\Type("App\Entity\Owner") + * @Serializer\Expose() + */ + public $owner; + /** + * kind of poll, 'text' or 'date' + * @ORM\Column(type="string", length=255) + * @Serializer\Type("string") + * @Serializer\Expose() + */ + public $kind = 'text'; + /** + * array of possible answer to each choice, by default: "yes" or nothing only. + * could be also "yes", "maybe", "no". extensible to anything + * @ORM\Column(type="array") + * @Serializer\Type("array") + * @Serializer\Expose() + */ + public $allowedAnswers; - /** - * number of days from now for default expiracy date - * @var int - * @Serializer\Expose() - */ - public $defaultExpiracyDaysFromNow = 60; - private $maxChoicesLimit = 25; + /** + * people can add votes + * @ORM\Column(type="boolean", nullable=true) + * @Serializer\Type("boolean") + * @Serializer\Expose() + */ + public $votesAllowed; + /** + * max number of stack of votes possible. + * limits the number of people who can answer. as long as you trust the people to give only one answer with a reliable system. + * @ORM\Column(type="smallint", nullable=true) + * @Serializer\Type("smallint") + * @Serializer\Expose() + */ + public $votesMax; - public function computeAnswers() { - // counts each number of answer for this choice - $computedArray = []; - $maxScore = 0; + /** + * max number of choices people can answer in a stack of vote. for text polls only, not date kind. + * by default, people can check as many answers as they want. + * If the question is "check your 3 favourite flavours" and displays 10 flavours, only the first 3 clicked will be taken into account. GUI should be able to make this clear and togglable so that people can change their 3 favourite flavours in their answer. + * @ORM\Column(type="smallint", nullable=true) + * @Serializer\Type("smallint") + * @Serializer\Expose() + */ + public $choicesMax; - foreach ( $this->getStacksOfVotes() as $stack_of_vote ) { - foreach ( $stack_of_vote->getVotes() as $vote ) { - $answer = $vote->getValue(); - $choice_id = $vote->getChoice()->getId(); + /** + * people can add comments + * @ORM\Column(type="boolean", nullable=true) + * @Serializer\Type("boolean") + * @Serializer\Expose() + */ + public $commentsAllowed; - if ( ! isset( $computedArray[ $choice_id ] ) ) { - $computedArray[ $choice_id ] = [ - 'choice_id' => $choice_id, - 'choice_text' => $vote->getChoice()->getName(), - 'id' => $vote->getId(), - 'score' => 0, - 'yes' => [ - 'count' => 0, - 'people' => [], - ], - 'maybe' => [ - 'count' => 0, - 'people' => [], - ], - 'no' => [ - 'count' => 0, - 'people' => [], - ], - ]; - } - $computedArray[ $choice_id ][ $answer ][ 'count' ] ++; - $computedArray[ $choice_id ][ $answer ][ 'people' ][] = $stack_of_vote->getOwner()->getPseudo(); + /** + * kind of way the people can modify the poll + * everybody - can modify votes + * self - one can only modify its own vote + * nobody - no one can modify the votes (excepted admin), pray to have it right at first + * @ORM\Column(type="string", length=255) + * @Serializer\Type("string") + * @Serializer\Expose() + */ + public $modificationPolicy = 'nobody'; + /** + * send a mail on a new comment + * @ORM\Column(type="boolean", nullable=true) + * @Serializer\Type("boolean") + * @Serializer\Expose() + */ + public $mailOnComment; + /** + * send a mail on a new vote + * @ORM\Column(type="boolean", nullable=true) + * @Serializer\Type("boolean") + * @Serializer\Expose() + */ + public $mailOnVote; + /** + * hide publicly results + * @ORM\Column(type="boolean", nullable=true) + * @Serializer\Type("boolean") + * @Serializer\Expose() + */ + public $hideResults; + /** + * show publicly results even if there is a password to access the vote + * @ORM\Column(type="boolean", nullable=true) + * @Serializer\Type("boolean") + * @Serializer\Expose() + */ + public $showResultEvenIfPasswords; + /** + * @ORM\OneToMany(targetEntity="App\Entity\Vote", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) + * @Serializer\Type("ArrayCollection") + * @Serializer\Expose() + */ + public $votes; + /** + * @ORM\OneToMany(targetEntity="App\Entity\StackOfVotes", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) + * @Serializer\Expose() + */ + public $stacksOfVotes; + /** + * @ORM\OneToMany(targetEntity="App\Entity\Choice", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) + * @Serializer\Expose() + * @Serializer\Type("ArrayCollection") + */ + public $choices; + /** + * @ORM\OneToMany(targetEntity="App\Entity\Comment", mappedBy="poll", orphanRemoval=true, cascade={"persist", "remove"}) + * @Serializer\Expose() + * @Serializer\Type("ArrayCollection") + */ + public $comments; + /** + * vote restricted by a password in md5 format + * @ORM\Column(type="string", length=255, nullable=true) + */ + private $password; + /** + * used to allow administration + * @ORM\Column(type="string", length=255) + * @Serializer\Type("string") + */ + private $adminKey; - if ( $answer == 'yes' ) { - $computedArray[ $choice_id ][ 'score' ] += 1; - } elseif ( $answer == 'maybe' ) { - $computedArray[ $choice_id ][ 'score' ] += 0.5; - } - // compare with max value - if ( $computedArray[ $choice_id ][ 'score' ] > $maxScore ) { - $maxScore = $computedArray[ $choice_id ][ 'score' ]; - } + /** + * number of days from now for default expiracy date + * @var int + * @Serializer\Expose() + */ + public $defaultExpiracyDaysFromNow = 60; + private $maxChoicesLimit = 25; + + public function computeAnswers() { + // counts each number of answer for this choice + $computedArray = []; + $maxScore = 0; + + foreach ( $this->getStacksOfVotes() as $stack_of_vote ) { + foreach ( $stack_of_vote->getVotes() as $vote ) { + $answer = $vote->getValue(); + $choice_id = $vote->getChoice()->getId(); + + if ( ! isset( $computedArray[ $choice_id ] ) ) { + $computedArray[ $choice_id ] = [ + 'choice_id' => $choice_id, + 'choice_text' => $vote->getChoice()->getName(), + 'id' => $vote->getId(), + 'score' => 0, + 'yes' => [ + 'count' => 0, + 'people' => [], + ], + 'maybe' => [ + 'count' => 0, + 'people' => [], + ], + 'no' => [ + 'count' => 0, + 'people' => [], + ], + ]; + } + $computedArray[ $choice_id ][ $answer ][ 'count' ] ++; + $computedArray[ $choice_id ][ $answer ][ 'people' ][] = $stack_of_vote->getOwner()->getPseudo(); + + if ( $answer == 'yes' ) { + $computedArray[ $choice_id ][ 'score' ] += 1; + } elseif ( $answer == 'maybe' ) { + $computedArray[ $choice_id ][ 'score' ] += 0.5; + } + // compare with max value + if ( $computedArray[ $choice_id ][ 'score' ] > $maxScore ) { + $maxScore = $computedArray[ $choice_id ][ 'score' ]; } } - - return [ - 'counts' => $computedArray, - 'maxScore' => $maxScore, - ]; } - public function display() { - return [ - 'poll' => $this, - 'answers' => $this->computeAnswers(), - ]; + return [ + 'counts' => $computedArray, + 'maxScore' => $maxScore, + ]; + } + + public function display() { + return [ + 'poll' => $this, + 'answers' => $this->computeAnswers(), + ]; + } + + public function __construct() { + $this->votes = new ArrayCollection(); + $this->stacksOfVotes = new ArrayCollection(); + $this->choices = new ArrayCollection(); + $this->comments = new ArrayCollection(); + $this->initiate(); + } + + + private function initiate() { + $this->adminKey = $this->generateAdminKey(); + $this->setCreationDate( new \DateTime() ); + $this->setExpiracyDate( $this->addDaysToDate( + new \DateTime(), + $this->defaultExpiracyDaysFromNow + ) ); + $this->setAllowedAnswers( [ 'yes' ] ); + } + + + public function generateAdminKey() { + $rand = random_int( PHP_INT_MIN, PHP_INT_MAX ); + + return str_shuffle( md5( $rand ) . $rand . $this->random_str() ); + } + + /** + * Generate a random string, using a cryptographically secure + * pseudorandom number generator (random_int) + * + * This function uses type hints now (PHP 7+ only), but it was originally + * written for PHP 5 as well. + * + * For PHP 7, random_int is a PHP core function + * For PHP 5.x, depends on https://github.com/paragonie/random_compat + * + * @param int $length How many characters do we want? + * @param string $keyspace A string of all possible characters + * to select from + * + * @return string + */ + public function random_str( + int $length = 64, + string $keyspace = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' + ): string { + if ( $length < 1 ) { + throw new \RangeException( "Length must be a positive integer" ); + } + $pieces = []; + $max = mb_strlen( $keyspace, '8bit' ) - 1; + for ( $i = 0 ; $i < $length ; ++ $i ) { + $pieces [] = $keyspace[ random_int( 0, $max ) ]; } - public function __construct() { - $this->votes = new ArrayCollection(); - $this->stacksOfVotes = new ArrayCollection(); - $this->choices = new ArrayCollection(); - $this->comments = new ArrayCollection(); - $this->initiate(); - } + return implode( '', $pieces ); + } + public function findChoiceById( int $id ) { - private function initiate() { - $this->adminKey = $this->generateAdminKey(); - $this->setCreationDate( new \DateTime() ); - $this->setExpiracyDate( $this->addDaysToDate( - new \DateTime(), - $this->defaultExpiracyDaysFromNow - ) ); - $this->setAllowedAnswers( [ 'yes' ] ); - } - - - public function generateAdminKey() { - $rand = random_int( PHP_INT_MIN, PHP_INT_MAX ); - - return str_shuffle( md5( $rand ) . $rand . $this->random_str() ); - } - - /** - * Generate a random string, using a cryptographically secure - * pseudorandom number generator (random_int) - * - * This function uses type hints now (PHP 7+ only), but it was originally - * written for PHP 5 as well. - * - * For PHP 7, random_int is a PHP core function - * For PHP 5.x, depends on https://github.com/paragonie/random_compat - * - * @param int $length How many characters do we want? - * @param string $keyspace A string of all possible characters - * to select from - * - * @return string - */ - public function random_str( - int $length = 64, - string $keyspace = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' - ): string { - if ( $length < 1 ) { - throw new \RangeException( "Length must be a positive integer" ); + $choices = $this->getChoices(); + $counter = 0; + // there must be something cleaner than this in Doctrine ArrayCollection + foreach ( $choices as $choice ) { + $counter ++; + if ( $counter > $this->maxChoicesLimit ) { + throw new \ErrorException( "max number of choices reached for this poll" ); } - $pieces = []; - $max = mb_strlen( $keyspace, '8bit' ) - 1; - for ( $i = 0 ; $i < $length ; ++ $i ) { - $pieces [] = $keyspace[ random_int( 0, $max ) ]; + if ( $choice && $choice->getId() == $id ) { + return $choice; } - return implode( '', $pieces ); } - public function findChoiceById( int $id ) { + return null; + } - $choices = $this->getChoices(); - $counter = 0; - // there must be something cleaner than this in Doctrine ArrayCollection - foreach ( $choices as $choice ) { - $counter ++; - if ( $counter > $this->maxChoicesLimit ) { - throw new \ErrorException( "max number of choices reached for this poll" ); - } - if ( $choice && $choice->getId() == $id ) { - return $choice; - } + public function addDaysToDate( \DateTime $date, int $days ) { + $st = strtotime( $date->getTimestamp() . ' + ' . $days . ' days' ); + return new \DateTime( $st ); + } + + public function getId(): ?int { + return $this->id; + } + + public function getTitle(): ?string { + return $this->title; + } + + public function setTitle( string $title ): self { + $this->title = $title; + + return $this; + } + + public function getCreationDate(): ?DateTimeInterface { + return $this->creationDate; + } + + public function setCreationDate( DateTimeInterface $creationDate ): self { + $this->creationDate = $creationDate; + + return $this; + } + + public function setExpiracyDate( DateTimeInterface $expiracyDate ): self { + $this->expiracyDate = $expiracyDate; + + return $this; + } + + public function getOwner(): ?Owner { + return $this->owner; + } + + public function setOwner( ?Owner $owner ): self { + $this->owner = $owner; + + return $this; + } + + /** + * @return Collection|Vote[] + */ + public function getVotes(): Collection { + return $this->votes; + } + + + public function getAdminKey(): ?string { + return $this->adminKey; + } + + public function setAdminKey( string $adminKey ): self { + $this->adminKey = $adminKey; + + return $this; + } + + public function getDescription(): ?string { + return $this->description; + } + + public function setDescription( string $description ): self { + $this->description = $description; + + return $this; + } + + public function getKind(): ?string { + return $this->kind; + } + + public function setKind( string $kind ): self { + $this->kind = $kind; + + return $this; + } + + public function getCustomUrl(): ?string { + return $this->customUrl; + } + + public function setCustomUrl( string $customUrl ): self { + $this->customUrl = $customUrl; + + return $this; + } + + public function getPassword(): ?string { + return $this->password; + } + + public function setPassword( string $password ): self { + $this->password = md5( $password ); + + return $this; + } + + public function getModificationPolicy(): ?string { + return $this->modificationPolicy; + } + + public function setModificationPolicy( string $modificationPolicy ): self { + $this->modificationPolicy = $modificationPolicy; + + return $this; + } + + public function getMailOnComment(): ?bool { + return $this->mailOnComment; + } + + public function setMailOnComment( bool $mailOnComment ): self { + $this->mailOnComment = $mailOnComment; + + return $this; + } + + public function getMailOnVote(): ?bool { + return $this->mailOnVote; + } + + public function setMailOnVote( bool $mailOnVote ): self { + $this->mailOnVote = $mailOnVote; + + return $this; + } + + public function getHideResults(): ?bool { + return $this->hideResults; + } + + public function setHideResults( bool $hideResults ): self { + $this->hideResults = $hideResults; + + return $this; + } + + public function getShowResultEvenIfPasswords(): ?bool { + return $this->showResultEvenIfPasswords; + } + + public function setShowResultEvenIfPasswords( bool $showResultEvenIfPasswords ): self { + $this->showResultEvenIfPasswords = $showResultEvenIfPasswords; + + return $this; + } + + + /** + * @return Collection|Comment[] + */ + public function getComments(): Collection { + return $this->comments; + } + + public function addComment( Comment $comment ): self { + if ( ! $this->comments->contains( $comment ) ) { + $this->comments[] = $comment; + $comment->setPoll( $this ); + } + + return $this; + } + + public function removeComment( Comment $comment ): self { + if ( $this->comments->contains( $comment ) ) { + $this->comments->removeElement( $comment ); + // set the owning side to null (unless already changed) + if ( $comment->getPoll() === $this ) { + $comment->setPoll( null ); } - - return null; } - public function addDaysToDate( \DateTime $date, int $days ) { - $st = strtotime( $date->getTimestamp() . ' + ' . $days . ' days' ); + return $this; + } - return new \DateTime( $st ); + public function getStacksOfVotes() { + return $this->stacksOfVotes; + } + + public function setStacksOfVotes( ?StackOfVotes $stacksOfVotes ): self { + $this->stacksOfVotes = $stacksOfVotes; + + return $this; + } + + + public function addStackOfVote( StackOfVotes $stackOfVote ): self { + if ( ! $this->stacksOfVotes->contains( $stackOfVote ) ) { + $this->stacksOfVotes[] = $stackOfVote; + $stackOfVote->setPoll( $this ); } - public function getId(): ?int { - return $this->id; - } + return $this; + } - public function getTitle(): ?string { - return $this->title; - } - - public function setTitle( string $title ): self { - $this->title = $title; - - return $this; - } - - public function getCreationDate(): ?DateTimeInterface { - return $this->creationDate; - } - - public function setCreationDate( DateTimeInterface $creationDate ): self { - $this->creationDate = $creationDate; - - return $this; - } - - public function setExpiracyDate( DateTimeInterface $expiracyDate ): self { - $this->expiracyDate = $expiracyDate; - - return $this; - } - - public function getOwner(): ?Owner { - return $this->owner; - } - - public function setOwner( ?Owner $owner ): self { - $this->owner = $owner; - - return $this; - } - - /** - * @return Collection|Vote[] - */ - public function getVotes(): Collection { - return $this->votes; - } - - - public function getAdminKey(): ?string { - return $this->adminKey; - } - - public function setAdminKey( string $adminKey ): self { - $this->adminKey = $adminKey; - - return $this; - } - - public function getDescription(): ?string { - return $this->description; - } - - public function setDescription( string $description ): self { - $this->description = $description; - - return $this; - } - - public function getKind(): ?string { - return $this->kind; - } - - public function setKind( string $kind ): self { - $this->kind = $kind; - - return $this; - } - - public function getCustomUrl(): ?string { - return $this->customUrl; - } - - public function setCustomUrl( string $customUrl ): self { - $this->customUrl = $customUrl; - - return $this; - } - - public function getPassword(): ?string { - return $this->password; - } - - public function setPassword( string $password ): self { - $this->password = md5( $password ); - - return $this; - } - - public function getModificationPolicy(): ?string { - return $this->modificationPolicy; - } - - public function setModificationPolicy( string $modificationPolicy ): self { - $this->modificationPolicy = $modificationPolicy; - - return $this; - } - - public function getMailOnComment(): ?bool { - return $this->mailOnComment; - } - - public function setMailOnComment( bool $mailOnComment ): self { - $this->mailOnComment = $mailOnComment; - - return $this; - } - - public function getMailOnVote(): ?bool { - return $this->mailOnVote; - } - - public function setMailOnVote( bool $mailOnVote ): self { - $this->mailOnVote = $mailOnVote; - - return $this; - } - - public function getHideResults(): ?bool { - return $this->hideResults; - } - - public function setHideResults( bool $hideResults ): self { - $this->hideResults = $hideResults; - - return $this; - } - - public function getShowResultEvenIfPasswords(): ?bool { - return $this->showResultEvenIfPasswords; - } - - public function setShowResultEvenIfPasswords( bool $showResultEvenIfPasswords ): self { - $this->showResultEvenIfPasswords = $showResultEvenIfPasswords; - - return $this; - } - - - /** - * @return Collection|Comment[] - */ - public function getComments(): Collection { - return $this->comments; - } - - public function addComment( Comment $comment ): self { - if ( ! $this->comments->contains( $comment ) ) { - $this->comments[] = $comment; - $comment->setPoll( $this ); + public function removeStackOfVote( StackOfVotes $stackOfVote ): self { + if ( $this->stacksOfVotes->contains( $stackOfVote ) ) { + $this->stacksOfVotes->removeElement( $stackOfVote ); + // set the owning side to null (unless already changed) + if ( $stackOfVote->getPoll() === $this ) { + $stackOfVote->setPoll( null ); } - - return $this; } - public function removeComment( Comment $comment ): self { - if ( $this->comments->contains( $comment ) ) { - $this->comments->removeElement( $comment ); - // set the owning side to null (unless already changed) - if ( $comment->getPoll() === $this ) { - $comment->setPoll( null ); - } + return $this; + } + + public function getExpiracyDate(): ?\DateTimeInterface { + return $this->expiracyDate; + } + + public function addVote( Vote $vote ): self { + if ( ! $this->votes->contains( $vote ) ) { + $this->votes[] = $vote; + $vote->setPoll( $this ); + } + + return $this; + } + + public function removeVote( Vote $vote ): self { + if ( $this->votes->contains( $vote ) ) { + $this->votes->removeElement( $vote ); + // set the owning side to null (unless already changed) + if ( $vote->getPoll() === $this ) { + $vote->setPoll( null ); } - - return $this; } - public function getStacksOfVotes() { - return $this->stacksOfVotes; + return $this; + } + + /** + * @return Collection|Choice[] + */ + public function getChoices(): Collection { + return $this->choices; + } + + public function addTextChoiceArray( array $choiceTextArray ): self { + foreach ( $choiceTextArray as $text ) { + $newChoice = new Choice(); + $newChoice->setName( $text ); + $this->addChoice( $newChoice ); } - public function setStacksOfVotes( ?StackOfVotes $stacksOfVotes ): self { - $this->stacksOfVotes = $stacksOfVotes; + return $this; + } - return $this; + + public function getAllowedAnswers(): ?array { + return $this->allowedAnswers; + } + + public function setAllowedAnswers( array $allowedAnswers ): self { + $this->allowedAnswers = $allowedAnswers; + + return $this; + } + + public function addStacksOfVote( StackOfVotes $stacksOfVote ): self { + if ( ! $this->stacksOfVotes->contains( $stacksOfVote ) ) { + $this->stacksOfVotes[] = $stacksOfVote; + $stacksOfVote->setPoll( $this ); } + return $this; + } - public function addStackOfVote( StackOfVotes $stackOfVote ): self { - if ( ! $this->stacksOfVotes->contains( $stackOfVote ) ) { - $this->stacksOfVotes[] = $stackOfVote; - $stackOfVote->setPoll( $this ); + public function removeStacksOfVote( StackOfVotes $stacksOfVote ): self { + if ( $this->stacksOfVotes->contains( $stacksOfVote ) ) { + $this->stacksOfVotes->removeElement( $stacksOfVote ); + // set the owning side to null (unless already changed) + if ( $stacksOfVote->getPoll() === $this ) { + $stacksOfVote->setPoll( null ); } - - return $this; } - public function removeStackOfVote( StackOfVotes $stackOfVote ): self { - if ( $this->stacksOfVotes->contains( $stackOfVote ) ) { - $this->stacksOfVotes->removeElement( $stackOfVote ); - // set the owning side to null (unless already changed) - if ( $stackOfVote->getPoll() === $this ) { - $stackOfVote->setPoll( null ); - } - } + return $this; + } - return $this; - } - - public function getExpiracyDate(): ?\DateTimeInterface { - return $this->expiracyDate; - } - - public function addVote( Vote $vote ): self { - if ( ! $this->votes->contains( $vote ) ) { - $this->votes[] = $vote; - $vote->setPoll( $this ); - } - - return $this; - } - - public function removeVote( Vote $vote ): self { - if ( $this->votes->contains( $vote ) ) { - $this->votes->removeElement( $vote ); - // set the owning side to null (unless already changed) - if ( $vote->getPoll() === $this ) { - $vote->setPoll( null ); - } - } - - return $this; - } - - /** - * @return Collection|Choice[] - */ - public function getChoices(): Collection { - return $this->choices; - } - - public function addTextChoiceArray( Array $choiceTextArray ): self { - foreach ( $choiceTextArray as $text ) { - $newChoice = new Choice(); - $newChoice->setName( $text ); - $this->addChoice( $newChoice ); - } - - return $this; - } - - - public function getAllowedAnswers(): ?array { - return $this->allowedAnswers; - } - - public function setAllowedAnswers( array $allowedAnswers ): self { - $this->allowedAnswers = $allowedAnswers; - - return $this; - } - - public function addStacksOfVote( StackOfVotes $stacksOfVote ): self { - if ( ! $this->stacksOfVotes->contains( $stacksOfVote ) ) { - $this->stacksOfVotes[] = $stacksOfVote; - $stacksOfVote->setPoll( $this ); - } - - return $this; - } - - public function removeStacksOfVote( StackOfVotes $stacksOfVote ): self { - if ( $this->stacksOfVotes->contains( $stacksOfVote ) ) { - $this->stacksOfVotes->removeElement( $stacksOfVote ); - // set the owning side to null (unless already changed) - if ( $stacksOfVote->getPoll() === $this ) { - $stacksOfVote->setPoll( null ); - } - } - - return $this; - } - - public function addChoice( Choice $choice ): self { - if ( ! is_null( $this->choices ) ) { - if ( ! $this->choices->contains( $choice ) ) { - $this->choices[] = $choice; - $choice->setPoll( $this ); - } - } else { + public function addChoice( Choice $choice ): self { + if ( ! is_null( $this->choices ) ) { + if ( ! $this->choices->contains( $choice ) ) { $this->choices[] = $choice; $choice->setPoll( $this ); } - - - return $this; + } else { + $this->choices[] = $choice; + $choice->setPoll( $this ); } - public function removeChoice( Choice $choice ): self { - if ( $this->choices->contains( $choice ) ) { - $this->choices->removeElement( $choice ); - // set the owning side to null (unless already changed) - if ( $choice->getPoll() === $this ) { - $choice->setPoll( null ); - } - } - return $this; - } + return $this; } + + public function removeChoice( Choice $choice ): self { + if ( $this->choices->contains( $choice ) ) { + $this->choices->removeElement( $choice ); + // set the owning side to null (unless already changed) + if ( $choice->getPoll() === $this ) { + $choice->setPoll( null ); + } + } + + return $this; + } + + public function getVotesAllowed(): ?bool { + return $this->votesAllowed; + } + + public function setVotesAllowed( ?bool $votesAllowed ): self { + $this->votesAllowed = $votesAllowed; + + return $this; + } + + public function getVotesMax() { + return $this->votesMax; + } + + public function setVotesMax( $votesMax ): self { + $this->votesMax = $votesMax; + + return $this; + } + + public function getChoicesMax() { + return $this->choicesMax; + } + + public function setChoicesMax( $choicesMax ): self { + $this->choicesMax = $choicesMax; + + return $this; + } + + public function getCommentsAllowed(): ?bool { + return $this->commentsAllowed; + } + + public function setCommentsAllowed( ?bool $commentsAllowed ): self { + $this->commentsAllowed = $commentsAllowed; + + return $this; + } +} diff --git a/src/Kernel.php b/src/Kernel.php old mode 100755 new mode 100644 index 785b0be..655e796 --- a/src/Kernel.php +++ b/src/Kernel.php @@ -3,51 +3,36 @@ namespace App; use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait; -use Symfony\Component\Config\Loader\LoaderInterface; -use Symfony\Component\Config\Resource\FileResource; -use Symfony\Component\DependencyInjection\ContainerBuilder; +use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; use Symfony\Component\HttpKernel\Kernel as BaseKernel; -use Symfony\Component\Routing\RouteCollectionBuilder; +use Symfony\Component\Routing\Loader\Configurator\RoutingConfigurator; class Kernel extends BaseKernel { use MicroKernelTrait; - private const CONFIG_EXTS = '.{php,xml,yaml,yml}'; - - public function registerBundles(): iterable + protected function configureContainer(ContainerConfigurator $container): void { - $contents = require $this->getProjectDir().'/config/bundles.php'; - foreach ($contents as $class => $envs) { - if ($envs[$this->environment] ?? $envs['all'] ?? false) { - yield new $class(); - } + $container->import('../config/{packages}/*.yaml'); + $container->import('../config/{packages}/'.$this->environment.'/*.yaml'); + + if (is_file(\dirname(__DIR__).'/config/services.yaml')) { + $container->import('../config/services.yaml'); + $container->import('../config/{services}_'.$this->environment.'.yaml'); + } elseif (is_file($path = \dirname(__DIR__).'/config/services.php')) { + (require $path)($container->withPath($path), $this); } } - public function getProjectDir(): string + protected function configureRoutes(RoutingConfigurator $routes): void { - return \dirname(__DIR__); - } + $routes->import('../config/{routes}/'.$this->environment.'/*.yaml'); + $routes->import('../config/{routes}/*.yaml'); - protected function configureContainer(ContainerBuilder $container, LoaderInterface $loader): void - { - $container->addResource(new FileResource($this->getProjectDir().'/config/bundles.php')); - $container->setParameter('container.dumper.inline_class_loader', true); - $confDir = $this->getProjectDir().'/config'; - - $loader->load($confDir.'/{packages}/*'.self::CONFIG_EXTS, 'glob'); - $loader->load($confDir.'/{packages}/'.$this->environment.'/**/*'.self::CONFIG_EXTS, 'glob'); - $loader->load($confDir.'/{services}'.self::CONFIG_EXTS, 'glob'); - $loader->load($confDir.'/{services}_'.$this->environment.self::CONFIG_EXTS, 'glob'); - } - - protected function configureRoutes(RouteCollectionBuilder $routes): void - { - $confDir = $this->getProjectDir().'/config'; - - $routes->import($confDir.'/{routes}/'.$this->environment.'/**/*'.self::CONFIG_EXTS, '/', 'glob'); - $routes->import($confDir.'/{routes}/*'.self::CONFIG_EXTS, '/', 'glob'); - $routes->import($confDir.'/{routes}'.self::CONFIG_EXTS, '/', 'glob'); + if (is_file(\dirname(__DIR__).'/config/routes.yaml')) { + $routes->import('../config/routes.yaml'); + } elseif (is_file($path = \dirname(__DIR__).'/config/routes.php')) { + (require $path)($routes->withPath($path), $this); + } } } diff --git a/src/Repository/.gitignore b/src/Repository/.gitignore old mode 100755 new mode 100644 diff --git a/src/Repository/PollRepository.php b/src/Repository/PollRepository.php index 6762cad..d090fa5 100755 --- a/src/Repository/PollRepository.php +++ b/src/Repository/PollRepository.php @@ -4,7 +4,8 @@ namespace App\Repository; use App\Entity\Poll; use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository; -use Doctrine\Common\Persistence\ManagerRegistry; +use Doctrine\Persistence\ManagerRegistry; +use MongoDB\Driver\Manager; /** * @method Poll|null find($id, $lockMode = null, $lockVersion = null) @@ -14,7 +15,8 @@ use Doctrine\Common\Persistence\ManagerRegistry; */ class PollRepository extends ServiceEntityRepository { - public function __construct(ManagerRegistry $registry) + public function __construct(ManagerRegistry + $registry) { parent::__construct($registry, Poll::class); } diff --git a/symfony.lock b/symfony.lock old mode 100755 new mode 100644 index 7923095..d874e2e --- a/symfony.lock +++ b/symfony.lock @@ -8,96 +8,85 @@ "repo": "github.com/symfony/recipes", "branch": "master", "version": "1.0", - "ref": "cb4152ebcadbe620ea2261da1a1c5a9b8cea7672" + "ref": "a2759dd6123694c8d901d0ec80006e044c2e6457" }, "files": [ "config/routes/annotations.yaml" ] }, "doctrine/cache": { - "version": "v1.8.0" + "version": "1.10.2" }, "doctrine/collections": { - "version": "v1.6.2" + "version": "1.6.7" }, "doctrine/common": { - "version": "v2.11.0" - }, - "doctrine/data-fixtures": { - "version": "v1.3.2" + "version": "3.1.2" }, "doctrine/dbal": { - "version": "v2.9.2" + "version": "2.13.0" + }, + "doctrine/deprecations": { + "version": "v0.5.3" }, "doctrine/doctrine-bundle": { - "version": "1.6", + "version": "2.3", "recipe": { "repo": "github.com/symfony/recipes", "branch": "master", - "version": "1.6", - "ref": "05802762c395b1e9f0f2645ebbd6128a87942f09" + "version": "2.3", + "ref": "9777bf185961283a450b6237281132935025fe04" }, "files": [ "config/packages/doctrine.yaml", "config/packages/prod/doctrine.yaml", + "config/packages/test/doctrine.yaml", "src/Entity/.gitignore", "src/Repository/.gitignore" ] }, - "doctrine/doctrine-fixtures-bundle": { - "version": "3.0", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "3.0", - "ref": "fc52d86631a6dfd9fdf3381d0b7e3df2069e51b3" - }, - "files": [ - "src/DataFixtures/AppFixtures.php" - ] - }, "doctrine/doctrine-migrations-bundle": { - "version": "1.2", + "version": "3.1", "recipe": { "repo": "github.com/symfony/recipes", "branch": "master", - "version": "1.2", - "ref": "c1431086fec31f17fbcfe6d6d7e92059458facc1" + "version": "3.1", + "ref": "ee609429c9ee23e22d6fa5728211768f51ed2818" }, "files": [ "config/packages/doctrine_migrations.yaml", - "src/Migrations/.gitignore" + "migrations/.gitignore" ] }, "doctrine/event-manager": { - "version": "v1.0.0" - }, - "doctrine/inflector": { - "version": "v1.3.0" - }, - "doctrine/instantiator": { - "version": "1.2.0" - }, - "doctrine/lexer": { - "version": "1.1.0" - }, - "doctrine/migrations": { - "version": "2.1.1" - }, - "doctrine/orm": { - "version": "v2.6.4" - }, - "doctrine/persistence": { "version": "1.1.1" }, - "doctrine/reflection": { - "version": "v1.0.0" + "doctrine/inflector": { + "version": "2.0.3" + }, + "doctrine/instantiator": { + "version": "1.4.0" + }, + "doctrine/lexer": { + "version": "1.2.1" + }, + "doctrine/migrations": { + "version": "3.1.1" + }, + "doctrine/orm": { + "version": "2.8.4" + }, + "doctrine/persistence": { + "version": "2.1.0" }, "doctrine/sql-formatter": { "version": "1.1.1" }, "egulias/email-validator": { - "version": "2.1.15" + "version": "3.1.1" + }, + "friendsofphp/proxy-manager-lts": { + "version": "v1.0.3" }, "friendsofsymfony/rest-bundle": { "version": "2.2", @@ -112,10 +101,10 @@ ] }, "jms/metadata": { - "version": "2.1.0" + "version": "2.5.0" }, "jms/serializer": { - "version": "3.3.0" + "version": "3.12.2" }, "jms/serializer-bundle": { "version": "3.0", @@ -132,85 +121,31 @@ ] }, "laminas/laminas-code": { - "version": "3.4.1" + "version": "4.1.0" }, "laminas/laminas-eventmanager": { - "version": "3.3.0" + "version": "3.3.1" }, "laminas/laminas-zendframework-bridge": { - "version": "1.1.1" - }, - "liip/test-fixtures-bundle": { - "version": "1.8.0" - }, - "nelmio/api-doc-bundle": { - "version": "3.0", - "recipe": { - "repo": "github.com/symfony/recipes-contrib", - "branch": "master", - "version": "3.0", - "ref": "c8e0c38e1a280ab9e37587a8fa32b251d5bc1c94" - }, - "files": [ - "config/packages/nelmio_api_doc.yaml", - "config/routes/nelmio_api_doc.yaml" - ] - }, - "nelmio/cors-bundle": { - "version": "1.5", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "1.5", - "ref": "6388de23860284db9acce0a7a5d9d13153bcb571" - }, - "files": [ - "config/packages/nelmio_cors.yaml" - ] + "version": "1.2.0" }, "nikic/php-parser": { - "version": "v4.2.4" + "version": "v4.10.4" }, - "ocramius/package-versions": { - "version": "1.4.0" - }, - "ocramius/proxy-manager": { - "version": "2.2.3" - }, - "overblog/graphql-bundle": { - "version": "0.12", - "recipe": { - "repo": "github.com/symfony/recipes-contrib", - "branch": "master", - "version": "0.12", - "ref": "c01dcfb85a6e93f1a43ef36151fcff11cf17f791" - }, - "files": [ - "config/graphql/types/.gitignore", - "config/packages/graphql.yaml", - "config/routes/graphql.yaml" - ] - }, - "php": { - "version": "7.4" - }, - "phpdocumentor/reflection-common": { - "version": "2.0.0" - }, - "phpdocumentor/reflection-docblock": { - "version": "4.3.2" - }, - "phpdocumentor/type-resolver": { - "version": "1.0.1" + "phpstan/phpdoc-parser": { + "version": "0.4.14" }, "psr/cache": { - "version": "1.0.1" + "version": "2.0.0" }, "psr/container": { + "version": "1.1.1" + }, + "psr/event-dispatcher": { "version": "1.0.0" }, "psr/log": { - "version": "1.1.0" + "version": "1.1.3" }, "sensio/framework-extra-bundle": { "version": "5.2", @@ -225,68 +160,58 @@ ] }, "swiftmailer/swiftmailer": { - "version": "v6.2.3" + "version": "v6.2.7" }, "symfony/asset": { - "version": "v4.3.11" - }, - "symfony/browser-kit": { - "version": "v4.3.11" + "version": "v5.2.4" }, "symfony/cache": { - "version": "v4.3.5" + "version": "v5.2.6" }, "symfony/cache-contracts": { - "version": "v1.1.7" + "version": "2.4-dev" }, "symfony/config": { - "version": "v4.3.5" + "version": "v5.2.4" }, "symfony/console": { - "version": "3.3", + "version": "5.1", "recipe": { "repo": "github.com/symfony/recipes", "branch": "master", - "version": "3.3", - "ref": "482d233eb8de91ebd042992077bbd5838858890c" + "version": "5.1", + "ref": "c6d02bdfba9da13c22157520e32a602dbee8a75c" }, "files": [ - "bin/console", - "config/bootstrap.php" + "bin/console" ] }, - "symfony/debug": { - "version": "v4.3.5" - }, "symfony/dependency-injection": { - "version": "v4.3.5" + "version": "v5.2.6" }, "symfony/deprecation-contracts": { "version": "v2.2.0" }, "symfony/doctrine-bridge": { - "version": "v4.3.5" - }, - "symfony/dom-crawler": { - "version": "v4.3.11" + "version": "v5.2.6" }, "symfony/dotenv": { - "version": "v4.3.5" + "version": "v5.2.4" + }, + "symfony/error-handler": { + "version": "v5.2.6" }, "symfony/event-dispatcher": { - "version": "v4.3.5" + "version": "v5.2.4" }, "symfony/event-dispatcher-contracts": { - "version": "v1.1.7" - }, - "symfony/expression-language": { - "version": "v4.3.11" + "version": "v2.2.0" }, "symfony/filesystem": { - "version": "v4.3.5" + "version": "v5.2.6" }, "symfony/finder": { - "version": "v4.3.5" + "version": "v5.2.4" }, "symfony/flex": { "version": "1.0", @@ -294,57 +219,46 @@ "repo": "github.com/symfony/recipes", "branch": "master", "version": "1.0", - "ref": "19fa03bacd9a6619583d1e4939da4388df22984d" + "ref": "c0eeb50665f0f77226616b6038a9b06c03752d8e" }, "files": [ ".env" ] }, "symfony/form": { - "version": "v4.3.5" + "version": "v5.2.6" }, "symfony/framework-bundle": { - "version": "4.2", + "version": "5.2", "recipe": { "repo": "github.com/symfony/recipes", "branch": "master", - "version": "4.2", - "ref": "61ad963f28c091b8bb9449507654b9c7d8bbb53c" + "version": "5.2", + "ref": "6ec87563dcc85cd0c48856dcfbfc29610506d250" }, "files": [ - "config/bootstrap.php", "config/packages/cache.yaml", "config/packages/framework.yaml", "config/packages/test/framework.yaml", + "config/preload.php", + "config/routes/dev/framework.yaml", "config/services.yaml", "public/index.php", "src/Controller/.gitignore", "src/Kernel.php" ] }, + "symfony/http-client-contracts": { + "version": "v2.3.1" + }, "symfony/http-foundation": { - "version": "v4.3.5" + "version": "v5.2.4" }, "symfony/http-kernel": { - "version": "v4.3.5" - }, - "symfony/inflector": { - "version": "v4.3.5" + "version": "v5.2.6" }, "symfony/intl": { - "version": "v4.3.5" - }, - "symfony/mailer": { - "version": "4.3", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "4.3", - "ref": "15658c2a0176cda2e7dba66276a2030b52bd81b2" - }, - "files": [ - "config/packages/mailer.yaml" - ] + "version": "v5.2.4" }, "symfony/maker-bundle": { "version": "1.0", @@ -355,64 +269,49 @@ "ref": "fadbfe33303a76e25cb63401050439aa9b1a9c7f" } }, - "symfony/mime": { - "version": "v4.3.5" - }, "symfony/options-resolver": { - "version": "v4.3.5" + "version": "v5.2.4" }, "symfony/orm-pack": { - "version": "v1.0.7" + "version": "v2.1.0" }, - "symfony/phpunit-bridge": { - "version": "4.3", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "4.3", - "ref": "6d0e35f749d5f4bfe1f011762875275cd3f9874f" - }, - "files": [ - ".env.test", - "bin/phpunit", - "phpunit.xml.dist", - "tests/bootstrap.php" - ] + "symfony/polyfill-intl-grapheme": { + "version": "v1.22.1" }, "symfony/polyfill-intl-icu": { - "version": "v1.12.0" + "version": "v1.22.1" }, "symfony/polyfill-intl-idn": { - "version": "v1.12.0" + "version": "v1.22.1" }, "symfony/polyfill-intl-normalizer": { - "version": "v1.20.0" + "version": "v1.22.1" }, "symfony/polyfill-mbstring": { - "version": "v1.12.0" - }, - "symfony/polyfill-php72": { - "version": "v1.12.0" + "version": "v1.22.1" }, "symfony/polyfill-php73": { - "version": "v1.12.0" + "version": "v1.22.1" }, - "symfony/process": { - "version": "v4.3.6" + "symfony/polyfill-php80": { + "version": "v1.22.1" }, "symfony/property-access": { - "version": "v4.3.5" + "version": "v5.2.4" }, "symfony/property-info": { - "version": "v4.3.6" + "version": "v5.2.4" + }, + "symfony/proxy-manager-bridge": { + "version": "v5.2.4" }, "symfony/routing": { - "version": "4.2", + "version": "5.1", "recipe": { "repo": "github.com/symfony/recipes", "branch": "master", - "version": "4.2", - "ref": "683dcb08707ba8d41b7e34adb0344bfd68d248a7" + "version": "5.1", + "ref": "b4f3e7c95e38b606eef467e8a42a8408fc460c43" }, "files": [ "config/packages/prod/routing.yaml", @@ -421,16 +320,16 @@ ] }, "symfony/security-core": { - "version": "v4.3.5" - }, - "symfony/security-csrf": { - "version": "v4.3.11" + "version": "v5.2.6" }, "symfony/service-contracts": { - "version": "v1.1.7" + "version": "v2.2.0" }, "symfony/stopwatch": { - "version": "v4.3.5" + "version": "v5.2.4" + }, + "symfony/string": { + "version": "v5.2.6" }, "symfony/swiftmailer-bundle": { "version": "2.5", @@ -447,98 +346,41 @@ ] }, "symfony/translation-contracts": { - "version": "v1.1.7" + "version": "v2.3.0" }, "symfony/twig-bridge": { - "version": "v4.3.10" + "version": "v5.2.6" }, "symfony/twig-bundle": { - "version": "3.3", + "version": "5.0", "recipe": { "repo": "github.com/symfony/recipes", "branch": "master", - "version": "3.3", - "ref": "1da1987340b5ba64b16383906d678b989e3d096e" + "version": "5.0", + "ref": "fab9149bbaa4d5eca054ed93f9e1b66cc500895d" }, "files": [ "config/packages/test/twig.yaml", "config/packages/twig.yaml", - "config/routes/dev/twig.yaml", "templates/base.html.twig" ] }, - "symfony/validator": { - "version": "4.3", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "4.3", - "ref": "d902da3e4952f18d3bf05aab29512eb61cabd869" - }, - "files": [ - "config/packages/test/validator.yaml", - "config/packages/validator.yaml" - ] + "symfony/var-dumper": { + "version": "v5.2.6" }, "symfony/var-exporter": { - "version": "v4.3.5" - }, - "symfony/web-server-bundle": { - "version": "3.3", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "3.3", - "ref": "dae9b39fd6717970be7601101ce5aa960bf53d9a" - } - }, - "symfony/webpack-encore-bundle": { - "version": "1.6", - "recipe": { - "repo": "github.com/symfony/recipes", - "branch": "master", - "version": "1.6", - "ref": "69e1d805ad95964088bd510c05995e87dc391564" - }, - "files": [ - "assets/app.js", - "assets/styles/app.css", - "config/packages/assets.yaml", - "config/packages/prod/webpack_encore.yaml", - "config/packages/test/webpack_encore.yaml", - "config/packages/webpack_encore.yaml", - "package.json", - "webpack.config.js" - ] + "version": "v5.2.4" }, "symfony/yaml": { - "version": "v4.3.5" + "version": "v5.2.5" }, "twig/twig": { - "version": "v2.12.3" - }, - "webimpress/safe-writer": { - "version": "2.1.0" - }, - "webmozart/assert": { - "version": "1.5.0" - }, - "webonyx/graphql-php": { - "version": "v0.13.9" + "version": "v3.3.0" }, "willdurand/jsonp-callback-validator": { "version": "v1.1.0" }, "willdurand/negotiation": { - "version": "v2.3.1" - }, - "zendframework/zend-code": { - "version": "3.4.0" - }, - "zendframework/zend-eventmanager": { - "version": "3.2.1" - }, - "zircote/swagger-php": { - "version": "2.0.14" + "version": "3.0.0" } } diff --git a/templates/admin/index.html.twig b/templates/admin/index.html.twig new file mode 100644 index 0000000..2787881 --- /dev/null +++ b/templates/admin/index.html.twig @@ -0,0 +1,20 @@ +{% extends 'base.html.twig' %} + +{% block title %}Hello AdminController!{% endblock %} + +{% block body %} + + +
+

Hello {{ controller_name }}! ✅

+ + This friendly message is coming from: + +
+{% endblock %} diff --git a/templates/default/index.html.twig b/templates/default/index.html.twig new file mode 100644 index 0000000..28ad699 --- /dev/null +++ b/templates/default/index.html.twig @@ -0,0 +1,20 @@ +{% extends 'base.html.twig' %} + +{% block title %}Hello DefaultController!{% endblock %} + +{% block body %} + + +
+

Hello {{ controller_name }}! ✅

+ + This friendly message is coming from: + +
+{% endblock %} diff --git a/templates/migration/index.html.twig b/templates/migration/index.html.twig new file mode 100644 index 0000000..388c189 --- /dev/null +++ b/templates/migration/index.html.twig @@ -0,0 +1,20 @@ +{% extends 'base.html.twig' %} + +{% block title %}Hello MigrationController!{% endblock %} + +{% block body %} + + +
+

Hello {{ controller_name }}! ✅

+ + This friendly message is coming from: + +
+{% endblock %} diff --git a/templates/owner/index.html.twig b/templates/owner/index.html.twig new file mode 100644 index 0000000..42b0a54 --- /dev/null +++ b/templates/owner/index.html.twig @@ -0,0 +1,20 @@ +{% extends 'base.html.twig' %} + +{% block title %}Hello OwnerController!{% endblock %} + +{% block body %} + + +
+

Hello {{ controller_name }}! ✅

+ + This friendly message is coming from: + +
+{% endblock %} diff --git a/templates/pages/funky.html.twig b/templates/pages/funky.html.twig new file mode 100644 index 0000000..af88fcf --- /dev/null +++ b/templates/pages/funky.html.twig @@ -0,0 +1,14 @@ +{% extends 'base.html.twig' %} +{% block outerBody %} + +

Bienvenue à la maison!

+
+ + + + + + + +
+{% endblock %} diff --git a/templates/pages/migration.html.twig b/templates/pages/migration.html.twig new file mode 100644 index 0000000..9a6f2c9 --- /dev/null +++ b/templates/pages/migration.html.twig @@ -0,0 +1,82 @@ +{% extends 'base.html.twig' %} +{% block title %}migration depuis un Framadate version 1{% endblock %} +{% block body %} + +
+ +

🍰 Migration des sondages depuis un Framadate version 1

+
+ Depuis la base de données + {{ OLD_DATABASE_NAME }} + + avec l'utilisateur + {{ OLD_DATABASE_USER }} + vers la base symfony locale, telle que configurée dans le fichier .env . +
+
+ + 🎉 Ont été migrés: +
    +
  • + 🎈 Sondages: {{ counters.polls }} +
  • +
  • + 🍾 stacks of vote: {{ counters.polls }} +
  • +
  • + 🧁 slots : {{ counters.choices }} +
  • +
  • + 🍰 votes : {{ counters.votes }} +
  • +
  • + ☕ comments : {{ counters.comments }} +
  • + +
+
+
+
+ + Debug: +
+ {{ debug | nl2br}} +
+ +
+ + +{% endblock %} diff --git a/templates/vote/index.html.twig b/templates/vote/index.html.twig new file mode 100644 index 0000000..472772d --- /dev/null +++ b/templates/vote/index.html.twig @@ -0,0 +1,20 @@ +{% extends 'base.html.twig' %} + +{% block title %}Hello VoteController!{% endblock %} + +{% block body %} + + +
+

Hello {{ controller_name }}! ✅

+ + This friendly message is coming from: + +
+{% endblock %} diff --git a/webpack.config.js b/webpack.config.js deleted file mode 100644 index 63764c7..0000000 --- a/webpack.config.js +++ /dev/null @@ -1,74 +0,0 @@ -var Encore = require('@symfony/webpack-encore'); - -// Manually configure the runtime environment if not already configured yet by the "encore" command. -// It's useful when you use tools that rely on webpack.config.js file. -if (!Encore.isRuntimeEnvironmentConfigured()) { - Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev'); -} - -Encore - // directory where compiled assets will be stored - .setOutputPath('public/build/') - // public path used by the web server to access the output path - .setPublicPath('/build') - // only needed for CDN's or sub-directory deploy - //.setManifestKeyPrefix('build/') - - /* - * ENTRY CONFIG - * - * Add 1 entry for each "page" of your app - * (including one that's included on every page - e.g. "app") - * - * Each entry will result in one JavaScript file (e.g. app.js) - * and one CSS file (e.g. app.css) if your JavaScript imports CSS. - */ - .addEntry('app', './assets/app.js') - //.addEntry('page1', './assets/page1.js') - //.addEntry('page2', './assets/page2.js') - - // When enabled, Webpack "splits" your files into smaller pieces for greater optimization. - .splitEntryChunks() - - // will require an extra script tag for runtime.js - // but, you probably want this, unless you're building a single-page app - .enableSingleRuntimeChunk() - - /* - * FEATURE CONFIG - * - * Enable & configure other features below. For a full - * list of features, see: - * https://symfony.com/doc/current/frontend.html#adding-more-features - */ - .cleanupOutputBeforeBuild() - .enableBuildNotifications() - .enableSourceMaps(!Encore.isProduction()) - // enables hashed filenames (e.g. app.abc123.css) - .enableVersioning(Encore.isProduction()) - - // enables @babel/preset-env polyfills - .configureBabelPresetEnv((config) => { - config.useBuiltIns = 'usage'; - config.corejs = 3; - }) - - // enables Sass/SCSS support - .enableSassLoader() - - // uncomment if you use TypeScript - //.enableTypeScriptLoader() - - // uncomment to get integrity="..." attributes on your script & link tags - // requires WebpackEncoreBundle 1.4 or higher - .enableIntegrityHashes(Encore.isProduction()) - - // uncomment if you're having problems with a jQuery plugin - //.autoProvidejQuery() - - // uncomment if you use API Platform Admin (composer req api-admin) - //.enableReactPreset() - //.addEntry('admin', './assets/admin.js') -; - -module.exports = Encore.getWebpackConfig();