summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2020-10-28 13:51:49 +0100
committerRemi Collet <remi@remirepo.net>2020-10-28 13:51:49 +0100
commit736966f098df9dde618fe8c0cbb6fdd9d6724806 (patch)
tree221331f088742e183f9175ee29a427df5e0f1964
duplicate v4HEADmaster
-rw-r--r--.gitignore8
-rw-r--r--Makefile4
-rw-r--r--composer.json167
-rw-r--r--php-symfony4-autoload.patch17
-rwxr-xr-xphp-symfony4-generate-autoloaders.php715
-rw-r--r--php-symfony5.spec3597
-rw-r--r--src/Symfony/Bridge/Doctrine/composer.json74
-rw-r--r--src/Symfony/Bridge/Monolog/composer.json46
-rw-r--r--src/Symfony/Bridge/PhpUnit/composer.json46
-rw-r--r--src/Symfony/Bridge/ProxyManager/composer.json37
-rw-r--r--src/Symfony/Bridge/Twig/composer.json82
-rw-r--r--src/Symfony/Bundle/DebugBundle/composer.json45
-rw-r--r--src/Symfony/Bundle/FrameworkBundle/composer.json110
-rw-r--r--src/Symfony/Bundle/SecurityBundle/composer.json62
-rw-r--r--src/Symfony/Bundle/TwigBundle/composer.json54
-rw-r--r--src/Symfony/Bundle/WebProfilerBundle/composer.json45
-rw-r--r--src/Symfony/Bundle/WebServerBundle/Tests/DependencyInjection/composer.json6
-rw-r--r--src/Symfony/Bundle/WebServerBundle/composer.json38
-rw-r--r--src/Symfony/Component/Asset/composer.json35
-rw-r--r--src/Symfony/Component/BrowserKit/composer.json38
-rw-r--r--src/Symfony/Component/Cache/composer.json55
-rw-r--r--src/Symfony/Component/Config/composer.json43
-rw-r--r--src/Symfony/Component/Console/composer.json56
-rw-r--r--src/Symfony/Component/CssSelector/composer.json32
-rw-r--r--src/Symfony/Component/Debug/composer.json36
-rw-r--r--src/Symfony/Component/DependencyInjection/composer.json52
-rw-r--r--src/Symfony/Component/DomCrawler/composer.json40
-rw-r--r--src/Symfony/Component/Dotenv/composer.json31
-rw-r--r--src/Symfony/Component/ErrorHandler/composer.json36
-rw-r--r--src/Symfony/Component/EventDispatcher/composer.json50
-rw-r--r--src/Symfony/Component/ExpressionLanguage/composer.json30
-rw-r--r--src/Symfony/Component/Filesystem/composer.json29
-rw-r--r--src/Symfony/Component/Finder/composer.json28
-rw-r--r--src/Symfony/Component/Form/composer.json64
-rw-r--r--src/Symfony/Component/HttpClient/composer.json46
-rw-r--r--src/Symfony/Component/HttpFoundation/composer.json34
-rw-r--r--src/Symfony/Component/HttpKernel/composer.json71
-rw-r--r--src/Symfony/Component/Inflector/composer.json36
-rw-r--r--src/Symfony/Component/Intl/composer.json44
-rw-r--r--src/Symfony/Component/Ldap/composer.json36
-rw-r--r--src/Symfony/Component/Lock/composer.json36
-rw-r--r--src/Symfony/Component/Mailer/Bridge/Amazon/composer.json32
-rw-r--r--src/Symfony/Component/Mailer/Bridge/Google/composer.json32
-rw-r--r--src/Symfony/Component/Mailer/Bridge/Mailchimp/composer.json32
-rw-r--r--src/Symfony/Component/Mailer/Bridge/Mailgun/composer.json32
-rw-r--r--src/Symfony/Component/Mailer/Bridge/Postmark/composer.json32
-rw-r--r--src/Symfony/Component/Mailer/Bridge/Sendgrid/composer.json32
-rw-r--r--src/Symfony/Component/Mailer/composer.json47
-rw-r--r--src/Symfony/Component/Messenger/composer.json54
-rw-r--r--src/Symfony/Component/Mime/composer.json37
-rw-r--r--src/Symfony/Component/OptionsResolver/composer.json28
-rw-r--r--src/Symfony/Component/Process/composer.json28
-rw-r--r--src/Symfony/Component/PropertyAccess/composer.json35
-rw-r--r--src/Symfony/Component/PropertyInfo/composer.json54
-rw-r--r--src/Symfony/Component/Routing/composer.json49
-rw-r--r--src/Symfony/Component/Security/Core/composer.json52
-rw-r--r--src/Symfony/Component/Security/Csrf/composer.json38
-rw-r--r--src/Symfony/Component/Security/Guard/composer.json33
-rw-r--r--src/Symfony/Component/Security/Http/composer.json45
-rw-r--r--src/Symfony/Component/Security/composer.json65
-rw-r--r--src/Symfony/Component/Serializer/composer.json61
-rw-r--r--src/Symfony/Component/Stopwatch/composer.json29
-rw-r--r--src/Symfony/Component/Templating/composer.json35
-rw-r--r--src/Symfony/Component/Translation/composer.json55
-rw-r--r--src/Symfony/Component/Validator/composer.json72
-rw-r--r--src/Symfony/Component/VarDumper/composer.json50
-rw-r--r--src/Symfony/Component/VarExporter/composer.json31
-rw-r--r--src/Symfony/Component/WebLink/composer.json43
-rw-r--r--src/Symfony/Component/Workflow/composer.json42
-rw-r--r--src/Symfony/Component/Yaml/composer.json38
-rw-r--r--src/Symfony/Contracts/Cache/composer.json41
-rw-r--r--src/Symfony/Contracts/EventDispatcher/composer.json41
-rw-r--r--src/Symfony/Contracts/HttpClient/composer.json40
-rw-r--r--src/Symfony/Contracts/Service/composer.json41
-rw-r--r--src/Symfony/Contracts/Translation/composer.json40
-rw-r--r--src/Symfony/Contracts/composer.json54
76 files changed, 7581 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..fc9aa8c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+clog
+package-*.xml
+*.tgz
+*.tar.gz
+*.tar.xz
+*.tar.xz.asc
+*.src.rpm
+*/*rpm
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..13af741
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,4 @@
+SRCDIR := $(shell pwd)
+NAME := $(shell basename $(SRCDIR))
+include ../../../common/Makefile
+
diff --git a/composer.json b/composer.json
new file mode 100644
index 0000000..4ae6826
--- /dev/null
+++ b/composer.json
@@ -0,0 +1,167 @@
+{
+ "name": "symfony/symfony",
+ "type": "library",
+ "description": "The Symfony PHP framework",
+ "keywords": ["framework"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "ext-xml": "*",
+ "doctrine/event-manager": "~1.0",
+ "doctrine/persistence": "^1.3|^2",
+ "twig/twig": "^1.41|^2.10|^3.0",
+ "psr/cache": "~1.0",
+ "psr/container": "^1.0",
+ "psr/link": "^1.0",
+ "psr/log": "~1.0",
+ "symfony/contracts": "^1.1.8",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-intl-icu": "~1.0",
+ "symfony/polyfill-intl-idn": "^1.10",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-php72": "~1.5",
+ "symfony/polyfill-php73": "^1.11",
+ "symfony/polyfill-php80": "^1.15"
+ },
+ "replace": {
+ "symfony/asset": "self.version",
+ "symfony/amazon-mailer": "self.version",
+ "symfony/browser-kit": "self.version",
+ "symfony/cache": "self.version",
+ "symfony/config": "self.version",
+ "symfony/console": "self.version",
+ "symfony/css-selector": "self.version",
+ "symfony/dependency-injection": "self.version",
+ "symfony/debug": "self.version",
+ "symfony/debug-bundle": "self.version",
+ "symfony/doctrine-bridge": "self.version",
+ "symfony/dom-crawler": "self.version",
+ "symfony/dotenv": "self.version",
+ "symfony/error-handler": "self.version",
+ "symfony/event-dispatcher": "self.version",
+ "symfony/expression-language": "self.version",
+ "symfony/filesystem": "self.version",
+ "symfony/finder": "self.version",
+ "symfony/form": "self.version",
+ "symfony/framework-bundle": "self.version",
+ "symfony/google-mailer": "self.version",
+ "symfony/http-client": "self.version",
+ "symfony/http-foundation": "self.version",
+ "symfony/http-kernel": "self.version",
+ "symfony/inflector": "self.version",
+ "symfony/intl": "self.version",
+ "symfony/ldap": "self.version",
+ "symfony/lock": "self.version",
+ "symfony/mailchimp-mailer": "self.version",
+ "symfony/mailer": "self.version",
+ "symfony/mailgun-mailer": "self.version",
+ "symfony/messenger": "self.version",
+ "symfony/mime": "self.version",
+ "symfony/monolog-bridge": "self.version",
+ "symfony/options-resolver": "self.version",
+ "symfony/postmark-mailer": "self.version",
+ "symfony/process": "self.version",
+ "symfony/property-access": "self.version",
+ "symfony/property-info": "self.version",
+ "symfony/proxy-manager-bridge": "self.version",
+ "symfony/routing": "self.version",
+ "symfony/security": "self.version",
+ "symfony/security-core": "self.version",
+ "symfony/security-csrf": "self.version",
+ "symfony/security-guard": "self.version",
+ "symfony/security-http": "self.version",
+ "symfony/security-bundle": "self.version",
+ "symfony/sendgrid-mailer": "self.version",
+ "symfony/serializer": "self.version",
+ "symfony/stopwatch": "self.version",
+ "symfony/templating": "self.version",
+ "symfony/translation": "self.version",
+ "symfony/twig-bridge": "self.version",
+ "symfony/twig-bundle": "self.version",
+ "symfony/validator": "self.version",
+ "symfony/var-dumper": "self.version",
+ "symfony/var-exporter": "self.version",
+ "symfony/web-link": "self.version",
+ "symfony/web-profiler-bundle": "self.version",
+ "symfony/web-server-bundle": "self.version",
+ "symfony/workflow": "self.version",
+ "symfony/yaml": "self.version"
+ },
+ "require-dev": {
+ "cache/integration-tests": "dev-master",
+ "composer/package-versions-deprecated": "^1.8",
+ "doctrine/annotations": "~1.0",
+ "doctrine/cache": "~1.6",
+ "doctrine/collections": "~1.0",
+ "doctrine/data-fixtures": "^1.1",
+ "doctrine/dbal": "~2.4|^3.0",
+ "doctrine/orm": "~2.4,>=2.4.5",
+ "doctrine/reflection": "~1.0",
+ "doctrine/doctrine-bundle": "^1.5|^2.0",
+ "guzzlehttp/promises": "^1.3.1",
+ "masterminds/html5": "^2.6",
+ "monolog/monolog": "^1.25.1",
+ "nyholm/psr7": "^1.0",
+ "ocramius/proxy-manager": "^2.1",
+ "paragonie/sodium_compat": "^1.8",
+ "php-http/httplug": "^1.0|^2.0",
+ "predis/predis": "~1.1",
+ "psr/http-client": "^1.0",
+ "psr/simple-cache": "^1.0",
+ "egulias/email-validator": "~1.2,>=1.2.8|~2.0",
+ "symfony/phpunit-bridge": "^5.2",
+ "symfony/security-acl": "~2.8|~3.0",
+ "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
+ "twig/cssinliner-extra": "^2.12",
+ "twig/inky-extra": "^2.12",
+ "twig/markdown-extra": "^2.12"
+ },
+ "conflict": {
+ "masterminds/html5": "<2.6",
+ "monolog/monolog": ">=2",
+ "phpdocumentor/reflection-docblock": "<3.0||>=3.2.0,<3.2.2",
+ "phpdocumentor/type-resolver": "<0.3.0",
+ "ocramius/proxy-manager": "<2.1",
+ "phpunit/phpunit": "<5.4.3"
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Bridge\\Doctrine\\": "src/Symfony/Bridge/Doctrine/",
+ "Symfony\\Bridge\\Monolog\\": "src/Symfony/Bridge/Monolog/",
+ "Symfony\\Bridge\\ProxyManager\\": "src/Symfony/Bridge/ProxyManager/",
+ "Symfony\\Bridge\\Twig\\": "src/Symfony/Bridge/Twig/",
+ "Symfony\\Bundle\\": "src/Symfony/Bundle/",
+ "Symfony\\Component\\": "src/Symfony/Component/"
+ },
+ "classmap": [
+ "src/Symfony/Component/Intl/Resources/stubs"
+ ],
+ "exclude-from-classmap": [
+ "**/Tests/"
+ ]
+ },
+ "autoload-dev": {
+ "files": [ "src/Symfony/Component/VarDumper/Resources/functions/dump.php" ]
+ },
+ "repositories": [
+ {
+ "type": "path",
+ "url": "src/Symfony/Contracts"
+ }
+ ],
+ "minimum-stability": "dev",
+ "extra": {
+ "branch-version": "4.4"
+ }
+}
diff --git a/php-symfony4-autoload.patch b/php-symfony4-autoload.patch
new file mode 100644
index 0000000..3b56f7d
--- /dev/null
+++ b/php-symfony4-autoload.patch
@@ -0,0 +1,17 @@
+diff -up ./src/Symfony/Component/VarDumper/Resources/bin/var-dump-server.old ./src/Symfony/Component/VarDumper/Resources/bin/var-dump-server
+--- ./src/Symfony/Component/VarDumper/Resources/bin/var-dump-server.old 2018-09-04 13:33:05.600027027 +0200
++++ ./src/Symfony/Component/VarDumper/Resources/bin/var-dump-server 2018-09-04 13:34:32.377481003 +0200
+@@ -31,11 +31,9 @@ function includeIfExists(string $file):
+ }
+
+ if (
+- !includeIfExists(__DIR__ . '/../../../../autoload.php') &&
+- !includeIfExists(__DIR__ . '/../../vendor/autoload.php') &&
+- !includeIfExists(__DIR__ . '/../../../../../../vendor/autoload.php')
++ !includeIfExists('/usr/share/php/Symfony4/autoload.php')
+ ) {
+- fwrite(STDERR, 'Install dependencies using Composer.'.PHP_EOL);
++ fwrite(STDERR, 'Install dependencies.'.PHP_EOL);
+ exit(1);
+ }
+
diff --git a/php-symfony4-generate-autoloaders.php b/php-symfony4-generate-autoloaders.php
new file mode 100755
index 0000000..d8f53ad
--- /dev/null
+++ b/php-symfony4-generate-autoloaders.php
@@ -0,0 +1,715 @@
+#!/usr/bin/env php
+<?php
+
+define('SYMFONY_SOURCE_DIR', __DIR__.'/src/Symfony');
+
+require_once '__PHPDIR__/Fedora/Autoloader/autoload.php';
+\Fedora\Autoloader\Autoload::addPsr4('Symfony\\', SYMFONY_SOURCE_DIR);
+
+use Symfony\Component\Finder\Finder;
+use Symfony\Component\Finder\SplFileInfo;
+use Symfony\Component\Process\Exception\ProcessFailedException;
+use Symfony\Component\Process\Process;
+
+$finder = new Finder();
+$finder
+ ->in(SYMFONY_SOURCE_DIR)
+ ->notPath('Tests')
+ ->name('composer.json')
+ ->sortByName();
+
+foreach ($finder as $composerFile) {
+ fprintf(STDERR, 'generating autoloader from %s'.PHP_EOL, $composerFile);
+ $autoloadGenerator = new AutoloadGenerator($composerFile);
+ echo $autoloadGenerator->getFilename().PHP_EOL;
+ echo $autoloadGenerator->getDevFilename().PHP_EOL;
+}
+
+
+//------------------------------------------------------------------------------
+
+
+final class AutoloadGenerator {
+ private static $pkgMap = [
+ 'cache/integration-tests' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Cache/IntegrationTests/autoload.php',
+ ],
+ 'composer/package-versions-deprecated' => false,
+ 'doctrine/annotations' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/Annotations/autoload.php',
+ ],
+ 'doctrine/cache' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/Cache/autoload.php',
+ ],
+ 'doctrine/collections' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/Collections/autoload.php',
+ ],
+ 'doctrine/common' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/autoload.php',
+ ],
+ 'doctrine/event-manager' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/EventManager/autoload.php',
+ ],
+ 'doctrine/persistence' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => [
+ 'Doctrine/Persistence2/autoload.php',
+ 'Doctrine/Common/Persistence/autoload.php',
+ ],
+ ],
+ 'doctrine/reflection' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/Reflection/autoload.php',
+ ],
+ 'doctrine/data-fixtures' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/Common/DataFixtures/autoload.php',
+ ],
+ 'doctrine/dbal' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ [
+ 'path' => 'Doctrine/DBAL3/autoload.php',
+ 'path' => 'Doctrine/DBAL/autoload.php',
+ ],
+ ],
+ 'doctrine/doctrine-bundle' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ [
+ 'path' => 'Doctrine/Bundle/DoctrineBundle2/autoload.php',
+ 'path' => 'Doctrine/Bundle/DoctrineBundle/autoload.php',
+ ],
+ ],
+ 'doctrine/orm' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Doctrine/ORM/autoload.php',
+ ],
+ 'egulias/email-validator' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Egulias/EmailValidator2/autoload.php',
+ ],
+ 'guzzlehttp/promises' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'GuzzleHttp/Promise/autoload.php',
+ ],
+ 'masterminds/html5' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Masterminds/HTML5/autoload.php',
+ ],
+ 'mongodb/mongodb' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'MongoDB/autoload.php',
+ ],
+ 'monolog/monolog' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Monolog/autoload.php',
+ ],
+ 'nyholm/psr7' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Nyholm/Psr7/autoload.php',
+ ],
+ 'ocramius/proxy-manager' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'ProxyManager/autoload.php',
+ ],
+ 'phpdocumentor/reflection-docblock' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => [
+ 'phpDocumentor/Reflection/DocBlock5/autoload.php',
+ 'phpDocumentor/Reflection/DocBlock4/autoload.php',
+ 'phpDocumentor/Reflection/DocBlock/autoload.php',
+ ],
+ ],
+ 'predis/predis' => false,
+ 'psr/cache-implementation' => false,
+ 'psr/container-implementation' => false,
+ 'psr/log-implementation' => false,
+ 'psr/cache' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Psr/Cache/autoload.php',
+ ],
+ 'psr/container' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Psr/Container/autoload.php',
+ ],
+ 'psr/http-client' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Psr/Http/Client/autoload.php',
+ ],
+ 'psr/link' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Psr/Link/autoload.php',
+ ],
+ 'psr/log' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Psr/Log/autoload.php',
+ ],
+ 'psr/simple-cache' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => 'Psr/SimpleCache/autoload.php',
+ ],
+ 'symfony/asset' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Asset/autoload.php',
+ ],
+ 'symfony/browser-kit' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/BrowserKit/autoload.php',
+ ],
+ 'symfony/cache' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Cache/autoload.php',
+ ],
+ 'symfony/class-loader' => false,
+ 'symfony/config' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Config/autoload.php',
+ ],
+ 'symfony/console' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Console/autoload.php',
+ ],
+ 'symfony/contracts' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Contracts/autoload.php',
+ ],
+ 'symfony/cache-contracts' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Contracts/autoload.php',
+ ],
+ 'symfony/event-dispatcher-contracts' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Contracts/autoload.php',
+ ],
+ 'symfony/http-client-contracts' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Contracts/autoload.php',
+ ],
+ 'symfony/service-contracts' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Contracts/autoload.php',
+ ],
+ 'symfony/translation-contracts' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Contracts/autoload.php',
+ ],
+ 'symfony/css-selector' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/CssSelector/autoload.php',
+ ],
+ 'symfony/debug-bundle' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bundle/DebugBundle/autoload.php',
+ ],
+ 'symfony/debug' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Debug/autoload.php',
+ ],
+ 'symfony/dependency-injection' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/DependencyInjection/autoload.php',
+ ],
+ 'symfony/doctrine-bridge' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bridge/Doctrine/autoload.php',
+ ],
+ 'symfony/dom-crawler' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/DomCrawler/autoload.php',
+ ],
+ 'symfony/dotenv' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Dotenv/autoload.php',
+ ],
+ 'symfony/error-handler' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/ErrorHandler/autoload.php',
+ ],
+ 'symfony/event-dispatcher' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/EventDispatcher/autoload.php',
+ ],
+ 'symfony/expression-language' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/ExpressionLanguage/autoload.php',
+ ],
+ 'symfony/filesystem' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Filesystem/autoload.php',
+ ],
+ 'symfony/finder' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Finder/autoload.php',
+ ],
+ 'symfony/form' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Form/autoload.php',
+ ],
+ 'symfony/framework-bundle' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bundle/FrameworkBundle/autoload.php',
+ ],
+ 'symfony/http-client' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/HttpClient/autoload.php',
+ ],
+ 'symfony/http-foundation' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/HttpFoundation/autoload.php',
+ ],
+ 'symfony/http-kernel' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/HttpKernel/autoload.php',
+ ],
+ 'symfony/inflector' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Inflector/autoload.php',
+ ],
+ 'symfony/intl' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Intl/autoload.php',
+ ],
+ 'symfony/ldap' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Ldap/autoload.php',
+ ],
+ 'symfony/lock' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Lock/autoload.php',
+ ],
+ 'symfony/mailer' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Mailer/autoload.php',
+ ],
+ 'symfony/amazon-mailer' => false,
+ 'symfony/google-mailer' => false,
+ 'symfony/mailgun-mailer' => false,
+ 'symfony/mailchimp-mailer' => false,
+ 'symfony/postmark-mailer' => false,
+ 'symfony/sendgrid-mailer' => false,
+ 'symfony/messenger' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Messenger/autoload.php',
+ ],
+ 'symfony/mime' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Mime/autoload.php',
+ ],
+ 'symfony/monolog-bridge' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Monolog/autoload.php',
+ ],
+ 'symfony/options-resolver' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/OptionsResolver/autoload.php',
+ ],
+ 'symfony/phpunit-bridge' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bridge/PhpUnit/autoload.php',
+ ],
+ 'symfony/polyfill-ctype' => false,
+ 'symfony/polyfill-intl-icu' => false,
+ 'symfony/polyfill-intl-idn' => false,
+ 'symfony/polyfill-mbstring' => false,
+ 'symfony/polyfill-php72' => (PHP_VERSION_ID < 70200)
+ ? [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Polyfill/autoload.php',
+ ]
+ : false,
+ 'symfony/polyfill-php73' => (PHP_VERSION_ID < 70300)
+ ? [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Polyfill/autoload.php',
+ ]
+ : false,
+ 'symfony/polyfill-php80' => (PHP_VERSION_ID < 80000)
+ ? [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Polyfill/autoload.php',
+ ]
+ : false,
+ 'symfony/process' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Process/autoload.php',
+ ],
+ 'symfony/property-access' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/PropertyAccess/autoload.php',
+ ],
+ 'symfony/property-info' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/PropertyInfo/autoload.php',
+ ],
+ 'symfony/proxy-manager-bridge' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bridge/ProxyManager/autoload.php',
+ ],
+ 'symfony/routing' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Routing/autoload.php',
+ ],
+ 'symfony/security-acl' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR', // external
+ 'path' => 'Symfony/Component/Security/Acl/autoload.php',
+ ],
+ 'symfony/security-bundle' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bundle/SecurityBundle/autoload.php',
+ ],
+ 'symfony/security-core' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Security/Core/autoload.php',
+ ],
+ 'symfony/security-csrf' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Security/Csrf/autoload.php',
+ ],
+ 'symfony/security-guard' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Security/Guard/autoload.php',
+ ],
+ 'symfony/security-http' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Security/Http/autoload.php',
+ ],
+ 'symfony/security' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Security/autoload.php',
+ ],
+ 'symfony/serializer' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Serializer/autoload.php',
+ ],
+ 'symfony/stopwatch' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Stopwatch/autoload.php',
+ ],
+ 'symfony/templating' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Templating/autoload.php',
+ ],
+ 'symfony/translation' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Translation/autoload.php',
+ ],
+ 'symfony/twig-bridge' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bridge/Twig/autoload.php',
+ ],
+ 'symfony/twig-bundle' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bundle/TwigBundle/autoload.php',
+ ],
+ 'symfony/validator' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Validator/autoload.php',
+ ],
+ 'symfony/var-dumper' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/VarDumper/autoload.php',
+ ],
+ 'symfony/var-exporter' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/VarExporter/autoload.php',
+ ],
+ 'symfony/web-link' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/WebLink/autoload.php',
+ ],
+ 'symfony/web-profiler-bundle' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Bundle/WebProfilerBundle/autoload.php',
+ ],
+ 'symfony/workflow' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Workflow/autoload.php',
+ ],
+ 'symfony/yaml' => [
+ 'prefix' => 'FEDORA_SYMFONY4_DIR',
+ 'path' => 'Component/Yaml/autoload.php',
+ ],
+ 'twig/twig' => [
+ 'prefix' => 'FEDORA_SYMFONY4_PHP_DIR',
+ 'path' => [
+ 'Twig3/autoload.php',
+ 'Twig2/autoload.php',
+ 'Twig/autoload.php',
+ ],
+ ],
+ 'enqueue/messenger-adapter' => false,
+ # require-dev only, ignored for now
+ 'paragonie/sodium_compat' => false,
+ 'php-http/httplug' => false,
+ 'twig/cssinliner-extra' => false,
+ 'twig/inky-extra' => false,
+ 'twig/markdown-extra' => false,
+ ];
+
+ private $filename = null;
+
+ private $devFilename = null;
+
+ public function __construct(SplFileInfo $composerFile) {
+ $composerPath = $composerFile->getPath();
+ $composerJson = static::composerJson($composerFile);
+
+ // autoload.php
+ $content = static::content(
+ $composerPath,
+ $composerJson['name'],
+ isset($composerJson['autoload']['psr-0']) ? $composerJson['autoload']['psr-0'] : [],
+ isset($composerJson['autoload']['psr-4']) ? $composerJson['autoload']['psr-4'] : [],
+ isset($composerJson['autoload']['files']) ? $composerJson['autoload']['files'] : [],
+ isset($composerJson['autoload']['classmap']) ? $composerJson['autoload']['classmap'] : [],
+ static::dependencyAutoloaders($composerJson, 'require'),
+ static::dependencyAutoloaders($composerJson, 'suggest')
+ );
+ $this->filename = $composerFile->getPath() . '/autoload.php';
+ if (FALSE == file_put_contents($this->filename, $content)) {
+ throw new Exception(sprintf(
+ 'Failed to generate autoload file "%s"',
+ $this->filename
+ ));
+ }
+
+ // autoload-dev.php
+ $content = static::content(
+ $composerPath,
+ $composerJson['name'],
+ [],
+ [],
+ [],
+ [],
+ static::dependencyAutoloaders($composerJson, 'require-dev'),
+ [],
+ true
+ );
+ $this->devFilename = $composerFile->getPath() . '/autoload-dev.php';
+ if (FALSE == file_put_contents($this->devFilename, $content)) {
+ throw new Exception(sprintf(
+ 'Failed to generate autoload file "%s"',
+ $this->filename
+ ));
+ }
+ }
+
+ private static function composerJson(SplFileInfo $composerFile) {
+ $composerJson = json_decode(
+ file_get_contents($composerFile->getPathname()),
+ true
+ );
+
+ if (!isset($composerJson)) {
+ throw new \Exception(sprintf(
+ 'Failed to JSON decode "%s"',
+ $composerFile->getPathname()
+ ));
+ }
+
+ return $composerJson;
+ }
+
+ private static function dependencyAutoloaders($composerJson, $composerKey) {
+ $dependencyAutoloaders = [];
+
+ if (isset($composerJson[$composerKey])) {
+ $dependencies = array_keys(array_filter(
+ $composerJson[$composerKey],
+ function ($pkg) {
+ return preg_match('#[^/]+/[^/]+#', $pkg);
+ },
+ ARRAY_FILTER_USE_KEY
+ ));
+
+ foreach ($dependencies as $pkg) {
+ // Use Symfony cache component as PSR cache implementation
+ // for "require-dev" dependency.
+ if (
+ ('require-dev' == $composerKey)
+ && ('psr/cache-implementation' == $pkg)
+ ) {
+ $pkg = 'symfony/cache';
+ }
+
+ if ($autoloader = self::pkg2Autoload($pkg)) {
+ $dependencyAutoloaders[] = $autoloader;
+ }
+ }
+
+ ksort($dependencyAutoloaders);
+ }
+
+ return $dependencyAutoloaders;
+ }
+
+ private static function pkg2Autoload ($pkg) {
+ if (!isset(self::$pkgMap[$pkg])) {
+ throw new Exception(sprintf('No autoload map found for pkg "%s"', $pkg));
+ } elseif (empty(self::$pkgMap[$pkg])) {
+ return null;
+ }
+
+ $map = self::$pkgMap[$pkg];
+ $prefix = $map['prefix'];
+ $path = $map['path'];
+
+ return is_array($path)
+ ? sprintf('[%s]', implode(', ', array_map(function ($map_path) use ($prefix) {
+ return sprintf("%s.'/%s'", $prefix, $map_path);
+ }, $path)))
+ : sprintf("%s.'/%s'", $prefix, $path);
+ }
+
+ public function content(
+ $path,
+ $name,
+ array $psr0,
+ array $psr4,
+ array $files,
+ array $classmap,
+ array $dependencyAutoloadersRequired,
+ array $dependencyAutoloadersOptional,
+ $dev = false
+ ) {
+ $pkg = explode('/', $name)[1];
+
+ $content = <<<AUTOLOAD
+<?php
+/**
+ * Autoloader for php-symfony4-${pkg} and its' dependencies
+ * (created by php-symfony4-__VERSION__-__RELEASE__).
+ */
+
+AUTOLOAD;
+
+ // This switch statement handles the "autoload-common" require for sub-sub-modules.
+ if (!$dev) {
+ switch ($pkg) {
+ case 'security-core':
+ case 'security-csrf':
+ case 'security-guard':
+ case 'security-http':
+ $content .= "require_once dirname(dirname(dirname(__DIR__))).'/autoload-common.php';".PHP_EOL;
+ break;
+ default:
+ $content .= "require_once dirname(dirname(__DIR__)).'/autoload-common.php';".PHP_EOL;
+ }
+ } else {
+ switch ($pkg) {
+ case 'security-core':
+ case 'security-csrf':
+ case 'security-guard':
+ case 'security-http':
+ $content .= "require_once dirname(__DIR__).'/autoload.php';".PHP_EOL;
+ break;
+ default:
+ $content .= "require_once __DIR__.'/autoload.php';".PHP_EOL;
+ }
+ }
+
+ // PSR-0
+ if (!empty($psr0)) {
+ $content .= PHP_EOL.'// Self PSR-0'.PHP_EOL;
+
+ foreach ($psr0 as $namespace => $directory) {
+ $content .= sprintf(
+ "\\Fedora\\Autoloader\\Autoload::addPsr0('%s', %s, true);".PHP_EOL,
+ str_replace('\\', '\\\\', $namespace),
+ $directory ? "'$directory'" : '__DIR__'
+ );
+ }
+ }
+
+ // PSR-4
+ if (!empty($psr4)) {
+ $content .= PHP_EOL.'// Self PSR-4'.PHP_EOL;
+
+ foreach ($psr4 as $namespace => $directory) {
+ $content .= sprintf(
+ "\\Fedora\\Autoloader\\Autoload::addPsr4('%s', %s, true);".PHP_EOL,
+ str_replace('\\', '\\\\', $namespace),
+ $directory ? "'$directory'" : '__DIR__'
+ );
+ }
+ }
+
+ // Files
+ if (!empty($files)) {
+ $content .= PHP_EOL.'// Self files'.PHP_EOL;
+
+ foreach ($files as $file) {
+ $content .= sprintf(
+ "require_once __DIR__.'/$file';".PHP_EOL,
+ $file
+ );
+ }
+ }
+
+ // Classmap
+ if (!empty($classmap)) {
+ $cmd = array_merge(
+ [
+ 'phpab',
+ '--template', 'fedora',
+ '--output', 'autoload.classmap.php',
+ ],
+ $classmap
+ );
+
+ $process = new Process($cmd, $path);
+ $process->run();
+
+ if (!$process->isSuccessful()) {
+ throw new ProcessFailedException($process);
+ }
+
+ $content .= <<<SELF_CLASSMAP
+
+// Self classmap
+require_once __DIR__.'/autoload.classmap.php';
+
+SELF_CLASSMAP;
+ }
+
+ // Required dependencies
+ if (!empty($dependencyAutoloadersRequired)) {
+ $dependencyAutoloadersRequiredString = implode(",\n ", $dependencyAutoloadersRequired);
+ $content .= <<<DEPENDENCY_AUTOLOADERS_REQUIRED
+
+// Required dependencies
+\Fedora\Autoloader\Dependencies::required([
+ $dependencyAutoloadersRequiredString
+]);
+
+DEPENDENCY_AUTOLOADERS_REQUIRED;
+ }
+
+ // Optional dependencies
+ if (!empty($dependencyAutoloadersOptional)) {
+ $dependencyAutoloadersOptionalString = implode(",\n ", $dependencyAutoloadersOptional);
+ $content .= <<<DEPENDENCY_AUTOLOADERS_REQUIRED
+
+// Optional dependencies
+\Fedora\Autoloader\Dependencies::optional([
+ $dependencyAutoloadersOptionalString
+]);
+DEPENDENCY_AUTOLOADERS_REQUIRED;
+ }
+
+ return $content.PHP_EOL;
+ }
+
+ public function getFilename() {
+ return $this->filename;
+ }
+
+ public function getDevFilename() {
+ return $this->devFilename;
+ }
+}
diff --git a/php-symfony5.spec b/php-symfony5.spec
new file mode 100644
index 0000000..f232d73
--- /dev/null
+++ b/php-symfony5.spec
@@ -0,0 +1,3597 @@
+# remirepo spec file for php-symfony4, from:
+#
+# Fedora spec file for php-symfony4
+#
+# Copyright (c) 2016-2020 Shawn Iwinski <shawn@iwin.ski>
+# Remi Collet <remi@fedoraproject.org>
+#
+# License: MIT
+# http://opensource.org/licenses/MIT
+#
+# Please preserve changelog entries
+#
+
+%global github_owner symfony
+%global github_name symfony
+%global github_version 4.4.16
+%global github_commit f2c432e9fba42b450ad7496976ec9e61d52664ee
+
+%global composer_vendor symfony
+%global composer_project symfony
+
+# "php": ">=7.1.3"
+%global php_min_ver 7.1.3
+# "cache/integration-tests": "dev-master"
+# NOTE: Min and max versions added to restrict to single major version
+%global cache_integration_tests_min_ver 0
+%global cache_integration_tests_max_ver 1
+# "doctrine/annotations": "~1.7"
+%global doctrine_annotations_min_ver 1.7
+%global doctrine_annotations_max_ver 2.0
+# "doctrine/cache": "~1.6"
+%global doctrine_cache_min_ver 1.6
+%global doctrine_cache_max_ver 2.0
+# "doctrine/collections": "~1.0"
+%global doctrine_collections_min_ver 1.0
+%global doctrine_collections_max_ver 2
+# "doctrine/event-manager": "~1.0"
+%global doctrine_event_manager_min_ver 1.0
+%global doctrine_event_manager_max_ver 2
+# "doctrine/persistence": "^1.3|^2"
+%global doctrine_persistence_min_ver 1.3
+%global doctrine_persistence_max_ver 3
+# "doctrine/reflection": "~1.0"
+%global doctrine_reflection_min_ver 1.0
+%global doctrine_reflection_max_ver 2
+# "doctrine/data-fixtures": "^1.1"
+# ignore max version
+%global doctrine_datafixtures_min_ver 1.1
+%global doctrine_datafixtures_max_ver 2
+# "doctrine/dbal": "^2.6|^3.0"
+%global doctrine_dbal_min_ver 2.6
+%global doctrine_dbal_max_ver 4
+# "doctrine/doctrine-bundle": "^1.5|^2.0"
+%global doctrine_bundle_min_ver 1.5
+%global doctrine_bundle_max_ver 3
+# "doctrine/orm": "~2.4,>=2.4.5"
+%global doctrine_orm_min_ver 2.4.5
+%global doctrine_orm_max_ver 3.0
+# "egulias/email-validator": "^2.1.10"
+%global email_validator_min_ver 2.1.10
+%global email_validator_max_ver 3.0
+# "guzzlehttp/promises": "^1.3.1"
+%global guzzlehttp_promises_min_ver 1.3.1
+%global guzzlehttp_promises_max_ver 2
+# "monolog/monolog": "^1.25.1"
+%global monolog_min_ver 1.25.1
+%global monolog_max_ver 2.0
+# "ocramius/proxy-manager": "~2.1"
+%global proxy_manager_min_ver 2.1
+%global proxy_manager_max_ver 3.0
+# "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0"
+# conflicts: "phpdocumentor/reflection-docblock": "<3.0||>=3.2.0,<3.2.2"
+%global phpdocumentor_reflection_docblock_min_ver 3.2.2
+%global phpdocumentor_reflection_docblock_max_ver 6
+# "psr/cache": "~1.0"
+%global psr_cache_min_ver 1.0
+%global psr_cache_max_ver 2.0
+# "psr/container": "^1.0"
+%global psr_container_min_ver 1.0
+%global psr_container_max_ver 2.0
+# "psr/link": "^1.0"
+%global psr_link_min_ver 1.0
+%global psr_link_max_ver 2.0
+# "psr/log": "~1.0"
+%global psr_log_min_ver 1.0
+%global psr_log_max_ver 2.0
+# "psr/simple-cache": "^1.0"
+%global psr_simple_cache_min_ver 1.0
+%global psr_simple_cache_max_ver 2.0
+# "symfony/polyfill-intl-ctype": "~1.8"
+# "symfony/polyfill-intl-icu": "~1.0"
+# "symfony/polyfill-intl-idn": "~1.10"
+# "symfony/polyfill-mbstring": "~1.0"
+# "symfony/polyfill-php72": "~1.5"
+# "symfony/polyfill-php73": "~1.11"
+# "symfony/polyfill-php80": "^1.15"
+%global symfony_polyfill_min_ver 1.15
+%global symfony_polyfill_max_ver 2.0
+# "symfony/security-acl": "~2.8|~3.0"
+%global symfony_security_acl_min_ver 2.8
+%global symfony_security_acl_max_ver 4
+# "symfony/*-contracts": "~1.1.10"
+%global symfony_contracts_min_ver 1.1.10
+%global symfony_contracts_max_ver 2
+# "twig/twig": "^1.41|^2.10|^3.0"
+%global twig_min_ver 1.41
+%global twig_max_ver 4.0
+# "masterminds/html5": "^2.6"
+%global masterminds_min_ver 2.6
+%global masterminds_max_ver 3.0
+# "masterminds/html5": "^2.6"
+%global masterminds_min_ver 2.6
+%global masterminds_max_ver 3
+# "mongodb/mongodb": "~1.1"
+%global mongodb_min_ver 1.1
+%global mongodb_max_ver 2
+# "nyholm/psr7": "^1.0",
+%global nyholm_psr7_min_ver 1.0
+%global nyholm_psr7_max_ver 2
+# "psr/http-client": "^1.0",
+%global psr_http_client_min_ver 1.0
+%global psr_http_client_max_ver 2
+
+# Build using "--without tests" to disable tests
+%global with_tests 0%{?_with_tests:1}
+
+%global with_sensio_framework_extra_bundle 0
+
+%global php_version_id %(%{_bindir}/php -r "echo PHP_VERSION_ID;")
+
+%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
+%global with_range_dependencies 1
+%else
+%global with_range_dependencies 0
+%endif
+
+%{!?phpdir: %global phpdir %{_datadir}/php}
+%global symfony4_dir %{phpdir}/Symfony4
+
+#%%global symfony4_doc_ver %%(echo "%%{github_version}" | awk 'BEGIN { FS="." } { print $1"."$2 }')
+%global symfony4_doc_ver 4.4
+
+Name: php-%{composer_project}4
+Version: %{github_version}
+Release: 1%{?github_prerelease:.%{github_prerelease}}%{?dist}
+Summary: Symfony PHP framework (version 4)
+
+# MIT and CC-BY-SA:
+# - WebProfiler bundle (web-profiler-bundle sub-package)
+# MIT:
+# - All other bridges/bundles/components
+License: MIT and CC-BY-SA
+URL: https://symfony.com
+Source0: https://github.com/%{github_owner}/%{github_name}/archive/%{github_commit}/%{name}-%{github_version}-%{github_commit}.tar.gz
+Source1: %{name}-generate-autoloaders.php
+
+# Use our autoloader
+Patch0: %{name}-autoload.patch
+
+BuildArch: noarch
+# Tests
+BuildRequires: composer
+## composer.json
+BuildRequires: php(language) >= %{php_min_ver}
+%if %{with_range_dependencies}
+BuildRequires:(php-composer(cache/integration-tests) >= %{cache_integration_tests_min_ver} with php-composer(cache/integration-tests) < %{cache_integration_tests_max_ver})
+BuildRequires:(php-composer(doctrine/annotations) >= %{doctrine_annotations_min_ver} with php-composer(doctrine/annotations) < %{doctrine_annotations_max_ver})
+BuildRequires:(php-composer(doctrine/cache) >= %{doctrine_cache_min_ver} with php-composer(doctrine/cache) < %{doctrine_cache_max_ver})
+BuildRequires:(php-composer(doctrine/collections) >= %{doctrine_collections_min_ver} with php-composer(doctrine/collections) < %{doctrine_collections_max_ver})
+BuildRequires:(php-composer(doctrine/event-manager) >= %{doctrine_event_manager_min_ver} with php-composer(doctrine/event-manager) < %{doctrine_event_manager_max_ver})
+BuildRequires:(php-composer(doctrine/persistence) >= %{doctrine_persistence_min_ver} with php-composer(doctrine/persistence) < %{doctrine_persistence_max_ver})
+BuildRequires:(php-composer(doctrine/reflection) >= %{doctrine_reflection_min_ver} with php-composer(doctrine/reflection) < %{doctrine_reflection_max_ver})
+BuildRequires:(php-composer(doctrine/data-fixtures) >= %{doctrine_datafixtures_min_ver} with php-composer(doctrine/data-fixtures) < %{doctrine_datafixtures_max_ver})
+BuildRequires:(php-composer(doctrine/dbal) >= %{doctrine_dbal_min_ver} with php-composer(doctrine/dbal) < %{doctrine_dbal_max_ver})
+BuildRequires:(php-composer(doctrine/doctrine-bundle) >= %{doctrine_bundle_min_ver} with php-composer(doctrine/doctrine-bundle) < %{doctrine_bundle_max_ver})
+BuildRequires:(php-composer(doctrine/orm) >= %{doctrine_orm_min_ver} with php-composer(doctrine/orm) < %{doctrine_orm_max_ver})
+BuildRequires:(php-composer(egulias/email-validator) >= %{email_validator_min_ver} with php-composer(egulias/email-validator) < %{email_validator_max_ver})
+BuildRequires:(php-composer(guzzlehttp/promises) >= %{guzzlehttp_promises_min_ver} with php-composer(guzzlehttp/promises) < %{guzzlehttp_promises_max_ver})
+BuildRequires:(php-composer(masterminds/html5) >= %{masterminds_min_ver} with php-composer(masterminds/html5) < %{masterminds_max_ver})
+BuildRequires:(php-composer(mongodb/mongodb) >= %{mongodb_min_ver} with php-composer(mongodb/mongodb) < %{mongodb_max_ver})
+BuildRequires:(php-composer(monolog/monolog) >= %{monolog_min_ver} with php-composer(monolog/monolog) < %{monolog_max_ver})
+BuildRequires:(php-composer(nyholm/psr7) >= %{nyholm_psr7_min_ver} with php-composer(nyholm/psr7) < %{nyholm_psr7_max_ver})
+BuildRequires:(php-composer(ocramius/proxy-manager) >= %{proxy_manager_min_ver} with php-composer(ocramius/proxy-manager) < %{proxy_manager_max_ver})
+BuildRequires:(php-composer(phpdocumentor/reflection-docblock) >= %{phpdocumentor_reflection_docblock_min_ver} with php-composer(phpdocumentor/reflection-docblock) < %{phpdocumentor_reflection_docblock_max_ver})
+BuildRequires:(php-composer(psr/cache) >= %{psr_cache_min_ver} with php-composer(psr/cache) < %{psr_cache_max_ver})
+BuildRequires:(php-composer(psr/container) >= %{psr_container_min_ver} with php-composer(psr/container) < %{psr_container_max_ver})
+BuildRequires:(php-composer(psr/http-client) >= %{psr_http_client_min_ver} with php-composer(psr/http-client) < %{psr_http_client_max_ver})
+BuildRequires:(php-composer(psr/link) >= %{psr_link_min_ver} with php-composer(psr/link) < %{psr_link_max_ver})
+BuildRequires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+BuildRequires:(php-composer(psr/simple-cache) >= %{psr_simple_cache_min_ver} with php-composer(psr/simple-cache) < %{psr_simple_cache_max_ver})
+BuildRequires:(php-composer(%{composer_vendor}/polyfill) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill) < %{symfony_polyfill_max_ver})
+BuildRequires:(php-composer(%{composer_vendor}/security-acl) >= %{symfony_security_acl_min_ver} with php-composer(%{composer_vendor}/security-acl) < %{symfony_security_acl_max_ver})
+BuildRequires:(php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver})
+BuildRequires:(php-composer(twig/twig) >= %{twig_min_ver} with php-composer(twig/twig) < %{twig_max_ver})
+%else
+BuildRequires: php-composer(cache/integration-tests) < %{cache_integration_tests_max_ver}
+BuildRequires: php-composer(cache/integration-tests) >= %{cache_integration_tests_min_ver}
+BuildRequires: php-composer(doctrine/annotations) < %{doctrine_annotations_max_ver}
+BuildRequires: php-composer(doctrine/annotations) >= %{doctrine_annotations_min_ver}
+BuildRequires: php-composer(doctrine/cache) < %{doctrine_cache_max_ver}
+BuildRequires: php-composer(doctrine/cache) >= %{doctrine_cache_min_ver}
+BuildRequires: php-composer(doctrine/collections) < %{doctrine_collections_max_ver}
+BuildRequires: php-composer(doctrine/collections) >= %{doctrine_collections_min_ver}
+BuildRequires: php-composer(doctrine/event-manager) < %{doctrine_event_manager_max_ver}
+BuildRequires: php-composer(doctrine/event-manager) >= %{doctrine_event_manager_min_ver}
+BuildRequires: php-composer(doctrine/persistence) < %{doctrine_persistence_max_ver}
+BuildRequires: php-composer(doctrine/persistence) >= %{doctrine_persistence_min_ver}
+BuildRequires: php-composer(doctrine/reflection) < %{doctrine_reflection_max_ver}
+BuildRequires: php-composer(doctrine/reflection) >= %{doctrine_reflection_min_ver}
+BuildRequires: php-composer(doctrine/data-fixtures) < %{doctrine_datafixtures_max_ver}
+BuildRequires: php-composer(doctrine/data-fixtures) >= %{doctrine_datafixtures_min_ver}
+BuildRequires: php-composer(doctrine/dbal) < %{doctrine_dbal_max_ver}
+BuildRequires: php-composer(doctrine/dbal) >= %{doctrine_dbal_min_ver}
+BuildRequires: php-composer(doctrine/doctrine-bundle) < %{doctrine_bundle_max_ver}
+BuildRequires: php-composer(doctrine/doctrine-bundle) >= %{doctrine_bundle_min_ver}
+BuildRequires: php-composer(doctrine/orm) < %{doctrine_orm_max_ver}
+BuildRequires: php-composer(doctrine/orm) >= %{doctrine_orm_min_ver}
+BuildRequires: php-composer(egulias/email-validator) < %{email_validator_max_ver}
+BuildRequires: php-composer(egulias/email-validator) >= %{email_validator_min_ver}
+BuildRequires: php-composer(guzzlehttp/promises) < %{guzzlehttp_promises_max_ver}
+BuildRequires: php-composer(guzzlehttp/promises) >= %{guzzlehttp_promises_min_ver}
+BuildRequires: php-composer(masterminds/html5) < %{masterminds_max_ver}
+BuildRequires: php-composer(masterminds/html5) >= %{masterminds_min_ver}
+BuildRequires: php-composer(mongodb/mongodb) < %{mongodb_max_ver}
+BuildRequires: php-composer(mongodb/mongodb) >= %{mongodb_min_ver}
+BuildRequires: php-Monolog >= %{monolog_min_ver}
+BuildRequires: php-composer(nyholm/psr7) < %{nyholm_psr7_max_ver}
+BuildRequires: php-composer(nyholm/psr7) >= %{nyholm_psr7_min_ver}
+BuildRequires: php-composer(ocramius/proxy-manager) < %{proxy_manager_max_ver}
+BuildRequires: php-composer(ocramius/proxy-manager) >= %{proxy_manager_min_ver}
+BuildRequires: php-composer(phpdocumentor/reflection-docblock) < %{phpdocumentor_reflection_docblock_max_ver}
+BuildRequires: php-composer(phpdocumentor/reflection-docblock) >= %{phpdocumentor_reflection_docblock_min_ver}
+BuildRequires: php-composer(psr/cache) < %{psr_cache_max_ver}
+BuildRequires: php-composer(psr/cache) >= %{psr_cache_min_ver}
+BuildRequires: php-composer(psr/container) < %{psr_container_max_ver}
+BuildRequires: php-composer(psr/container) >= %{psr_container_min_ver}
+BuildRequires: php-composer(psr/http-client) < %{psr_http_client_max_ver}
+BuildRequires: php-composer(psr/http-client) >= %{psr_http_client_min_ver}
+BuildRequires: php-composer(psr/link) < %{psr_link_max_ver}
+BuildRequires: php-composer(psr/link) >= %{psr_link_min_ver}
+BuildRequires: php-composer(psr/log) < %{psr_log_max_ver}
+BuildRequires: php-composer(psr/log) >= %{psr_log_min_ver}
+BuildRequires: php-composer(psr/simple-cache) < %{psr_simple_cache_max_ver}
+BuildRequires: php-composer(psr/simple-cache) >= %{psr_simple_cache_min_ver}
+BuildRequires: php-composer(%{composer_vendor}/polyfill) < %{symfony_polyfill_max_ver}
+BuildRequires: php-composer(%{composer_vendor}/polyfill) >= %{symfony_polyfill_min_ver}
+BuildRequires: php-composer(%{composer_vendor}/security-acl) < %{symfony_security_acl_max_ver}
+BuildRequires: php-composer(%{composer_vendor}/security-acl) >= %{symfony_security_acl_min_ver}
+BuildRequires: php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver}
+BuildRequires: php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver}
+BuildRequires: php-composer(twig/twig) < %{twig_max_ver}
+BuildRequires: php-composer(twig/twig) >= %{twig_min_ver}
+%endif
+BuildRequires: phpunit7
+# phpcompatinfo for version 4.0.0-beta1
+BuildRequires: php-ctype
+BuildRequires: php-curl
+BuildRequires: php-date
+BuildRequires: php-dom
+BuildRequires: php-fileinfo
+BuildRequires: php-filter
+BuildRequires: php-gd
+BuildRequires: php-hash
+BuildRequires: php-iconv
+BuildRequires: php-intl
+BuildRequires: php-json
+BuildRequires: php-ldap
+BuildRequires: php-libxml
+BuildRequires: php-mbstring
+BuildRequires: php-pcntl
+BuildRequires: php-pcre
+BuildRequires: php-pdo
+BuildRequires: php-pdo_sqlite
+BuildRequires: php-posix
+BuildRequires: php-reflection
+BuildRequires: php-session
+BuildRequires: php-simplexml
+BuildRequires: php-sockets
+BuildRequires: php-sodium
+BuildRequires: php-spl
+BuildRequires: php-sysvsem
+BuildRequires: php-tokenizer
+BuildRequires: php-xml
+BuildRequires: php-xmlreader
+## Autoloader
+BuildRequires: php-fedora-autoloader-devel
+# Conflicts
+BuildConflicts: php-composer(phpdocumentor/type-resolver) < 0.3.0
+
+# Bridges
+Requires: php-composer(%{composer_vendor}/doctrine-bridge) = %{version}
+Requires: php-composer(%{composer_vendor}/monolog-bridge) = %{version}
+#Requires: php-composer(%%{composer_vendor}/phpunit-bridge) = %%{version}
+Requires: php-composer(%{composer_vendor}/proxy-manager-bridge) = %{version}
+Requires: php-composer(%{composer_vendor}/twig-bridge) = %{version}
+# Bundles
+Requires: php-composer(%{composer_vendor}/debug-bundle) = %{version}
+Requires: php-composer(%{composer_vendor}/framework-bundle) = %{version}
+Requires: php-composer(%{composer_vendor}/security-bundle) = %{version}
+Requires: php-composer(%{composer_vendor}/twig-bundle) = %{version}
+Requires: php-composer(%{composer_vendor}/web-profiler-bundle) = %{version}
+Requires: php-composer(%{composer_vendor}/web-server-bundle) = %{version}
+# Components
+Requires: php-composer(%{composer_vendor}/asset) = %{version}
+Requires: php-composer(%{composer_vendor}/browser-kit) = %{version}
+Requires: php-composer(%{composer_vendor}/cache) = %{version}
+Requires: php-composer(%{composer_vendor}/config) = %{version}
+Requires: php-composer(%{composer_vendor}/console) = %{version}
+Requires: php-composer(%{composer_vendor}/css-selector) = %{version}
+Requires: php-composer(%{composer_vendor}/debug) = %{version}
+Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version}
+Requires: php-composer(%{composer_vendor}/dom-crawler) = %{version}
+Requires: php-composer(%{composer_vendor}/dotenv) = %{version}
+Requires: php-composer(%{composer_vendor}/error-handler) = %{version}
+Requires: php-composer(%{composer_vendor}/event-dispatcher) = %{version}
+Requires: php-composer(%{composer_vendor}/expression-language) = %{version}
+Requires: php-composer(%{composer_vendor}/filesystem) = %{version}
+Requires: php-composer(%{composer_vendor}/finder) = %{version}
+Requires: php-composer(%{composer_vendor}/form) = %{version}
+Requires: php-composer(%{composer_vendor}/http-client) = %{version}
+Requires: php-composer(%{composer_vendor}/http-foundation) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/inflector) = %{version}
+Requires: php-composer(%{composer_vendor}/intl) = %{version}
+Requires: php-composer(%{composer_vendor}/ldap) = %{version}
+Requires: php-composer(%{composer_vendor}/lock) = %{version}
+Requires: php-composer(%{composer_vendor}/mailer) = %{version}
+Requires: php-composer(%{composer_vendor}/messenger) = %{version}
+Requires: php-composer(%{composer_vendor}/mime) = %{version}
+Requires: php-composer(%{composer_vendor}/options-resolver) = %{version}
+Requires: php-composer(%{composer_vendor}/process) = %{version}
+Requires: php-composer(%{composer_vendor}/property-access) = %{version}
+Requires: php-composer(%{composer_vendor}/property-info) = %{version}
+Requires: php-composer(%{composer_vendor}/routing) = %{version}
+Requires: php-composer(%{composer_vendor}/security) = %{version}
+Requires: php-composer(%{composer_vendor}/serializer) = %{version}
+Requires: php-composer(%{composer_vendor}/stopwatch) = %{version}
+Requires: php-composer(%{composer_vendor}/templating) = %{version}
+Requires: php-composer(%{composer_vendor}/translation) = %{version}
+Requires: php-composer(%{composer_vendor}/validator) = %{version}
+Requires: php-composer(%{composer_vendor}/var-dumper) = %{version}
+Requires: php-composer(%{composer_vendor}/var-exporter) = %{version}
+Requires: php-composer(%{composer_vendor}/web-link) = %{version}
+Requires: php-composer(%{composer_vendor}/workflow) = %{version}
+Requires: php-composer(%{composer_vendor}/yaml) = %{version}
+
+# Composer
+Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version}
+
+# Conflicts
+Conflicts: php-composer(phpdocumentor/type-resolver) < 0.3.0
+
+%description
+%{summary}.
+
+NOTE: Does not require PHPUnit bridge.
+
+# ##############################################################################
+
+%package common
+
+Summary: Symfony common (version 4)
+License: MIT
+
+Requires: php(language) >= %{php_min_ver}
+Requires: composer
+# Autoloader
+Requires: php-composer(fedora/autoloader)
+
+%description common
+%{summary}.
+
+# ------------------------------------------------------------------------------
+
+%package doctrine-bridge
+
+Summary: Symfony Doctrine Bridge (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(doctrine/event-manager) >= %{doctrine_event_manager_min_ver} with php-composer(doctrine/event-manager) < %{doctrine_event_manager_max_ver})
+Requires:(php-composer(doctrine/persistence) >= %{doctrine_persistence_min_ver} with php-composer(doctrine/persistence) < %{doctrine_persistence_max_ver})
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/form)
+Suggests: php-composer(%{composer_vendor}/property-info)
+Suggests: php-composer(%{composer_vendor}/validator)
+Suggests: php-composer(doctrine/data-fixtures)
+Suggests: php-composer(doctrine/dbal)
+Suggests: php-composer(doctrine/orm)
+%else
+Requires: php-composer(doctrine/event-manager) < %{doctrine_event_manager_max_ver}
+Requires: php-composer(doctrine/event-manager) >= %{doctrine_event_manager_min_ver}
+Requires: php-composer(doctrine/persistence) < %{doctrine_persistence_max_ver}
+Requires: php-composer(doctrine/persistence) >= %{doctrine_persistence_min_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-date
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-pdo_sqlite
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/doctrine-bridge) = %{version}
+
+%description doctrine-bridge
+Provides integration for Doctrine (http://www.doctrine-project.org/) with
+various Symfony components.
+
+Configuration reference:
+http://symfony.com/doc/%{symfony4_doc_ver}/reference/configuration/doctrine.html
+
+Autoloader: %{symfony4_dir}/Bridge/Doctrine/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package monolog-bridge
+
+Summary: Symfony Monolog Bridge (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(monolog/monolog) >= %{monolog_min_ver} with php-composer(monolog/monolog) < %{monolog_max_ver})
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/console)
+Suggests: php-composer(%{composer_vendor}/security-core)
+Suggests: php-composer(%{composer_vendor}/var-dumper)
+%else
+Requires: php-Monolog >= %{monolog_min_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+
+# Composer
+Provides: php-composer(%{composer_vendor}/monolog-bridge) = %{version}
+
+%description monolog-bridge
+Provides integration for Monolog (https://github.com/Seldaek/monolog) with
+various Symfony components.
+
+Configuration reference:
+http://symfony.com/doc/%{symfony4_doc_ver}/reference/configuration/monolog.html
+
+Autoloader: %{symfony4_dir}/Bridge/Monolog/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package phpunit-bridge
+
+Summary: Symfony PHPUnit Bridge (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/error-handler)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-date
+Requires: php-pcre
+Requires: php-posix
+Requires: php-reflection
+
+# Composer
+Provides: php-composer(%{composer_vendor}/phpunit-bridge) = %{version}
+
+%description phpunit-bridge
+Provides utilities for PHPUnit, especially user deprecation notices management.
+
+It comes with the following features:
+* disable the garbage collector
+* auto-register class_exists to load Doctrine annotations
+* print a user deprecation notices summary at the end of the test suite.
+
+Autoloader: %{symfony4_dir}/Bridge/PhpUnit/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package proxy-manager-bridge
+
+Summary: Symfony ProxyManager Bridge (version 4)
+License: MIT
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(ocramius/proxy-manager) >= %{proxy_manager_min_ver} with php-composer(ocramius/proxy-manager) < %{proxy_manager_max_ver})
+%else
+Requires: php-composer(ocramius/proxy-manager) >= %{proxy_manager_min_ver}
+Requires: php-composer(ocramius/proxy-manager) < %{proxy_manager_max_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-hash
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/proxy-manager-bridge) = %{version}
+
+%description proxy-manager-bridge
+Provides integration for ProxyManager [1] with various Symfony components.
+
+Autoloader: %{symfony4_dir}/Bridge/ProxyManager/autoload.php
+
+[1] http://ocramius.github.io/ProxyManager/
+
+# ------------------------------------------------------------------------------
+
+%package twig-bridge
+
+Summary: Symfony Twig Bridge (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(twig/twig) >= %{twig_min_ver} with php-composer(twig/twig) < %{twig_max_ver})
+Requires:(php-composer(%{composer_vendor}/translation-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/translation-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/asset)
+Suggests: php-composer(%{composer_vendor}/expression-language)
+Suggests: php-composer(%{composer_vendor}/finder)
+Suggests: php-composer(%{composer_vendor}/form)
+Suggests: php-composer(%{composer_vendor}/http-kernel)
+Suggests: php-composer(%{composer_vendor}/routing)
+Suggests: php-composer(%{composer_vendor}/security-core)
+Suggests: php-composer(%{composer_vendor}/security-crsf)
+Suggests: php-composer(%{composer_vendor}/security-http)
+Suggests: php-composer(%{composer_vendor}/stopwatch)
+Suggests: php-composer(%{composer_vendor}/templating)
+Suggests: php-composer(%{composer_vendor}/translation)
+Suggests: php-composer(%{composer_vendor}/var-dumper)
+Suggests: php-composer(%{composer_vendor}/web-link)
+Suggests: php-composer(%{composer_vendor}/workflow)
+Suggests: php-composer(%{composer_vendor}/yaml)
+%else
+Requires: php-composer(twig/twig) >= %{twig_min_ver}
+Requires: php-composer(twig/twig) < %{twig_max_ver}
+Requires: php-composer(%{composer_vendor}/translation-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/translation-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-hash
+Requires: php-json
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/twig-bridge) = %{version}
+
+%description twig-bridge
+Provides integration for Twig (http://twig.sensiolabs.org/) with various
+Symfony components.
+
+Autoloader: %{symfony4_dir}/Bridge/Twig/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package debug-bundle
+
+Summary: Symfony Debug Bundle (version 4)
+License: MIT
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/twig-bridge) = %{version}
+Requires: php-composer(%{composer_vendor}/var-dumper) = %{version}
+Requires: php-xml
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/dependency-injection)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+# <none>
+
+# Composer
+Provides: php-composer(%{composer_vendor}/debug-bundle) = %{version}
+
+%description debug-bundle
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Bundle/DebugBundle/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package framework-bundle
+
+Summary: Symfony Framework Bundle (version 4)
+License: MIT
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/cache) = %{version}
+Requires: php-composer(%{composer_vendor}/config) = %{version}
+Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version}
+Requires: php-composer(%{composer_vendor}/error-handler) = %{version}
+Requires: php-composer(%{composer_vendor}/http-foundation) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/filesystem) = %{version}
+Requires: php-composer(%{composer_vendor}/finder) = %{version}
+Requires: php-composer(%{composer_vendor}/routing) = %{version}
+Requires: php-xml
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver})
+Requires:(php-composer(doctrine/cache) >= %{doctrine_cache_min_ver} with php-composer(doctrine/cache) < %{doctrine_cache_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/console)
+Suggests: php-composer(%{composer_vendor}/form)
+Suggests: php-composer(%{composer_vendor}/property-info)
+Suggests: php-composer(%{composer_vendor}/serializer)
+Suggests: php-composer(%{composer_vendor}/validator)
+Suggests: php-composer(%{composer_vendor}/web-link)
+Suggests: php-composer(%{composer_vendor}/yaml)
+%else
+Requires: php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver}
+Requires: php-composer(doctrine/cache) >= %{doctrine_cache_min_ver}
+Requires: php-composer(doctrine/cache) < %{doctrine_cache_max_ver}
+%endif
+# phpcompatinfo for version 4.4.0
+Requires: php-date
+Requires: php-dom
+Requires: php-fileinfo
+Requires: php-filter
+Requires: php-iconv
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-sodium
+Requires: php-spl
+%if %{with_range_dependencies}
+Suggests: php-pecl(apcu)
+%endif
+
+# Composer
+Provides: php-composer(%{composer_vendor}/framework-bundle) = %{version}
+
+%description framework-bundle
+The FrameworkBundle contains most of the "base" framework functionality and can
+be configured under the framework key in your application configuration. This
+includes settings related to sessions, translation, forms, validation, routing
+and more.
+
+Configuration reference:
+http://symfony.com/doc/%{symfony4_doc_ver}/reference/configuration/framework.html
+
+Autoloader: %{symfony4_dir}/Bundle/FrameworkBundle/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package security-bundle
+
+Summary: Symfony Security Bundle (version 4)
+License: MIT
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/config) = %{version}
+Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/security-core) = %{version}
+Requires: php-composer(%{composer_vendor}/security-csrf) = %{version}
+Requires: php-composer(%{composer_vendor}/security-guard) = %{version}
+Requires: php-composer(%{composer_vendor}/security-http) = %{version}
+Requires: php-xml
+# phpcompatinfo for version 4.4.0
+Requires: php-ctype
+Requires: php-filter
+Requires: php-pcre
+Requires: php-sodium
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/security-bundle) = %{version}
+
+%description security-bundle
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Bundle/SecurityBundle/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package twig-bundle
+
+Summary: Symfony Twig Bundle (version 4)
+License: MIT
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/http-foundation) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/twig-bridge) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(twig/twig) >= %{twig_min_ver} with php-composer(twig/twig) < %{twig_max_ver})
+%else
+Requires: php-composer(twig/twig) < %{twig_max_ver}
+Requires: php-composer(twig/twig) >= %{twig_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/twig-bundle) = %{version}
+
+%description twig-bundle
+%{summary}
+
+Configuration reference:
+http://symfony.com/doc/%{symfony4_doc_ver}/reference/configuration/twig.html
+
+Autoloader: %{symfony4_dir}/Bundle/TwigBundle/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package web-profiler-bundle
+
+Summary: Symfony WebProfiler Bundle (version 4)
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/config) = %{version}
+Requires: php-composer(%{composer_vendor}/framework-bundle) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/routing) = %{version}
+Requires: php-composer(%{composer_vendor}/twig-bundle) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(twig/twig) >= %{twig_min_ver} with php-composer(twig/twig) < %{twig_max_ver})
+%else
+Requires: php-composer(twig/twig) < %{twig_max_ver}
+Requires: php-composer(twig/twig) >= %{twig_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/web-profiler-bundle) = %{version}
+
+%description web-profiler-bundle
+%{summary}
+
+Configuration reference:
+http://symfony.com/doc/%{symfony4_doc_ver}/reference/configuration/web_profiler.html
+
+Autoloader: %{symfony4_dir}/Bundle/WebProfilerBundle/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package web-server-bundle
+
+Summary: Symfony WebServer Bundle (version 4)
+License: MIT
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/config) = %{version}
+Requires: php-composer(%{composer_vendor}/console) = %{version}
+Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/process) = %{version}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-posix
+Requires: php-spl
+%if %{with_range_dependencies}
+Suggests: php-pcntl
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/monolog-bridge)
+Suggests: php-composer(%{composer_vendor}/expression-language)
+%endif
+
+# Composer
+Provides: php-composer(%{composer_vendor}/web-server-bundle) = %{version}
+
+%description web-server-bundle
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Bundle/WebServerBundle/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package asset
+
+Summary: Symfony Asset Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/asset.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/http-foundation)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-hash
+Requires: php-json
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/asset) = %{version}
+
+%description asset
+The Asset component manages asset URLs.
+
+Autoloader: %{symfony4_dir}/Component/Asset/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package browser-kit
+
+Summary: Symfony BrowserKit Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/browser_kit.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/dom-crawler) = %{version}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/process)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-date
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/browser-kit) = %{version}
+
+%description browser-kit
+BrowserKit simulates the behavior of a web browser.
+
+The component only provide an abstract client and does not provide any
+"default" backend for the HTTP layer.
+
+Autoloader: %{symfony4_dir}/Component/BrowserKit/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package cache
+
+Summary: Symfony implementation of PSR-6 and PSR-16 (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/cache.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+Requires: php-composer(%{composer_vendor}/var-exporter) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/cache) >= %{psr_cache_min_ver} with php-composer(psr/cache) < %{psr_cache_max_ver})
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Requires:(php-composer(%{composer_vendor}/cache-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/cache-contracts) < %{symfony_contracts_max_ver})
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+Suggests: php-pecl(apcu)
+Suggests: php-pecl(memcached)
+Suggests: php-pecl(opcache)
+Suggests: php-pecl(redis)
+%else
+Requires: php-composer(psr/cache) < %{psr_cache_max_ver}
+Requires: php-composer(psr/cache) >= %{psr_cache_min_ver}
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+Requires: php-composer(psr/simple-cache) < %{psr_simple_cache_max_ver}
+Requires: php-composer(psr/simple-cache) >= %{psr_simple_cache_min_ver}
+Requires: php-composer(%{composer_vendor}/cache-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/cache-contracts) >= %{symfony_contracts_min_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-date
+Requires: php-hash
+Requires: php-pcre
+Requires: php-pdo
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/cache) = %{version}
+Provides: php-composer(psr/cache-implementation) = 1.0
+Provides: php-composer(psr/simple-cache-implementation) = 1.0
+Provides: php-composer(%{composer_vendor}/cache-implementation) = 1.0
+
+%description cache
+The Cache component provides an extended PSR-6 [1] implementation for adding
+cache to your applications. It is designed to have a low overhead and it ships
+with ready to use adapters for the most common caching backends.
+
+Autoloader: %{symfony4_dir}/Component/Cache/autoload.php
+
+[1] http://www.php-fig.org/psr/psr-6/
+
+# ------------------------------------------------------------------------------
+
+%package config
+
+Summary: Symfony Config Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/config.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/filesystem) = %{version}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/yaml)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-dom
+Requires: php-hash
+Requires: php-json
+Requires: php-libxml
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/config) = %{version}
+
+%description config
+The Config Component provides several classes to help you find, load, combine,
+autofill and validate configuration values of any kind, whatever their source
+may be (Yaml, XML, INI files, or for instance a database).
+
+Autoloader: %{symfony4_dir}/Component/Config/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package console
+
+Summary: Symfony Console Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/console.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/debug) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+Requires:(php-composer(%{composer_vendor}/polyfill-php73) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill-php73) < %{symfony_polyfill_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/event-dispatcher)
+Suggests: php-composer(%{composer_vendor}/lock)
+Suggests: php-composer(%{composer_vendor}/process)
+Suggests: php-composer(psr/log)
+%else
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php73) < %{symfony_polyfill_max_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php73) >= %{symfony_polyfill_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-date
+Requires: php-dom
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-posix
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/console) = %{version}
+Provides: php-composer(psr/log-implementation) = 1.0
+
+%description console
+The Console component eases the creation of beautiful and testable command line
+interfaces.
+
+The Console component allows you to create command-line commands. Your console
+commands can be used for any recurring task, such as cronjobs, imports, or
+other batch jobs.
+
+Autoloader: %{symfony4_dir}/Component/Console/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package css-selector
+
+Summary: Symfony CssSelector Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/css_selector.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+
+# Composer
+Provides: php-composer(%{composer_vendor}/css-selector) = %{version}
+
+%description css-selector
+The CssSelector Component converts CSS selectors to XPath expressions.
+
+Autoloader: %{symfony4_dir}/Component/CssSelector/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package debug
+
+Summary: Symfony Debug Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/debug.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Suggests: php-pecl(Xdebug)
+%else
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-json
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/debug) = %{version}
+
+%description debug
+The Debug Component provides tools to ease debugging PHP code.
+
+Autoloader: %{symfony4_dir}/Component/Debug/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package dependency-injection
+
+Summary: Symfony DependencyInjection Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/dependency_injection.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/container) >= %{psr_container_min_ver} with php-composer(psr/container) < %{psr_container_max_ver})
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/expression-language)
+Suggests: php-composer(%{composer_vendor}/finder)
+Suggests: php-composer(%{composer_vendor}/proxy-manager-bridge)
+Suggests: php-composer(%{composer_vendor}/yaml)
+%else
+Requires: php-composer(psr/container) >= %{psr_container_min_ver}
+Requires: php-composer(psr/container) < %{psr_container_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-dom
+Requires: php-hash
+Requires: php-json
+Requires: php-libxml
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/dependency-injection) = %{version}
+Provides: php-composer(psr/container-implementation) = 1.0
+Provides: php-composer(%{composer_vendor}/service-implementation) = 1.0
+
+%description dependency-injection
+The Dependency Injection component allows you to standardize and centralize
+the way objects are constructed in your application.
+
+Autoloader: %{symfony4_dir}/Component/DependencyInjection/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package dom-crawler
+
+Summary: Symfony DomCrawler Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/dom_crawler.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/css-selector)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-dom
+Requires: php-hash
+Requires: php-libxml
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/dom-crawler) = %{version}
+
+%description dom-crawler
+The DomCrawler Component eases DOM navigation for HTML and XML documents.
+
+Autoloader: %{symfony4_dir}/Component/DomCrawler/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package dotenv
+
+Summary: Registers environment variables from a .env file (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/dotenv.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/dotenv) = %{version}
+
+%description dotenv
+The Dotenv Component parses .env files to make environment variables stored in
+them accessible via getenv(), $_ENV or $_SERVER.
+
+Autoloader: %{symfony4_dir}/Component/Dotenv/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package error-handler
+
+Summary: Symfony ErrorHandler Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/error_handler.html
+
+Requires: %{name}-common = %{version}-%{release}
+Requires: %{name}-debug = %{version}-%{release}
+Requires: %{name}-var-dumper = %{version}-%{release}
+# composer.json:
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+%else
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+%endif
+# phpcompatinfo for version 4.4.0
+Requires: php-reflection
+Requires: php-date
+Requires: php-filter
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/error-handler) = %{version}
+
+%description error-handler
+The ErrorHandler component provides tools to manage errors and ease debugging
+PHP code.
+
+Autoloader: %{symfony4_dir}/Component/ErrorHandler/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package event-dispatcher
+
+Summary: Symfony EventDispatcher Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/event_dispatcher.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json:
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/event-dispatcher-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/event-dispatcher-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/dependency-injection)
+Suggests: php-composer(%{composer_vendor}/http-kernel)
+%else
+Requires: php-composer(%{composer_vendor}/event-dispatcher-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/event-dispatcher-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/event-dispatcher) = %{version}
+
+%description event-dispatcher
+The Symfony Event Dispatcher component implements the Observer [1] pattern in
+a simple and effective way to make all these things possible and to make your
+projects truly extensible.
+
+Autoloader: %{symfony4_dir}/Component/EventDispatcher/autoload.php
+
+[1] http://en.wikipedia.org/wiki/Observer_pattern
+
+# ------------------------------------------------------------------------------
+
+%package expression-language
+
+Summary: Symfony ExpressionLanguage Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/expression_language.html
+
+# composer.json:
+Requires: php-composer(%{composer_vendor}/cache) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+%else
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/expression-language) = %{version}
+
+%description expression-language
+The ExpressionLanguage component provides an engine that can compile and
+evaluate expressions. An expression is a one-liner that returns a value
+(mostly, but not limited to, Booleans).
+
+Autoloader: %{symfony4_dir}/Component/ExpressionLanguage/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package filesystem
+
+Summary: Symfony Filesystem Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/filesystem.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/filesystem) = %{version}
+
+%description filesystem
+The Filesystem component provides basic utilities for the filesystem.
+
+Autoloader: %{symfony4_dir}/Component/Filesystem/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package finder
+
+Summary: Symfony Finder Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/finder.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-date
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/finder) = %{version}
+
+%description finder
+The Finder Component finds files and directories via an intuitive fluent
+interface.
+
+Autoloader: %{symfony4_dir}/Component/Finder/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package form
+
+Summary: Symfony Form Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/form.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/event-dispatcher) = %{version}
+Requires: php-composer(%{composer_vendor}/intl) = %{version}
+Requires: php-composer(%{composer_vendor}/options-resolver) = %{version}
+Requires: php-composer(%{composer_vendor}/property-access) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/security-csrf)
+Suggests: php-composer(%{composer_vendor}/twig-bridge)
+Suggests: php-composer(%{composer_vendor}/validator)
+%else
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-reflection
+Requires: php-ctype
+Requires: php-date
+Requires: php-hash
+Requires: php-intl
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/form) = %{version}
+
+%description form
+Form provides tools for defining forms, rendering and mapping request data
+to related models. Furthermore it provides integration with the Validation
+component.
+
+Autoloader: %{symfony4_dir}/Component/Form/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package http-client
+
+Summary: Symfony HttpClient Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/client.html
+
+Requires: %{name}-common = %{version}-%{release}
+%if %{with_range_dependencies}
+Requires:(php-composer(guzzlehttp/promises) >= %{guzzlehttp_promises_min_ver} with php-composer(guzzlehttp/promises) < %{guzzlehttp_promises_max_ver})
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Requires:(php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver})
+Requires:(php-composer(%{composer_vendor}/polyfill-php73) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill-php73) < %{symfony_polyfill_max_ver})
+%else
+Requires: php-composer(guzzlehttp/promises) < %{guzzlehttp_promises_max_ver}
+Requires: php-composer(guzzlehttp/promises) >= %{guzzlehttp_promises_min_ver}
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+Requires: php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php73) < %{symfony_polyfill_max_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php73) >= %{symfony_polyfill_min_ver}
+%endif
+
+# phpcompatinfo for version 4.3.6
+Requires: php-reflection
+Requires: php-curl
+Requires: php-hash
+Requires: php-intl
+Requires: php-json
+Requires: php-pcre
+Requires: php-spl
+Requires: php-zlib
+
+# Composer
+Provides: php-composer(%{composer_vendor}/http-client) = %{version}
+
+%description http-client
+The HttpClient component is a low-level HTTP client with support for both PHP
+stream wrappers and cURL. It provides utilities to consume APIs and supports
+synchronous and asynchronous operations.
+
+
+Autoloader: %{symfony4_dir}/Component/HttpClient/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package http-foundation
+
+Summary: Symfony HttpFoundation Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/http_foundation.html
+
+Requires: %{name}-common = %{version}-%{release}
+Requires: %{name}-mime = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-date
+Requires: php-fileinfo
+Requires: php-filter
+Requires: php-hash
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-pdo
+Requires: php-session
+Requires: php-sockets
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/http-foundation) = %{version}
+
+%description http-foundation
+The HttpFoundation Component defines an object-oriented layer for the HTTP
+specification.
+
+In PHP, the request is represented by some global variables ($_GET, $_POST,
+$_FILES, $_COOKIE, $_SESSION, ...) and the response is generated by some
+functions (echo, header, setcookie, ...).
+
+The Symfony HttpFoundation component replaces these default PHP global
+variables and functions by an Object-Oriented layer.
+
+Autoloader: %{symfony4_dir}/Component/HttpFoundation/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package http-kernel
+
+Summary: Symfony HttpKernel Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/http_kernel.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/error-handler) = %{version}
+Requires: php-composer(%{composer_vendor}/event-dispatcher) = %{version}
+Requires: php-composer(%{composer_vendor}/http-foundation) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Requires:(php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver})
+Requires:(php-composer(%{composer_vendor}/polyfill-php73) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill-php73) < %{symfony_polyfill_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/browser-kit)
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/console)
+Suggests: php-composer(%{composer_vendor}/dependency-injection)
+%else
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(%{composer_vendor}/contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/contracts) >= %{symfony_contracts_min_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php73) < %{symfony_polyfill_max_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php73) >= %{symfony_polyfill_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-date
+Requires: php-hash
+Requires: php-json
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-session
+Requires: php-spl
+Requires: php-tokenizer
+%if %{with_range_dependencies}
+Suggests: php-pecl(apcu)
+Suggests: php-pecl(opcache)
+Suggests: php-pecl(Xdebug)
+%endif
+
+# Composer
+Provides: php-composer(%{composer_vendor}/http-kernel) = %{version}
+
+%description http-kernel
+The HttpKernel Component provides a structured process for converting a Request
+into a Response by making use of the event dispatcher. It's flexible enough to
+create a full-stack framework (Symfony), a micro-framework (Silex) or an
+advanced CMS system (Drupal).
+
+Configuration reference:
+http://symfony.com/doc/%{symfony4_doc_ver}/reference/configuration/kernel.html
+
+Autoloader: %{symfony4_dir}/Component/HttpKernel/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package inflector
+
+Summary: Symfony Inflector Component (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+
+# Composer
+Provides: php-composer(%{composer_vendor}/inflector) = %{version}
+
+%description inflector
+Symfony Inflector Component (version 4).
+
+Autoloader: %{symfony4_dir}/Component/Inflector/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package intl
+
+Summary: Symfony Intl Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/intl.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+Requires: php-intl
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-date
+Requires: php-json
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-simplexml
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/intl) = %{version}
+
+%description intl
+A PHP replacement layer for the C intl extension [1] that also provides access
+to the localization data of the ICU library [2].
+
+Autoloader: %{symfony4_dir}/Component/Intl/autoload.php
+
+[1] http://www.php.net/manual/en/book.intl.php
+[2] http://site.icu-project.org/
+
+# ------------------------------------------------------------------------------
+
+%package ldap
+
+Summary: An abstraction in front of PHP's LDAP functions (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/ldap.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+Requires: php-composer(%{composer_vendor}/options-resolver) = %{version}
+Requires: php-ldap
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/ldap) = %{version}
+
+%description ldap
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Component/Ldap/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package lock
+
+Summary: Symfony Lock Component (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Suggests: php-pecl(memcached)
+Suggests: php-sysvsem
+%else
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-hash
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/lock) = %{version}
+
+%description lock
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Component/Lock/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package mailer
+
+Summary: Symfony Mailer Component (version 4)
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/mailer.html
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+Requires: %{name}-event-dispatcher = %{version}-%{release}
+Requires: %{name}-mime = %{version}-%{release}
+%if %{with_range_dependencies}
+Requires:(php-composer(egulias/email-validator) >= %{email_validator_min_ver} with php-composer(egulias/email-validator) < %{email_validator_max_ver})
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+%else
+Requires: php-composer(egulias/email-validator) < %{email_validator_max_ver}
+Requires: php-composer(egulias/email-validator) >= %{email_validator_min_ver}
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.3.6
+Requires: php-reflection
+Requires: php-simplexml
+Requires: php-date
+Requires: php-filter
+Requires: php-hash
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/mailer) = %{version}
+Provides: php-composer(%{composer_vendor}/amazon-mailer) = %{version}
+Provides: php-composer(%{composer_vendor}/google-mailer) = %{version}
+Provides: php-composer(%{composer_vendor}/mailchimp-mailer) = %{version}
+Provides: php-composer(%{composer_vendor}/mailgun-mailer) = %{version}
+Provides: php-composer(%{composer_vendor}/postmark-mailer) = %{version}
+Provides: php-composer(%{composer_vendor}/sendgrid-mailer) = %{version}
+
+%description mailer
+The Mailer component helps sending emails.
+
+Autoloader: %{symfony4_dir}/Component/Mailer/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package messenger
+
+Summary: Symfony Messenger Component (version 4)
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/mailer.html
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.1.4
+Requires: php-date
+Requires: php-json
+Requires: php-pcntl
+Requires: php-spl
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/log) >= %{psr_log_min_ver} with php-composer(psr/log) < %{psr_log_max_ver})
+Suggests: php-pecl(amqp)
+%else
+Requires: php-composer(psr/log) < %{psr_log_max_ver}
+Requires: php-composer(psr/log) >= %{psr_log_min_ver}
+%endif
+
+# Composer
+Provides: php-composer(%{composer_vendor}/messenger) = %{version}
+
+%description messenger
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Component/Messenger/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package mime
+
+Summary: Symfony Mime Component (version 4)
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/mime.html
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/polyfill-mbstring) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill-mbstring) < %{symfony_polyfill_max_ver})
+%else
+Requires: php-composer(%{composer_vendor}/polyfill-mbstring) < %{symfony_polyfill_max_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-mbstring) >= %{symfony_polyfill_min_ver}
+%endif
+# phpcompatinfo for version 4.3.6
+Requires: php-reflection
+Requires: php-simplexml
+Requires: php-date
+Requires: php-fileinfo
+Requires: php-intl
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/mime) = %{version}
+
+%description mime
+The Mime component allows manipulating the MIME messages used to
+send emails and provides utilities related to MIME types.
+
+Autoloader: %{symfony4_dir}/Component/Mime/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package options-resolver
+
+Summary: Symfony OptionsResolver Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/options_resolver.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/options-resolver) = %{version}
+
+%description options-resolver
+The OptionsResolver Component helps you configure objects with option arrays.
+It supports default values, option constraints and lazy options.
+
+Autoloader: %{symfony4_dir}/Component/OptionsResolver/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package process
+
+Summary: Symfony Process Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/process.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-posix
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/process) = %{version}
+
+%description process
+The Process component executes commands in sub-processes.
+
+Autoloader: %{symfony4_dir}/Component/Process/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package property-access
+
+Summary: Symfony PropertyAccess Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/property_access.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/inflector) = %{version}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(psr/cache-implementation)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/property-access) = %{version}
+
+%description property-access
+The PropertyAccess component provides function to read and write from/to an
+object or array using a simple string notation.
+
+Autoloader: %{symfony4_dir}/Component/PropertyAccess/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package property-info
+
+Summary: Symfony PropertyInfo Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/property_info.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/inflector) = %{version}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/doctrine-bridge)
+Suggests: php-composer(%{composer_vendor}/serializer)
+Suggests: php-composer(psr/cache-implementation)
+## NOTE: Not php-composer(phpdocumentor/reflection-docblock) to ensure
+## php-phpdocumentor-reflection-docblock2 is not chosen
+Suggests: php-phpdocumentor-reflection-docblock
+Conflicts: php-composer(phpdocumentor/reflection-docblock) = 3.2.0
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-reflection
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/property-info) = %{version}
+
+%description property-info
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Component/PropertyInfo/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package routing
+
+Summary: Symfony Routing Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/routing.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/yaml)
+Suggests: php-composer(%{composer_vendor}/expression-language)
+Suggests: php-composer(%{composer_vendor}/http-foundation)
+Suggests: php-composer(doctrine/annotations)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-spl
+Requires: php-tokenizer
+
+# Composer
+Provides: php-composer(%{composer_vendor}/routing) = %{version}
+
+%description routing
+The Routing Component maps an HTTP request to a set of configuration variables.
+
+Autoloader: %{symfony4_dir}/Component/Routing/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package security
+
+Summary: Symfony Security Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/security.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/event-dispatcher) = %{version}
+Requires: php-composer(%{composer_vendor}/http-foundation) = %{version}
+Requires: php-composer(%{composer_vendor}/http-kernel) = %{version}
+Requires: php-composer(%{composer_vendor}/property-access) = %{version}
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/event-dispatcher-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/event-dispatcher-contracts) < %{symfony_contracts_max_ver})
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/expression-language)
+Suggests: php-composer(%{composer_vendor}/form)
+Suggests: php-composer(%{composer_vendor}/ldap)
+Suggests: php-composer(%{composer_vendor}/routing)
+Suggests: php-composer(%{composer_vendor}/validator)
+Suggests: php-composer(psr/container)
+%else
+Requires: php-composer(%{composer_vendor}/event-dispatcher-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/event-dispatcher-contracts) >= %{symfony_contracts_min_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.4.0
+Requires: php-date
+Requires: php-hash
+Requires: php-json
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-session
+Requires: php-sodium
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/security) = %{version}
+Provides: php-composer(%{composer_vendor}/security-core) = %{version}
+Provides: php-composer(%{composer_vendor}/security-csrf) = %{version}
+Provides: php-composer(%{composer_vendor}/security-guard) = %{version}
+Provides: php-composer(%{composer_vendor}/security-http) = %{version}
+# Composer sub-packages
+Provides: %{name}-security-core = %{version}-%{release}
+Provides: %{name}-security-csrf = %{version}-%{release}
+Provides: %{name}-security-guard = %{version}-%{release}
+Provides: %{name}-security-http = %{version}-%{release}
+
+%description security
+The Security Component provides a complete security system for your web
+application. It ships with facilities for authenticating using HTTP basic
+or digest authentication, interactive form login or X.509 certificate login,
+but also allows you to implement your own authentication strategies.
+Furthermore, the component provides ways to authorize authenticated users
+based on their roles, and it contains an advanced ACL system.
+
+Autoloader: %{symfony4_dir}/Component/Security/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package serializer
+
+Summary: Symfony Serializer Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/serializer.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/http-foundation)
+Suggests: php-composer(%{composer_vendor}/property-access)
+Suggests: php-composer(%{composer_vendor}/property-info)
+Suggests: php-composer(%{composer_vendor}/yaml)
+Suggests: php-composer(doctrine/annotations)
+Suggests: php-composer(doctrine/cache)
+Suggests: php-composer(psr/cache-implementation)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-date
+Requires: php-dom
+Requires: php-filter
+Requires: php-json
+Requires: php-libxml
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-simplexml
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/serializer) = %{version}
+
+%description serializer
+The Serializer Component is meant to be used to turn objects into a specific
+format (XML, JSON, Yaml, ...) and the other way around.
+
+Autoloader: %{symfony4_dir}/Component/Serializer/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package stopwatch
+
+Summary: Symfony Stopwatch Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/stopwatch.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver})
+%else
+Requires: php-composer(%{composer_vendor}/service-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/service-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/stopwatch) = %{version}
+
+%description stopwatch
+Stopwatch component provides a way to profile code.
+
+Autoloader: %{symfony4_dir}/Component/Stopwatch/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package templating
+
+Summary: Symfony Templating Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/templating.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(psr/log)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-hash
+Requires: php-iconv
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/templating) = %{version}
+
+%description templating
+Templating provides all the tools needed to build any kind of template system.
+
+It provides an infrastructure to load template files and optionally monitor
+them for changes. It also provides a concrete template engine implementation
+using PHP with additional tools for escaping and separating templates into
+blocks and layouts.
+
+Autoloader: %{symfony4_dir}/Component/Templating/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package translation
+
+Summary: Symfony Translation Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/translation.html
+
+Requires: %{name}-common = %{version}-%{release}
+%if %{with_range_dependencies}
+# composer.json
+Requires:(php-composer(%{composer_vendor}/translation-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/translation-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/yaml)
+Suggests: php-composer(psr/log)
+%else
+Requires: php-composer(%{composer_vendor}/translation-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/translation-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-dom
+Requires: php-hash
+Requires: php-intl
+Requires: php-json
+Requires: php-libxml
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-simplexml
+Requires: php-spl
+Requires: php-tokenizer
+
+# Composer
+Provides: php-composer(%{composer_vendor}/translation) = %{version}
+Provides: php-composer(%{composer_vendor}/translation-implementation) = 1.0
+
+%description translation
+Translation provides tools for loading translation files and generating
+translated strings from these including support for pluralization.
+
+Autoloader: %{symfony4_dir}/Component/Translation/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package validator
+
+Summary: Symfony Validator Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/validator.html
+
+Requires: php-composer(%{composer_vendor}/translation) = %{version}
+%if %{with_range_dependencies}
+# composer.json
+Requires:(php-composer(%{composer_vendor}/translation-contracts) >= %{symfony_contracts_min_ver} with php-composer(%{composer_vendor}/translation-contracts) < %{symfony_contracts_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/config)
+Suggests: php-composer(%{composer_vendor}/expression-language)
+Suggests: php-composer(%{composer_vendor}/http-foundation)
+Suggests: php-composer(%{composer_vendor}/intl)
+Suggests: php-composer(%{composer_vendor}/property-access)
+Suggests: php-composer(%{composer_vendor}/property-info)
+Suggests: php-composer(%{composer_vendor}/yaml)
+Suggests: php-composer(doctrine/annotations)
+Suggests: php-composer(doctrine/cache)
+Suggests: php-composer(egulias/email-validator)
+Suggests: php-composer(psr/cache-implementation)
+%else
+Requires: php-composer(%{composer_vendor}/translation-contracts) < %{symfony_contracts_max_ver}
+Requires: php-composer(%{composer_vendor}/translation-contracts) >= %{symfony_contracts_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-ctype
+Requires: php-date
+Requires: php-filter
+Requires: php-gd
+Requires: php-intl
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-reflection
+Requires: php-simplexml
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/validator) = %{version}
+
+%description validator
+This component is based on the JSR-303 Bean Validation specification and
+enables specifying validation rules for classes using XML, YAML, PHP or
+annotations, which can then be checked against instances of these classes.
+
+Autoloader: %{symfony4_dir}/Component/Validator/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package var-dumper
+
+Summary: Symfony mechanism for exploring and dumping PHP variables (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/var_dumper.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+# composer.json
+Requires:(php-composer(%{composer_vendor}/polyfill-php72) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill-php72) < %{symfony_polyfill_max_ver})
+# composer.json: optional
+## ext-symfony_debug
+Recommends: php-composer(%{composer_vendor}/console)
+Suggests: php-mysql
+Suggests: php-pecl(amqp)
+Suggests: php-pgsql
+%else
+Requires: php-composer(%{composer_vendor}/polyfill-php72) < %{symfony_polyfill_max_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php72) >= %{symfony_polyfill_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-curl
+Requires: php-date
+Requires: php-dom
+Requires: php-gd
+Requires: php-iconv
+Requires: php-json
+Requires: php-mbstring
+Requires: php-pcre
+Requires: php-posix
+Requires: php-reflection
+Requires: php-spl
+Requires: php-xml
+
+# Composer
+Provides: php-composer(%{composer_vendor}/var-dumper) = %{version}
+
+%description var-dumper
+This component provides a mechanism that allows exploring then dumping any PHP
+variable.
+
+It handles scalars, objects and resources properly, taking hard and soft
+references into account. More than being immune to infinite recursion problems,
+it allows dumping where references link to each other. It explores recursive
+structures using a breadth-first algorithm.
+
+The component exposes all the parts involved in the different steps of cloning
+then dumping a PHP variable, while applying size limits and having specialized
+output formats and methods.
+
+Autoloader: %{symfony4_dir}/Component/VarDumper/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package var-exporter
+
+Summary: Symfony exporting data structure to plain PHP code (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/var_exporter.html
+
+Requires: %{name}-common = %{version}-%{release}
+# phpcompatinfo for version 4.2.2
+Requires: php-reflection
+Requires: php-hash
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/var-exporter) = %{version}
+
+%description var-exporter
+The VarExporter component allows exporting any serializable PHP data structure
+to plain PHP code. While doing so, it preserves all the semantics associated
+with the serialization mechanism of PHP (__wakeup, __sleep, Serializable).
+
+It also provides an instantiator that allows creating and populating objects
+without calling their constructor nor any other methods.
+
+Autoloader: %{symfony4_dir}/Component/VarExporter/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package web-link
+
+Summary: Symfony WebLink Component (version 4)
+License: MIT
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json
+%if %{with_range_dependencies}
+Requires:(php-composer(psr/link) >= %{psr_link_min_ver} with php-composer(psr/link) < %{psr_link_max_ver})
+Requires:(php-composer(%{composer_vendor}/polyfill-php72) >= %{symfony_polyfill_min_ver} with php-composer(%{composer_vendor}/polyfill-php72) < %{symfony_polyfill_max_ver})
+# composer.json: optional
+Suggests: php-composer(%{composer_vendor}/http-kernel)
+%else
+Requires: php-composer(psr/link) < %{psr_link_max_ver}
+Requires: php-composer(psr/link) >= %{psr_link_min_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php72) < %{symfony_polyfill_max_ver}
+Requires: php-composer(%{composer_vendor}/polyfill-php72) >= %{symfony_polyfill_min_ver}
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+# <none>
+
+# Composer
+Provides: php-composer(%{composer_vendor}/web-link) = %{version}
+
+%description web-link
+%{summary}.
+
+Autoloader: %{symfony4_dir}/Component/WebLink/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package workflow
+
+Summary: Symfony Workflow Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/workflow.html
+
+# composer.json
+Requires: php-composer(%{composer_vendor}/property-access) = %{version}
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/workflow) = %{version}
+
+%description workflow
+The Workflow component provides tools for managing a workflow or finite state
+machine.
+
+Autoloader: %{symfony4_dir}/Component/Workflow/autoload.php
+
+# ------------------------------------------------------------------------------
+
+%package yaml
+
+Summary: Symfony Yaml Component (version 4)
+License: MIT
+URL: http://symfony.com/doc/%{symfony4_doc_ver}/components/yaml.html
+
+Requires: %{name}-common = %{version}-%{release}
+# composer.json: optional
+%if %{with_range_dependencies}
+Suggests: php-composer(%{composer_vendor}/console)
+%endif
+# phpcompatinfo for version 4.0.0-beta1
+Requires: php-json
+Requires: php-pcre
+Requires: php-spl
+
+# Composer
+Provides: php-composer(%{composer_vendor}/yaml) = %{version}
+
+%description yaml
+The YAML Component loads and dumps YAML files.
+
+Autoloader: %{symfony4_dir}/Component/Yaml/autoload.php
+
+# ##############################################################################
+
+
+%prep
+%setup -qn %{github_name}-%{github_commit}
+%patch0 -p1
+
+cp %{SOURCE1} .
+sed 's#__PHPDIR__#%{phpdir}#' -i $(basename %{SOURCE1})
+
+: Remove unnecessary files
+find src -name '.git*' -delete
+
+: Provided as separate package
+rm -rf src/Symfony/Contracts
+
+
+%build
+: Create common autoloader
+cat <<'AUTOLOAD' | tee src/Symfony/autoload-common.php
+<?php
+/**
+ * Autoloader for %{name} and its' dependencies
+ * (created by %{name}-%{version}-%{release}).
+ */
+require_once '%{phpdir}/Fedora/Autoloader/autoload.php';
+
+if (!defined('FEDORA_SYMFONY4_PHP_DIR')) {
+ define('FEDORA_SYMFONY4_PHP_DIR', '%{phpdir}');
+}
+
+if (!defined('FEDORA_SYMFONY4_DIR')) {
+ define('FEDORA_SYMFONY4_DIR', __DIR__);
+}
+
+\Fedora\Autoloader\Dependencies::required([
+ '%{phpdir}/Composer/autoload.php',
+]);
+AUTOLOAD
+
+: Create individual sub-package autoloaders
+./%{name}-generate-autoloaders.php | tee /tmp/autoloader.lst
+
+for AUTOLOADER in $(cat /tmp/autoloader.lst)
+do
+ echo ">>>>>>>>>>>>>>>>>>>> Autoloader: $AUTOLOADER"
+ sed \
+ -e 's#__VERSION__#%{version}#' \
+ -e 's#__RELEASE__#%{release}#' \
+ -e 's#__PHPDIR__#%{phpdir}#' \
+ -i $AUTOLOADER
+ cat $AUTOLOADER
+done
+
+: Create whole framework autoloader
+cat <<AUTOLOAD | tee src/Symfony/autoload.php
+<?php
+/**
+ * Autoloader for %{name} and its' dependencies
+ * (created by %{name}-%{version}-%{release}).
+ */
+require_once __DIR__.'/autoload-common.php';
+
+\Fedora\Autoloader\Dependencies::required(glob(__DIR__ . '/*/*/autoload.php'));
+AUTOLOAD
+
+: Create per-type autoloaders
+for TYPE in Bridge Bundle Component
+do
+ cat <<AUTOLOAD | tee src/Symfony/${TYPE}/autoload.php
+<?php
+/**
+ * Autoloader for %{name} and its' dependencies
+ * (created by %{name}-%{version}-%{release}).
+ */
+require_once dirname(__DIR__).'/autoload-common.php';
+
+\Fedora\Autoloader\Dependencies::required(glob(__DIR__ . '/*/autoload.php'));
+AUTOLOAD
+done
+
+: Create dummy Composer autoloader for tests
+%if %{with_tests}
+pushd src/Symfony
+cat <<COMPOSER_JSON | tee composer.json
+{
+ "autoload": {
+ "files": [
+ "autoload.php"
+ ]
+ }
+}
+COMPOSER_JSON
+composer dumpautoload
+rm -f composer.json
+ln -s ../autoload.php vendor/composer/autoload.php
+popd
+%endif
+
+
+%install
+mkdir -p %{buildroot}%{symfony4_dir} %{buildroot}%{_bindir}
+cp -rp src/Symfony/* %{buildroot}%{symfony4_dir}/
+mv %{buildroot}%{symfony4_dir}/Component/VarDumper/Resources/bin/var-dump-server \
+ %{buildroot}%{_bindir}/%{name}-var-dump-server
+
+# Symlink main package docs to common sub-package docs
+mkdir -p %{buildroot}%{_docdir}
+%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8
+ln -s %{name}-common %{buildroot}%{_docdir}/%{name}
+%else
+ln -s %{name}-common-%{version} %{buildroot}%{_docdir}/%{name}-%{version}
+%endif
+
+
+%check
+%if %{with_tests}
+: Ensure TZ is set
+cp -pf %{_sysconfdir}/php.ini .
+echo "date.timezone=UTC" >> php.ini
+export PHPRC=$PWD/php.ini
+
+: Set up PSR-0 path for PHPUnit
+mkdir psr0
+ln -s %{buildroot}%{symfony4_dir} psr0/Symfony
+PSR0=$(pwd)/psr0/Symfony
+
+: Modify PHPUnit config
+sed -e 's#vendor/autoload\.php#bootstrap.php#' \
+ -e 's#\./src/Symfony/#%{buildroot}%{symfony4_dir}/#' \
+ phpunit.xml.dist > phpunit.xml
+
+: Skip Intl JSON tests
+rm -rf %{buildroot}%{symfony4_dir}/Component/Intl/Tests/Data/Provider/Json
+
+: Run tests
+RET=0
+for PKG in %{buildroot}%{symfony4_dir}/*/*; do
+%if 0%{?rhel} == 6
+ if [ "$(basename $PKG)" = "DomCrawler" ]; then
+ : Skip as libxml is too old
+ continue
+ fi
+%endif
+
+ if [ "$(basename $PKG)" = "PhpUnit" ]; then
+ continue
+ elif [ "$(basename $PKG)" = "composer" ]; then
+ continue
+ elif [ -d $PKG ]; then
+ echo -e "\n>>>>>>>>>>>>>>>>>>>> ${PKG}\n"
+
+ : Create tests bootstrap
+ cat << BOOTSTRAP | tee bootstrap.php
+<?php
+require_once '${PKG}/autoload-dev.php';
+require_once '%{buildroot}%{symfony4_dir}/Bridge/PhpUnit/autoload.php';
+require_once '%{buildroot}%{symfony4_dir}/vendor/autoload.php';
+BOOTSTRAP
+
+ %{_bindir}/php -d include_path=.:${PSR0}:%{buildroot}%{phpdir}:%{phpdir} \
+ %{_bindir}/phpunit7 --exclude-group benchmark $PKG || RET=1
+ fi
+done
+exit $RET
+%else
+: Tests skipped
+%endif
+
+
+%{!?_licensedir:%global license %%doc}
+
+%files
+%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8
+%doc %{_docdir}/%{name}
+%else
+%doc %{_docdir}/%{name}-%{version}
+%endif
+%{symfony4_dir}/Bundle/FullStack.php
+
+
+# ##############################################################################
+
+%files common
+
+%doc *.md composer.json
+%license LICENSE
+
+%dir %{symfony4_dir}
+ %{symfony4_dir}/autoload.php
+ %{symfony4_dir}/autoload-common.php
+%dir %{symfony4_dir}/Bridge
+ %{symfony4_dir}/Bridge/autoload.php
+%dir %{symfony4_dir}/Bundle
+ %{symfony4_dir}/Bundle/autoload.php
+%dir %{symfony4_dir}/Component
+ %{symfony4_dir}/Component/autoload.php
+%if %{with_tests}
+%exclude %{symfony4_dir}/vendor
+%endif
+
+# ------------------------------------------------------------------------------
+
+%files doctrine-bridge
+
+%license src/Symfony/Bridge/Doctrine/LICENSE
+%doc src/Symfony/Bridge/Doctrine/*.md
+%doc src/Symfony/Bridge/Doctrine/composer.json
+
+%{symfony4_dir}/Bridge/Doctrine
+%exclude %{symfony4_dir}/Bridge/Doctrine/LICENSE
+%exclude %{symfony4_dir}/Bridge/Doctrine/*.md
+%exclude %{symfony4_dir}/Bridge/Doctrine/autoload-dev.php
+%exclude %{symfony4_dir}/Bridge/Doctrine/composer.json
+%exclude %{symfony4_dir}/Bridge/Doctrine/phpunit.*
+%exclude %{symfony4_dir}/Bridge/Doctrine/Tests
+
+# ------------------------------------------------------------------------------
+
+%files monolog-bridge
+
+%license src/Symfony/Bridge/Monolog/LICENSE
+%doc src/Symfony/Bridge/Monolog/*.md
+%doc src/Symfony/Bridge/Monolog/composer.json
+
+%{symfony4_dir}/Bridge/Monolog
+%exclude %{symfony4_dir}/Bridge/Monolog/LICENSE
+%exclude %{symfony4_dir}/Bridge/Monolog/*.md
+%exclude %{symfony4_dir}/Bridge/Monolog/autoload-dev.php
+%exclude %{symfony4_dir}/Bridge/Monolog/composer.json
+%exclude %{symfony4_dir}/Bridge/Monolog/phpunit.*
+%exclude %{symfony4_dir}/Bridge/Monolog/Tests
+
+# ------------------------------------------------------------------------------
+
+%files phpunit-bridge
+
+%license src/Symfony/Bridge/PhpUnit/LICENSE
+%doc src/Symfony/Bridge/PhpUnit/*.md
+%doc src/Symfony/Bridge/PhpUnit/composer.json
+
+%{symfony4_dir}/Bridge/PhpUnit
+%exclude %{symfony4_dir}/Bridge/PhpUnit/LICENSE
+%exclude %{symfony4_dir}/Bridge/PhpUnit/*.md
+%exclude %{symfony4_dir}/Bridge/PhpUnit/autoload-dev.php
+%exclude %{symfony4_dir}/Bridge/PhpUnit/composer.json
+%exclude %{symfony4_dir}/Bridge/PhpUnit/phpunit.*
+
+# ------------------------------------------------------------------------------
+
+%files proxy-manager-bridge
+
+%license src/Symfony/Bridge/ProxyManager/LICENSE
+%doc src/Symfony/Bridge/ProxyManager/*.md
+%doc src/Symfony/Bridge/ProxyManager/composer.json
+
+%{symfony4_dir}/Bridge/ProxyManager
+%exclude %{symfony4_dir}/Bridge/ProxyManager/LICENSE
+%exclude %{symfony4_dir}/Bridge/ProxyManager/*.md
+%exclude %{symfony4_dir}/Bridge/ProxyManager/autoload-dev.php
+%exclude %{symfony4_dir}/Bridge/ProxyManager/composer.json
+%exclude %{symfony4_dir}/Bridge/ProxyManager/phpunit.*
+%exclude %{symfony4_dir}/Bridge/ProxyManager/Tests
+
+# ------------------------------------------------------------------------------
+
+%files twig-bridge
+
+%license src/Symfony/Bridge/Twig/LICENSE
+%doc src/Symfony/Bridge/Twig/*.md
+%doc src/Symfony/Bridge/Twig/composer.json
+
+%{symfony4_dir}/Bridge/Twig
+%exclude %{symfony4_dir}/Bridge/Twig/LICENSE
+%exclude %{symfony4_dir}/Bridge/Twig/*.md
+%exclude %{symfony4_dir}/Bridge/Twig/autoload-dev.php
+%exclude %{symfony4_dir}/Bridge/Twig/composer.json
+%exclude %{symfony4_dir}/Bridge/Twig/phpunit.*
+%exclude %{symfony4_dir}/Bridge/Twig/Tests
+
+# ------------------------------------------------------------------------------
+
+%files debug-bundle
+
+#%%doc src/Symfony/Bundle/DebugBundle/*.md
+%doc src/Symfony/Bundle/DebugBundle/composer.json
+%license src/Symfony/Bundle/DebugBundle/LICENSE
+
+%{symfony4_dir}/Bundle/DebugBundle
+#%%exclude %%{symfony4_dir}/Bundle/DebugBundle/*.md
+%exclude %{symfony4_dir}/Bundle/DebugBundle/autoload-dev.php
+%exclude %{symfony4_dir}/Bundle/DebugBundle/composer.json
+%exclude %{symfony4_dir}/Bundle/DebugBundle/LICENSE
+%exclude %{symfony4_dir}/Bundle/DebugBundle/phpunit.*
+%exclude %{symfony4_dir}/Bundle/DebugBundle/Tests
+
+# ------------------------------------------------------------------------------
+
+%files framework-bundle
+
+%doc src/Symfony/Bundle/FrameworkBundle/*.md
+%doc src/Symfony/Bundle/FrameworkBundle/composer.json
+%license src/Symfony/Bundle/FrameworkBundle/LICENSE
+
+%{symfony4_dir}/Bundle/FrameworkBundle
+%exclude %{symfony4_dir}/Bundle/FrameworkBundle/*.md
+%exclude %{symfony4_dir}/Bundle/FrameworkBundle/autoload-dev.php
+%exclude %{symfony4_dir}/Bundle/FrameworkBundle/composer.json
+%exclude %{symfony4_dir}/Bundle/FrameworkBundle/LICENSE
+%exclude %{symfony4_dir}/Bundle/FrameworkBundle/phpunit.*
+%exclude %{symfony4_dir}/Bundle/FrameworkBundle/Tests
+
+# ------------------------------------------------------------------------------
+
+%files security-bundle
+
+%doc src/Symfony/Bundle/SecurityBundle/*.md
+%doc src/Symfony/Bundle/SecurityBundle/composer.json
+%license src/Symfony/Bundle/SecurityBundle/LICENSE
+
+%{symfony4_dir}/Bundle/SecurityBundle
+%exclude %{symfony4_dir}/Bundle/SecurityBundle/*.md
+%exclude %{symfony4_dir}/Bundle/SecurityBundle/autoload-dev.php
+%exclude %{symfony4_dir}/Bundle/SecurityBundle/composer.json
+%exclude %{symfony4_dir}/Bundle/SecurityBundle/LICENSE
+%exclude %{symfony4_dir}/Bundle/SecurityBundle/phpunit.*
+%exclude %{symfony4_dir}/Bundle/SecurityBundle/Tests
+
+# ------------------------------------------------------------------------------
+
+%files twig-bundle
+
+%doc src/Symfony/Bundle/TwigBundle/*.md
+%doc src/Symfony/Bundle/TwigBundle/composer.json
+%license src/Symfony/Bundle/TwigBundle/LICENSE
+
+%{symfony4_dir}/Bundle/TwigBundle
+%exclude %{symfony4_dir}/Bundle/TwigBundle/*.md
+%exclude %{symfony4_dir}/Bundle/TwigBundle/autoload-dev.php
+%exclude %{symfony4_dir}/Bundle/TwigBundle/composer.json
+%exclude %{symfony4_dir}/Bundle/TwigBundle/LICENSE
+%exclude %{symfony4_dir}/Bundle/TwigBundle/phpunit.*
+%exclude %{symfony4_dir}/Bundle/TwigBundle/Tests
+
+# ------------------------------------------------------------------------------
+
+%files web-profiler-bundle
+
+%doc src/Symfony/Bundle/WebProfilerBundle/*.md
+%doc src/Symfony/Bundle/WebProfilerBundle/composer.json
+%license src/Symfony/Bundle/WebProfilerBundle/LICENSE
+%license src/Symfony/Bundle/WebProfilerBundle/Resources/ICONS_LICENSE.txt
+
+%{symfony4_dir}/Bundle/WebProfilerBundle
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/*.md
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/autoload-dev.php
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/composer.json
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/LICENSE
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/phpunit.*
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/Resources/ICONS_LICENSE.txt
+%exclude %{symfony4_dir}/Bundle/WebProfilerBundle/Tests
+
+# ------------------------------------------------------------------------------
+
+%files web-server-bundle
+
+%doc src/Symfony/Bundle/WebServerBundle/*.md
+%doc src/Symfony/Bundle/WebServerBundle/composer.json
+%license src/Symfony/Bundle/WebServerBundle/LICENSE
+
+%{symfony4_dir}/Bundle/WebServerBundle
+%exclude %{symfony4_dir}/Bundle/WebServerBundle/*.md
+%exclude %{symfony4_dir}/Bundle/WebServerBundle/autoload-dev.php
+%exclude %{symfony4_dir}/Bundle/WebServerBundle/composer.json
+%exclude %{symfony4_dir}/Bundle/WebServerBundle/LICENSE
+%exclude %{symfony4_dir}/Bundle/WebServerBundle/phpunit.*
+%exclude %{symfony4_dir}/Bundle/WebServerBundle/Tests
+
+# ------------------------------------------------------------------------------
+
+%files asset
+
+%license src/Symfony/Component/Asset/LICENSE
+%doc src/Symfony/Component/Asset/*.md
+%doc src/Symfony/Component/Asset/composer.json
+
+%{symfony4_dir}/Component/Asset
+%exclude %{symfony4_dir}/Component/Asset/LICENSE
+%exclude %{symfony4_dir}/Component/Asset/*.md
+%exclude %{symfony4_dir}/Component/Asset/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Asset/composer.json
+%exclude %{symfony4_dir}/Component/Asset/phpunit.*
+%exclude %{symfony4_dir}/Component/Asset/Tests
+
+# ------------------------------------------------------------------------------
+
+%files browser-kit
+
+%license src/Symfony/Component/BrowserKit/LICENSE
+%doc src/Symfony/Component/BrowserKit/*.md
+%doc src/Symfony/Component/BrowserKit/composer.json
+
+%{symfony4_dir}/Component/BrowserKit
+%exclude %{symfony4_dir}/Component/BrowserKit/LICENSE
+%exclude %{symfony4_dir}/Component/BrowserKit/*.md
+%exclude %{symfony4_dir}/Component/BrowserKit/autoload-dev.php
+%exclude %{symfony4_dir}/Component/BrowserKit/composer.json
+%exclude %{symfony4_dir}/Component/BrowserKit/phpunit.*
+%exclude %{symfony4_dir}/Component/BrowserKit/Tests
+
+# ------------------------------------------------------------------------------
+
+%files cache
+
+%license src/Symfony/Component/Cache/LICENSE
+%doc src/Symfony/Component/Cache/*.md
+%doc src/Symfony/Component/Cache/composer.json
+
+%{symfony4_dir}/Component/Cache
+%exclude %{symfony4_dir}/Component/Cache/LICENSE
+%exclude %{symfony4_dir}/Component/Cache/*.md
+%exclude %{symfony4_dir}/Component/Cache/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Cache/composer.json
+%exclude %{symfony4_dir}/Component/Cache/phpunit.*
+%exclude %{symfony4_dir}/Component/Cache/Tests
+
+# ------------------------------------------------------------------------------
+
+%files config
+
+%license src/Symfony/Component/Config/LICENSE
+%doc src/Symfony/Component/Config/*.md
+%doc src/Symfony/Component/Config/composer.json
+
+%{symfony4_dir}/Component/Config
+%exclude %{symfony4_dir}/Component/Config/LICENSE
+%exclude %{symfony4_dir}/Component/Config/*.md
+%exclude %{symfony4_dir}/Component/Config/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Config/composer.json
+%exclude %{symfony4_dir}/Component/Config/phpunit.*
+%exclude %{symfony4_dir}/Component/Config/Tests
+
+# ------------------------------------------------------------------------------
+
+%files console
+
+%license src/Symfony/Component/Console/LICENSE
+%doc src/Symfony/Component/Console/*.md
+%doc src/Symfony/Component/Console/composer.json
+
+%{symfony4_dir}/Component/Console
+%exclude %{symfony4_dir}/Component/Console/LICENSE
+%exclude %{symfony4_dir}/Component/Console/*.md
+%exclude %{symfony4_dir}/Component/Console/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Console/composer.json
+%exclude %{symfony4_dir}/Component/Console/phpunit.*
+%exclude %{symfony4_dir}/Component/Console/Tests
+
+# ------------------------------------------------------------------------------
+
+%files css-selector
+
+%license src/Symfony/Component/CssSelector/LICENSE
+%doc src/Symfony/Component/CssSelector/*.md
+%doc src/Symfony/Component/CssSelector/composer.json
+
+%{symfony4_dir}/Component/CssSelector
+%exclude %{symfony4_dir}/Component/CssSelector/LICENSE
+%exclude %{symfony4_dir}/Component/CssSelector/*.md
+%exclude %{symfony4_dir}/Component/CssSelector/autoload-dev.php
+%exclude %{symfony4_dir}/Component/CssSelector/composer.json
+%exclude %{symfony4_dir}/Component/CssSelector/phpunit.*
+%exclude %{symfony4_dir}/Component/CssSelector/Tests
+
+# ------------------------------------------------------------------------------
+
+%files debug
+
+%license src/Symfony/Component/Debug/LICENSE
+%doc src/Symfony/Component/Debug/*.md
+%doc src/Symfony/Component/Debug/composer.json
+
+%{symfony4_dir}/Component/Debug
+%exclude %{symfony4_dir}/Component/Debug/LICENSE
+%exclude %{symfony4_dir}/Component/Debug/*.md
+%exclude %{symfony4_dir}/Component/Debug/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Debug/composer.json
+%exclude %{symfony4_dir}/Component/Debug/phpunit.*
+%exclude %{symfony4_dir}/Component/Debug/Tests
+#exclude %%{symfony4_dir}/Component/Debug/Resources/ext
+
+# ------------------------------------------------------------------------------
+
+%files dependency-injection
+
+%license src/Symfony/Component/DependencyInjection/LICENSE
+%doc src/Symfony/Component/DependencyInjection/*.md
+%doc src/Symfony/Component/DependencyInjection/composer.json
+
+%{symfony4_dir}/Component/DependencyInjection
+%exclude %{symfony4_dir}/Component/DependencyInjection/LICENSE
+%exclude %{symfony4_dir}/Component/DependencyInjection/*.md
+%exclude %{symfony4_dir}/Component/DependencyInjection/autoload-dev.php
+%exclude %{symfony4_dir}/Component/DependencyInjection/composer.json
+%exclude %{symfony4_dir}/Component/DependencyInjection/phpunit.*
+%exclude %{symfony4_dir}/Component/DependencyInjection/Tests
+
+# ------------------------------------------------------------------------------
+
+%files dotenv
+
+%license src/Symfony/Component/Dotenv/LICENSE
+%doc src/Symfony/Component/Dotenv/*.md
+%doc src/Symfony/Component/Dotenv/composer.json
+
+%{symfony4_dir}/Component/Dotenv
+%exclude %{symfony4_dir}/Component/Dotenv/LICENSE
+%exclude %{symfony4_dir}/Component/Dotenv/*.md
+%exclude %{symfony4_dir}/Component/Dotenv/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Dotenv/composer.json
+%exclude %{symfony4_dir}/Component/Dotenv/phpunit.*
+%exclude %{symfony4_dir}/Component/Dotenv/Tests
+
+# ------------------------------------------------------------------------------
+
+%files dom-crawler
+
+%license src/Symfony/Component/DomCrawler/LICENSE
+%doc src/Symfony/Component/DomCrawler/*.md
+%doc src/Symfony/Component/DomCrawler/composer.json
+
+%{symfony4_dir}/Component/DomCrawler
+%exclude %{symfony4_dir}/Component/DomCrawler/LICENSE
+%exclude %{symfony4_dir}/Component/DomCrawler/*.md
+%exclude %{symfony4_dir}/Component/DomCrawler/autoload-dev.php
+%exclude %{symfony4_dir}/Component/DomCrawler/composer.json
+%exclude %{symfony4_dir}/Component/DomCrawler/phpunit.*
+%exclude %{symfony4_dir}/Component/DomCrawler/Tests
+
+# ------------------------------------------------------------------------------
+
+%files error-handler
+
+%license src/Symfony/Component/ErrorHandler/LICENSE
+%doc src/Symfony/Component/ErrorHandler/*.md
+%doc src/Symfony/Component/ErrorHandler/composer.json
+
+%{symfony4_dir}/Component/ErrorHandler
+%exclude %{symfony4_dir}/Component/ErrorHandler/LICENSE
+%exclude %{symfony4_dir}/Component/ErrorHandler/*.md
+%exclude %{symfony4_dir}/Component/ErrorHandler/autoload-dev.php
+%exclude %{symfony4_dir}/Component/ErrorHandler/composer.json
+#exclude #{symfony4_dir}/Component/ErrorHandler/phpunit.*
+#exclude #{symfony4_dir}/Component/ErrorHandler/Tests
+
+# ------------------------------------------------------------------------------
+
+%files event-dispatcher
+
+%license src/Symfony/Component/EventDispatcher/LICENSE
+%doc src/Symfony/Component/EventDispatcher/*.md
+%doc src/Symfony/Component/EventDispatcher/composer.json
+
+%{symfony4_dir}/Component/EventDispatcher
+%exclude %{symfony4_dir}/Component/EventDispatcher/LICENSE
+%exclude %{symfony4_dir}/Component/EventDispatcher/*.md
+%exclude %{symfony4_dir}/Component/EventDispatcher/autoload-dev.php
+%exclude %{symfony4_dir}/Component/EventDispatcher/composer.json
+%exclude %{symfony4_dir}/Component/EventDispatcher/phpunit.*
+%exclude %{symfony4_dir}/Component/EventDispatcher/Tests
+
+# ------------------------------------------------------------------------------
+
+%files expression-language
+
+%license src/Symfony/Component/ExpressionLanguage/LICENSE
+%doc src/Symfony/Component/ExpressionLanguage/*.md
+%doc src/Symfony/Component/ExpressionLanguage/composer.json
+
+%{symfony4_dir}/Component/ExpressionLanguage
+%exclude %{symfony4_dir}/Component/ExpressionLanguage/LICENSE
+%exclude %{symfony4_dir}/Component/ExpressionLanguage/*.md
+%exclude %{symfony4_dir}/Component/ExpressionLanguage/autoload-dev.php
+%exclude %{symfony4_dir}/Component/ExpressionLanguage/composer.json
+%exclude %{symfony4_dir}/Component/ExpressionLanguage/phpunit.*
+%exclude %{symfony4_dir}/Component/ExpressionLanguage/Tests
+
+# ------------------------------------------------------------------------------
+
+%files filesystem
+
+%license src/Symfony/Component/Filesystem/LICENSE
+%doc src/Symfony/Component/Filesystem/*.md
+%doc src/Symfony/Component/Filesystem/composer.json
+
+%{symfony4_dir}/Component/Filesystem
+%exclude %{symfony4_dir}/Component/Filesystem/LICENSE
+%exclude %{symfony4_dir}/Component/Filesystem/*.md
+%exclude %{symfony4_dir}/Component/Filesystem/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Filesystem/composer.json
+%exclude %{symfony4_dir}/Component/Filesystem/phpunit.*
+%exclude %{symfony4_dir}/Component/Filesystem/Tests
+
+# ------------------------------------------------------------------------------
+
+%files finder
+
+%license src/Symfony/Component/Finder/LICENSE
+%doc src/Symfony/Component/Finder/*.md
+%doc src/Symfony/Component/Finder/composer.json
+
+%{symfony4_dir}/Component/Finder
+%exclude %{symfony4_dir}/Component/Finder/LICENSE
+%exclude %{symfony4_dir}/Component/Finder/*.md
+%exclude %{symfony4_dir}/Component/Finder/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Finder/composer.json
+%exclude %{symfony4_dir}/Component/Finder/phpunit.*
+%exclude %{symfony4_dir}/Component/Finder/Tests
+
+# ------------------------------------------------------------------------------
+
+%files form
+
+%license src/Symfony/Component/Form/LICENSE
+%doc src/Symfony/Component/Form/*.md
+%doc src/Symfony/Component/Form/composer.json
+
+%{symfony4_dir}/Component/Form
+%exclude %{symfony4_dir}/Component/Form/LICENSE
+%exclude %{symfony4_dir}/Component/Form/*.md
+%exclude %{symfony4_dir}/Component/Form/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Form/composer.json
+%exclude %{symfony4_dir}/Component/Form/phpunit.*
+%exclude %{symfony4_dir}/Component/Form/Tests
+
+# ------------------------------------------------------------------------------
+
+%files http-client
+
+%license src/Symfony/Component/HttpClient/LICENSE
+%doc src/Symfony/Component/HttpClient/*.md
+%doc src/Symfony/Component/HttpClient/composer.json
+
+%{symfony4_dir}/Component/HttpClient
+%exclude %{symfony4_dir}/Component/HttpClient/LICENSE
+%exclude %{symfony4_dir}/Component/HttpClient/*.md
+%exclude %{symfony4_dir}/Component/HttpClient/autoload-dev.php
+%exclude %{symfony4_dir}/Component/HttpClient/composer.json
+%exclude %{symfony4_dir}/Component/HttpClient/phpunit.*
+%exclude %{symfony4_dir}/Component/HttpClient/Tests
+
+# ------------------------------------------------------------------------------
+
+%files http-foundation
+
+%license src/Symfony/Component/HttpFoundation/LICENSE
+%doc src/Symfony/Component/HttpFoundation/*.md
+%doc src/Symfony/Component/HttpFoundation/composer.json
+
+%{symfony4_dir}/Component/HttpFoundation
+%exclude %{symfony4_dir}/Component/HttpFoundation/LICENSE
+%exclude %{symfony4_dir}/Component/HttpFoundation/*.md
+%exclude %{symfony4_dir}/Component/HttpFoundation/autoload-dev.php
+%exclude %{symfony4_dir}/Component/HttpFoundation/composer.json
+%exclude %{symfony4_dir}/Component/HttpFoundation/phpunit.*
+%exclude %{symfony4_dir}/Component/HttpFoundation/Tests
+
+# ------------------------------------------------------------------------------
+
+%files http-kernel
+
+%license src/Symfony/Component/HttpKernel/LICENSE
+%doc src/Symfony/Component/HttpKernel/*.md
+%doc src/Symfony/Component/HttpKernel/composer.json
+
+%{symfony4_dir}/Component/HttpKernel
+%exclude %{symfony4_dir}/Component/HttpKernel/LICENSE
+%exclude %{symfony4_dir}/Component/HttpKernel/*.md
+%exclude %{symfony4_dir}/Component/HttpKernel/autoload-dev.php
+%exclude %{symfony4_dir}/Component/HttpKernel/composer.json
+%exclude %{symfony4_dir}/Component/HttpKernel/phpunit.*
+%exclude %{symfony4_dir}/Component/HttpKernel/Tests
+
+# ------------------------------------------------------------------------------
+
+%files inflector
+
+%license src/Symfony/Component/Inflector/LICENSE
+%doc src/Symfony/Component/Inflector/*.md
+%doc src/Symfony/Component/Inflector/composer.json
+
+%{symfony4_dir}/Component/Inflector
+%exclude %{symfony4_dir}/Component/Inflector/LICENSE
+%exclude %{symfony4_dir}/Component/Inflector/*.md
+%exclude %{symfony4_dir}/Component/Inflector/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Inflector/composer.json
+%exclude %{symfony4_dir}/Component/Inflector/phpunit.*
+%exclude %{symfony4_dir}/Component/Inflector/Tests
+
+# ------------------------------------------------------------------------------
+
+%files intl
+
+%license src/Symfony/Component/Intl/LICENSE
+%doc src/Symfony/Component/Intl/*.md
+%doc src/Symfony/Component/Intl/composer.json
+
+%{symfony4_dir}/Component/Intl
+%exclude %{symfony4_dir}/Component/Intl/LICENSE
+%exclude %{symfony4_dir}/Component/Intl/*.md
+%exclude %{symfony4_dir}/Component/Intl/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Intl/composer.json
+%exclude %{symfony4_dir}/Component/Intl/phpunit.*
+%exclude %{symfony4_dir}/Component/Intl/Tests
+
+# ------------------------------------------------------------------------------
+
+%files ldap
+
+%license src/Symfony/Component/Ldap/LICENSE
+%doc src/Symfony/Component/Ldap/*.md
+%doc src/Symfony/Component/Ldap/composer.json
+
+%{symfony4_dir}/Component/Ldap
+%exclude %{symfony4_dir}/Component/Ldap/LICENSE
+%exclude %{symfony4_dir}/Component/Ldap/*.md
+%exclude %{symfony4_dir}/Component/Ldap/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Ldap/composer.json
+%exclude %{symfony4_dir}/Component/Ldap/phpunit.*
+%exclude %{symfony4_dir}/Component/Ldap/Tests
+
+# ------------------------------------------------------------------------------
+
+%files lock
+
+%license src/Symfony/Component/Lock/LICENSE
+%doc src/Symfony/Component/Lock/*.md
+%doc src/Symfony/Component/Lock/composer.json
+
+%{symfony4_dir}/Component/Lock
+%exclude %{symfony4_dir}/Component/Lock/LICENSE
+%exclude %{symfony4_dir}/Component/Lock/*.md
+%exclude %{symfony4_dir}/Component/Lock/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Lock/composer.json
+%exclude %{symfony4_dir}/Component/Lock/phpunit.*
+%exclude %{symfony4_dir}/Component/Lock/Tests
+
+# ------------------------------------------------------------------------------
+
+%files mailer
+
+%license src/Symfony/Component/Mailer/LICENSE
+%doc src/Symfony/Component/Mailer/*.md
+%doc src/Symfony/Component/Mailer/composer.json
+
+%{symfony4_dir}/Component/Mailer
+%exclude %{symfony4_dir}/Component/Mailer/LICENSE
+%exclude %{symfony4_dir}/Component/Mailer/*.md
+%exclude %{symfony4_dir}/Component/Mailer/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Mailer/composer.json
+%exclude %{symfony4_dir}/Component/Mailer/phpunit.*
+%exclude %{symfony4_dir}/Component/Mailer/Tests
+
+# ------------------------------------------------------------------------------
+
+%files messenger
+
+%license src/Symfony/Component/Messenger/LICENSE
+%doc src/Symfony/Component/Messenger/*.md
+%doc src/Symfony/Component/Messenger/composer.json
+
+%{symfony4_dir}/Component/Messenger
+%exclude %{symfony4_dir}/Component/Messenger/LICENSE
+%exclude %{symfony4_dir}/Component/Messenger/*.md
+%exclude %{symfony4_dir}/Component/Messenger/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Messenger/composer.json
+%exclude %{symfony4_dir}/Component/Messenger/phpunit.*
+%exclude %{symfony4_dir}/Component/Messenger/Tests
+
+# ------------------------------------------------------------------------------
+
+%files mime
+
+%license src/Symfony/Component/Mime/LICENSE
+%doc src/Symfony/Component/Mime/*.md
+%doc src/Symfony/Component/Mime/composer.json
+
+%{symfony4_dir}/Component/Mime
+%exclude %{symfony4_dir}/Component/Mime/LICENSE
+%exclude %{symfony4_dir}/Component/Mime/*.md
+%exclude %{symfony4_dir}/Component/Mime/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Mime/composer.json
+%exclude %{symfony4_dir}/Component/Mime/phpunit.*
+%exclude %{symfony4_dir}/Component/Mime/Tests
+
+# ------------------------------------------------------------------------------
+
+%files options-resolver
+
+%license src/Symfony/Component/OptionsResolver/LICENSE
+%doc src/Symfony/Component/OptionsResolver/*.md
+%doc src/Symfony/Component/OptionsResolver/composer.json
+
+%{symfony4_dir}/Component/OptionsResolver
+%exclude %{symfony4_dir}/Component/OptionsResolver/LICENSE
+%exclude %{symfony4_dir}/Component/OptionsResolver/*.md
+%exclude %{symfony4_dir}/Component/OptionsResolver/autoload-dev.php
+%exclude %{symfony4_dir}/Component/OptionsResolver/composer.json
+%exclude %{symfony4_dir}/Component/OptionsResolver/phpunit.*
+%exclude %{symfony4_dir}/Component/OptionsResolver/Tests
+
+# ------------------------------------------------------------------------------
+
+%files process
+
+%license src/Symfony/Component/Process/LICENSE
+%doc src/Symfony/Component/Process/*.md
+%doc src/Symfony/Component/Process/composer.json
+
+%{symfony4_dir}/Component/Process
+%exclude %{symfony4_dir}/Component/Process/LICENSE
+%exclude %{symfony4_dir}/Component/Process/*.md
+%exclude %{symfony4_dir}/Component/Process/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Process/composer.json
+%exclude %{symfony4_dir}/Component/Process/phpunit.*
+%exclude %{symfony4_dir}/Component/Process/Tests
+
+# ------------------------------------------------------------------------------
+
+%files property-access
+
+%license src/Symfony/Component/PropertyAccess/LICENSE
+%doc src/Symfony/Component/PropertyAccess/*.md
+%doc src/Symfony/Component/PropertyAccess/composer.json
+
+%{symfony4_dir}/Component/PropertyAccess
+%exclude %{symfony4_dir}/Component/PropertyAccess/LICENSE
+%exclude %{symfony4_dir}/Component/PropertyAccess/*.md
+%exclude %{symfony4_dir}/Component/PropertyAccess/autoload-dev.php
+%exclude %{symfony4_dir}/Component/PropertyAccess/composer.json
+%exclude %{symfony4_dir}/Component/PropertyAccess/phpunit.*
+%exclude %{symfony4_dir}/Component/PropertyAccess/Tests
+
+# ------------------------------------------------------------------------------
+
+%files property-info
+
+%license src/Symfony/Component/PropertyInfo/LICENSE
+%doc src/Symfony/Component/PropertyInfo/*.md
+%doc src/Symfony/Component/PropertyInfo/composer.json
+
+%{symfony4_dir}/Component/PropertyInfo
+%exclude %{symfony4_dir}/Component/PropertyInfo/LICENSE
+%exclude %{symfony4_dir}/Component/PropertyInfo/*.md
+%exclude %{symfony4_dir}/Component/PropertyInfo/autoload-dev.php
+%exclude %{symfony4_dir}/Component/PropertyInfo/composer.json
+%exclude %{symfony4_dir}/Component/PropertyInfo/phpunit.*
+%exclude %{symfony4_dir}/Component/PropertyInfo/Tests
+
+# ------------------------------------------------------------------------------
+
+%files routing
+
+%license src/Symfony/Component/Routing/LICENSE
+%doc src/Symfony/Component/Routing/*.md
+%doc src/Symfony/Component/Routing/composer.json
+
+%{symfony4_dir}/Component/Routing
+%exclude %{symfony4_dir}/Component/Routing/LICENSE
+%exclude %{symfony4_dir}/Component/Routing/*.md
+%exclude %{symfony4_dir}/Component/Routing/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Routing/composer.json
+%exclude %{symfony4_dir}/Component/Routing/phpunit.*
+%exclude %{symfony4_dir}/Component/Routing/Tests
+
+# ------------------------------------------------------------------------------
+
+%files security
+
+%license src/Symfony/Component/Security/LICENSE
+%doc src/Symfony/Component/Security/*.md
+%doc src/Symfony/Component/Security/composer.json
+
+%{symfony4_dir}/Component/Security
+%exclude %{symfony4_dir}/Component/Security/LICENSE
+%exclude %{symfony4_dir}/Component/Security/*.md
+%exclude %{symfony4_dir}/Component/Security/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Security/composer.json
+%exclude %{symfony4_dir}/Component/Security/phpunit.*
+%exclude %{symfony4_dir}/Component/Security/*/phpunit.*
+%exclude %{symfony4_dir}/Component/Security/*/Tests
+%exclude %{symfony4_dir}/Component/Security/*/LICENSE
+%exclude %{symfony4_dir}/Component/Security/*/*.md
+%exclude %{symfony4_dir}/Component/Security/*/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Security/*/composer.json
+
+# ------------------------------------------------------------------------------
+
+%files serializer
+
+%license src/Symfony/Component/Serializer/LICENSE
+%doc src/Symfony/Component/Serializer/*.md
+%doc src/Symfony/Component/Serializer/composer.json
+
+%{symfony4_dir}/Component/Serializer
+%exclude %{symfony4_dir}/Component/Serializer/LICENSE
+%exclude %{symfony4_dir}/Component/Serializer/*.md
+%exclude %{symfony4_dir}/Component/Serializer/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Serializer/composer.json
+%exclude %{symfony4_dir}/Component/Serializer/phpunit.*
+%exclude %{symfony4_dir}/Component/Serializer/Tests
+
+# ------------------------------------------------------------------------------
+
+%files stopwatch
+
+%license src/Symfony/Component/Stopwatch/LICENSE
+%doc src/Symfony/Component/Stopwatch/*.md
+%doc src/Symfony/Component/Stopwatch/composer.json
+
+%{symfony4_dir}/Component/Stopwatch
+%exclude %{symfony4_dir}/Component/Stopwatch/LICENSE
+%exclude %{symfony4_dir}/Component/Stopwatch/*.md
+%exclude %{symfony4_dir}/Component/Stopwatch/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Stopwatch/composer.json
+%exclude %{symfony4_dir}/Component/Stopwatch/phpunit.*
+%exclude %{symfony4_dir}/Component/Stopwatch/Tests
+
+# ------------------------------------------------------------------------------
+
+%files templating
+
+%license src/Symfony/Component/Templating/LICENSE
+%doc src/Symfony/Component/Templating/*.md
+%doc src/Symfony/Component/Templating/composer.json
+
+%{symfony4_dir}/Component/Templating
+%exclude %{symfony4_dir}/Component/Templating/LICENSE
+%exclude %{symfony4_dir}/Component/Templating/*.md
+%exclude %{symfony4_dir}/Component/Templating/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Templating/composer.json
+%exclude %{symfony4_dir}/Component/Templating/phpunit.*
+%exclude %{symfony4_dir}/Component/Templating/Tests
+
+# ------------------------------------------------------------------------------
+
+%files translation
+
+%license src/Symfony/Component/Translation/LICENSE
+%doc src/Symfony/Component/Translation/*.md
+%doc src/Symfony/Component/Translation/composer.json
+
+%{symfony4_dir}/Component/Translation
+%exclude %{symfony4_dir}/Component/Translation/LICENSE
+%exclude %{symfony4_dir}/Component/Translation/*.md
+%exclude %{symfony4_dir}/Component/Translation/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Translation/composer.json
+%exclude %{symfony4_dir}/Component/Translation/phpunit.*
+%exclude %{symfony4_dir}/Component/Translation/Tests
+
+# ------------------------------------------------------------------------------
+
+%files validator
+
+%license src/Symfony/Component/Validator/LICENSE
+%doc src/Symfony/Component/Validator/*.md
+%doc src/Symfony/Component/Validator/composer.json
+
+%{symfony4_dir}/Component/Validator
+%exclude %{symfony4_dir}/Component/Validator/LICENSE
+%exclude %{symfony4_dir}/Component/Validator/*.md
+%exclude %{symfony4_dir}/Component/Validator/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Validator/composer.json
+%exclude %{symfony4_dir}/Component/Validator/phpunit.*
+%exclude %{symfony4_dir}/Component/Validator/Tests
+
+# ------------------------------------------------------------------------------
+
+%files var-dumper
+
+%license src/Symfony/Component/VarDumper/LICENSE
+%doc src/Symfony/Component/VarDumper/*.md
+%doc src/Symfony/Component/VarDumper/composer.json
+
+%{_bindir}/%{name}-var-dump-server
+%{symfony4_dir}/Component/VarDumper
+%exclude %{symfony4_dir}/Component/VarDumper/LICENSE
+%exclude %{symfony4_dir}/Component/VarDumper/*.md
+%exclude %{symfony4_dir}/Component/VarDumper/autoload-dev.php
+%exclude %{symfony4_dir}/Component/VarDumper/composer.json
+%exclude %{symfony4_dir}/Component/VarDumper/phpunit.*
+%exclude %{symfony4_dir}/Component/VarDumper/Tests
+
+# ------------------------------------------------------------------------------
+
+%files var-exporter
+
+%license src/Symfony/Component/VarExporter/LICENSE
+%doc src/Symfony/Component/VarExporter/*.md
+%doc src/Symfony/Component/VarExporter/composer.json
+
+%{symfony4_dir}/Component/VarExporter
+%exclude %{symfony4_dir}/Component/VarExporter/LICENSE
+%exclude %{symfony4_dir}/Component/VarExporter/*.md
+%exclude %{symfony4_dir}/Component/VarExporter/autoload-dev.php
+%exclude %{symfony4_dir}/Component/VarExporter/composer.json
+%exclude %{symfony4_dir}/Component/VarExporter/phpunit.*
+%exclude %{symfony4_dir}/Component/VarExporter/Tests
+
+# ------------------------------------------------------------------------------
+
+%files web-link
+
+%license src/Symfony/Component/WebLink/LICENSE
+%doc src/Symfony/Component/WebLink/*.md
+%doc src/Symfony/Component/WebLink/composer.json
+
+%{symfony4_dir}/Component/WebLink
+%exclude %{symfony4_dir}/Component/WebLink/LICENSE
+%exclude %{symfony4_dir}/Component/WebLink/*.md
+%exclude %{symfony4_dir}/Component/WebLink/autoload-dev.php
+%exclude %{symfony4_dir}/Component/WebLink/composer.json
+%exclude %{symfony4_dir}/Component/WebLink/phpunit.*
+%exclude %{symfony4_dir}/Component/WebLink/Tests
+
+# ------------------------------------------------------------------------------
+
+%files workflow
+
+%license src/Symfony/Component/Workflow/LICENSE
+%doc src/Symfony/Component/Workflow/*.md
+%doc src/Symfony/Component/Workflow/composer.json
+
+%{symfony4_dir}/Component/Workflow
+%exclude %{symfony4_dir}/Component/Workflow/LICENSE
+%exclude %{symfony4_dir}/Component/Workflow/*.md
+%exclude %{symfony4_dir}/Component/Workflow/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Workflow/composer.json
+%exclude %{symfony4_dir}/Component/Workflow/phpunit.*
+%exclude %{symfony4_dir}/Component/Workflow/Tests
+
+# ------------------------------------------------------------------------------
+
+%files yaml
+
+%license src/Symfony/Component/Yaml/LICENSE
+%doc src/Symfony/Component/Yaml/*.md
+%doc src/Symfony/Component/Yaml/composer.json
+
+%{symfony4_dir}/Component/Yaml
+%exclude %{symfony4_dir}/Component/Yaml/LICENSE
+%exclude %{symfony4_dir}/Component/Yaml/*.md
+%exclude %{symfony4_dir}/Component/Yaml/autoload-dev.php
+%exclude %{symfony4_dir}/Component/Yaml/composer.json
+%exclude %{symfony4_dir}/Component/Yaml/phpunit.*
+%exclude %{symfony4_dir}/Component/Yaml/Tests
+
+# ##############################################################################
+
+%changelog
+* Wed Oct 28 2020 Remi Collet <remi@remirepo.net> - 4.4.16-1
+- update to 4.4.16
+
+* Mon Oct 5 2020 Remi Collet <remi@remirepo.net> - 4.4.15-1
+- update to 4.4.15
+
+* Mon Sep 28 2020 Remi Collet <remi@remirepo.net> - 4.4.14-1
+- update to 4.4.14
+- raise dependency on symfony/contracts 1.1.10
+- http-kernel: add dependency on symfony/contracts
+
+* Wed Sep 2 2020 Remi Collet <remi@remirepo.net> - 4.4.13-1
+- update to 4.4.13
+
+* Mon Aug 31 2020 Remi Collet <remi@remirepo.net> - 4.4.12-1
+- update to 4.4.12
+- allow doctrine/dbal 3.0
+
+* Tue Aug 25 2020 Remi Collet <remi@remirepo.net> - 4.4.11-3
+- fix autoloader path for doctrine/persistence 2
+
+* Fri Jul 24 2020 Remi Collet <remi@remirepo.net> - 4.4.11-1
+- update to 4.4.11
+- raise dependency on doctrine/data-fixtures 1.1
+- allow doctrine/persistence 2
+- allow phpdocumentor/reflection-docblock 5
+
+* Mon Jun 15 2020 Remi Collet <remi@remirepo.net> - 4.4.10-1
+- update to 4.4.10
+
+* Wed Jun 3 2020 Remi Collet <remi@remirepo.net> - 4.4.9-1
+- update to 4.4.9
+- raise dependency on symfony/polyfill 1.15
+
+* Wed Apr 29 2020 Remi Collet <remi@remirepo.net> - 4.4.8-1
+- update to 4.4.8
+
+* Tue Mar 31 2020 Remi Collet <remi@remirepo.net> - 4.4.7-1
+- update to 4.4.7
+
+* Fri Mar 27 2020 Remi Collet <remi@remirepo.net> - 4.4.6-1
+- update to 4.4.6
+
+* Tue Mar 3 2020 Remi Collet <remi@remirepo.net> - 4.4.5-1
+- update to 4.4.5
+
+* Mon Feb 3 2020 Remi Collet <remi@remirepo.net> - 4.4.4-1
+- update to 4.4.4
+
+* Wed Jan 22 2020 Remi Collet <remi@remirepo.net> - 4.4.3-1
+- update to 4.4.3
+
+* Fri Jan 3 2020 Remi Collet <remi@remirepo.net> - 4.4.2-1
+- update to 4.4.2
+- raise dependency on doctrine/persistence 1.3
+
+* Mon Dec 2 2019 Remi Collet <remi@remirepo.net> - 4.4.1-2
+- allow symfony/security-acl v3
+
+* Mon Dec 2 2019 Remi Collet <remi@remirepo.net> - 4.4.1-1
+- update to 4.4.1
+
+* Thu Nov 21 2019 Remi Collet <remi@remirepo.net> - 4.4.0-1
+- update to 4.4.0
+- add ErrorHandler component
+- drop dependency on fig/link-util
+- raise dependency on symfony/contracts 1.1.8
+- raise dependency on doctrine/doctrine-bundle 1.5
+- raise dependency on monolog/monolog 1.25.1
+- allow twig 3 (review #1774967)
+- allow doctrine-bundle 2 (review #1775102)
+- add dependency on sodium extension
+- add dependency on guzzlehttp/promises
+
+* Wed Nov 13 2019 Remi Collet <remi@remirepo.net> - 4.3.8-1
+- update to 4.3.8
+
+* Tue Nov 12 2019 Remi Collet <remi@remirepo.net> - 4.3.7-1
+- update to 4.3.7
+
+* Tue Nov 5 2019 Remi Collet <remi@remirepo.net> - 4.3.6-1
+- update to 4.3.6
+- add HttpClient, Mailer and Mime components
+- use range dependencies
+- raise dependency on symfony/contracts 1.1.3
+- raise dependency on symfony/polyfill 1.11
+- raise dependency on doctrine/annotations 1.7
+- raise dependency on egulias/email-validator 2.1.10
+- add dependency on masterminds/html5
+- add dependency on mongodb/mongodb
+- add dependency on nyholm/psr7
+- add dependency on psr/http-client
+
+* Tue Nov 5 2019 Remi Collet <remi@remirepo.net> - 4.2.11-3
+- switch to phpunit7
+
+* Sat Sep 14 2019 Shawn Iwinski <shawn.iwinski@gmail.com> - 4.2.11-2
+- Update autoloader generator to include self PSR-0, PSR-4, files, and classmap
+
+* Tue Aug 20 2019 Remi Collet <remi@remirepo.net> - 4.2.11-1
+- update to 4.2.11
+
+* Tue Jun 4 2019 Remi Collet <remi@remirepo.net> - 4.2.9-1
+- update to 4.2.9
+- raise dependency on twig 1.41
+- raise dependency on contracts 1.1.1
+
+* Thu May 2 2019 Remi Collet <remi@remirepo.net> - 4.2.8-1
+- update to 4.2.8
+- raise dependency on twig 1.40
+
+* Thu Apr 18 2019 Remi Collet <remi@remirepo.net> - 4.2.7-2
+- validator requires translation (from Koschei)
+
+* Thu Apr 18 2019 Remi Collet <remi@remirepo.net> - 4.2.7-1
+- update to 4.2.7
+
+* Tue Apr 16 2019 Remi Collet <remi@remirepo.net> - 4.2.6-1
+- update to 4.2.6
+
+* Wed Apr 3 2019 Remi Collet <remi@remirepo.net> - 4.2.5-1
+- update to 4.2.5
+- raise dependency on twig 1.38.1
+
+* Mon Mar 4 2019 Remi Collet <remi@remirepo.net> - 4.2.4-1
+- update to 4.2.4
+
+* Mon Feb 4 2019 Remi Collet <remi@remirepo.net> - 4.2.3-1
+- update to 4.2.3
+- raise dependency on twig 1.37.1
+
+* Mon Jan 7 2019 Remi Collet <remi@remirepo.net> - 4.2.2-1
+- update to 4.2.2
+- add new symfony/var-exporter component
+- add dependency on symfony/contracts
+- add dependency on doctrine/event-manager, doctrine/persistence
+ and doctrine/reflection
+- raise dependency on doctrine/dbal 2.5
+- raise dependency on ocramius/proxy-manager 2.1
+
+* Mon Jan 7 2019 Remi Collet <remi@remirepo.net> - 4.1.10-1
+- update to 4.1.10
+
+* Fri Dec 7 2018 Remi Collet <remi@remirepo.net> - 4.1.9-1
+- update to 4.1.9
+
+* Tue Nov 27 2018 Remi Collet <remi@remirepo.net> - 4.1.8-1
+- update to 4.1.8
+
+* Mon Nov 5 2018 Remi Collet <remi@remirepo.net> - 4.1.7-1
+- update to 4.1.7
+
+* Thu Oct 18 2018 Remi Collet <remi@remirepo.net> - 4.1.6-2
+- ignore doctrine/data-fixtures version
+
+* Wed Oct 3 2018 Remi Collet <remi@remirepo.net> - 4.1.6-1
+- update to 4.1.6
+
+* Mon Oct 1 2018 Remi Collet <remi@remirepo.net> - 4.1.5-1
+- update to 4.1.5
+
+* Tue Sep 4 2018 Remi Collet <remi@remirepo.net> - 4.1.4-1
+- update to 4.1.4
+- add new Messenger component in php-symfony4-messenger package
+- add php-symfony4-var-dump-server command
+
+* Thu Aug 02 2018 Shawn Iwinski <shawn@iwin.ski> - 4.0.14-1
+- Update to 4.0.14 (CVE-2018-14773 / CVE-2018-14774)
+- Add conflict php-composer(phpdocumentor/type-resolver) < 0.3.0
+
+* Mon May 28 2018 Remi Collet <remi@remirepo.net> - 4.0.11-1
+- update to 4.0.11
+
+* Thu May 24 2018 Remi Collet <remi@remirepo.net> - 4.0.10-1
+- update to 4.0.10
+- ignore new dependency on symfony/polyfill-ctype
+
+* Fri May 4 2018 Remi Collet <remi@remirepo.net> - 4.0.9-1
+- update to 4.0.9
+
+* Tue Apr 10 2018 Remi Collet <remi@remirepo.net> - 4.0.8-1
+- update to 4.0.8
+
+* Tue Apr 3 2018 Remi Collet <remi@remirepo.net> - 4.0.7-1
+- update to 4.0.7
+
+* Tue Mar 6 2018 Remi Collet <remi@remirepo.net> - 4.0.6-1
+- update to 4.0.6
+
+* Fri Mar 2 2018 Remi Collet <remi@remirepo.net> - 4.0.5-1
+- Update to 4.0.5
+
+* Thu Feb 22 2018 Remi Collet <remi@remirepo.net> - 4.0.4-5
+- add all BuildRequires when test suite is disabled
+
+* Thu Feb 22 2018 Remi Collet <remi@remirepo.net> - 4.0.4-3
+- fix dependency autoloader
+- don't run test suite (instead of ignoring results)
+
+* Tue Jan 30 2018 Remi Collet <remi@remirepo.net> - 4.0.4-1
+- Update to 4.0.4
+
+* Mon Jan 8 2018 Remi Collet <remi@remirepo.net> - 4.0.3-1
+- Update to 4.0.3
+
+* Mon Dec 11 2017 Shawn Iwinski <shawn@iwin.ski> - 4.0.1-1
+- Update to 4.0.1 (RHBZ #1509765)
+
+* Mon Nov 13 2017 Shawn Iwinski <shawn@iwin.ski> - 4.0.0-0.3.beta4
+- Update to 4.0.0-beta4 (RHBZ #1509765)
+- Fix web-server-bundle dependency issue
+
+* Fri Nov 03 2017 Shawn Iwinski <shawn@iwin.ski> - 4.0.0-0.2.beta2
+- Update to 4.0.0-beta2
+- Fix URL doc links
+
+* Sat Oct 21 2017 Shawn Iwinski <shawn@iwin.ski> - 4.0.0-0.1.beta1
+- Update to 4.0.0-beta1
+- Add license override for all sub-packages except web-profiler-bundle
+
+* Mon Oct 9 2017 Remi Collet <remi@remirepo.net> - 3.3.10-1
+- Update to 3.3.10
+- ignore unreliable test suite results
+
+* Wed Sep 13 2017 Remi Collet <remi@remirepo.net> - 3.3.9-1
+- Update to 3.3.9
+
+* Tue Aug 29 2017 Remi Collet <remi@remirepo.net> - 3.3.8-1
+- Update to 3.3.8
+- raise dependency on phpdocumentor/reflection-docblock 3.2.2
+- ignore 2 new failed tests
+
+* Wed Aug 23 2017 Remi Collet <remi@remirepo.net> - 3.3.6-5
+- fix missing dependency
+- fix dev autoloader with patch from
+ https://github.com/symfony/symfony/pull/23934
+
+* Sat Aug 19 2017 Shawn Iwinski <shawn@iwin.ski> - 3.3.6-4
+- Dynamically generate dev autoloaders
+- Add build conditionals to make backporting to remirepo easier
+
+* Fri Aug 18 2017 Shawn Iwinski <shawn@iwin.ski> - 3.3.6-3
+- Fix some tests' dev requires (thanks Remi!)
+
+* Mon Aug 14 2017 Shawn Iwinski <shawn@iwin.ski> - 3.3.6-2
+- Fix dotenv sub-package Composer provide
+
+* Sun Aug 13 2017 Shawn Iwinski <shawn@iwin.ski> - 3.3.6-1
+- Update to 3.3.6 (RHBZ #1460525)
+- Remove versions from suggested dependencies
+
+* Wed Aug 2 2017 Remi Collet <remi@remirepo.net> - 3.2.13-1
+- Update to 3.2.13
+- add dependency on php-xml
+- raise dependency on phpdocumentor/reflection-docblock 3.2
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.2.11-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Wed Jul 05 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.11-1
+- Update to 3.2.11
+
+* Wed Jul 5 2017 Remi Collet <remi@remirepo.net> - 3.2.10-1
+- Update to 3.2.10
+- raise dependency on twig 1.34
+
+* Sun Jun 11 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.9-1
+- Update to 3.2.9
+- Use php-composer(cache/integration-tests)
+- Use php-composer(phpdocumentor/reflection-docblock)
+- Provide php-composer(symfony/phpunit-bridge)
+- Provide whole framework autoloader
+- Provide per-type (Bridge, Bundle, Component) autoloaders
+
+* Mon May 15 2017 Remi Collet <remi@remirepo.net> - 3.2.8-3
+- add missing dependency on common for cache
+
+* Wed May 10 2017 Remi Collet <remi@remirepo.net> - 3.2.8-2
+- add missing dependency on debug for console
+- add depdencency on php-symfony-class-loader for class-loader
+ to workaround issue with package without version constraint
+
+* Sun May 07 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.8-1
+- Update to 3.2.8
+
+* Fri Mar 17 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.6-1
+- Modify main package and web-profiler-bundle sub-package licenses
+ from "MIT" to "MIT and CC-BY-SA"
+- Remove phpunit-bridge dependency from main package
+- Fix web-profiler-bundle sub-package's polyfill-php70 dependency versions
+- Fix autoloader locations in descriptions
+
+* Sat Mar 11 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.6-2
+- Allow Twig v1 and v2
+
+* Fri Mar 10 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.6-1
+- Update to 3.2.6
+
+* Tue Feb 21 2017 Shawn Iwinski <shawn@iwin.ski> - 3.2.4-1
+- Initial package
diff --git a/src/Symfony/Bridge/Doctrine/composer.json b/src/Symfony/Bridge/Doctrine/composer.json
new file mode 100644
index 0000000..b792582
--- /dev/null
+++ b/src/Symfony/Bridge/Doctrine/composer.json
@@ -0,0 +1,74 @@
+{
+ "name": "symfony/doctrine-bridge",
+ "type": "symfony-bridge",
+ "description": "Symfony Doctrine Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "doctrine/event-manager": "~1.0",
+ "doctrine/persistence": "^1.3|^2",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/service-contracts": "^1.1|^2"
+ },
+ "require-dev": {
+ "composer/package-versions-deprecated": "^1.8",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "symfony/config": "^4.2|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/form": "^4.4.11|^5.0.11",
+ "symfony/http-kernel": "^4.3.7",
+ "symfony/messenger": "^4.4|^5.0",
+ "symfony/property-access": "^3.4|^4.0|^5.0",
+ "symfony/property-info": "^3.4|^4.0|^5.0",
+ "symfony/proxy-manager-bridge": "^3.4|^4.0|^5.0",
+ "symfony/security-core": "^4.4|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/validator": "^4.4.2|^5.0.2",
+ "symfony/var-dumper": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^3.4|^4.0|^5.0",
+ "doctrine/annotations": "~1.7",
+ "doctrine/cache": "~1.6",
+ "doctrine/collections": "~1.0",
+ "doctrine/data-fixtures": "^1.1",
+ "doctrine/dbal": "~2.4|^3.0",
+ "doctrine/orm": "^2.6.3",
+ "doctrine/reflection": "~1.0"
+ },
+ "conflict": {
+ "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0",
+ "symfony/dependency-injection": "<3.4",
+ "symfony/form": "<4.4",
+ "symfony/http-kernel": "<4.3.7",
+ "symfony/messenger": "<4.3",
+ "symfony/security-core": "<4.4",
+ "symfony/validator": "<4.4.2|<5.0.2,>=5.0"
+ },
+ "suggest": {
+ "symfony/form": "",
+ "symfony/validator": "",
+ "symfony/property-info": "",
+ "doctrine/data-fixtures": "",
+ "doctrine/dbal": "",
+ "doctrine/orm": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bridge\\Doctrine\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bridge/Monolog/composer.json b/src/Symfony/Bridge/Monolog/composer.json
new file mode 100644
index 0000000..97dd19e
--- /dev/null
+++ b/src/Symfony/Bridge/Monolog/composer.json
@@ -0,0 +1,46 @@
+{
+ "name": "symfony/monolog-bridge",
+ "type": "symfony-bridge",
+ "description": "Symfony Monolog Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "monolog/monolog": "^1.25.1",
+ "symfony/service-contracts": "^1.1|^2",
+ "symfony/http-kernel": "^4.3"
+ },
+ "require-dev": {
+ "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/http-client": "^4.4|^5.0",
+ "symfony/security-core": "^3.4|^4.0|^5.0",
+ "symfony/var-dumper": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/console": "<3.4",
+ "symfony/http-foundation": "<3.4"
+ },
+ "suggest": {
+ "symfony/http-kernel": "For using the debugging handlers together with the response life cycle of the HTTP kernel.",
+ "symfony/console": "For the possibility to show log messages in console commands depending on verbosity settings.",
+ "symfony/var-dumper": "For using the debugging handlers like the console handler or the log server handler."
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bridge\\Monolog\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bridge/PhpUnit/composer.json b/src/Symfony/Bridge/PhpUnit/composer.json
new file mode 100644
index 0000000..85318fe
--- /dev/null
+++ b/src/Symfony/Bridge/PhpUnit/composer.json
@@ -0,0 +1,46 @@
+{
+ "name": "symfony/phpunit-bridge",
+ "type": "symfony-bridge",
+ "description": "Symfony PHPUnit Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=5.5.9 EVEN ON LATEST SYMFONY VERSIONS TO ALLOW USING",
+ "php": "THIS BRIDGE WHEN TESTING LOWEST SYMFONY VERSIONS.",
+ "php": ">=5.5.9"
+ },
+ "suggest": {
+ "symfony/error-handler": "For tracking deprecated interfaces usages at runtime with DebugClassLoader"
+ },
+ "conflict": {
+ "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0|<6.4,>=6.0|9.1.2"
+ },
+ "autoload": {
+ "files": [ "bootstrap.php" ],
+ "psr-4": { "Symfony\\Bridge\\PhpUnit\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "bin": [
+ "bin/simple-phpunit"
+ ],
+ "minimum-stability": "dev",
+ "extra": {
+ "thanks": {
+ "name": "phpunit/phpunit",
+ "url": "https://github.com/sebastianbergmann/phpunit"
+ }
+ }
+}
diff --git a/src/Symfony/Bridge/ProxyManager/composer.json b/src/Symfony/Bridge/ProxyManager/composer.json
new file mode 100644
index 0000000..b34def8
--- /dev/null
+++ b/src/Symfony/Bridge/ProxyManager/composer.json
@@ -0,0 +1,37 @@
+{
+ "name": "symfony/proxy-manager-bridge",
+ "type": "symfony-bridge",
+ "description": "Symfony ProxyManager Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "composer/package-versions-deprecated": "^1.8",
+ "symfony/dependency-injection": "^4.0|^5.0",
+ "ocramius/proxy-manager": "~2.1"
+ },
+ "require-dev": {
+ "symfony/config": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "zendframework/zend-eventmanager": "2.6.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bridge\\ProxyManager\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bridge/Twig/composer.json b/src/Symfony/Bridge/Twig/composer.json
new file mode 100644
index 0000000..75860d1
--- /dev/null
+++ b/src/Symfony/Bridge/Twig/composer.json
@@ -0,0 +1,82 @@
+{
+ "name": "symfony/twig-bridge",
+ "type": "symfony-bridge",
+ "description": "Symfony Twig Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/translation-contracts": "^1.1|^2",
+ "twig/twig": "^1.41|^2.10|^3.0"
+ },
+ "require-dev": {
+ "egulias/email-validator": "^2.1.10",
+ "symfony/asset": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/error-handler": "^4.4|^5.0",
+ "symfony/finder": "^3.4|^4.0|^5.0",
+ "symfony/form": "^4.3.5",
+ "symfony/http-foundation": "^4.3|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/mime": "^4.3|^5.0",
+ "symfony/polyfill-intl-icu": "~1.0",
+ "symfony/routing": "^3.4|^4.0|^5.0",
+ "symfony/templating": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^4.2.1|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/security-acl": "^2.8|^3.0",
+ "symfony/security-core": "^3.0|^4.0|^5.0",
+ "symfony/security-csrf": "^3.4|^4.0|^5.0",
+ "symfony/security-http": "^3.4|^4.0|^5.0",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/web-link": "^4.4|^5.0",
+ "symfony/workflow": "^4.3|^5.0",
+ "twig/cssinliner-extra": "^2.12",
+ "twig/inky-extra": "^2.12",
+ "twig/markdown-extra": "^2.12"
+ },
+ "conflict": {
+ "symfony/console": "<3.4",
+ "symfony/form": "<4.4",
+ "symfony/http-foundation": "<4.3",
+ "symfony/translation": "<4.2",
+ "symfony/workflow": "<4.3"
+ },
+ "suggest": {
+ "symfony/finder": "",
+ "symfony/asset": "For using the AssetExtension",
+ "symfony/form": "For using the FormExtension",
+ "symfony/http-kernel": "For using the HttpKernelExtension",
+ "symfony/routing": "For using the RoutingExtension",
+ "symfony/templating": "For using the TwigEngine",
+ "symfony/translation": "For using the TranslationExtension",
+ "symfony/yaml": "For using the YamlExtension",
+ "symfony/security-core": "For using the SecurityExtension",
+ "symfony/security-csrf": "For using the CsrfExtension",
+ "symfony/security-http": "For using the LogoutUrlExtension",
+ "symfony/stopwatch": "For using the StopwatchExtension",
+ "symfony/var-dumper": "For using the DumpExtension",
+ "symfony/expression-language": "For using the ExpressionExtension",
+ "symfony/web-link": "For using the WebLinkExtension"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bridge\\Twig\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bundle/DebugBundle/composer.json b/src/Symfony/Bundle/DebugBundle/composer.json
new file mode 100644
index 0000000..a4f0f03
--- /dev/null
+++ b/src/Symfony/Bundle/DebugBundle/composer.json
@@ -0,0 +1,45 @@
+{
+ "name": "symfony/debug-bundle",
+ "type": "symfony-bundle",
+ "description": "Symfony DebugBundle",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "ext-xml": "*",
+ "symfony/http-kernel": "^3.4|^4.0|^5.0",
+ "symfony/twig-bridge": "^3.4|^4.0|^5.0",
+ "symfony/var-dumper": "^4.1.1|^5.0"
+ },
+ "require-dev": {
+ "symfony/config": "^4.2|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/web-profiler-bundle": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/config": "<4.2",
+ "symfony/dependency-injection": "<3.4"
+ },
+ "suggest": {
+ "symfony/config": "For service container configuration",
+ "symfony/dependency-injection": "For using as a service from the container"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bundle\\DebugBundle\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bundle/FrameworkBundle/composer.json b/src/Symfony/Bundle/FrameworkBundle/composer.json
new file mode 100644
index 0000000..7929ccb
--- /dev/null
+++ b/src/Symfony/Bundle/FrameworkBundle/composer.json
@@ -0,0 +1,110 @@
+{
+ "name": "symfony/framework-bundle",
+ "type": "symfony-bundle",
+ "description": "Symfony FrameworkBundle",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "ext-xml": "*",
+ "symfony/cache": "^4.4|^5.0",
+ "symfony/config": "^4.3.4|^5.0",
+ "symfony/dependency-injection": "^4.4.1|^5.0.1",
+ "symfony/error-handler": "^4.4.1|^5.0.1",
+ "symfony/http-foundation": "^4.4|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/filesystem": "^3.4|^4.0|^5.0",
+ "symfony/finder": "^3.4|^4.0|^5.0",
+ "symfony/routing": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "doctrine/annotations": "~1.7",
+ "doctrine/cache": "~1.0",
+ "paragonie/sodium_compat": "^1.8",
+ "symfony/asset": "^3.4|^4.0|^5.0",
+ "symfony/browser-kit": "^4.3|^5.0",
+ "symfony/console": "^4.3.4|^5.0",
+ "symfony/css-selector": "^3.4|^4.0|^5.0",
+ "symfony/dom-crawler": "^4.3|^5.0",
+ "symfony/dotenv": "^4.3.6|^5.0",
+ "symfony/polyfill-intl-icu": "~1.0",
+ "symfony/form": "^4.3.5|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/http-client": "^4.4|^5.0",
+ "symfony/lock": "^4.4|^5.0",
+ "symfony/mailer": "^4.4|^5.0",
+ "symfony/messenger": "^4.4|^5.0",
+ "symfony/mime": "^4.4|^5.0",
+ "symfony/process": "^3.4|^4.0|^5.0",
+ "symfony/security-csrf": "^3.4|^4.0|^5.0",
+ "symfony/security-http": "^3.4|^4.0|^5.0",
+ "symfony/serializer": "^4.4|^5.0",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^4.4|^5.0",
+ "symfony/templating": "^3.4|^4.0|^5.0",
+ "symfony/twig-bundle": "^4.4|^5.0",
+ "symfony/validator": "^4.4|^5.0",
+ "symfony/workflow": "^4.3.6|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/property-info": "^3.4|^4.0|^5.0",
+ "symfony/web-link": "^4.4|^5.0",
+ "phpdocumentor/reflection-docblock": "^3.0|^4.0",
+ "twig/twig": "^1.41|^2.10|^3.0"
+ },
+ "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/dotenv": "<4.3.6",
+ "symfony/dom-crawler": "<4.3",
+ "symfony/http-client": "<4.4",
+ "symfony/form": "<4.3.5",
+ "symfony/lock": "<4.4",
+ "symfony/mailer": "<4.4",
+ "symfony/messenger": "<4.4",
+ "symfony/mime": "<4.4",
+ "symfony/property-info": "<3.4",
+ "symfony/security-bundle": "<4.4",
+ "symfony/serializer": "<4.4",
+ "symfony/stopwatch": "<3.4",
+ "symfony/translation": "<4.4",
+ "symfony/twig-bridge": "<4.1.1",
+ "symfony/twig-bundle": "<4.4",
+ "symfony/validator": "<4.4",
+ "symfony/web-profiler-bundle": "<4.4",
+ "symfony/workflow": "<4.3.6"
+ },
+ "suggest": {
+ "ext-apcu": "For best performance of the system caches",
+ "symfony/console": "For using the console commands",
+ "symfony/form": "For using forms",
+ "symfony/serializer": "For using the serializer service",
+ "symfony/validator": "For using validation",
+ "symfony/yaml": "For using the debug:config and lint:yaml commands",
+ "symfony/property-info": "For using the property_info service",
+ "symfony/web-link": "For using web links, features such as preloading, prefetching or prerendering"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bundle\\FrameworkBundle\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bundle/SecurityBundle/composer.json b/src/Symfony/Bundle/SecurityBundle/composer.json
new file mode 100644
index 0000000..0c2987e
--- /dev/null
+++ b/src/Symfony/Bundle/SecurityBundle/composer.json
@@ -0,0 +1,62 @@
+{
+ "name": "symfony/security-bundle",
+ "type": "symfony-bundle",
+ "description": "Symfony SecurityBundle",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "ext-xml": "*",
+ "symfony/config": "^4.2|^5.0",
+ "symfony/dependency-injection": "^4.4|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/security-core": "^4.4",
+ "symfony/security-csrf": "^4.2|^5.0",
+ "symfony/security-guard": "^4.2|^5.0",
+ "symfony/security-http": "^4.4.5"
+ },
+ "require-dev": {
+ "doctrine/doctrine-bundle": "^1.5|^2.0",
+ "symfony/asset": "^3.4|^4.0|^5.0",
+ "symfony/browser-kit": "^4.2|^5.0",
+ "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/css-selector": "^3.4|^4.0|^5.0",
+ "symfony/dom-crawler": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/form": "^3.4|^4.0|^5.0",
+ "symfony/framework-bundle": "^4.4|^5.0",
+ "symfony/process": "^3.4|^4.0|^5.0",
+ "symfony/serializer": "^4.4|^5.0",
+ "symfony/translation": "^3.4|^4.0|^5.0",
+ "symfony/twig-bridge": "^3.4|^4.0|^5.0",
+ "symfony/twig-bundle": "^4.4|^5.0",
+ "symfony/validator": "^3.4|^4.0|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "twig/twig": "^1.41|^2.10|^3.0"
+ },
+ "conflict": {
+ "symfony/browser-kit": "<4.2",
+ "symfony/console": "<3.4",
+ "symfony/framework-bundle": "<4.4",
+ "symfony/ldap": "<4.4",
+ "symfony/twig-bundle": "<4.4"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bundle\\SecurityBundle\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bundle/TwigBundle/composer.json b/src/Symfony/Bundle/TwigBundle/composer.json
new file mode 100644
index 0000000..31fdda1
--- /dev/null
+++ b/src/Symfony/Bundle/TwigBundle/composer.json
@@ -0,0 +1,54 @@
+{
+ "name": "symfony/twig-bundle",
+ "type": "symfony-bundle",
+ "description": "Symfony TwigBundle",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/twig-bridge": "^4.4|^5.0",
+ "symfony/http-foundation": "^4.3|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/polyfill-ctype": "~1.8",
+ "twig/twig": "^1.41|^2.10|^3.0"
+ },
+ "require-dev": {
+ "symfony/asset": "^3.4|^4.0|^5.0",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^4.2.5|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/finder": "^3.4|^4.0|^5.0",
+ "symfony/form": "^3.4|^4.0|^5.0",
+ "symfony/routing": "^3.4|^4.0|^5.0",
+ "symfony/templating": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^4.2|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/framework-bundle": "^4.4|^5.0",
+ "symfony/web-link": "^3.4|^4.0|^5.0",
+ "doctrine/annotations": "~1.7",
+ "doctrine/cache": "~1.0"
+ },
+ "conflict": {
+ "symfony/dependency-injection": "<4.1",
+ "symfony/framework-bundle": "<4.4",
+ "symfony/translation": "<4.2"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bundle\\TwigBundle\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bundle/WebProfilerBundle/composer.json b/src/Symfony/Bundle/WebProfilerBundle/composer.json
new file mode 100644
index 0000000..13fe207
--- /dev/null
+++ b/src/Symfony/Bundle/WebProfilerBundle/composer.json
@@ -0,0 +1,45 @@
+{
+ "name": "symfony/web-profiler-bundle",
+ "type": "symfony-bundle",
+ "description": "Symfony WebProfilerBundle",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/config": "^4.2|^5.0",
+ "symfony/framework-bundle": "^4.4|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/routing": "^4.3|^5.0",
+ "symfony/twig-bundle": "^4.2|^5.0",
+ "twig/twig": "^1.41|^2.10|^3.0"
+ },
+ "require-dev": {
+ "symfony/browser-kit": "^4.3|^5.0",
+ "symfony/console": "^4.3|^5.0",
+ "symfony/css-selector": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/form": "<4.3",
+ "symfony/messenger": "<4.2"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bundle\\WebProfilerBundle\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Bundle/WebServerBundle/Tests/DependencyInjection/composer.json b/src/Symfony/Bundle/WebServerBundle/Tests/DependencyInjection/composer.json
new file mode 100644
index 0000000..a4652eb
--- /dev/null
+++ b/src/Symfony/Bundle/WebServerBundle/Tests/DependencyInjection/composer.json
@@ -0,0 +1,6 @@
+{
+ "name": "test-composer.json",
+ "extra": {
+ "public-dir": "test"
+ }
+}
diff --git a/src/Symfony/Bundle/WebServerBundle/composer.json b/src/Symfony/Bundle/WebServerBundle/composer.json
new file mode 100644
index 0000000..b376b07
--- /dev/null
+++ b/src/Symfony/Bundle/WebServerBundle/composer.json
@@ -0,0 +1,38 @@
+{
+ "name": "symfony/web-server-bundle",
+ "type": "symfony-bundle",
+ "description": "Symfony WebServerBundle",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "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/http-kernel": "^3.4|^4.0|^5.0",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/process": "^3.4.2|^4.0.2|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Bundle\\WebServerBundle\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "suggest": {
+ "symfony/monolog-bridge": "For using the log server.",
+ "symfony/expression-language": "For using the filter option of the log server."
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Asset/composer.json b/src/Symfony/Component/Asset/composer.json
new file mode 100644
index 0000000..2642935
--- /dev/null
+++ b/src/Symfony/Component/Asset/composer.json
@@ -0,0 +1,35 @@
+{
+ "name": "symfony/asset",
+ "type": "library",
+ "description": "Symfony Asset Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "suggest": {
+ "symfony/http-foundation": ""
+ },
+ "require-dev": {
+ "symfony/http-foundation": "^3.4|^4.0|^5.0",
+ "symfony/http-kernel": "^3.4|^4.0|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Asset\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/BrowserKit/composer.json b/src/Symfony/Component/BrowserKit/composer.json
new file mode 100644
index 0000000..ca81670
--- /dev/null
+++ b/src/Symfony/Component/BrowserKit/composer.json
@@ -0,0 +1,38 @@
+{
+ "name": "symfony/browser-kit",
+ "type": "library",
+ "description": "Symfony BrowserKit Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/dom-crawler": "^3.4|^4.0|^5.0"
+ },
+ "require-dev": {
+ "symfony/css-selector": "^3.4|^4.0|^5.0",
+ "symfony/http-client": "^4.3|^5.0",
+ "symfony/mime": "^4.3|^5.0",
+ "symfony/process": "^3.4|^4.0|^5.0"
+ },
+ "suggest": {
+ "symfony/process": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\BrowserKit\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Cache/composer.json b/src/Symfony/Component/Cache/composer.json
new file mode 100644
index 0000000..49f634b
--- /dev/null
+++ b/src/Symfony/Component/Cache/composer.json
@@ -0,0 +1,55 @@
+{
+ "name": "symfony/cache",
+ "type": "library",
+ "description": "Symfony Cache component with PSR-6, PSR-16, and tags",
+ "keywords": ["caching", "psr6"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "provide": {
+ "psr/cache-implementation": "1.0",
+ "psr/simple-cache-implementation": "1.0",
+ "symfony/cache-implementation": "1.0"
+ },
+ "require": {
+ "php": ">=7.1.3",
+ "psr/cache": "~1.0",
+ "psr/log": "~1.0",
+ "symfony/cache-contracts": "^1.1.7|^2",
+ "symfony/service-contracts": "^1.1|^2",
+ "symfony/var-exporter": "^4.2|^5.0"
+ },
+ "require-dev": {
+ "cache/integration-tests": "dev-master",
+ "doctrine/cache": "^1.6",
+ "doctrine/dbal": "^2.5|^3.0",
+ "predis/predis": "^1.1",
+ "psr/simple-cache": "^1.0",
+ "symfony/config": "^4.2|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.1|^5.0",
+ "symfony/filesystem": "^4.4|^5.0",
+ "symfony/var-dumper": "^4.4|^5.0"
+ },
+ "conflict": {
+ "doctrine/dbal": "<2.5",
+ "symfony/dependency-injection": "<3.4",
+ "symfony/http-kernel": "<4.4",
+ "symfony/var-dumper": "<4.4"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Cache\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Config/composer.json b/src/Symfony/Component/Config/composer.json
new file mode 100644
index 0000000..fd26b4b
--- /dev/null
+++ b/src/Symfony/Component/Config/composer.json
@@ -0,0 +1,43 @@
+{
+ "name": "symfony/config",
+ "type": "library",
+ "description": "Symfony Config Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/filesystem": "^3.4|^4.0|^5.0",
+ "symfony/polyfill-ctype": "~1.8"
+ },
+ "require-dev": {
+ "symfony/event-dispatcher": "^3.4|^4.0|^5.0",
+ "symfony/finder": "^3.4|^4.0|^5.0",
+ "symfony/messenger": "^4.1|^5.0",
+ "symfony/service-contracts": "^1.1|^2",
+ "symfony/yaml": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/finder": "<3.4"
+ },
+ "suggest": {
+ "symfony/yaml": "To use the yaml reference dumper"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Config\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Console/composer.json b/src/Symfony/Component/Console/composer.json
new file mode 100644
index 0000000..3e51d14
--- /dev/null
+++ b/src/Symfony/Component/Console/composer.json
@@ -0,0 +1,56 @@
+{
+ "name": "symfony/console",
+ "type": "library",
+ "description": "Symfony Console Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-php73": "^1.8",
+ "symfony/polyfill-php80": "^1.15",
+ "symfony/service-contracts": "^1.1|^2"
+ },
+ "require-dev": {
+ "symfony/config": "^3.4|^4.0|^5.0",
+ "symfony/event-dispatcher": "^4.3",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/lock": "^4.4|^5.0",
+ "symfony/process": "^3.4|^4.0|^5.0",
+ "symfony/var-dumper": "^4.3|^5.0",
+ "psr/log": "~1.0"
+ },
+ "provide": {
+ "psr/log-implementation": "1.0"
+ },
+ "suggest": {
+ "symfony/event-dispatcher": "",
+ "symfony/lock": "",
+ "symfony/process": "",
+ "psr/log": "For using the console logger"
+ },
+ "conflict": {
+ "symfony/dependency-injection": "<3.4",
+ "symfony/event-dispatcher": "<4.3|>=5",
+ "symfony/lock": "<4.4",
+ "symfony/process": "<3.3"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Console\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/CssSelector/composer.json b/src/Symfony/Component/CssSelector/composer.json
new file mode 100644
index 0000000..667e443
--- /dev/null
+++ b/src/Symfony/Component/CssSelector/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/css-selector",
+ "type": "library",
+ "description": "Symfony CssSelector Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Jean-François Simon",
+ "email": "jeanfrancois.simon@sensiolabs.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\CssSelector\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Debug/composer.json b/src/Symfony/Component/Debug/composer.json
new file mode 100644
index 0000000..e54a603
--- /dev/null
+++ b/src/Symfony/Component/Debug/composer.json
@@ -0,0 +1,36 @@
+{
+ "name": "symfony/debug",
+ "type": "library",
+ "description": "Symfony Debug Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/log": "~1.0",
+ "symfony/polyfill-php80": "^1.15"
+ },
+ "conflict": {
+ "symfony/http-kernel": "<3.4"
+ },
+ "require-dev": {
+ "symfony/http-kernel": "^3.4|^4.0|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Debug\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/DependencyInjection/composer.json b/src/Symfony/Component/DependencyInjection/composer.json
new file mode 100644
index 0000000..7283cb0
--- /dev/null
+++ b/src/Symfony/Component/DependencyInjection/composer.json
@@ -0,0 +1,52 @@
+{
+ "name": "symfony/dependency-injection",
+ "type": "library",
+ "description": "Symfony DependencyInjection Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/container": "^1.0",
+ "symfony/service-contracts": "^1.1.6|^2"
+ },
+ "require-dev": {
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/config": "^4.3",
+ "symfony/expression-language": "^3.4|^4.0|^5.0"
+ },
+ "suggest": {
+ "symfony/yaml": "",
+ "symfony/config": "",
+ "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required",
+ "symfony/expression-language": "For using expressions in service container configuration",
+ "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them"
+ },
+ "conflict": {
+ "symfony/config": "<4.3|>=5.0",
+ "symfony/finder": "<3.4",
+ "symfony/proxy-manager-bridge": "<3.4",
+ "symfony/yaml": "<3.4"
+ },
+ "provide": {
+ "psr/container-implementation": "1.0",
+ "symfony/service-implementation": "1.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\DependencyInjection\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/DomCrawler/composer.json b/src/Symfony/Component/DomCrawler/composer.json
new file mode 100644
index 0000000..7eb96c0
--- /dev/null
+++ b/src/Symfony/Component/DomCrawler/composer.json
@@ -0,0 +1,40 @@
+{
+ "name": "symfony/dom-crawler",
+ "type": "library",
+ "description": "Symfony DomCrawler Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-mbstring": "~1.0"
+ },
+ "require-dev": {
+ "symfony/css-selector": "^3.4|^4.0|^5.0",
+ "masterminds/html5": "^2.6"
+ },
+ "conflict": {
+ "masterminds/html5": "<2.6"
+ },
+ "suggest": {
+ "symfony/css-selector": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\DomCrawler\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Dotenv/composer.json b/src/Symfony/Component/Dotenv/composer.json
new file mode 100644
index 0000000..a6f7fdd
--- /dev/null
+++ b/src/Symfony/Component/Dotenv/composer.json
@@ -0,0 +1,31 @@
+{
+ "name": "symfony/dotenv",
+ "type": "library",
+ "description": "Registers environment variables from a .env file",
+ "keywords": ["environment", "env", "dotenv"],
+ "homepage": "https://symfony.com",
+ "license" : "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "require-dev": {
+ "symfony/process": "^3.4.2|^4.0|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Dotenv\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/ErrorHandler/composer.json b/src/Symfony/Component/ErrorHandler/composer.json
new file mode 100644
index 0000000..263e6f5
--- /dev/null
+++ b/src/Symfony/Component/ErrorHandler/composer.json
@@ -0,0 +1,36 @@
+{
+ "name": "symfony/error-handler",
+ "type": "library",
+ "description": "Symfony ErrorHandler Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/log": "~1.0",
+ "symfony/debug": "^4.4.5",
+ "symfony/polyfill-php80": "^1.15",
+ "symfony/var-dumper": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-kernel": "^4.4|^5.0",
+ "symfony/serializer": "^4.4|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\ErrorHandler\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/EventDispatcher/composer.json b/src/Symfony/Component/EventDispatcher/composer.json
new file mode 100644
index 0000000..5bb0f7d
--- /dev/null
+++ b/src/Symfony/Component/EventDispatcher/composer.json
@@ -0,0 +1,50 @@
+{
+ "name": "symfony/event-dispatcher",
+ "type": "library",
+ "description": "Symfony EventDispatcher Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/event-dispatcher-contracts": "^1.1"
+ },
+ "require-dev": {
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/config": "^3.4|^4.0|^5.0",
+ "symfony/error-handler": "~3.4|~4.4",
+ "symfony/http-foundation": "^3.4|^4.0|^5.0",
+ "symfony/service-contracts": "^1.1|^2",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/dependency-injection": "<3.4"
+ },
+ "provide": {
+ "psr/event-dispatcher-implementation": "1.0",
+ "symfony/event-dispatcher-implementation": "1.1"
+ },
+ "suggest": {
+ "symfony/dependency-injection": "",
+ "symfony/http-kernel": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/ExpressionLanguage/composer.json b/src/Symfony/Component/ExpressionLanguage/composer.json
new file mode 100644
index 0000000..eca9d7d
--- /dev/null
+++ b/src/Symfony/Component/ExpressionLanguage/composer.json
@@ -0,0 +1,30 @@
+{
+ "name": "symfony/expression-language",
+ "type": "library",
+ "description": "Symfony ExpressionLanguage Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/cache": "^3.4|^4.0|^5.0",
+ "symfony/service-contracts": "^1.1|^2"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\ExpressionLanguage\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Filesystem/composer.json b/src/Symfony/Component/Filesystem/composer.json
new file mode 100644
index 0000000..95df9d3
--- /dev/null
+++ b/src/Symfony/Component/Filesystem/composer.json
@@ -0,0 +1,29 @@
+{
+ "name": "symfony/filesystem",
+ "type": "library",
+ "description": "Symfony Filesystem Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Filesystem\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Finder/composer.json b/src/Symfony/Component/Finder/composer.json
new file mode 100644
index 0000000..7a696aa
--- /dev/null
+++ b/src/Symfony/Component/Finder/composer.json
@@ -0,0 +1,28 @@
+{
+ "name": "symfony/finder",
+ "type": "library",
+ "description": "Symfony Finder Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Finder\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Form/composer.json b/src/Symfony/Component/Form/composer.json
new file mode 100644
index 0000000..2a44a9f
--- /dev/null
+++ b/src/Symfony/Component/Form/composer.json
@@ -0,0 +1,64 @@
+{
+ "name": "symfony/form",
+ "type": "library",
+ "description": "Symfony Form Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/event-dispatcher": "^4.3",
+ "symfony/intl": "^4.4|^5.0",
+ "symfony/options-resolver": "~4.3|^5.0",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/property-access": "^3.4.40|^4.4.8|^5.0.8",
+ "symfony/service-contracts": "^1.1|^2"
+ },
+ "require-dev": {
+ "doctrine/collections": "~1.0",
+ "symfony/validator": "^3.4.44|^4.3.4|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/config": "^3.4|^4.0|^5.0",
+ "symfony/console": "^4.3|^5.0",
+ "symfony/http-foundation": "^3.4|^4.0|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/security-csrf": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^4.2|^5.0",
+ "symfony/var-dumper": "^4.3|^5.0"
+ },
+ "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.4",
+ "symfony/intl": "<4.3",
+ "symfony/translation": "<4.2",
+ "symfony/twig-bridge": "<3.4.5|<4.0.5,>=4.0"
+ },
+ "suggest": {
+ "symfony/validator": "For form validation.",
+ "symfony/security-csrf": "For protecting forms against CSRF attacks.",
+ "symfony/twig-bridge": "For templating with Twig."
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Form\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/HttpClient/composer.json b/src/Symfony/Component/HttpClient/composer.json
new file mode 100644
index 0000000..843fe8e
--- /dev/null
+++ b/src/Symfony/Component/HttpClient/composer.json
@@ -0,0 +1,46 @@
+{
+ "name": "symfony/http-client",
+ "type": "library",
+ "description": "Symfony HttpClient component",
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "provide": {
+ "php-http/async-client-implementation": "*",
+ "php-http/client-implementation": "*",
+ "psr/http-client-implementation": "1.0",
+ "symfony/http-client-implementation": "1.1"
+ },
+ "require": {
+ "php": ">=7.1.3",
+ "psr/log": "^1.0",
+ "symfony/http-client-contracts": "^1.1.10|^2",
+ "symfony/polyfill-php73": "^1.11",
+ "symfony/service-contracts": "^1.0|^2"
+ },
+ "require-dev": {
+ "guzzlehttp/promises": "^1.3.1",
+ "nyholm/psr7": "^1.0",
+ "php-http/httplug": "^1.0|^2.0",
+ "psr/http-client": "^1.0",
+ "symfony/dependency-injection": "^4.3|^5.0",
+ "symfony/http-kernel": "^4.4.13",
+ "symfony/process": "^4.2|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\HttpClient\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/HttpFoundation/composer.json b/src/Symfony/Component/HttpFoundation/composer.json
new file mode 100644
index 0000000..79f4b39
--- /dev/null
+++ b/src/Symfony/Component/HttpFoundation/composer.json
@@ -0,0 +1,34 @@
+{
+ "name": "symfony/http-foundation",
+ "type": "library",
+ "description": "Symfony HttpFoundation Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mime": "^4.3|^5.0",
+ "symfony/polyfill-mbstring": "~1.1"
+ },
+ "require-dev": {
+ "predis/predis": "~1.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\HttpFoundation\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/HttpKernel/composer.json b/src/Symfony/Component/HttpKernel/composer.json
new file mode 100644
index 0000000..59dd77b
--- /dev/null
+++ b/src/Symfony/Component/HttpKernel/composer.json
@@ -0,0 +1,71 @@
+{
+ "name": "symfony/http-kernel",
+ "type": "library",
+ "description": "Symfony HttpKernel Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/error-handler": "^4.4",
+ "symfony/event-dispatcher": "^4.4",
+ "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",
+ "psr/log": "~1.0"
+ },
+ "require-dev": {
+ "symfony/browser-kit": "^4.3|^5.0",
+ "symfony/config": "^3.4|^4.0|^5.0",
+ "symfony/console": "^3.4|^4.0",
+ "symfony/css-selector": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^4.3|^5.0",
+ "symfony/dom-crawler": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/finder": "^3.4|^4.0|^5.0",
+ "symfony/process": "^3.4|^4.0|^5.0",
+ "symfony/routing": "^3.4|^4.0|^5.0",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "symfony/templating": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^4.2|^5.0",
+ "symfony/translation-contracts": "^1.1|^2",
+ "psr/cache": "~1.0",
+ "twig/twig": "^1.34|^2.4|^3.0"
+ },
+ "provide": {
+ "psr/log-implementation": "1.0"
+ },
+ "conflict": {
+ "symfony/browser-kit": "<4.3",
+ "symfony/config": "<3.4",
+ "symfony/console": ">=5",
+ "symfony/dependency-injection": "<4.3",
+ "symfony/translation": "<4.2",
+ "twig/twig": "<1.34|<2.4,>=2"
+ },
+ "suggest": {
+ "symfony/browser-kit": "",
+ "symfony/config": "",
+ "symfony/console": "",
+ "symfony/dependency-injection": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\HttpKernel\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Inflector/composer.json b/src/Symfony/Component/Inflector/composer.json
new file mode 100644
index 0000000..7e3a4af
--- /dev/null
+++ b/src/Symfony/Component/Inflector/composer.json
@@ -0,0 +1,36 @@
+{
+ "name": "symfony/inflector",
+ "type": "library",
+ "description": "Symfony Inflector Component",
+ "keywords": [
+ "string",
+ "inflection",
+ "singularize",
+ "pluralize",
+ "words",
+ "symfony"
+ ],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@gmail.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Inflector\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Intl/composer.json b/src/Symfony/Component/Intl/composer.json
new file mode 100644
index 0000000..8a1962c
--- /dev/null
+++ b/src/Symfony/Component/Intl/composer.json
@@ -0,0 +1,44 @@
+{
+ "name": "symfony/intl",
+ "type": "library",
+ "description": "A PHP replacement layer for the C intl extension that includes additional data from the ICU library.",
+ "keywords": ["intl", "icu", "internationalization", "localization", "i18n", "l10n"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Bernhard Schussek",
+ "email": "bschussek@gmail.com"
+ },
+ {
+ "name": "Eriksen Costa",
+ "email": "eriksen.costa@infranology.com.br"
+ },
+ {
+ "name": "Igor Wiedler",
+ "email": "igor@wiedler.ch"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-intl-icu": "~1.0"
+ },
+ "require-dev": {
+ "symfony/filesystem": "^3.4|^4.0|^5.0"
+ },
+ "suggest": {
+ "ext-intl": "to use the component with locales other than \"en\""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Intl\\": "" },
+ "classmap": [ "Resources/stubs" ],
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Ldap/composer.json b/src/Symfony/Component/Ldap/composer.json
new file mode 100644
index 0000000..2bc4c2f
--- /dev/null
+++ b/src/Symfony/Component/Ldap/composer.json
@@ -0,0 +1,36 @@
+{
+ "name": "symfony/ldap",
+ "type": "library",
+ "description": "An abstraction in front of PHP's LDAP functions, compatible with PHP 5.3.9 onwards.",
+ "keywords": ["ldap", "active directory"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Charles Sarrazin",
+ "email": "charles@sarraz.in"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/options-resolver": "^4.2|^5.0",
+ "ext-ldap": "*"
+ },
+ "require-dev": {
+ "symfony/security-core": "^4.4"
+ },
+ "conflict": {
+ "symfony/options-resolver": "<4.2"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Ldap\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Lock/composer.json b/src/Symfony/Component/Lock/composer.json
new file mode 100644
index 0000000..d539dee
--- /dev/null
+++ b/src/Symfony/Component/Lock/composer.json
@@ -0,0 +1,36 @@
+{
+ "name": "symfony/lock",
+ "type": "library",
+ "description": "Symfony Lock Component",
+ "keywords": ["locking", "redlock", "mutex", "semaphore", "flock", "cas"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Jérémy Derussé",
+ "email": "jeremy@derusse.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/log": "~1.0"
+ },
+ "require-dev": {
+ "doctrine/dbal": "^2.5|^3.0",
+ "predis/predis": "~1.0"
+ },
+ "conflict": {
+ "doctrine/dbal": "<2.5"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Lock\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/Bridge/Amazon/composer.json b/src/Symfony/Component/Mailer/Bridge/Amazon/composer.json
new file mode 100644
index 0000000..5108ba3
--- /dev/null
+++ b/src/Symfony/Component/Mailer/Bridge/Amazon/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/amazon-mailer",
+ "type": "symfony-bridge",
+ "description": "Symfony Amazon Mailer Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mailer": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Amazon\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/Bridge/Google/composer.json b/src/Symfony/Component/Mailer/Bridge/Google/composer.json
new file mode 100644
index 0000000..a3fbd96
--- /dev/null
+++ b/src/Symfony/Component/Mailer/Bridge/Google/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/google-mailer",
+ "type": "symfony-bridge",
+ "description": "Symfony Google Mailer Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mailer": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Google\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/Bridge/Mailchimp/composer.json b/src/Symfony/Component/Mailer/Bridge/Mailchimp/composer.json
new file mode 100644
index 0000000..1e17169
--- /dev/null
+++ b/src/Symfony/Component/Mailer/Bridge/Mailchimp/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/mailchimp-mailer",
+ "type": "symfony-bridge",
+ "description": "Symfony Mailchimp Mailer Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mailer": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Mailchimp\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/Bridge/Mailgun/composer.json b/src/Symfony/Component/Mailer/Bridge/Mailgun/composer.json
new file mode 100644
index 0000000..ac4051d
--- /dev/null
+++ b/src/Symfony/Component/Mailer/Bridge/Mailgun/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/mailgun-mailer",
+ "type": "symfony-bridge",
+ "description": "Symfony Mailgun Mailer Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mailer": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Mailgun\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/Bridge/Postmark/composer.json b/src/Symfony/Component/Mailer/Bridge/Postmark/composer.json
new file mode 100644
index 0000000..2efbe5c
--- /dev/null
+++ b/src/Symfony/Component/Mailer/Bridge/Postmark/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/postmark-mailer",
+ "type": "symfony-bridge",
+ "description": "Symfony Postmark Mailer Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mailer": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Postmark\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/Bridge/Sendgrid/composer.json b/src/Symfony/Component/Mailer/Bridge/Sendgrid/composer.json
new file mode 100644
index 0000000..542a03e
--- /dev/null
+++ b/src/Symfony/Component/Mailer/Bridge/Sendgrid/composer.json
@@ -0,0 +1,32 @@
+{
+ "name": "symfony/sendgrid-mailer",
+ "type": "symfony-bridge",
+ "description": "Symfony Sendgrid Mailer Bridge",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/mailer": "^4.4|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\Bridge\\Sendgrid\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mailer/composer.json b/src/Symfony/Component/Mailer/composer.json
new file mode 100644
index 0000000..a69302e
--- /dev/null
+++ b/src/Symfony/Component/Mailer/composer.json
@@ -0,0 +1,47 @@
+{
+ "name": "symfony/mailer",
+ "type": "library",
+ "description": "Symfony Mailer Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "egulias/email-validator": "^2.1.10",
+ "psr/log": "~1.0",
+ "symfony/event-dispatcher": "^4.3",
+ "symfony/mime": "^4.4|^5.0",
+ "symfony/service-contracts": "^1.1|^2"
+ },
+ "require-dev": {
+ "symfony/amazon-mailer": "^4.4|^5.0",
+ "symfony/google-mailer": "^4.4|^5.0",
+ "symfony/http-client-contracts": "^1.1|^2",
+ "symfony/mailgun-mailer": "^4.4|^5.0",
+ "symfony/mailchimp-mailer": "^4.4|^5.0",
+ "symfony/messenger": "^4.4|^5.0",
+ "symfony/postmark-mailer": "^4.4|^5.0",
+ "symfony/sendgrid-mailer": "^4.4|^5.0"
+ },
+ "conflict": {
+ "symfony/http-kernel": "<4.4",
+ "symfony/sendgrid-mailer": "<4.4"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mailer\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Messenger/composer.json b/src/Symfony/Component/Messenger/composer.json
new file mode 100644
index 0000000..3ef2cd2
--- /dev/null
+++ b/src/Symfony/Component/Messenger/composer.json
@@ -0,0 +1,54 @@
+{
+ "name": "symfony/messenger",
+ "type": "library",
+ "description": "Symfony Messenger Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Samuel Roze",
+ "email": "samuel.roze@gmail.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/log": "~1.0",
+ "symfony/polyfill-php80": "^1.15"
+ },
+ "require-dev": {
+ "doctrine/dbal": "^2.6|^3.0",
+ "doctrine/persistence": "^1.3|^2",
+ "psr/cache": "~1.0",
+ "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4.19|^4.1.8|^5.0",
+ "symfony/event-dispatcher": "^4.3|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/process": "^3.4|^4.0|^5.0",
+ "symfony/property-access": "^3.4|^4.0|^5.0",
+ "symfony/serializer": "^3.4|^4.0|^5.0",
+ "symfony/service-contracts": "^1.1|^2",
+ "symfony/stopwatch": "^3.4|^4.0|^5.0",
+ "symfony/validator": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "doctrine/persistence": "<1.3",
+ "symfony/event-dispatcher": "<4.3",
+ "symfony/framework-bundle": "<4.4",
+ "symfony/http-kernel": "<4.4"
+ },
+ "suggest": {
+ "enqueue/messenger-adapter": "For using the php-enqueue library as a transport."
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Messenger\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Mime/composer.json b/src/Symfony/Component/Mime/composer.json
new file mode 100644
index 0000000..5b641c2
--- /dev/null
+++ b/src/Symfony/Component/Mime/composer.json
@@ -0,0 +1,37 @@
+{
+ "name": "symfony/mime",
+ "type": "library",
+ "description": "A library to manipulate MIME messages",
+ "keywords": ["mime", "mime-type"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "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|^5.0"
+ },
+ "conflict": {
+ "symfony/mailer": "<4.4"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Mime\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/OptionsResolver/composer.json b/src/Symfony/Component/OptionsResolver/composer.json
new file mode 100644
index 0000000..7f10b6c
--- /dev/null
+++ b/src/Symfony/Component/OptionsResolver/composer.json
@@ -0,0 +1,28 @@
+{
+ "name": "symfony/options-resolver",
+ "type": "library",
+ "description": "Symfony OptionsResolver Component",
+ "keywords": ["options", "config", "configuration"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\OptionsResolver\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Process/composer.json b/src/Symfony/Component/Process/composer.json
new file mode 100644
index 0000000..026200e
--- /dev/null
+++ b/src/Symfony/Component/Process/composer.json
@@ -0,0 +1,28 @@
+{
+ "name": "symfony/process",
+ "type": "library",
+ "description": "Symfony Process Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Process\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/PropertyAccess/composer.json b/src/Symfony/Component/PropertyAccess/composer.json
new file mode 100644
index 0000000..72571c8
--- /dev/null
+++ b/src/Symfony/Component/PropertyAccess/composer.json
@@ -0,0 +1,35 @@
+{
+ "name": "symfony/property-access",
+ "type": "library",
+ "description": "Symfony PropertyAccess Component",
+ "keywords": ["property", "index", "access", "object", "array", "extraction", "injection", "reflection", "property path"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/inflector": "^3.4|^4.0|^5.0"
+ },
+ "require-dev": {
+ "symfony/cache": "^3.4|^4.0|^5.0"
+ },
+ "suggest": {
+ "psr/cache-implementation": "To cache access methods."
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\PropertyAccess\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/PropertyInfo/composer.json b/src/Symfony/Component/PropertyInfo/composer.json
new file mode 100644
index 0000000..b6cd0e5
--- /dev/null
+++ b/src/Symfony/Component/PropertyInfo/composer.json
@@ -0,0 +1,54 @@
+{
+ "name": "symfony/property-info",
+ "type": "library",
+ "description": "Symfony Property Info Component",
+ "keywords": [
+ "property",
+ "type",
+ "PHPDoc",
+ "symfony",
+ "validator",
+ "doctrine"
+ ],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Kévin Dunglas",
+ "email": "dunglas@gmail.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/inflector": "^3.4|^4.0|^5.0"
+ },
+ "require-dev": {
+ "symfony/serializer": "^3.4|^4.0|^5.0",
+ "symfony/cache": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0",
+ "doctrine/annotations": "~1.7"
+ },
+ "conflict": {
+ "phpdocumentor/reflection-docblock": "<3.0||>=3.2.0,<3.2.2",
+ "phpdocumentor/type-resolver": "<0.3.0",
+ "symfony/dependency-injection": "<3.4"
+ },
+ "suggest": {
+ "psr/cache-implementation": "To cache results",
+ "symfony/doctrine-bridge": "To use Doctrine metadata",
+ "phpdocumentor/reflection-docblock": "To use the PHPDoc",
+ "symfony/serializer": "To use Serializer metadata"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\PropertyInfo\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Routing/composer.json b/src/Symfony/Component/Routing/composer.json
new file mode 100644
index 0000000..79173b0
--- /dev/null
+++ b/src/Symfony/Component/Routing/composer.json
@@ -0,0 +1,49 @@
+{
+ "name": "symfony/routing",
+ "type": "library",
+ "description": "Symfony Routing Component",
+ "keywords": ["routing", "router", "URL", "URI"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "require-dev": {
+ "symfony/config": "^4.2|^5.0",
+ "symfony/http-foundation": "^3.4|^4.0|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "doctrine/annotations": "~1.2",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/config": "<4.2",
+ "symfony/dependency-injection": "<3.4",
+ "symfony/yaml": "<3.4"
+ },
+ "suggest": {
+ "symfony/http-foundation": "For using a Symfony Request object",
+ "symfony/config": "For using the all-in-one router or any loader",
+ "symfony/yaml": "For using the YAML loader",
+ "symfony/expression-language": "For using expression matching",
+ "doctrine/annotations": "For using the annotation loader"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Routing\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Security/Core/composer.json b/src/Symfony/Component/Security/Core/composer.json
new file mode 100644
index 0000000..e1bc4c2
--- /dev/null
+++ b/src/Symfony/Component/Security/Core/composer.json
@@ -0,0 +1,52 @@
+{
+ "name": "symfony/security-core",
+ "type": "library",
+ "description": "Symfony Security Component - Core Library",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/event-dispatcher-contracts": "^1.1|^2",
+ "symfony/service-contracts": "^1.1.6|^2"
+ },
+ "require-dev": {
+ "psr/container": "^1.0",
+ "symfony/event-dispatcher": "^4.3",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/http-foundation": "^3.4|^4.0|^5.0",
+ "symfony/ldap": "^4.4|^5.0",
+ "symfony/validator": "^3.4.31|^4.3.4|^5.0",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/event-dispatcher": "<4.3|>=5",
+ "symfony/security-guard": "<4.3",
+ "symfony/ldap": "<4.4"
+ },
+ "suggest": {
+ "psr/container-implementation": "To instantiate the Security class",
+ "symfony/event-dispatcher": "",
+ "symfony/http-foundation": "",
+ "symfony/validator": "For using the user password constraint",
+ "symfony/expression-language": "For using the expression voter",
+ "symfony/ldap": "For using LDAP integration"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Security\\Core\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Security/Csrf/composer.json b/src/Symfony/Component/Security/Csrf/composer.json
new file mode 100644
index 0000000..adfb1ef
--- /dev/null
+++ b/src/Symfony/Component/Security/Csrf/composer.json
@@ -0,0 +1,38 @@
+{
+ "name": "symfony/security-csrf",
+ "type": "library",
+ "description": "Symfony Security Component - CSRF Library",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/security-core": "^3.4|^4.0|^5.0"
+ },
+ "require-dev": {
+ "symfony/http-foundation": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/http-foundation": "<3.4"
+ },
+ "suggest": {
+ "symfony/http-foundation": "For using the class SessionTokenStorage."
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Security\\Csrf\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Security/Guard/composer.json b/src/Symfony/Component/Security/Guard/composer.json
new file mode 100644
index 0000000..942d0e4
--- /dev/null
+++ b/src/Symfony/Component/Security/Guard/composer.json
@@ -0,0 +1,33 @@
+{
+ "name": "symfony/security-guard",
+ "type": "library",
+ "description": "Symfony Security Component - Guard",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/security-core": "^3.4.22|^4.2.3|^5.0",
+ "symfony/security-http": "^4.4.1"
+ },
+ "require-dev": {
+ "psr/log": "~1.0"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Security\\Guard\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Security/Http/composer.json b/src/Symfony/Component/Security/Http/composer.json
new file mode 100644
index 0000000..533365b
--- /dev/null
+++ b/src/Symfony/Component/Security/Http/composer.json
@@ -0,0 +1,45 @@
+{
+ "name": "symfony/security-http",
+ "type": "library",
+ "description": "Symfony Security Component - HTTP Integration",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/security-core": "^4.4.8",
+ "symfony/http-foundation": "^3.4.40|^4.4.7|^5.0.7",
+ "symfony/http-kernel": "^4.4",
+ "symfony/property-access": "^3.4|^4.0|^5.0"
+ },
+ "require-dev": {
+ "symfony/routing": "^3.4|^4.0|^5.0",
+ "symfony/security-csrf": "^3.4.11|^4.0.11|^5.0",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/event-dispatcher": ">=5",
+ "symfony/security-csrf": "<3.4.11|~4.0,<4.0.11"
+ },
+ "suggest": {
+ "symfony/security-csrf": "For using tokens to protect authentication/logout attempts",
+ "symfony/routing": "For using the HttpUtils class to create sub-requests, redirect the user, and match URLs"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Security\\Http\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Security/composer.json b/src/Symfony/Component/Security/composer.json
new file mode 100644
index 0000000..2e4ca63
--- /dev/null
+++ b/src/Symfony/Component/Security/composer.json
@@ -0,0 +1,65 @@
+{
+ "name": "symfony/security",
+ "type": "library",
+ "description": "Symfony Security Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/event-dispatcher-contracts": "^1.1|^2",
+ "symfony/http-foundation": "^3.4.40|^4.4.7|^5.0.7",
+ "symfony/http-kernel": "^4.4",
+ "symfony/property-access": "^3.4|^4.0|^5.0",
+ "symfony/service-contracts": "^1.1|^2"
+ },
+ "replace": {
+ "symfony/security-core": "self.version",
+ "symfony/security-csrf": "self.version",
+ "symfony/security-guard": "self.version",
+ "symfony/security-http": "self.version"
+ },
+ "require-dev": {
+ "psr/container": "^1.0",
+ "symfony/finder": "^3.4|^4.0|^5.0",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-intl-icu": "~1.0",
+ "symfony/routing": "^3.4|^4.0|^5.0",
+ "symfony/validator": "^3.4.31|^4.3.4|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/ldap": "^4.4|^5.0",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/event-dispatcher": ">=5",
+ "symfony/ldap": "<4.4"
+ },
+ "suggest": {
+ "psr/container-implementation": "To instantiate the Security class",
+ "symfony/form": "",
+ "symfony/validator": "For using the user password constraint",
+ "symfony/routing": "For using the HttpUtils class to create sub-requests, redirect the user, and match URLs",
+ "symfony/expression-language": "For using the expression voter",
+ "symfony/ldap": "For using the LDAP user and authentication providers"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Security\\": "" },
+ "exclude-from-classmap": [
+ "/Core/Tests/",
+ "/Csrf/Tests/",
+ "/Guard/Tests/",
+ "/Http/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Serializer/composer.json b/src/Symfony/Component/Serializer/composer.json
new file mode 100644
index 0000000..82f4511
--- /dev/null
+++ b/src/Symfony/Component/Serializer/composer.json
@@ -0,0 +1,61 @@
+{
+ "name": "symfony/serializer",
+ "type": "library",
+ "description": "Symfony Serializer Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8"
+ },
+ "require-dev": {
+ "doctrine/annotations": "~1.0",
+ "doctrine/cache": "~1.0",
+ "phpdocumentor/reflection-docblock": "^3.2|^4.0",
+ "symfony/cache": "^3.4|^4.0|^5.0",
+ "symfony/config": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/error-handler": "^4.4|^5.0",
+ "symfony/http-foundation": "^3.4|^4.0|^5.0",
+ "symfony/mime": "^4.4|^5.0",
+ "symfony/property-access": "^3.4|^4.0|^5.0",
+ "symfony/property-info": "^3.4.13|~4.0|^5.0",
+ "symfony/validator": "^3.4|^4.0|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "phpdocumentor/type-resolver": "<0.2.1",
+ "symfony/dependency-injection": "<3.4",
+ "symfony/property-access": "<3.4",
+ "symfony/property-info": "<3.4",
+ "symfony/yaml": "<3.4"
+ },
+ "suggest": {
+ "psr/cache-implementation": "For using the metadata cache.",
+ "symfony/property-info": "To deserialize relations.",
+ "symfony/yaml": "For using the default YAML mapping loader.",
+ "symfony/config": "For using the XML mapping loader.",
+ "symfony/property-access": "For using the ObjectNormalizer.",
+ "symfony/http-foundation": "For using a MIME type guesser within the DataUriNormalizer.",
+ "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."
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Serializer\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Stopwatch/composer.json b/src/Symfony/Component/Stopwatch/composer.json
new file mode 100644
index 0000000..f907535
--- /dev/null
+++ b/src/Symfony/Component/Stopwatch/composer.json
@@ -0,0 +1,29 @@
+{
+ "name": "symfony/stopwatch",
+ "type": "library",
+ "description": "Symfony Stopwatch Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/service-contracts": "^1.0|^2"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Stopwatch\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Templating/composer.json b/src/Symfony/Component/Templating/composer.json
new file mode 100644
index 0000000..2503085
--- /dev/null
+++ b/src/Symfony/Component/Templating/composer.json
@@ -0,0 +1,35 @@
+{
+ "name": "symfony/templating",
+ "type": "library",
+ "description": "Symfony Templating Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8"
+ },
+ "require-dev": {
+ "psr/log": "~1.0"
+ },
+ "suggest": {
+ "psr/log-implementation": "For using debug logging in loaders"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Templating\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Translation/composer.json b/src/Symfony/Component/Translation/composer.json
new file mode 100644
index 0000000..aec9b30
--- /dev/null
+++ b/src/Symfony/Component/Translation/composer.json
@@ -0,0 +1,55 @@
+{
+ "name": "symfony/translation",
+ "type": "library",
+ "description": "Symfony Translation Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/translation-contracts": "^1.1.6|^2"
+ },
+ "require-dev": {
+ "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/http-kernel": "^4.4",
+ "symfony/intl": "^3.4|^4.0|^5.0",
+ "symfony/service-contracts": "^1.1.2|^2",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/finder": "~2.8|~3.0|~4.0|^5.0",
+ "psr/log": "~1.0"
+ },
+ "conflict": {
+ "symfony/config": "<3.4",
+ "symfony/dependency-injection": "<3.4",
+ "symfony/http-kernel": "<4.4",
+ "symfony/yaml": "<3.4"
+ },
+ "provide": {
+ "symfony/translation-implementation": "1.0"
+ },
+ "suggest": {
+ "symfony/config": "",
+ "symfony/yaml": "",
+ "psr/log-implementation": "To use logging capability in translator"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Translation\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Validator/composer.json b/src/Symfony/Component/Validator/composer.json
new file mode 100644
index 0000000..5ca767e
--- /dev/null
+++ b/src/Symfony/Component/Validator/composer.json
@@ -0,0 +1,72 @@
+{
+ "name": "symfony/validator",
+ "type": "library",
+ "description": "Symfony Validator Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/translation-contracts": "^1.1|^2"
+ },
+ "require-dev": {
+ "symfony/http-client": "^4.3|^5.0",
+ "symfony/http-foundation": "^4.1|^5.0",
+ "symfony/http-kernel": "^4.4",
+ "symfony/intl": "^4.3|^5.0",
+ "symfony/yaml": "^3.4|^4.0|^5.0",
+ "symfony/config": "^3.4|^4.0|^5.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/cache": "^3.4|^4.0|^5.0",
+ "symfony/mime": "^4.4|^5.0",
+ "symfony/property-access": "^3.4|^4.0|^5.0",
+ "symfony/property-info": "^3.4|^4.0|^5.0",
+ "symfony/translation": "^4.2",
+ "doctrine/annotations": "~1.7",
+ "doctrine/cache": "~1.0",
+ "egulias/email-validator": "^2.1.10"
+ },
+ "conflict": {
+ "doctrine/lexer": "<1.0.2",
+ "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0",
+ "symfony/dependency-injection": "<3.4",
+ "symfony/http-kernel": "<4.4",
+ "symfony/intl": "<4.3",
+ "symfony/translation": ">=5.0",
+ "symfony/yaml": "<3.4"
+ },
+ "suggest": {
+ "psr/cache-implementation": "For using the mapping cache.",
+ "doctrine/annotations": "For using the annotation mapping. You will also need doctrine/cache.",
+ "doctrine/cache": "For using the default cached annotation reader.",
+ "symfony/http-foundation": "",
+ "symfony/intl": "",
+ "symfony/translation": "For translating validation errors.",
+ "symfony/yaml": "",
+ "symfony/config": "",
+ "egulias/email-validator": "Strict (RFC compliant) email validation",
+ "symfony/property-access": "For accessing properties within comparison constraints",
+ "symfony/property-info": "To automatically add NotNull and Type constraints",
+ "symfony/expression-language": "For using the Expression validator"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Validator\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/VarDumper/composer.json b/src/Symfony/Component/VarDumper/composer.json
new file mode 100644
index 0000000..0a13e5e
--- /dev/null
+++ b/src/Symfony/Component/VarDumper/composer.json
@@ -0,0 +1,50 @@
+{
+ "name": "symfony/var-dumper",
+ "type": "library",
+ "description": "Symfony mechanism for exploring and dumping PHP variables",
+ "keywords": ["dump", "debug"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-php72": "~1.5",
+ "symfony/polyfill-php80": "^1.15"
+ },
+ "require-dev": {
+ "ext-iconv": "*",
+ "symfony/console": "^3.4|^4.0|^5.0",
+ "symfony/process": "^4.4|^5.0",
+ "twig/twig": "^1.34|^2.4|^3.0"
+ },
+ "conflict": {
+ "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0",
+ "symfony/console": "<3.4"
+ },
+ "suggest": {
+ "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"
+ },
+ "autoload": {
+ "files": [ "Resources/functions/dump.php" ],
+ "psr-4": { "Symfony\\Component\\VarDumper\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "bin": [
+ "Resources/bin/var-dump-server"
+ ],
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/VarExporter/composer.json b/src/Symfony/Component/VarExporter/composer.json
new file mode 100644
index 0000000..0158ab7
--- /dev/null
+++ b/src/Symfony/Component/VarExporter/composer.json
@@ -0,0 +1,31 @@
+{
+ "name": "symfony/var-exporter",
+ "type": "library",
+ "description": "A blend of var_export() + serialize() to turn any serializable data structure to plain PHP code",
+ "keywords": ["export", "serialize", "instantiate", "hydrate", "construct", "clone"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "require-dev": {
+ "symfony/var-dumper": "^4.4.9|^5.0.9"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\VarExporter\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/WebLink/composer.json b/src/Symfony/Component/WebLink/composer.json
new file mode 100644
index 0000000..bbee256
--- /dev/null
+++ b/src/Symfony/Component/WebLink/composer.json
@@ -0,0 +1,43 @@
+{
+ "name": "symfony/web-link",
+ "type": "library",
+ "description": "Symfony WebLink Component",
+ "keywords": ["link", "psr13", "http", "http2", "preload", "prefetch", "prerender", "dns-prefetch", "push", "performance"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Kévin Dunglas",
+ "email": "dunglas@gmail.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "provide": {
+ "psr/link-implementation": "1.0"
+ },
+ "require": {
+ "php": ">=7.1.3",
+ "psr/link": "^1.0",
+ "symfony/polyfill-php72": "^1.5"
+ },
+ "suggest": {
+ "symfony/http-kernel": ""
+ },
+ "require-dev": {
+ "symfony/http-foundation": "^4.4|^5.0",
+ "symfony/http-kernel": "^4.3|^5.0"
+ },
+ "conflict": {
+ "symfony/http-kernel": "<4.3"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\WebLink\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Workflow/composer.json b/src/Symfony/Component/Workflow/composer.json
new file mode 100644
index 0000000..132e8bf
--- /dev/null
+++ b/src/Symfony/Component/Workflow/composer.json
@@ -0,0 +1,42 @@
+{
+ "name": "symfony/workflow",
+ "type": "library",
+ "description": "Symfony Workflow Component",
+ "keywords": ["workflow", "petrinet", "place", "transition", "statemachine", "state"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Grégoire Pineau",
+ "email": "lyrixx@lyrixx.info"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/property-access": "^3.4|^4.3|^5.0"
+ },
+ "require-dev": {
+ "psr/log": "~1.0",
+ "symfony/dependency-injection": "^3.4|^4.0|^5.0",
+ "symfony/event-dispatcher": "^4.3",
+ "symfony/expression-language": "^3.4|^4.0|^5.0",
+ "symfony/security-core": "^3.4|^4.0",
+ "symfony/validator": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/event-dispatcher": "<4.3|>=5",
+ "symfony/security-core": ">=5"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Workflow\\": "" }
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Component/Yaml/composer.json b/src/Symfony/Component/Yaml/composer.json
new file mode 100644
index 0000000..3e1f456
--- /dev/null
+++ b/src/Symfony/Component/Yaml/composer.json
@@ -0,0 +1,38 @@
+{
+ "name": "symfony/yaml",
+ "type": "library",
+ "description": "Symfony Yaml Component",
+ "keywords": [],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Fabien Potencier",
+ "email": "fabien@symfony.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "symfony/polyfill-ctype": "~1.8"
+ },
+ "require-dev": {
+ "symfony/console": "^3.4|^4.0|^5.0"
+ },
+ "conflict": {
+ "symfony/console": "<3.4"
+ },
+ "suggest": {
+ "symfony/console": "For validating YAML files using the lint command"
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Component\\Yaml\\": "" },
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "minimum-stability": "dev"
+}
diff --git a/src/Symfony/Contracts/Cache/composer.json b/src/Symfony/Contracts/Cache/composer.json
new file mode 100644
index 0000000..ce40614
--- /dev/null
+++ b/src/Symfony/Contracts/Cache/composer.json
@@ -0,0 +1,41 @@
+{
+ "name": "symfony/cache-contracts",
+ "type": "library",
+ "description": "Generic abstractions related to caching",
+ "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/cache": "^1.0"
+ },
+ "suggest": {
+ "symfony/cache-implementation": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Contracts\\Cache\\": "" }
+ },
+ "minimum-stability": "dev",
+ "extra": {
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "extra": {
+ "branch-version": "1.1",
+ "branch-alias": {
+ "dev-main": "1.1-dev"
+ }
+ }
+}
diff --git a/src/Symfony/Contracts/EventDispatcher/composer.json b/src/Symfony/Contracts/EventDispatcher/composer.json
new file mode 100644
index 0000000..35258e7
--- /dev/null
+++ b/src/Symfony/Contracts/EventDispatcher/composer.json
@@ -0,0 +1,41 @@
+{
+ "name": "symfony/event-dispatcher-contracts",
+ "type": "library",
+ "description": "Generic abstractions related to dispatching event",
+ "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "suggest": {
+ "psr/event-dispatcher": "",
+ "symfony/event-dispatcher-implementation": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Contracts\\EventDispatcher\\": "" }
+ },
+ "minimum-stability": "dev",
+ "extra": {
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "extra": {
+ "branch-version": "1.1",
+ "branch-alias": {
+ "dev-main": "1.1-dev"
+ }
+ }
+}
diff --git a/src/Symfony/Contracts/HttpClient/composer.json b/src/Symfony/Contracts/HttpClient/composer.json
new file mode 100644
index 0000000..f4bcfb2
--- /dev/null
+++ b/src/Symfony/Contracts/HttpClient/composer.json
@@ -0,0 +1,40 @@
+{
+ "name": "symfony/http-client-contracts",
+ "type": "library",
+ "description": "Generic abstractions related to HTTP clients",
+ "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "suggest": {
+ "symfony/http-client-implementation": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Contracts\\HttpClient\\": "" }
+ },
+ "minimum-stability": "dev",
+ "extra": {
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "extra": {
+ "branch-version": "1.1",
+ "branch-alias": {
+ "dev-main": "1.1-dev"
+ }
+ }
+}
diff --git a/src/Symfony/Contracts/Service/composer.json b/src/Symfony/Contracts/Service/composer.json
new file mode 100644
index 0000000..4f24e1e
--- /dev/null
+++ b/src/Symfony/Contracts/Service/composer.json
@@ -0,0 +1,41 @@
+{
+ "name": "symfony/service-contracts",
+ "type": "library",
+ "description": "Generic abstractions related to writing services",
+ "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/container": "^1.0"
+ },
+ "suggest": {
+ "symfony/service-implementation": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Contracts\\Service\\": "" }
+ },
+ "minimum-stability": "dev",
+ "extra": {
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "extra": {
+ "branch-version": "1.1",
+ "branch-alias": {
+ "dev-main": "1.1-dev"
+ }
+ }
+}
diff --git a/src/Symfony/Contracts/Translation/composer.json b/src/Symfony/Contracts/Translation/composer.json
new file mode 100644
index 0000000..2b4ddbb
--- /dev/null
+++ b/src/Symfony/Contracts/Translation/composer.json
@@ -0,0 +1,40 @@
+{
+ "name": "symfony/translation-contracts",
+ "type": "library",
+ "description": "Generic abstractions related to translation",
+ "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3"
+ },
+ "suggest": {
+ "symfony/translation-implementation": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Contracts\\Translation\\": "" }
+ },
+ "minimum-stability": "dev",
+ "extra": {
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "extra": {
+ "branch-version": "1.1",
+ "branch-alias": {
+ "dev-main": "1.1-dev"
+ }
+ }
+}
diff --git a/src/Symfony/Contracts/composer.json b/src/Symfony/Contracts/composer.json
new file mode 100644
index 0000000..ec475e2
--- /dev/null
+++ b/src/Symfony/Contracts/composer.json
@@ -0,0 +1,54 @@
+{
+ "name": "symfony/contracts",
+ "type": "library",
+ "description": "A set of abstractions extracted out of the Symfony components",
+ "keywords": ["abstractions", "contracts", "decoupling", "interfaces", "interoperability", "standards"],
+ "homepage": "https://symfony.com",
+ "license": "MIT",
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "require": {
+ "php": ">=7.1.3",
+ "psr/cache": "^1.0",
+ "psr/container": "^1.0"
+ },
+ "require-dev": {
+ "symfony/polyfill-intl-idn": "^1.10"
+ },
+ "replace": {
+ "symfony/cache-contracts": "self.version",
+ "symfony/event-dispatcher-contracts": "self.version",
+ "symfony/http-client-contracts": "self.version",
+ "symfony/service-contracts": "self.version",
+ "symfony/translation-contracts": "self.version"
+ },
+ "suggest": {
+ "psr/event-dispatcher": "When using the EventDispatcher contracts",
+ "symfony/cache-implementation": "",
+ "symfony/event-dispatcher-implementation": "",
+ "symfony/http-client-implementation": "",
+ "symfony/service-implementation": "",
+ "symfony/translation-implementation": ""
+ },
+ "autoload": {
+ "psr-4": { "Symfony\\Contracts\\": "" },
+ "exclude-from-classmap": [
+ "**/Tests/"
+ ]
+ },
+ "minimum-stability": "dev",
+ "extra": {
+ "branch-version": "1.1",
+ "branch-alias": {
+ "dev-main": "1.1-dev"
+ }
+ }
+}