diff options
-rwxr-xr-x | php-symfony3-generate-autoloaders.php | 448 | ||||
-rw-r--r-- | php-symfony3.spec | 2515 |
2 files changed, 2963 insertions, 0 deletions
diff --git a/php-symfony3-generate-autoloaders.php b/php-symfony3-generate-autoloaders.php new file mode 100755 index 0000000..8d55fbd --- /dev/null +++ b/php-symfony3-generate-autoloaders.php @@ -0,0 +1,448 @@ +#!/usr/bin/env php +<?php + +define('SYMFONY_SOURCE_DIR', __DIR__.'/src'); + +require_once SYMFONY_SOURCE_DIR.'/Symfony/Component/ClassLoader/ClassLoader.php'; +$autoloader = new \Symfony\Component\ClassLoader\ClassLoader(); +$autoloader->addPrefix('Symfony\\', SYMFONY_SOURCE_DIR); +$autoloader->register(); + +use Symfony\Component\Finder\Finder; +use Symfony\Component\Finder\SplFileInfo; + +$finder = new Finder(); +$finder->in(SYMFONY_SOURCE_DIR)->name('composer.json')->sortByName(); + +foreach ($finder as $composerFile) { + $autoloadGenerator = new AutoloadGenerator($composerFile); + echo $autoloadGenerator->getFilename(), "\n"; +} + + +//------------------------------------------------------------------------------ + + +final class AutoloadGenerator { + private static $pkgMap = [ + 'doctrine/annotations' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Doctrine/Common/Annotations/autoload.php', + ], + 'doctrine/cache' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Doctrine/Common/Cache/autoload.php', + ], + 'doctrine/common' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Doctrine/Common/autoload.php', + ], + 'doctrine/data-fixtures' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Doctrine/Common/DataFixtures/autoload.php', + ], + 'doctrine/dbal' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Doctrine/DBAL/autoload.php', + ], + 'doctrine/orm' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Doctrine/ORM/autoload.php', + ], + 'egulias/email-validator' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Egulias/EmailValidator/autoload.php', + ], + 'monolog/monolog' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Monolog/autoload.php', + ], + 'ocramius/proxy-manager' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'ProxyManager/autoload.php', + ], + 'phpdocumentor/reflection-docblock' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'phpDocumentor/Reflection/DocBlock3/autoload.php', + ], + 'psr/cache-implementation' => false, + 'psr/cache' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Psr/Cache/autoload.php', + ], + 'psr/log' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Psr/Log/autoload.php', + ], + 'symfony/asset' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Asset/autoload.php', + ], + 'symfony/browser-kit' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/BrowserKit/autoload.php', + ], + 'symfony/cache' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Cache/autoload.php', + ], + 'symfony/class-loader' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/ClassLoader/autoload.php', + ], + 'symfony/config' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Config/autoload.php', + ], + 'symfony/console' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Console/autoload.php', + ], + 'symfony/css-selector' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/CssSelector/autoload.php', + ], + 'symfony/debug-bundle' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bundle/DebugBundle/autoload.php', + ], + 'symfony/debug' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Debug/autoload.php', + ], + 'symfony/dependency-injection' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/DependencyInjection/autoload.php', + ], + 'symfony/doctrine-bridge' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bridge/Doctrine/autoload.php', + ], + 'symfony/dom-crawler' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/DomCrawler/autoload.php', + ], + 'symfony/event-dispatcher' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/EventDispatcher/autoload.php', + ], + 'symfony/expression-language' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/ExpressionLanguage/autoload.php', + ], + 'symfony/filesystem' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Filesystem/autoload.php', + ], + 'symfony/finder' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Finder/autoload.php', + ], + 'symfony/form' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Form/autoload.php', + ], + 'symfony/framework-bundle' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bundle/FrameworkBundle/autoload.php', + ], + 'symfony/http-foundation' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/HttpFoundation/autoload.php', + ], + 'symfony/http-kernel' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/HttpKernel/autoload.php', + ], + 'symfony/inflector' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Inflector/autoload.php', + ], + 'symfony/intl' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Intl/autoload.php', + ], + 'symfony/ldap' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Ldap/autoload.php', + ], + 'symfony/monolog-bridge' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Monolog/autoload.php', + ], + 'symfony/options-resolver' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/OptionsResolver/autoload.php', + ], + 'symfony/phpunit-bridge' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bridge/PhpUnit/autoload.php', + ], + 'symfony/polyfill-apcu' => false, + 'symfony/polyfill-iconv' => false, + 'symfony/polyfill-intl-grapheme' => false, + 'symfony/polyfill-intl-icu' => false, + 'symfony/polyfill-intl-normalizer' => false, + 'symfony/polyfill-mbstring' => false, + 'symfony/polyfill-php54' => (PHP_VERSION_ID < 50400) + ? [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Symfony/Polyfill/autoload.php', + ] + : false, + 'symfony/polyfill-php55' => (PHP_VERSION_ID < 50500) + ? [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Symfony/Polyfill/autoload.php', + ] + : false, + 'symfony/polyfill-php56' => (PHP_VERSION_ID < 50600) + ? [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Symfony/Polyfill/autoload.php', + ] + : false, + 'symfony/polyfill-php70' => (PHP_VERSION_ID < 70000) + ? [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Symfony/Polyfill/autoload.php', + ] + : false, + 'symfony/polyfill-util' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Symfony/Polyfill/autoload.php', + ], + 'symfony/polyfill-xml' => false, + 'symfony/polyfill' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Symfony/Polyfill/autoload.php', + ], + 'symfony/process' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Process/autoload.php', + ], + 'symfony/property-access' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/PropertyAccess/autoload.php', + ], + 'symfony/property-info' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/PropertyInfo/autoload.php', + ], + 'symfony/proxy-manager-bridge' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bridge/ProxyManager/autoload.php', + ], + 'symfony/routing' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Routing/autoload.php', + ], + 'symfony/security-acl' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => 'Component/Security/Acl/autoload.php', + ], + 'symfony/security-bundle' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bundle/SecurityBundle/autoload.php', + ], + 'symfony/security-core' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Security/Core/autoload.php', + ], + 'symfony/security-csrf' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Security/Csrf/autoload.php', + ], + 'symfony/security-guard' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Security/Guard/autoload.php', + ], + 'symfony/security-http' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Security/Http/autoload.php', + ], + 'symfony/security' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Security/autoload.php', + ], + 'symfony/serializer' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Serializer/autoload.php', + ], + 'symfony/stopwatch' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Stopwatch/autoload.php', + ], + 'symfony/templating' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Templating/autoload.php', + ], + 'symfony/translation' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Translation/autoload.php', + ], + 'symfony/twig-bridge' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bridge/Twig/autoload.php', + ], + 'symfony/twig-bundle' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bundle/TwigBundle/autoload.php', + ], + 'symfony/validator' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Validator/autoload.php', + ], + 'symfony/var-dumper' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/VarDumper/autoload.php', + ], + 'symfony/web-profiler-bundle' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Bundle/WebProfilerBundle/autoload.php', + ], + 'symfony/yaml' => [ + 'prefix' => 'FEDORA_SYMFONY3_DIR', + 'path' => 'Component/Yaml/autoload.php', + ], + 'twig/twig' => [ + 'prefix' => 'FEDORA_SYMFONY3_PHP_DIR', + 'path' => [ + 'Twig2/autoload.php', + 'Twig/autoload.php', + ], + ], + ]; + + private $filename = null; + + public function __construct(SplFileInfo $composerFile) { + $composerJson = static::composerJson($composerFile); + $content = static::content( + $composerJson, + static::dependencyAutoloaders($composerJson, true), + static::dependencyAutoloaders($composerJson, false) + ); + + $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 + )); + } + } + + 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, $required) { + $dependencyAutoloaders = []; + $composerKey = $required ? 'require' : 'suggest'; + + 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) { + 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($composerJson, array $dependencyAutoloadersRequired, array $dependencyAutoloadersOptional) { + $pkg = explode('/', $composerJson['name'])[1]; + + $content = <<<AUTOLOAD +<?php +/** + * Autoloader for php-symfony3-${pkg} and its' dependencies + * (created by php-symfony3-__VERSION__-__RELEASE__). + */ + +AUTOLOAD; + + // This switch statement handles the "autoload-common" require for sub-sub-modules. + 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; + } + + if (!empty($dependencyAutoloadersRequired)) { + $dependencyAutoloadersRequiredString = implode(",\n ", $dependencyAutoloadersRequired); + $content .= <<<DEPENDENCY_AUTOLOADERS_REQUIRED + + +\Fedora\Autoloader\Dependencies::required([ + $dependencyAutoloadersRequiredString +]); +DEPENDENCY_AUTOLOADERS_REQUIRED; + } + + if (!empty($dependencyAutoloadersOptional)) { + $dependencyAutoloadersOptionalString = implode(",\n ", $dependencyAutoloadersOptional); + $content .= <<<DEPENDENCY_AUTOLOADERS_REQUIRED + + +\Fedora\Autoloader\Dependencies::optional([ + $dependencyAutoloadersOptionalString +]); +DEPENDENCY_AUTOLOADERS_REQUIRED; + } + + return $content.PHP_EOL; + } + + public function getFilename() { + return $this->filename; + } +} diff --git a/php-symfony3.spec b/php-symfony3.spec new file mode 100644 index 0000000..63868c8 --- /dev/null +++ b/php-symfony3.spec @@ -0,0 +1,2515 @@ +# +# Fedora spec file for php-symfony3 +# +# Copyright (c) 2016-2017 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 3.2.8 +%global github_commit 85959c2abbe4d2f050f950f39c9c3cf83819f3df + +%global composer_vendor symfony +%global composer_project symfony + +# "php": ">=5.5.9" +%global php_min_ver 5.5.9 +# "cache/integration-tests": "dev-master" +#%%global cache_integration_tests_min_ver +#%%global cache_integration_tests_max_ver +# "doctrine/annotations": "~1.0" +# src/Symfony/Bundle/FrameworkBundle/composer.json +# src/Symfony/Bundle/TwigBundle/composer.json +# src/Symfony/Component/PropertyInfo/composer.json +# src/Symfony/Component/Routing/composer.json +# src/Symfony/Component/Serializer/composer.json +# src/Symfony/Component/Validator/composer.json +%global doctrine_annotations_min_ver 1.0 +%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/common": "~2.4" +%global doctrine_common_min_ver 2.4 +%global doctrine_common_max_ver 3.0 +# "doctrine/data-fixtures": "1.0.*" +%global doctrine_datafixtures_min_ver 1.0.0 +%global doctrine_datafixtures_max_ver 1.1.0 +# "doctrine/dbal": "~2.4" +%global doctrine_dbal_min_ver 2.4 +%global doctrine_dbal_max_ver 3.0 +# "doctrine/doctrine-bundle": "~1.4" +%global doctrine_bundle_min_ver 1.4 +%global doctrine_bundle_max_ver 2.0 +# "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": "~1.2,>=1.2.1" +%global email_validator_min_ver 1.2.1 +%global email_validator_max_ver 2.0 +# "monolog/monolog": "~1.11" +%global monolog_min_ver 1.11 +%global monolog_max_ver 2.0 +# "ocramius/proxy-manager": "~0.4|~1.0|~2.0" +# NOTE: Min version not 0.4 to force v1 or v2. +%global proxy_manager_min_ver 1.0 +%global proxy_manager_max_ver 3.0 +# "phpdocumentor/reflection-docblock": "^3.0" +%global phpdocumentor_reflection_docblock_min_ver 3.0 +%global phpdocumentor_reflection_docblock_max_ver 4.0 +# "psr/cache": "~1.0" +%global psr_cache_min_ver 1.0 +%global psr_cache_max_ver 2.0 +# "psr/log": "~1.0" +%global psr_log_min_ver 1.0 +%global psr_log_max_ver 2.0 +# "sensio/framework-extra-bundle": "^3.0.2" +%global sensio_framework_extra_bundle_min_ver 1.0 +%global sensio_framework_extra_bundle_max_ver 2.0 +# "symfony/polyfill-intl-icu": "~1.0" +# "symfony/polyfill-mbstring": "~1.0" +# "symfony/polyfill-php56": "~1.0" +# "symfony/polyfill-php70": "~1.0" +# "symfony/polyfill-util": "~1.0" +%global symfony_polyfill_min_ver 1.0 +%global symfony_polyfill_max_ver 2.0 +# "symfony/security-acl": "~2.8|~3.0" +# NOTE: Min version not 4.0 to restrict to single major version +%global symfony_security_acl_min_ver 2.8 +%global symfony_security_acl_max_ver 3.0 +# "twig/twig": "~1.26|~2.0" +# NOTE: Multiple major versions handled in autoloaders +%global twig_min_ver 1.26 +%global twig_max_ver 3.0 + +# Build using "--without tests" to disable tests +%global with_tests 0%{!?_without_tests:1} + +%global with_cache_integration_tests 0 +%global with_phpdocumentor_reflection_docblock 0 +%global with_sensio_framework_extra_bundle 0 + +%global php_version_id %(%{_bindir}/php -r "echo PHP_VERSION_ID;") + +%{!?phpdir: %global phpdir %{_datadir}/php} +%global symfony3_dir %{phpdir}/Symfony3 + +%global symfony3_doc_ver %(echo "%{github_version}" | awk 'BEGIN { FS="." } { print $1"."$2 }') + +Name: php-%{composer_project}3 +Version: %{github_version} +Release: 1%{?dist} +Summary: Symfony PHP framework (version 3) + +Group: Development/Libraries +# 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: http://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 + +BuildArch: noarch +# Tests +%if %{with_tests} +## composer.json +### Force version to 4.8 for autoloader +BuildRequires: php(language) >= %{php_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/common) < %{doctrine_common_max_ver} +BuildRequires: php-composer(doctrine/common) >= %{doctrine_common_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(monolog/monolog) < %{monolog_max_ver} +BuildRequires: php-composer(monolog/monolog) >= %{monolog_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(phpunit/phpunit) +BuildRequires: php-composer(psr/cache) < %{psr_cache_max_ver} +BuildRequires: php-composer(psr/cache) >= %{psr_cache_min_ver} +BuildRequires: php-composer(psr/log) < %{psr_log_max_ver} +BuildRequires: php-composer(psr/log) >= %{psr_log_min_ver} +BuildRequires: php-composer(symfony/polyfill) < %{symfony_polyfill_max_ver} +BuildRequires: php-composer(symfony/polyfill) >= %{symfony_polyfill_min_ver} +BuildRequires: php-composer(symfony/security-acl) < %{symfony_security_acl_max_ver} +BuildRequires: php-composer(symfony/security-acl) >= %{symfony_security_acl_min_ver} +BuildRequires: php-composer(twig/twig) < %{twig_max_ver} +BuildRequires: php-composer(twig/twig) >= %{twig_min_ver} +%if %{with_cache_integration_tests} +BuildRequires: php-composer(cache/integration-tests) +%endif +%if %{with_phpdocumentor_reflection_docblock} +BuildRequires: php-composer(phpdocumentor/reflection-docblock) < %{phpdocumentor_reflection_docblock_max_ver} +BuildRequires: php-composer(phpdocumentor/reflection-docblock) >= %{phpdocumentor_reflection_docblock_min_ver} +%endif +%if %{with_sensio_framework_extra_bundle} +BuildRequires: php-composer(sensio/framework-extra-bundle) < %{sensio_framework_extra_bundle_max_ver} +BuildRequires: php-composer(sensio/framework-extra-bundle) >= %{sensio_framework_extra_bundle_min_ver} +%endif +## phpcompatinfo (computed from version 3.2.4) +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-spl +BuildRequires: php-tokenizer +BuildRequires: php-xml +BuildRequires: php-xmlreader +## Autoloader +BuildRequires: php-composer(fedora/autoloader) +%endif + +# 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} +# 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}/class-loader) = %{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}/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-foundation) = %{version} +Requires: php-composer(%{composer_vendor}/http-kernel) = %{version} +Requires: php-composer(%{composer_vendor}/intl) = %{version} +Requires: php-composer(%{composer_vendor}/ldap) = %{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}/workflow) = %{version} +Requires: php-composer(%{composer_vendor}/yaml) = %{version} + +# Composer +Provides: php-composer(%{composer_vendor}/%{composer_project}) = %{version} + +%description +%{summary} + +# ############################################################################## + +%package common + +Summary: Symfony common (version 3) + +Requires: php(language) >= %{php_min_ver} +# Autoloader +Requires: php-composer(fedora/autoloader) + +%description common +%{summary}. + +# ------------------------------------------------------------------------------ + +%package doctrine-bridge + +Summary: Symfony Doctrine Bridge (version 3) + +Requires: %{name}-common = %{version}-%{release} +# composer.json +Requires: php-composer(doctrine/common) >= %{doctrine_common_min_ver} +Requires: php-composer(doctrine/common) < %{doctrine_common_max_ver} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/form) +Suggests: php-composer(%{composer_vendor}/validator) +Suggests: php-composer(%{composer_vendor}/property-info) +Suggests: php-composer(doctrine/data-fixtures) +Suggests: php-composer(doctrine/dbal) +Suggests: php-composer(doctrine/orm) +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-date +Requires: php-hash +Requires: php-json +Requires: php-mbstring +Requires: php-pcre +Requires: php-pdo_sqlite +Requires: php-reflection +Requires: php-session +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/%{symfony3_doc_ver}/reference/configuration/doctrine.html + +Autoloader: %{symfony3_dir}/Bridge/Doctrine/autoload.php + +# ------------------------------------------------------------------------------ + +%package monolog-bridge + +Summary: Symfony Monolog Bridge (version 3) + +Requires: %{name}-common = %{version}-%{release} +# composer.json +Requires: php-composer(monolog/monolog) >= %{monolog_min_ver} +Requires: php-composer(monolog/monolog) < %{monolog_max_ver} +Requires: php-composer(%{composer_vendor}/http-kernel) = %{version} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/console) +Suggests: php-composer(%{composer_vendor}/event-dispatcher) + +# phpcompatinfo (computed from version 3.2.4) +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/%{symfony3_doc_ver}/reference/configuration/monolog.html + +Autoloader: %{symfony3_dir}/Bridge/Monolog/autoload.php + +# ------------------------------------------------------------------------------ + +#%%package phpunit-bridge + +#Summary: Symfony PHPUnit Bridge (version 3) + +#Requires: php(language) >= 5.3.3 +# composer.json: optional +#Suggests: php-composer(%%{composer_vendor}/debug) = %%{version} +#Suggests: php-pecl(zip) +# phpcompatinfo (computed from version 3.2.4) +#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: %%{phpdir}/Symfony/Bridge/PhpUnit/autoload.php + +# ------------------------------------------------------------------------------ + +%package proxy-manager-bridge + +Summary: Symfony ProxyManager Bridge (version 3) + +# composer.json +Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version} +Requires: php-composer(ocramius/proxy-manager) >= %{proxy_manager_min_ver} +Requires: php-composer(ocramius/proxy-manager) < %{proxy_manager_max_ver} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Bridge/ProxyManager/autoload.php + +[1] http://ocramius.github.io/ProxyManager/ + +# ------------------------------------------------------------------------------ + +%package twig-bridge + +Summary: Symfony Twig Bridge (version 3) + +Requires: %{name}-common = %{version}-%{release} +# composer.json +Requires: php-composer(twig/twig) >= %{twig_min_ver} +Requires: php-composer(twig/twig) < %{twig_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) +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}/yaml) +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Bridge/Twig/autoload.php + +# ------------------------------------------------------------------------------ + +%package debug-bundle + +Summary: Symfony Debug Bundle (version 3) + +# 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} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/dependency-injection) = %{version} +# phpcompatinfo (computed from version 3.2.4) +# <none> + +# Composer +Provides: php-composer(%{composer_vendor}/debug-bundle) = %{version} + +%description debug-bundle +%{summary}. + +Autoloader: %{symfony3_dir}/Bundle/DebugBundle/autoload.php + +# ------------------------------------------------------------------------------ + +%package framework-bundle + +Summary: Symfony Framework Bundle (version 3) + +# composer.json +Requires: php-composer(%{composer_vendor}/cache) = %{version} +Requires: php-composer(%{composer_vendor}/class-loader) = %{version} +Requires: php-composer(%{composer_vendor}/config) = %{version} +Requires: php-composer(%{composer_vendor}/dependency-injection) = %{version} +Requires: php-composer(%{composer_vendor}/event-dispatcher) = %{version} +Requires: php-composer(%{composer_vendor}/filesystem) = %{version} +Requires: php-composer(%{composer_vendor}/finder) = %{version} +Requires: php-composer(%{composer_vendor}/http-foundation) = %{version} +Requires: php-composer(%{composer_vendor}/http-kernel) = %{version} +Requires: php-composer(%{composer_vendor}/routing) = %{version} +Requires: php-composer(%{composer_vendor}/security-core) = %{version} +Requires: php-composer(%{composer_vendor}/security-csrf) = %{version} +Requires: php-composer(%{composer_vendor}/stopwatch) = %{version} +Requires: php-composer(doctrine/cache) >= %{doctrine_cache_min_ver} +Requires: 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}/process) +Suggests: php-composer(%{composer_vendor}/property-info) +Suggests: php-composer(%{composer_vendor}/serializer) +Suggests: php-composer(%{composer_vendor}/validator) +Suggests: php-composer(%{composer_vendor}/yaml) +# phpcompatinfo (computed from version 3.2.4) +Requires: php-dom +Requires: php-fileinfo +Requires: php-filter +Requires: php-hash +Requires: php-json +Requires: php-mbstring +Requires: php-pcre +Requires: php-posix +Requires: php-reflection +Requires: php-spl +Requires: php-tokenizer +Suggests: php-pcntl + +# 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/%{symfony3_doc_ver}/reference/configuration/framework.html + +Autoloader: %{symfony3_dir}/Bundle/FrameworkBundle/autoload.php + +# ------------------------------------------------------------------------------ + +%package security-bundle + +Summary: Symfony Security Bundle (version 3) + +# composer.json +Requires: php-composer(%{composer_vendor}/http-kernel) = %{version} +Requires: php-composer(%{composer_vendor}/security) = %{version} +Requires: php-composer(%{composer_vendor}/polyfill-php70) >= %{symfony_polyfill_min_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php70) < %{symfony_polyfill_max_ver} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/security-acl) +# phpcompatinfo (computed from version 3.2.4) +Requires: php-pcre +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/security-bundle) = %{version} + +%description security-bundle +%{summary}. + +Autoloader: %{symfony3_dir}/Bundle/SecurityBundle/autoload.php + +# ------------------------------------------------------------------------------ + +%package twig-bundle + +Summary: Symfony Twig Bundle (version 3) + +# composer.json +Requires: php-composer(%{composer_vendor}/config) = %{version} +Requires: php-composer(%{composer_vendor}/http-foundation) = %{version} +Requires: php-composer(%{composer_vendor}/http-kernel) = %{version} +Requires: php-composer(%{composer_vendor}/twig-bridge) = %{version} +Requires: php-composer(twig/twig) < %{twig_max_ver} +Requires: php-composer(twig/twig) >= %{twig_min_ver} +# phpcompatinfo (computed from version 3.2.4) +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/%{symfony3_doc_ver}/reference/configuration/twig.html + +Autoloader: %{symfony3_dir}/Bundle/TwigBundle/autoload.php + +# ------------------------------------------------------------------------------ + +%package web-profiler-bundle + +Summary: Symfony WebProfiler Bundle (version 3) + +License: MIT and CC-BY-SA + +# composer.json +Requires: php-composer(%{composer_vendor}/http-kernel) = %{version} +Requires: php-composer(%{composer_vendor}/polyfill-php70) < %{symfony_polyfill_max_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php70) >= %{symfony_polyfill_min_ver} +Requires: php-composer(%{composer_vendor}/routing) = %{version} +Requires: php-composer(%{composer_vendor}/twig-bridge) = %{version} +Requires: php-composer(%{composer_vendor}/var-dumper) = %{version} +Requires: php-composer(twig/twig) < %{twig_max_ver} +Requires: php-composer(twig/twig) >= %{twig_min_ver} +# phpcompatinfo (computed from version 3.2.4) +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/%{symfony3_doc_ver}/reference/configuration/web_profiler.html + +Autoloader: %{symfony3_dir}/Bundle/WebProfilerBundle/autoload.php + +# ------------------------------------------------------------------------------ + +%package asset + +Summary: Symfony Asset Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/asset.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/http-foundation) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-hash +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/asset) = %{version} + +%description asset +The Asset component manages asset URLs. + +Autoloader: %{symfony3_dir}/Component/Asset/autoload.php + +# ------------------------------------------------------------------------------ + +%package browser-kit + +Summary: Symfony BrowserKit Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/browser_kit.html + +# composer.json +Requires: php-composer(%{composer_vendor}/dom-crawler) = %{version} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/process) = %{version} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/BrowserKit/autoload.php + +# ------------------------------------------------------------------------------ + +%package cache + +Summary: Symfony implementation of PSR-6 (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/cache.html + +# composer.json +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} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-date +Requires: php-hash +Requires: php-pcre +Requires: php-pdo +Requires: php-reflection +Requires: php-spl +Suggests: php-pecl(apcu) +Suggests: php-pecl(opcache) + +# Composer +Provides: php-composer(%{composer_vendor}/cache) = %{version} +Provides: php-composer(psr/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: %{symfony3_dir}/Component/Cache/autoload.php + +[1] http://www.php-fig.org/psr/psr-6/ + +# ------------------------------------------------------------------------------ + +%package class-loader + +Summary: Symfony ClassLoader Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/class_loader.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-hash +Requires: php-pcre +Requires: php-reflection +Requires: php-spl +Requires: php-tokenizer +Suggests: php-pecl(apcu) +Suggests: php-xcache + +# Composer +Provides: php-composer(%{composer_vendor}/class-loader) = %{version} + +%description class-loader +The ClassLoader Component loads your project classes automatically if they +follow some standard PHP conventions. + +Whenever you use an undefined class, PHP uses the autoloading mechanism +to delegate the loading of a file defining the class. Symfony provides +a "universal" autoloader, which is able to load classes from files that +implement one of the following conventions: +* The technical interoperability standards [1] for PHP 5.3 namespaces + and class names +* The PEAR naming convention [2] for classes + +If your classes and the third-party libraries you use for your project follow +these standards, the Symfony autoloader is the only autoloader you will ever +need. + +Autoloader: %{symfony3_dir}/Component/ClassLoader/autoload.php + +[1] http://symfony.com/PSR0 +[2] http://pear.php.net/manual/en/standards.php + +# ------------------------------------------------------------------------------ + +%package config + +Summary: Symfony Config Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/config.html + +# composer.json +Requires: php-composer(%{composer_vendor}/filesystem) = %{version} +# composer.json: optional +Requires: php-composer(%{composer_vendor}/yaml) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-dom +Requires: php-json +Requires: php-libxml +Requires: php-pcre +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: %{symfony3_dir}/Component/Config/autoload.php + +# ------------------------------------------------------------------------------ + +%package console + +Summary: Symfony Console Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/console.html + +# composer.json +Suggests: php-composer(%{composer_vendor}/debug) = %{version} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/event-dispatcher) = %{version} +Suggests: php-composer(%{composer_vendor}/filesystem) = %{version} +Suggests: php-composer(%{composer_vendor}/process) = %{version} +Suggests: php-composer(psr/log) >= %{psr_log_min_ver} +Suggests: php-composer(psr/log) < %{psr_log_max_ver} +# phpcompatinfo (computed from version 3.2.4) +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} + +%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: %{symfony3_dir}/Component/Console/autoload.php + +# ------------------------------------------------------------------------------ + +%package css-selector + +Summary: Symfony CssSelector Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/css_selector.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/CssSelector/autoload.php + +# ------------------------------------------------------------------------------ + +%package debug + +Summary: Symfony Debug Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/debug.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json +Requires: php-composer(psr/log) >= %{psr_log_min_ver} +Requires: php-composer(psr/log) < %{psr_log_max_ver} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-json +Requires: php-pcre +Requires: php-reflection +Requires: php-spl +Suggests: php-pecl(Xdebug) + +# Composer +Provides: php-composer(%{composer_vendor}/debug) = %{version} + +%description debug +The Debug Component provides tools to ease debugging PHP code. + +Autoloader: %{symfony3_dir}/Component/Debug/autoload.php + +# ------------------------------------------------------------------------------ + +%package dependency-injection + +Summary: Symfony DependencyInjection Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/dependency_injection.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/expression-language) = %{version} +Suggests: php-composer(%{composer_vendor}/proxy-manager-bridge) = %{version} +Suggests: php-composer(%{composer_vendor}/yaml) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-dom +Requires: php-hash +Requires: php-libxml +Requires: php-pcre +Requires: php-reflection +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/dependency-injection) = %{version} + +%description dependency-injection +The Dependency Injection component allows you to standardize and centralize +the way objects are constructed in your application. + +Autoloader: %{symfony3_dir}/Component/DependencyInjection/autoload.php + +# ------------------------------------------------------------------------------ + +%package dom-crawler + +Summary: Symfony DomCrawler Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/dom_crawler.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/css-selector) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-dom +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: %{symfony3_dir}/Component/DomCrawler/autoload.php + +# ------------------------------------------------------------------------------ + +%package event-dispatcher + +Summary: Symfony EventDispatcher Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/event_dispatcher.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/dependency-injection) = %{version} +Suggests: php-composer(%{composer_vendor}/http-kernel) = %{version} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/EventDispatcher/autoload.php + +[1] http://en.wikipedia.org/wiki/Observer_pattern + +# ------------------------------------------------------------------------------ + +%package expression-language + +Summary: Symfony ExpressionLanguage Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/expression_language.html + +Requires: php-composer(%{composer_vendor}/cache) = %{version} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/ExpressionLanguage/autoload.php + +# ------------------------------------------------------------------------------ + +%package filesystem + +Summary: Symfony Filesystem Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/filesystem.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-hash +Requires: php-pcre +Requires: php-posix +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/filesystem) = %{version} + +%description filesystem +The Filesystem component provides basic utilities for the filesystem. + +Autoloader: %{symfony3_dir}/Component/Filesystem/autoload.php + +# ------------------------------------------------------------------------------ + +%package finder + +Summary: Symfony Finder Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/finder.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/Finder/autoload.php + +# ------------------------------------------------------------------------------ + +%package form + +Summary: Symfony Form Component (version 3) +URL: http://symfony.com/doc/%{symfony3_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} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/framework-bundle) = %{version} +Suggests: php-composer(%{composer_vendor}/security-csrf) = %{version} +Suggests: php-composer(%{composer_vendor}/twig-bridge) = %{version} +Suggests: php-composer(%{composer_vendor}/validator) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-date +Requires: php-hash +Requires: php-intl +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: %{symfony3_dir}/Component/Form/autoload.php + +# ------------------------------------------------------------------------------ + +%package http-foundation + +Summary: Symfony HttpFoundation Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/http_foundation.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +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-reflection +Requires: php-session +Requires: php-sockets +Requires: php-spl +Suggests: php-pecl(mongo) + +# 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: %{symfony3_dir}/Component/HttpFoundation/autoload.php + +# ------------------------------------------------------------------------------ + +%package http-kernel + +Summary: Symfony HttpKernel Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/http_kernel.html + +# composer.json +Requires: php-composer(%{composer_vendor}/debug) = %{version} +Requires: php-composer(%{composer_vendor}/event-dispatcher) = %{version} +Requires: php-composer(%{composer_vendor}/http-foundation) = %{version} +Requires: php-composer(psr/log) >= %{psr_log_min_ver} +Requires: php-composer(psr/log) < %{psr_log_max_ver} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/browser-kit) = %{version} +Suggests: php-composer(%{composer_vendor}/class-loader) = %{version} +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/console) = %{version} +Suggests: php-composer(%{composer_vendor}/dependency-injection) = %{version} +Suggests: php-composer(%{composer_vendor}/finder) = %{version} +Suggests: php-composer(%{composer_vendor}/var-dumper) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-date +Requires: php-hash +Requires: php-pcre +Requires: php-reflection +Requires: php-session +Requires: php-spl +Requires: php-tokenizer +Suggests: php-pecl(apcu) +Suggests: php-pecl(opcache) +Suggests: php-pecl(Xdebug) +Suggests: php-xcache + +# 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/%{symfony3_doc_ver}/reference/configuration/kernel.html + +Autoloader: %{symfony3_dir}/Component/HttpKernel/autoload.php + +# ------------------------------------------------------------------------------ + +%package inflector + +Summary: Symfony Inflector Component (version 3) + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype + +# Composer +Provides: php-composer(%{composer_vendor}/inflector) = %{version} + +%description inflector +Symfony Inflector Component (version 3). + +Autoloader: %{symfony3_dir}/Component/Inflector/autoload.php + +# ------------------------------------------------------------------------------ + +%package intl + +Summary: Symfony Intl Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/intl.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Requires: php-intl +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_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 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/ldap.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json +Requires: php-composer(%{composer_vendor}/options-resolver) = %{version} +Requires: php-composer(%{composer_vendor}/polyfill-php56) < %{symfony_polyfill_max_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php56) >= %{symfony_polyfill_min_ver} +Requires: php-ldap +# phpcompatinfo (computed from version 3.2.4) +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/ldap) = %{version} + +%description ldap +%{summary}. + +Autoloader: %{symfony3_dir}/Component/Ldap/autoload.php + +# ------------------------------------------------------------------------------ + +%package options-resolver + +Summary: Symfony OptionsResolver Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/options_resolver.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/OptionsResolver/autoload.php + +# ------------------------------------------------------------------------------ + +%package process + +Summary: Symfony Process Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/process.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/Process/autoload.php + +# ------------------------------------------------------------------------------ + +%package property-access + +Summary: Symfony PropertyAccess Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/property_access.html + +# composer.json +Requires: php-composer(%{composer_vendor}/inflector) = %{version} +Requires: php-composer(%{composer_vendor}/polyfill-php70) < %{symfony_polyfill_max_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php70) >= %{symfony_polyfill_min_ver} +# composer.json: optional +Suggests: php-composer(psr/cache-implementation) +# phpcompatinfo (computed from version 3.2.4) +Requires: php-pcre +Requires: php-reflection +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: %{symfony3_dir}/Component/PropertyAccess/autoload.php + +# ------------------------------------------------------------------------------ + +%package property-info + +Summary: Symfony PropertyInfo Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/property_info.html + +# composer.json +Requires: php-composer(%{composer_vendor}/inflector) = %{version} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/doctrine-bridge) +Suggests: php-composer(%{composer_vendor}/serializer) +Suggests: php-composer(psr/cache-implementation) +Suggests: php-phpdocumentor-reflection-docblock3 +# phpcompatinfo (computed from version 3.2.4) +Requires: php-pcre +Requires: php-reflection +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/property-info) = %{version} + +%description property-info +%{summary}. + +Autoloader: %{symfony3_dir}/Component/PropertyInfo/autoload.php + +# ------------------------------------------------------------------------------ + +%package routing + +Summary: Symfony Routing Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/routing.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/dependency-injection) = %{version} +Suggests: php-composer(%{composer_vendor}/expression-language) = %{version} +Suggests: php-composer(%{composer_vendor}/http-foundation) = %{version} +Suggests: php-composer(%{composer_vendor}/yaml) = %{version} +Suggests: php-composer(doctrine/annotations) < %{doctrine_annotations_max_ver} +Suggests: php-composer(doctrine/annotations) >= %{doctrine_annotations_min_ver} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/Routing/autoload.php + +# ------------------------------------------------------------------------------ + +%package security + +Summary: Symfony Security Component (version 3) +URL: http://symfony.com/doc/%{symfony3_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}/polyfill-php56) < %{symfony_polyfill_max_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php56) >= %{symfony_polyfill_min_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php70) < %{symfony_polyfill_max_ver} +Requires: php-composer(%{composer_vendor}/polyfill-php70) >= %{symfony_polyfill_min_ver} +Requires: php-composer(%{composer_vendor}/polyfill-util) < %{symfony_polyfill_max_ver} +Requires: php-composer(%{composer_vendor}/polyfill-util) >= %{symfony_polyfill_min_ver} +Requires: php-composer(%{composer_vendor}/property-access) = %{version} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/expression-language) = %{version} +Suggests: php-composer(%{composer_vendor}/form) = %{version} +Suggests: php-composer(%{composer_vendor}/ldap) = %{version} +Suggests: php-composer(%{composer_vendor}/routing) = %{version} +Suggests: php-composer(%{composer_vendor}/validator) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-date +Requires: php-hash +Requires: php-json +Requires: php-pcre +Requires: php-reflection +Requires: php-session +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: %{symfony3_dir}/Component/Security/autoload.php + +# ------------------------------------------------------------------------------ + +%package serializer + +Summary: Symfony Serializer Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/serializer.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/http-foundation) = %{version} +Suggests: php-composer(%{composer_vendor}/property-access) = %{version} +Suggests: php-composer(%{composer_vendor}/property-info) = %{version} +Suggests: php-composer(%{composer_vendor}/yaml) = %{version} +Suggests: php-composer(doctrine/annotations) < %{doctrine_annotations_max_ver} +Suggests: php-composer(doctrine/annotations) >= %{doctrine_annotations_min_ver} +Suggests: php-composer(doctrine/cache) < %{doctrine_cache_max_ver} +Suggests: php-composer(doctrine/cache) >= %{doctrine_cache_min_ver} +Suggests: php-composer(psr/cache-implementation) +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-date +Requires: php-dom +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: %{symfony3_dir}/Component/Serializer/autoload.php + +# ------------------------------------------------------------------------------ + +%package stopwatch + +Summary: Symfony Stopwatch Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/stopwatch.html + +Requires: %{name}-common = %{version}-%{release} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/stopwatch) = %{version} + +%description stopwatch +Stopwatch component provides a way to profile code. + +Autoloader: %{symfony3_dir}/Component/Stopwatch/autoload.php + +# ------------------------------------------------------------------------------ + +%package templating + +Summary: Symfony Templating Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/templating.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(psr/log) < %{psr_log_max_ver} +Suggests: php-composer(psr/log) >= %{psr_log_min_ver} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/Templating/autoload.php + +# ------------------------------------------------------------------------------ + +%package translation + +Summary: Symfony Translation Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/translation.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/yaml) = %{version} +Suggests: php-composer(psr/log) < %{psr_log_max_ver} +Suggests: php-composer(psr/log) >= %{psr_log_min_ver} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-dom +Requires: php-intl +Requires: php-json +Requires: php-libxml +Requires: php-mbstring +Requires: php-pcre +Requires: php-simplexml +Requires: php-spl + +# Composer +Provides: php-composer(%{composer_vendor}/translation) = %{version} + +%description translation +Translation provides tools for loading translation files and generating +translated strings from these including support for pluralization. + +Autoloader: %{symfony3_dir}/Component/Translation/autoload.php + +# ------------------------------------------------------------------------------ + +%package validator + +Summary: Symfony Validator Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/validator.html + +# composer.json +Requires: php-composer(%{composer_vendor}/translation) = %{version} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/config) = %{version} +Suggests: php-composer(%{composer_vendor}/expression-language) = %{version} +Suggests: php-composer(%{composer_vendor}/http-foundation) = %{version} +Suggests: php-composer(%{composer_vendor}/intl) = %{version} +Suggests: php-composer(%{composer_vendor}/property-access) = %{version} +Suggests: php-composer(%{composer_vendor}/yaml) = %{version} +Suggests: php-composer(doctrine/annotations) < %{doctrine_annotations_max_ver} +Suggests: php-composer(doctrine/annotations) >= %{doctrine_annotations_min_ver} +Suggests: php-composer(doctrine/cache) < %{doctrine_cache_max_ver} +Suggests: php-composer(doctrine/cache) >= %{doctrine_cache_min_ver} +Suggests: php-composer(egulias/email-validator) < %{email_validator_max_ver} +Suggests: php-composer(egulias/email-validator) >= %{email_validator_min_ver} +Suggests: php-composer(psr/cache-implementation) +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-date +Requires: php-filter +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: %{symfony3_dir}/Component/Validator/autoload.php + +# ------------------------------------------------------------------------------ + +%package var-dumper + +Summary: Symfony mechanism for exploring and dumping PHP variables (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/var_dumper.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +## ext-symfony_debug +# phpcompatinfo (computed from version 3.2.4) +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 +Suggests: php-mysql +Suggests: php-pecl(amqp) +Suggests: php-pgsql + +# 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: %{symfony3_dir}/Component/VarDumper/autoload.php + +# ------------------------------------------------------------------------------ + +%package workflow + +Summary: Symfony Workflow Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/workflow.html + +# composer.json +Requires: php-composer(%{composer_vendor}/property-access) = %{version} +# phpcompatinfo (computed from version 3.2.4) +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: %{symfony3_dir}/Component/Workflow/autoload.php + +# ------------------------------------------------------------------------------ + +%package yaml + +Summary: Symfony Yaml Component (version 3) +URL: http://symfony.com/doc/%{symfony3_doc_ver}/components/yaml.html + +Requires: %{name}-common = %{version}-%{release} +# composer.json: optional +Suggests: php-composer(%{composer_vendor}/console) = %{version} +# phpcompatinfo (computed from version 3.2.4) +Requires: php-ctype +Requires: php-date +Requires: php-json +Requires: php-mbstring +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: %{symfony3_dir}/Component/Yaml/autoload.php + +# ############################################################################## + + +%prep +%setup -qn %{github_name}-%{github_commit} +cp %{SOURCE1} . + +: Remove unnecessary files +find src -name '.git*' -delete + + +%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_SYMFONY3_PHP_DIR')) { + define('FEDORA_SYMFONY3_PHP_DIR', '%{phpdir}'); +} + +if (!defined('FEDORA_SYMFONY3_DIR')) { + define('FEDORA_SYMFONY3_DIR', __DIR__); +} + +\Fedora\Autoloader\Autoload::addPsr4('Symfony\\Bridge\\', FEDORA_SYMFONY3_DIR.'/Bridge', true); +\Fedora\Autoloader\Autoload::addPsr4('Symfony\\Bundle\\', FEDORA_SYMFONY3_DIR.'/Bundle', true); +\Fedora\Autoloader\Autoload::addPsr4('Symfony\\Component\\', FEDORA_SYMFONY3_DIR.'/Component', true); +AUTOLOAD + +: Create autoloaders +for AUTOLOADER in $(./%{name}-generate-autoloaders.php) +do + sed \ + -e 's#__VERSION__#%{version}#' \ + -e 's#__RELEASE__#%{release}#' \ + -e 's#__PHPDIR__#%{phpdir}#' \ + -i $AUTOLOADER + echo ">>>>>>>>>>>>>>>>>>>> Autoloader: $AUTOLOADER" + cat $AUTOLOADER +done + + +%install +mkdir -p %{buildroot}%{symfony3_dir} +cp -rp src/Symfony/* %{buildroot}%{symfony3_dir}/ + +# Symlink main package docs to common sub-package docs +mkdir -p %{buildroot}%{_docdir} +%if 0%{?fedora} >= 20 +ln -s %{name}-common %{buildroot}%{_docdir}/%{name} +%else +ln -s %{name}-common-%{version} %{buildroot}%{_docdir}/%{name}-%{version} +%endif + + +%check +%if %{with_tests} +: Set up PSR-0 path for PHPUnit +mkdir psr0 +ln -s %{buildroot}%{symfony3_dir} psr0/Symfony +PSR0=$(pwd)/psr0/Symfony + +: Modify PHPUnit config +sed -e 's#vendor/autoload\.php#bootstrap.php#' \ + -e 's#\./src/Symfony/#%{buildroot}%{phpdir}/Symfony3/#' \ + phpunit.xml.dist > phpunit.xml + +: Skip tests requiring ldap server to connect to +sed \ + -e 's/function testLdapQuery/function SKIP_testLdapQuery/' \ + -e 's/function testLdapQueryIterator/function SKIP_testLdapQueryIterator/' \ + -i %{buildroot}%{symfony3_dir}/Component/Ldap/Tests/Adapter/ExtLdap/AdapterTest.php +sed \ + -e 's/function testLdapClientFunctional/function SKIP_testLdapClientFunctional/' \ + -i %{buildroot}%{symfony3_dir}/Component/Ldap/Tests/LdapClientTest.php +rm -f %{buildroot}%{symfony3_dir}/Component/Ldap/Tests/Adapter/ExtLdap/LdapManagerTest.php + +: Skip tests that fail in a mock environment +sed \ + -e 's/function testAskHiddenResponse/function SKIP_testAskHiddenResponse/' \ + -e 's/function testLegacyAskHiddenResponse/function SKIP_testLegacyAskHiddenResponse/' \ + -i %{buildroot}%{symfony3_dir}/Component/Console/Tests/Helper/QuestionHelperTest.php + +: Skip test requiring external resource -- i.e. network access required +sed 's/function testCopyForOriginUrlsAndExistingLocalFileDefaultsToCopy/function SKIP_testCopyForOriginUrlsAndExistingLocalFileDefaultsToCopy/' \ + -i %{buildroot}%{symfony3_dir}/Component/Filesystem/Tests/FilesystemTest.php +sed 's/function testReasonPhraseDefaultsAgainstIana/function SKIP_testReasonPhraseDefaultsAgainstIana/' \ + -i %{buildroot}%{symfony3_dir}/Component/HttpFoundation/Tests/ResponseTest.php + +: Skip TTY tests +sed \ + -e 's/function testTTYCommand/function SKIP_testTTYCommand/' \ + -e 's/function testTTYCommandExitCode/function SKIP_testTTYCommandExitCode/' \ + -i %{buildroot}%{symfony3_dir}/Component/Process/Tests/ProcessTest.php + +: Re-load common autoloader to prevent trying to load Composer autoloader +sed "s#__DIR__.'/../../vendor/autoload.php'#__DIR__.'/../../../../autoload-common.php'#" \ + -i %{buildroot}%{symfony3_dir}/Component/HttpKernel/Tests/Fixtures/TestClient.php + +# TODO: Fix!!!!! (adjust for "Symfony3" dir instead of "Symfony" dir) +# $function[0]->add('Symfony_Component_Debug_Tests_Fixtures', dirname(dirname(dirname(dirname(dirname(__DIR__)))))); +sed 's/function testHandleClassNotFound/function SKIP_testHandleClassNotFound/' \ + -i %{buildroot}%{symfony3_dir}/Component/Debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php + +# TODO: Investigate!!!!! +: Skip Intl JSON tests +rm -rf %{buildroot}%{symfony3_dir}/Component/Intl/Tests/Data/Provider/Json + +%if !%{with_cache_integration_tests} +rm -f %{buildroot}%{symfony3_dir}/Component/Cache/Tests/Adapter/* +%endif + +%if !%{with_phpdocumentor_reflection_docblock} +: Skip tests requiring "phpdocumentor/reflection-docblock" +rm -f \ + %{buildroot}%{symfony3_dir}/Bundle/FrameworkBundle/Tests/Functional/PropertyInfoTest.php \ + %{buildroot}%{symfony3_dir}/Bundle/FrameworkBundle/Tests/Functional/SerializerTest.php \ + %{buildroot}%{symfony3_dir}/Component/PropertyInfo/Tests/Extractors/PhpDocExtractorTest.php +sed \ + -e 's/function testAcceptJsonNumber/function SKIP_testAcceptJsonNumber/' \ + -e 's/function testDenomalizeRecursive/function SKIP_testDenomalizeRecursive/' \ + -e 's/function testRejectInvalidKey/function SKIP_testRejectInvalidKey/' \ + -i %{buildroot}%{symfony3_dir}/Component/Serializer/Tests/Normalizer/ObjectNormalizerTest.php +%endif + +%if !%{with_sensio_framework_extra_bundle} +: Skip tests requiring "sensio/framework-extra-bundle" +rm -f %{buildroot}%{symfony3_dir}/Bundle/FrameworkBundle/Tests/Functional/AnnotatedControllerTest.php +%endif + +: Run tests +RET=0 +for PKG in %{buildroot}%{phpdir}/Symfony3/*/*; do + if [ "$(basename $PKG)" = "PhpUnit" ]; then + continue + elif [ -d $PKG ]; then + echo -e "\n>>>>>>>>>>>>>>>>>>>> ${PKG}\n" + + : Create tests bootstrap + cat << BOOTSTRAP | tee bootstrap.php +<?php +require_once '${PKG}/autoload.php'; +require_once '%{buildroot}%{phpdir}/Symfony3/Bridge/PhpUnit/bootstrap.php'; + +// For require-dev or suggest "psr/cache-implementation". +if (in_array(basename('$PKG'), [ + 'HttpFoundation', + 'PropertyAccess', + 'PropertyInfo', + 'Serializer', + 'Validator', +])) { + require_once '%{buildroot}%{phpdir}/Symfony3/Component/Cache/autoload.php'; +} + +// For require-dev "psr/log". +if (in_array(basename('$PKG'), [ + 'Workflow', +])) { + require_once '%{phpdir}/Psr/Log/autoload.php'; +} + +// For cache component's require-dev. +if ('Cache' == basename('$PKG')) { + require_once '%{phpdir}/Doctrine/Common/Cache/autoload.php'; + require_once '%{phpdir}/Doctrine/DBAL/autoload.php'; +} +BOOTSTRAP + + %{_bindir}/php -d include_path=.:${PSR0}:%{buildroot}%{phpdir}:%{phpdir} \ + %{_bindir}/phpunit --exclude-group benchmark $PKG || RET=1 + fi +done +exit $RET +%else +: Tests skipped +%endif + + +%{!?_licensedir:%global license %%doc} + +%files +%if 0%{?fedora} >= 20 +%doc %{_docdir}/%{name} +%else +%doc %{_docdir}/%{name}-%{version} +%endif + + +# ############################################################################## + +%files common + +%doc *.md composer.json +%license LICENSE + +%dir %{symfony3_dir} + %{symfony3_dir}/autoload-common.php +%dir %{symfony3_dir}/Bridge +%dir %{symfony3_dir}/Bundle +%dir %{symfony3_dir}/Component + +%exclude %{symfony3_dir}/Bridge/PhpUnit + +# ------------------------------------------------------------------------------ + +%files doctrine-bridge + +%license src/Symfony/Bridge/Doctrine/LICENSE +%doc src/Symfony/Bridge/Doctrine/*.md +%doc src/Symfony/Bridge/Doctrine/composer.json + +%{symfony3_dir}/Bridge/Doctrine +%exclude %{symfony3_dir}/Bridge/Doctrine/LICENSE +%exclude %{symfony3_dir}/Bridge/Doctrine/*.md +%exclude %{symfony3_dir}/Bridge/Doctrine/composer.json +%exclude %{symfony3_dir}/Bridge/Doctrine/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bridge/Monolog +%exclude %{symfony3_dir}/Bridge/Monolog/LICENSE +%exclude %{symfony3_dir}/Bridge/Monolog/*.md +%exclude %{symfony3_dir}/Bridge/Monolog/composer.json +%exclude %{symfony3_dir}/Bridge/Monolog/phpunit.* +%exclude %{symfony3_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 + +#%%{symfony3_dir}/Bridge/PhpUnit +#%%exclude %%{symfony3_dir}/Bridge/PhpUnit/LICENSE +#%%exclude %%{symfony3_dir}/Bridge/PhpUnit/*.md +#%%exclude %%{symfony3_dir}/Bridge/PhpUnit/composer.json +#%%exclude %%{symfony3_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 + +%{symfony3_dir}/Bridge/ProxyManager +%exclude %{symfony3_dir}/Bridge/ProxyManager/LICENSE +%exclude %{symfony3_dir}/Bridge/ProxyManager/*.md +%exclude %{symfony3_dir}/Bridge/ProxyManager/composer.json +%exclude %{symfony3_dir}/Bridge/ProxyManager/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bridge/Twig +%exclude %{symfony3_dir}/Bridge/Twig/LICENSE +%exclude %{symfony3_dir}/Bridge/Twig/*.md +%exclude %{symfony3_dir}/Bridge/Twig/composer.json +%exclude %{symfony3_dir}/Bridge/Twig/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bundle/DebugBundle +#%%exclude %%{symfony3_dir}/Bundle/DebugBundle/*.md +%exclude %{symfony3_dir}/Bundle/DebugBundle/composer.json +%exclude %{symfony3_dir}/Bundle/DebugBundle/LICENSE +%exclude %{symfony3_dir}/Bundle/DebugBundle/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bundle/FrameworkBundle +%exclude %{symfony3_dir}/Bundle/FrameworkBundle/*.md +%exclude %{symfony3_dir}/Bundle/FrameworkBundle/composer.json +%exclude %{symfony3_dir}/Bundle/FrameworkBundle/LICENSE +%exclude %{symfony3_dir}/Bundle/FrameworkBundle/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bundle/SecurityBundle +%exclude %{symfony3_dir}/Bundle/SecurityBundle/*.md +%exclude %{symfony3_dir}/Bundle/SecurityBundle/composer.json +%exclude %{symfony3_dir}/Bundle/SecurityBundle/LICENSE +%exclude %{symfony3_dir}/Bundle/SecurityBundle/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bundle/TwigBundle +%exclude %{symfony3_dir}/Bundle/TwigBundle/*.md +%exclude %{symfony3_dir}/Bundle/TwigBundle/composer.json +%exclude %{symfony3_dir}/Bundle/TwigBundle/LICENSE +%exclude %{symfony3_dir}/Bundle/TwigBundle/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Bundle/WebProfilerBundle +%exclude %{symfony3_dir}/Bundle/WebProfilerBundle/*.md +%exclude %{symfony3_dir}/Bundle/WebProfilerBundle/composer.json +%exclude %{symfony3_dir}/Bundle/WebProfilerBundle/LICENSE +%exclude %{symfony3_dir}/Bundle/WebProfilerBundle/phpunit.* +%exclude %{symfony3_dir}/Bundle/WebProfilerBundle/Resources/ICONS_LICENSE.txt +%exclude %{symfony3_dir}/Bundle/WebProfilerBundle/Tests + +# ------------------------------------------------------------------------------ + +%files asset + +%license src/Symfony/Component/Asset/LICENSE +%doc src/Symfony/Component/Asset/*.md +%doc src/Symfony/Component/Asset/composer.json + +%{symfony3_dir}/Component/Asset +%exclude %{symfony3_dir}/Component/Asset/LICENSE +%exclude %{symfony3_dir}/Component/Asset/*.md +%exclude %{symfony3_dir}/Component/Asset/composer.json +%exclude %{symfony3_dir}/Component/Asset/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/BrowserKit +%exclude %{symfony3_dir}/Component/BrowserKit/LICENSE +%exclude %{symfony3_dir}/Component/BrowserKit/*.md +%exclude %{symfony3_dir}/Component/BrowserKit/composer.json +%exclude %{symfony3_dir}/Component/BrowserKit/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Cache +%exclude %{symfony3_dir}/Component/Cache/LICENSE +%exclude %{symfony3_dir}/Component/Cache/*.md +%exclude %{symfony3_dir}/Component/Cache/composer.json +%exclude %{symfony3_dir}/Component/Cache/phpunit.* +%exclude %{symfony3_dir}/Component/Cache/Tests + +# ------------------------------------------------------------------------------ + +%files class-loader + +%license src/Symfony/Component/ClassLoader/LICENSE +%doc src/Symfony/Component/ClassLoader/*.md +%doc src/Symfony/Component/ClassLoader/composer.json + +%{symfony3_dir}/Component/ClassLoader +%exclude %{symfony3_dir}/Component/ClassLoader/LICENSE +%exclude %{symfony3_dir}/Component/ClassLoader/*.md +%exclude %{symfony3_dir}/Component/ClassLoader/composer.json +%exclude %{symfony3_dir}/Component/ClassLoader/phpunit.* +%exclude %{symfony3_dir}/Component/ClassLoader/Tests + +# ------------------------------------------------------------------------------ + +%files config + +%license src/Symfony/Component/Config/LICENSE +%doc src/Symfony/Component/Config/*.md +%doc src/Symfony/Component/Config/composer.json + +%{symfony3_dir}/Component/Config +%exclude %{symfony3_dir}/Component/Config/LICENSE +%exclude %{symfony3_dir}/Component/Config/*.md +%exclude %{symfony3_dir}/Component/Config/composer.json +%exclude %{symfony3_dir}/Component/Config/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Console +%exclude %{symfony3_dir}/Component/Console/LICENSE +%exclude %{symfony3_dir}/Component/Console/*.md +%exclude %{symfony3_dir}/Component/Console/composer.json +%exclude %{symfony3_dir}/Component/Console/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/CssSelector +%exclude %{symfony3_dir}/Component/CssSelector/LICENSE +%exclude %{symfony3_dir}/Component/CssSelector/*.md +%exclude %{symfony3_dir}/Component/CssSelector/composer.json +%exclude %{symfony3_dir}/Component/CssSelector/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Debug +%exclude %{symfony3_dir}/Component/Debug/LICENSE +%exclude %{symfony3_dir}/Component/Debug/*.md +%exclude %{symfony3_dir}/Component/Debug/composer.json +%exclude %{symfony3_dir}/Component/Debug/phpunit.* +%exclude %{symfony3_dir}/Component/Debug/Tests +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/DependencyInjection +%exclude %{symfony3_dir}/Component/DependencyInjection/LICENSE +%exclude %{symfony3_dir}/Component/DependencyInjection/*.md +%exclude %{symfony3_dir}/Component/DependencyInjection/composer.json +%exclude %{symfony3_dir}/Component/DependencyInjection/phpunit.* +%exclude %{symfony3_dir}/Component/DependencyInjection/Tests + +# ------------------------------------------------------------------------------ + +%files dom-crawler + +%license src/Symfony/Component/DomCrawler/LICENSE +%doc src/Symfony/Component/DomCrawler/*.md +%doc src/Symfony/Component/DomCrawler/composer.json + +%{symfony3_dir}/Component/DomCrawler +%exclude %{symfony3_dir}/Component/DomCrawler/LICENSE +%exclude %{symfony3_dir}/Component/DomCrawler/*.md +%exclude %{symfony3_dir}/Component/DomCrawler/composer.json +%exclude %{symfony3_dir}/Component/DomCrawler/phpunit.* +%exclude %{symfony3_dir}/Component/DomCrawler/Tests + +# ------------------------------------------------------------------------------ + +%files event-dispatcher + +%license src/Symfony/Component/EventDispatcher/LICENSE +%doc src/Symfony/Component/EventDispatcher/*.md +%doc src/Symfony/Component/EventDispatcher/composer.json + +%{symfony3_dir}/Component/EventDispatcher +%exclude %{symfony3_dir}/Component/EventDispatcher/LICENSE +%exclude %{symfony3_dir}/Component/EventDispatcher/*.md +%exclude %{symfony3_dir}/Component/EventDispatcher/composer.json +%exclude %{symfony3_dir}/Component/EventDispatcher/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/ExpressionLanguage +%exclude %{symfony3_dir}/Component/ExpressionLanguage/LICENSE +%exclude %{symfony3_dir}/Component/ExpressionLanguage/*.md +%exclude %{symfony3_dir}/Component/ExpressionLanguage/composer.json +%exclude %{symfony3_dir}/Component/ExpressionLanguage/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Filesystem +%exclude %{symfony3_dir}/Component/Filesystem/LICENSE +%exclude %{symfony3_dir}/Component/Filesystem/*.md +%exclude %{symfony3_dir}/Component/Filesystem/composer.json +%exclude %{symfony3_dir}/Component/Filesystem/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Finder +%exclude %{symfony3_dir}/Component/Finder/LICENSE +%exclude %{symfony3_dir}/Component/Finder/*.md +%exclude %{symfony3_dir}/Component/Finder/composer.json +%exclude %{symfony3_dir}/Component/Finder/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Form +%exclude %{symfony3_dir}/Component/Form/LICENSE +%exclude %{symfony3_dir}/Component/Form/*.md +%exclude %{symfony3_dir}/Component/Form/composer.json +%exclude %{symfony3_dir}/Component/Form/phpunit.* +%exclude %{symfony3_dir}/Component/Form/Tests + +# ------------------------------------------------------------------------------ + +%files http-foundation + +%license src/Symfony/Component/HttpFoundation/LICENSE +%doc src/Symfony/Component/HttpFoundation/*.md +%doc src/Symfony/Component/HttpFoundation/composer.json + +%{symfony3_dir}/Component/HttpFoundation +%exclude %{symfony3_dir}/Component/HttpFoundation/LICENSE +%exclude %{symfony3_dir}/Component/HttpFoundation/*.md +%exclude %{symfony3_dir}/Component/HttpFoundation/composer.json +%exclude %{symfony3_dir}/Component/HttpFoundation/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/HttpKernel +%exclude %{symfony3_dir}/Component/HttpKernel/LICENSE +%exclude %{symfony3_dir}/Component/HttpKernel/*.md +%exclude %{symfony3_dir}/Component/HttpKernel/composer.json +%exclude %{symfony3_dir}/Component/HttpKernel/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Inflector +%exclude %{symfony3_dir}/Component/Inflector/LICENSE +%exclude %{symfony3_dir}/Component/Inflector/*.md +%exclude %{symfony3_dir}/Component/Inflector/composer.json +%exclude %{symfony3_dir}/Component/Inflector/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Intl +%exclude %{symfony3_dir}/Component/Intl/LICENSE +%exclude %{symfony3_dir}/Component/Intl/*.md +%exclude %{symfony3_dir}/Component/Intl/composer.json +%exclude %{symfony3_dir}/Component/Intl/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Ldap +%exclude %{symfony3_dir}/Component/Ldap/LICENSE +%exclude %{symfony3_dir}/Component/Ldap/*.md +%exclude %{symfony3_dir}/Component/Ldap/composer.json +%exclude %{symfony3_dir}/Component/Ldap/phpunit.* +%exclude %{symfony3_dir}/Component/Ldap/Tests + +# ------------------------------------------------------------------------------ + +%files options-resolver + +%license src/Symfony/Component/OptionsResolver/LICENSE +%doc src/Symfony/Component/OptionsResolver/*.md +%doc src/Symfony/Component/OptionsResolver/composer.json + +%{symfony3_dir}/Component/OptionsResolver +%exclude %{symfony3_dir}/Component/OptionsResolver/LICENSE +%exclude %{symfony3_dir}/Component/OptionsResolver/*.md +%exclude %{symfony3_dir}/Component/OptionsResolver/composer.json +%exclude %{symfony3_dir}/Component/OptionsResolver/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Process +%exclude %{symfony3_dir}/Component/Process/LICENSE +%exclude %{symfony3_dir}/Component/Process/*.md +%exclude %{symfony3_dir}/Component/Process/composer.json +%exclude %{symfony3_dir}/Component/Process/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/PropertyAccess +%exclude %{symfony3_dir}/Component/PropertyAccess/LICENSE +%exclude %{symfony3_dir}/Component/PropertyAccess/*.md +%exclude %{symfony3_dir}/Component/PropertyAccess/composer.json +%exclude %{symfony3_dir}/Component/PropertyAccess/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/PropertyInfo +%exclude %{symfony3_dir}/Component/PropertyInfo/LICENSE +%exclude %{symfony3_dir}/Component/PropertyInfo/*.md +%exclude %{symfony3_dir}/Component/PropertyInfo/composer.json +%exclude %{symfony3_dir}/Component/PropertyInfo/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Routing +%exclude %{symfony3_dir}/Component/Routing/LICENSE +%exclude %{symfony3_dir}/Component/Routing/*.md +%exclude %{symfony3_dir}/Component/Routing/composer.json +%exclude %{symfony3_dir}/Component/Routing/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Security +%exclude %{symfony3_dir}/Component/Security/LICENSE +%exclude %{symfony3_dir}/Component/Security/*.md +%exclude %{symfony3_dir}/Component/Security/composer.json +%exclude %{symfony3_dir}/Component/Security/phpunit.* +%exclude %{symfony3_dir}/Component/Security/*/phpunit.* +%exclude %{symfony3_dir}/Component/Security/*/Tests +%exclude %{symfony3_dir}/Component/Security/*/LICENSE +%exclude %{symfony3_dir}/Component/Security/*/*.md +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Serializer +%exclude %{symfony3_dir}/Component/Serializer/LICENSE +%exclude %{symfony3_dir}/Component/Serializer/*.md +%exclude %{symfony3_dir}/Component/Serializer/composer.json +%exclude %{symfony3_dir}/Component/Serializer/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Stopwatch +%exclude %{symfony3_dir}/Component/Stopwatch/LICENSE +%exclude %{symfony3_dir}/Component/Stopwatch/*.md +%exclude %{symfony3_dir}/Component/Stopwatch/composer.json +%exclude %{symfony3_dir}/Component/Stopwatch/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Templating +%exclude %{symfony3_dir}/Component/Templating/LICENSE +%exclude %{symfony3_dir}/Component/Templating/*.md +%exclude %{symfony3_dir}/Component/Templating/composer.json +%exclude %{symfony3_dir}/Component/Templating/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Translation +%exclude %{symfony3_dir}/Component/Translation/LICENSE +%exclude %{symfony3_dir}/Component/Translation/*.md +%exclude %{symfony3_dir}/Component/Translation/composer.json +%exclude %{symfony3_dir}/Component/Translation/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Validator +%exclude %{symfony3_dir}/Component/Validator/LICENSE +%exclude %{symfony3_dir}/Component/Validator/*.md +%exclude %{symfony3_dir}/Component/Validator/composer.json +%exclude %{symfony3_dir}/Component/Validator/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/VarDumper +%exclude %{symfony3_dir}/Component/VarDumper/LICENSE +%exclude %{symfony3_dir}/Component/VarDumper/*.md +%exclude %{symfony3_dir}/Component/VarDumper/composer.json +%exclude %{symfony3_dir}/Component/VarDumper/phpunit.* +%exclude %{symfony3_dir}/Component/VarDumper/Tests + +# ------------------------------------------------------------------------------ + +%files workflow + +%license src/Symfony/Component/Workflow/LICENSE +%doc src/Symfony/Component/Workflow/*.md +%doc src/Symfony/Component/Workflow/composer.json + +%{symfony3_dir}/Component/Workflow +%exclude %{symfony3_dir}/Component/Workflow/LICENSE +%exclude %{symfony3_dir}/Component/Workflow/*.md +%exclude %{symfony3_dir}/Component/Workflow/composer.json +%exclude %{symfony3_dir}/Component/Workflow/phpunit.* +%exclude %{symfony3_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 + +%{symfony3_dir}/Component/Yaml +%exclude %{symfony3_dir}/Component/Yaml/LICENSE +%exclude %{symfony3_dir}/Component/Yaml/*.md +%exclude %{symfony3_dir}/Component/Yaml/composer.json +%exclude %{symfony3_dir}/Component/Yaml/phpunit.* +%exclude %{symfony3_dir}/Component/Yaml/Tests + +# ############################################################################## + +%changelog +* 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 |