diff --git a/.github/workflows/cgl.yaml b/.github/workflows/cgl.yaml index 04721463..4e9d303e 100644 --- a/.github/workflows/cgl.yaml +++ b/.github/workflows/cgl.yaml @@ -33,7 +33,7 @@ jobs: - name: Install Composer dependencies uses: ramsey/composer-install@v2 with: - composer-options: --no-plugins + composer-options: --no-scripts --no-plugins # Check Composer dependencies - name: Check dependencies @@ -45,11 +45,11 @@ jobs: # Linting - name: Lint composer.json - run: composer lint:composer -- --dry-run + run: composer lint:composer - name: Lint Editorconfig - run: .Build/bin/ec -e .Build + run: composer lint:editorconfig - name: Lint PHP - run: composer lint:php -- --dry-run + run: composer lint:php - name: Lint TypoScript run: composer lint:typoscript -- --fail-on-warnings diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 1773de99..8ad731db 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -62,7 +62,7 @@ jobs: - name: Setup PHP uses: shivammathur/setup-php@v2 with: - php-version: 7.4 + php-version: 8.1 extensions: intl, mbstring, json, zip, curl tools: composer:v2 coverage: none diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index bfce34a2..68d00350 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -16,18 +16,9 @@ jobs: strategy: fail-fast: false matrix: - typo3-version: ["10.4", "11.5"] - php-version: ["7.4", "8.0", "8.1", "8.2", "8.3"] + typo3-version: ["12.4"] + php-version: ["8.1", "8.2", "8.3"] dependencies: ["highest", "lowest"] - exclude: - - typo3-version: "10.4" - php-version: "8.0" - - typo3-version: "10.4" - php-version: "8.1" - - typo3-version: "10.4" - php-version: "8.2" - - typo3-version: "10.4" - php-version: "8.3" steps: - uses: actions/checkout@v4 with: diff --git a/.gitignore b/.gitignore index 3dd1125f..307fb27b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ -/.Build/ +/.Build +/config /Resources/Private/Libs/Build/vendor /Resources/Private/Libs/vendors.phar -/var/ +/var /.php-cs-fixer.cache /.phpunit.result.cache diff --git a/.php-cs-fixer.php b/.php-cs-fixer.php index 793e6cb1..a5e9cfe8 100644 --- a/.php-cs-fixer.php +++ b/.php-cs-fixer.php @@ -2,6 +2,25 @@ declare(strict_types=1); +/* + * This file is part of the TYPO3 CMS extension "handlebars". + * + * Copyright (C) 2024 Elias Häußler + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + $config = \TYPO3\CodingStandards\CsFixerConfig::create(); $config->setParallelConfig(\PhpCsFixer\Runner\Parallel\ParallelConfigFactory::detect()); diff --git a/Classes/Cache/HandlebarsCache.php b/Classes/Cache/HandlebarsCache.php index 07c05c79..c1fa5615 100644 --- a/Classes/Cache/HandlebarsCache.php +++ b/Classes/Cache/HandlebarsCache.php @@ -33,15 +33,9 @@ */ class HandlebarsCache implements CacheInterface { - /** - * @var FrontendInterface - */ - protected $cache; - - public function __construct(FrontendInterface $cache) - { - $this->cache = $cache; - } + public function __construct( + protected readonly FrontendInterface $cache, + ) {} public function get(string $template): ?string { diff --git a/Classes/Compatibility/View/ExtbaseViewAdapter.php b/Classes/Compatibility/View/ExtbaseViewAdapter.php index 0d4fa4fc..dabee71e 100644 --- a/Classes/Compatibility/View/ExtbaseViewAdapter.php +++ b/Classes/Compatibility/View/ExtbaseViewAdapter.php @@ -24,8 +24,9 @@ namespace Fr\Typo3Handlebars\Compatibility\View; use Fr\Typo3Handlebars\DataProcessing\DataProcessorInterface; -use TYPO3\CMS\Extbase\Mvc\Controller\ControllerContext; -use TYPO3\CMS\Extbase\Mvc\View\ViewInterface; +use TYPO3\CMS\Extbase\Mvc\Request; +use TYPO3\CMS\Fluid\Core\Rendering\RenderingContext; +use TYPO3\CMS\Fluid\View\AbstractTemplateView; /** * ExtbaseViewAdapter @@ -33,31 +34,17 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -class ExtbaseViewAdapter implements ViewInterface +class ExtbaseViewAdapter extends AbstractTemplateView { - /** - * @var ControllerContext - */ - protected $controllerContext; - - /** - * @var DataProcessorInterface - */ - protected $processor; - /** * @var array */ - protected $renderData = []; + protected array $renderData = []; - public function __construct(DataProcessorInterface $processor) - { - $this->processor = $processor; - } - - public function setControllerContext(ControllerContext $controllerContext): void - { - $this->controllerContext = $controllerContext; + public function __construct( + protected readonly DataProcessorInterface $processor, + ) { + parent::__construct(); } public function assign($key, $value): self @@ -78,27 +65,42 @@ public function assignMultiple(array $values): self return $this; } - public function canRender(ControllerContext $controllerContext): bool + public function render($actionName = null): string { - return true; - } + $renderingContext = $this->getRenderingContext(); + $controller = null; + $request = null; - public function render(): string - { - $request = $this->controllerContext->getRequest(); + if ($renderingContext instanceof RenderingContext) { + $request = $renderingContext->getRequest(); + } + if ($request instanceof Request) { + $controller = $request->getControllerObjectName(); + } return $this->processor->process('', [ 'extbaseViewConfiguration' => [ - 'controller' => $request->getControllerObjectName(), - 'action' => $request->getControllerActionName(), + 'controller' => $controller, + 'action' => $actionName, 'request' => $request, 'variables' => $this->renderData, ], ]); } - public function initializeView(): void + /** + * @param array $variables + */ + public function renderSection($sectionName, array $variables = [], $ignoreUnknown = false): string + { + return ''; + } + + /** + * @param array $variables + */ + public function renderPartial($partialName, $sectionName = null, array $variables = [], $ignoreUnknown = false): string { - // Intentionally left blank. + return ''; } } diff --git a/Classes/Compatibility/View/HandlebarsViewResolver.php b/Classes/Compatibility/View/HandlebarsViewResolver.php index 916595cc..1ca84d24 100644 --- a/Classes/Compatibility/View/HandlebarsViewResolver.php +++ b/Classes/Compatibility/View/HandlebarsViewResolver.php @@ -24,10 +24,10 @@ namespace Fr\Typo3Handlebars\Compatibility\View; use Fr\Typo3Handlebars\DataProcessing\DataProcessorInterface; +use Psr\Http\Message\ServerRequestInterface; use TYPO3\CMS\Core\Utility\GeneralUtility; -use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface; use TYPO3\CMS\Extbase\Mvc\View\GenericViewResolver; -use TYPO3\CMS\Extbase\Mvc\View\ViewInterface; +use TYPO3Fluid\Fluid\View\ViewInterface; /** * HandlebarsViewResolver @@ -38,19 +38,9 @@ class HandlebarsViewResolver extends GenericViewResolver { /** - * @var array> + * @var array> */ - protected $processorMap = []; - - /** - * @var ConfigurationManagerInterface - */ - protected $configurationManager; - - public function injectConfigurationManager(ConfigurationManagerInterface $configurationManager): void - { - $this->configurationManager = $configurationManager; - } + protected array $processorMap = []; public function resolve(string $controllerObjectName, string $actionName, string $format): ViewInterface { @@ -86,7 +76,7 @@ protected function getProcessor(string $controllerClassName, string $actionName) return null; } - $contentObjectRenderer = $this->configurationManager->getContentObject(); + $contentObjectRenderer = $this->getRequest()->getAttribute('currentContentObject'); if ($contentObjectRenderer !== null && method_exists($processor, 'setContentObjectRenderer')) { $processor->setContentObjectRenderer($contentObjectRenderer); } @@ -95,11 +85,16 @@ protected function getProcessor(string $controllerClassName, string $actionName) } /** - * @param array> $processorMap + * @param array> $processorMap */ public function setProcessorMap(array $processorMap): self { $this->processorMap = $processorMap; return $this; } + + protected function getRequest(): ServerRequestInterface + { + return $GLOBALS['TYPO3_REQUEST']; + } } diff --git a/Classes/Data/Response/SimpleProviderResponse.php b/Classes/Data/Response/SimpleProviderResponse.php index e12b5a15..a99c5105 100644 --- a/Classes/Data/Response/SimpleProviderResponse.php +++ b/Classes/Data/Response/SimpleProviderResponse.php @@ -33,26 +33,19 @@ */ class SimpleProviderResponse implements ProviderResponseInterface, \ArrayAccess { - /** - * @var array - */ - protected $data; - /** * @param array $data */ - public function __construct(array $data = []) - { - $this->data = $data; - } + public function __construct( + protected array $data = [], + ) {} public function offsetExists($offset): bool { return \array_key_exists($offset, $this->data); } - #[\ReturnTypeWillChange] - public function offsetGet($offset) + public function offsetGet($offset): mixed { if ($this->offsetExists($offset)) { return $this->data[$offset]; @@ -60,7 +53,7 @@ public function offsetGet($offset) return null; } - public function offsetSet($offset, $value): void + public function offsetSet($offset, mixed $value): void { $this->data[$offset] = $value; } diff --git a/Classes/DataProcessing/AbstractDataProcessor.php b/Classes/DataProcessing/AbstractDataProcessor.php index 04142aef..f27b1291 100644 --- a/Classes/DataProcessing/AbstractDataProcessor.php +++ b/Classes/DataProcessing/AbstractDataProcessor.php @@ -44,35 +44,16 @@ abstract class AbstractDataProcessor implements DataProcessorInterface, LoggerAw use ErrorHandlingTrait; use LoggerAwareTrait; - /** - * @var ContentObjectRenderer - */ - public $cObj; - - /** - * @var string - */ - protected $content; + protected ?ConfigurationManagerInterface $configurationManager = null; + protected ?ContentObjectRenderer $contentObjectRenderer = null; + protected ?PresenterInterface $presenter = null; + protected ?DataProviderInterface $provider = null; + protected string $content = ''; /** * @var array */ - protected $configuration; - - /** - * @var PresenterInterface - */ - protected $presenter; - - /** - * @var DataProviderInterface - */ - protected $provider; - - /** - * @var ConfigurationManagerInterface - */ - protected $configurationManager; + protected array $configuration = []; /** * @todo Move to constructor with next BC break @@ -113,9 +94,9 @@ public function setProvider(DataProviderInterface $provider): DataProcessorInter return $this; } - public function setContentObjectRenderer(ContentObjectRenderer $cObj): self + public function setContentObjectRenderer(ContentObjectRenderer $contentObjectRenderer): self { - $this->cObj = $cObj; + $this->contentObjectRenderer = $contentObjectRenderer; return $this; } @@ -132,13 +113,13 @@ public function setContentObjectRenderer(ContentObjectRenderer $cObj): self */ protected function initializeConfigurationManager(): void { - if ($this->configurationManager !== null && $this->cObj !== null) { + if ($this->configurationManager !== null && $this->contentObjectRenderer !== null) { $fullConfiguration = $this->configurationManager->getConfiguration( ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT ); // setConfiguration() resets extensionName and pluginName $this->configurationManager->setConfiguration($fullConfiguration); - $this->configurationManager->setContentObject($this->cObj); + $this->configurationManager->setContentObject($this->contentObjectRenderer); } } diff --git a/Classes/DataProcessing/SimpleProcessor.php b/Classes/DataProcessing/SimpleProcessor.php index 7597c888..4de8ad1b 100644 --- a/Classes/DataProcessing/SimpleProcessor.php +++ b/Classes/DataProcessing/SimpleProcessor.php @@ -26,8 +26,7 @@ use Fr\Typo3Handlebars\Exception\InvalidTemplateFileException; use Fr\Typo3Handlebars\Renderer\RendererInterface; use Fr\Typo3Handlebars\Traits\ErrorHandlingTrait; -use Psr\Log\LoggerAwareInterface; -use Psr\Log\LoggerAwareTrait; +use Psr\Log\LoggerInterface; use TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer; /** @@ -36,31 +35,22 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -class SimpleProcessor implements DataProcessorInterface, LoggerAwareInterface +class SimpleProcessor implements DataProcessorInterface { use ErrorHandlingTrait; - use LoggerAwareTrait; - /** - * @var ContentObjectRenderer - */ - public $cObj; + protected ?ContentObjectRenderer $contentObjectRenderer = null; - /** - * @var RendererInterface - */ - protected $renderer; - - public function __construct(RendererInterface $renderer) - { - $this->renderer = $renderer; - } + public function __construct( + protected readonly LoggerInterface $logger, + protected readonly RendererInterface $renderer, + ) {} public function process(string $content, array $configuration): string { try { $templatePath = $this->getTemplatePath($configuration); - return $this->renderer->render($templatePath, $this->cObj->data); + return $this->renderer->render($templatePath, $this->contentObjectRenderer?->data ?? []); } catch (InvalidTemplateFileException $exception) { $this->handleError($exception); return ''; @@ -86,9 +76,9 @@ protected function getTemplatePath(array $configuration): string return trim($configuration['userFunc.']['templatePath']); } - public function setContentObjectRenderer(ContentObjectRenderer $cObj): self + public function setContentObjectRenderer(ContentObjectRenderer $contentObjectRenderer): self { - $this->cObj = $cObj; + $this->contentObjectRenderer = $contentObjectRenderer; return $this; } } diff --git a/Classes/DependencyInjection/Compatibility/ExtbaseControllerCompatibilityLayer.php b/Classes/DependencyInjection/Compatibility/ExtbaseControllerCompatibilityLayer.php index f29880c1..c5e09cca 100644 --- a/Classes/DependencyInjection/Compatibility/ExtbaseControllerCompatibilityLayer.php +++ b/Classes/DependencyInjection/Compatibility/ExtbaseControllerCompatibilityLayer.php @@ -43,20 +43,12 @@ final class ExtbaseControllerCompatibilityLayer implements CompatibilityLayerInt { public const TYPE = 'extbase_controller'; - /** - * @var ContainerBuilder - */ - private $container; - - /** - * @var Definition - */ - private $viewResolverDefinition; + private readonly Definition $viewResolverDefinition; - public function __construct(ContainerBuilder $container) - { - $this->container = $container; - $this->viewResolverDefinition = $container->getDefinition(HandlebarsViewResolver::class); + public function __construct( + private readonly ContainerBuilder $container, + ) { + $this->viewResolverDefinition = $this->container->getDefinition(HandlebarsViewResolver::class); $this->validateService(HandlebarsViewResolver::class); } @@ -140,7 +132,7 @@ private function validateConfiguration(array $configuration): void } if (isset($configuration['actions']) && !\is_string($configuration['actions']) && $configuration['actions'] !== null) { throw new \InvalidArgumentException( - \sprintf('Actions for extbase controllers must be configured as comma-separated list, %s given.', \gettype($configuration['actions'])), + \sprintf('Actions for extbase controllers must be configured as comma-separated list, %s given.', \get_debug_type($configuration['actions'])), 1632814413 ); } diff --git a/Classes/DependencyInjection/Compatibility/ProcessorCompatibility.php b/Classes/DependencyInjection/Compatibility/ProcessorCompatibility.php index a7fd8534..1958c1cd 100644 --- a/Classes/DependencyInjection/Compatibility/ProcessorCompatibility.php +++ b/Classes/DependencyInjection/Compatibility/ProcessorCompatibility.php @@ -35,30 +35,14 @@ */ final class ProcessorCompatibility { - /** - * @var string - */ - private $serviceId; - - /** - * @var array - */ - private $tagAttributes; - - /** - * @var ContainerBuilder - */ - private $container; - /** * @param array $tagAttributes */ - public function __construct(string $serviceId, array $tagAttributes, ContainerBuilder $container) - { - $this->serviceId = $serviceId; - $this->tagAttributes = $tagAttributes; - $this->container = $container; - + public function __construct( + private readonly string $serviceId, + private readonly array $tagAttributes, + private readonly ContainerBuilder $container, + ) { $this->validate(); } @@ -77,13 +61,10 @@ public function provideCompatibility(): void */ private function buildLayerForType(string $type): CompatibilityLayerInterface { - switch ($type) { - case ExtbaseControllerCompatibilityLayer::TYPE: - return new ExtbaseControllerCompatibilityLayer($this->container); - - default: - throw UnsupportedTypeException::create($type); - } + return match ($type) { + ExtbaseControllerCompatibilityLayer::TYPE => new ExtbaseControllerCompatibilityLayer($this->container), + default => throw UnsupportedTypeException::create($type), + }; } private function validate(): void diff --git a/Classes/DependencyInjection/DataProcessorPass.php b/Classes/DependencyInjection/DataProcessorPass.php index f00f405a..b781add0 100644 --- a/Classes/DependencyInjection/DataProcessorPass.php +++ b/Classes/DependencyInjection/DataProcessorPass.php @@ -38,21 +38,10 @@ */ final class DataProcessorPass implements CompilerPassInterface { - /** - * @var string - */ - private $processorTagName; - - /** - * @var string - */ - private $compatibilityTagName; - - public function __construct(string $processorTagName, string $compatibilityTagName) - { - $this->processorTagName = $processorTagName; - $this->compatibilityTagName = $compatibilityTagName; - } + public function __construct( + private readonly string $processorTagName, + private readonly string $compatibilityTagName, + ) {} public function process(ContainerBuilder $container): void { diff --git a/Classes/DependencyInjection/Extension/Configuration.php b/Classes/DependencyInjection/Extension/Configuration.php index 9469499f..db212471 100644 --- a/Classes/DependencyInjection/Extension/Configuration.php +++ b/Classes/DependencyInjection/Extension/Configuration.php @@ -89,7 +89,7 @@ private function getRootPathNormalizationClosure(): \Closure } if (!\is_array($transitions)) { throw new \InvalidArgumentException( - \sprintf('Illegal value for root path configuration. Only numeric arrays are allowed, got "%s" instead.', \gettype($transitions)), + \sprintf('Illegal value for root path configuration. Only numeric arrays are allowed, got "%s" instead.', \get_debug_type($transitions)), 1615835938 ); } @@ -104,7 +104,7 @@ private function getRootPathNormalizationClosure(): \Closure } /** - * @param array $array + * @param array $array */ private function containsNonNumericIndexes(array $array): bool { diff --git a/Classes/DependencyInjection/Extension/HandlebarsExtension.php b/Classes/DependencyInjection/Extension/HandlebarsExtension.php index 074a1a6e..2ac294b8 100644 --- a/Classes/DependencyInjection/Extension/HandlebarsExtension.php +++ b/Classes/DependencyInjection/Extension/HandlebarsExtension.php @@ -43,20 +43,20 @@ final class HandlebarsExtension extends Extension /** * @var string[] */ - private $templateRootPaths = []; + private array $templateRootPaths = []; /** * @var string[] */ - private $partialRootPaths = []; + private array $partialRootPaths = []; /** - * @var array + * @var array */ - private $defaultData = []; + private array $defaultData = []; /** - * @param array[] $configs + * @param array[] $configs */ public function load(array $configs, ContainerBuilder $container): void { @@ -71,7 +71,7 @@ public function load(array $configs, ContainerBuilder $container): void } /** - * @param array[] $configs + * @param array[] $configs */ private function parseConfiguration(array $configs): void { @@ -82,8 +82,8 @@ private function parseConfiguration(array $configs): void } /** - * @param array[] $configs - * @return array + * @param array[] $configs + * @return array */ private function mergeConfigs(array $configs, string $configKey): array { diff --git a/Classes/DependencyInjection/HandlebarsHelperPass.php b/Classes/DependencyInjection/HandlebarsHelperPass.php index 33115040..6e7aa8dc 100644 --- a/Classes/DependencyInjection/HandlebarsHelperPass.php +++ b/Classes/DependencyInjection/HandlebarsHelperPass.php @@ -39,26 +39,15 @@ */ final class HandlebarsHelperPass implements CompilerPassInterface { - /** - * @var string - */ - private $helperTagName; - - /** - * @var string - */ - private $rendererTagName; - /** * @var Definition[] */ - private $rendererDefinitions = []; + private array $rendererDefinitions = []; - public function __construct(string $helperTagName, string $rendererTagName) - { - $this->helperTagName = $helperTagName; - $this->rendererTagName = $rendererTagName; - } + public function __construct( + private readonly string $helperTagName, + private readonly string $rendererTagName, + ) {} public function process(ContainerBuilder $container): void { diff --git a/Classes/DependencyInjection/ProcessingBridge.php b/Classes/DependencyInjection/ProcessingBridge.php index de9bb136..2a58193d 100644 --- a/Classes/DependencyInjection/ProcessingBridge.php +++ b/Classes/DependencyInjection/ProcessingBridge.php @@ -37,31 +37,14 @@ final class ProcessingBridge { private const PROCESSOR_CLASSNAME_PATTERN = '#(?P.+)\\\\DataProcessing\\\\(?P.+?(?=Data)?)(Data)?Processor$#'; - /** - * @var string - */ - private $id; - - /** - * @var Definition - */ - private $definition; - - /** - * @var string - */ - private $vendorName; + private string $vendorName = ''; + private string $baseProcessorName = ''; - /** - * @var string - */ - private $baseProcessorName; - - public function __construct(string $id, Definition $definition) - { - $this->id = $id; - $this->definition = $definition; - $this->inspectProcessor(); + public function __construct( + private readonly string $id, + private readonly Definition $definition, + ) { + [$this->vendorName, $this->baseProcessorName] = $this->inspectProcessor(); } public function getPresenter(): Reference @@ -91,7 +74,10 @@ public function hasMethodCall(string $method): bool return $this->definition->hasMethodCall($method); } - private function inspectProcessor(): void + /** + * @return array{string, string} + */ + private function inspectProcessor(): array { // Throw exception if given data processor does not match expected class scheme if (!preg_match(self::PROCESSOR_CLASSNAME_PATTERN, $this->id, $matches)) { @@ -101,7 +87,9 @@ private function inspectProcessor(): void ); } - $this->vendorName = $matches['vendorName']; - $this->baseProcessorName = $matches['baseProcessorName']; + return [ + $matches['vendorName'], + $matches['baseProcessorName'], + ]; } } diff --git a/Classes/Event/AfterRenderingEvent.php b/Classes/Event/AfterRenderingEvent.php index 5ae176cf..91977736 100644 --- a/Classes/Event/AfterRenderingEvent.php +++ b/Classes/Event/AfterRenderingEvent.php @@ -33,27 +33,11 @@ */ class AfterRenderingEvent { - /** - * @var string - */ - private $templatePath; - - /** - * @var string - */ - private $content; - - /** - * @var HandlebarsRenderer - */ - private $renderer; - - public function __construct(string $templatePath, string $content, HandlebarsRenderer $renderer) - { - $this->templatePath = $templatePath; - $this->content = $content; - $this->renderer = $renderer; - } + public function __construct( + private readonly string $templatePath, + private string $content, + private readonly HandlebarsRenderer $renderer, + ) {} public function getTemplatePath(): string { diff --git a/Classes/Event/BeforeRenderingEvent.php b/Classes/Event/BeforeRenderingEvent.php index 2cb3fe34..3b692f80 100644 --- a/Classes/Event/BeforeRenderingEvent.php +++ b/Classes/Event/BeforeRenderingEvent.php @@ -34,29 +34,13 @@ class BeforeRenderingEvent { /** - * @var string + * @param array $data */ - private $templatePath; - - /** - * @var array - */ - private $data; - - /** - * @var HandlebarsRenderer - */ - private $renderer; - - /** - * @param array $data - */ - public function __construct(string $templatePath, array $data, HandlebarsRenderer $renderer) - { - $this->templatePath = $templatePath; - $this->data = $data; - $this->renderer = $renderer; - } + public function __construct( + private readonly string $templatePath, + private array $data, + private readonly HandlebarsRenderer $renderer, + ) {} public function getTemplatePath(): string { @@ -64,7 +48,7 @@ public function getTemplatePath(): string } /** - * @return array + * @return array */ public function getData(): array { @@ -72,7 +56,7 @@ public function getData(): array } /** - * @param array $data + * @param array $data */ public function setData(array $data): self { diff --git a/Classes/Exception/InvalidHelperException.php b/Classes/Exception/InvalidHelperException.php index dbb566a5..bd9652e6 100644 --- a/Classes/Exception/InvalidHelperException.php +++ b/Classes/Exception/InvalidHelperException.php @@ -39,13 +39,10 @@ public static function forFunction(string $helperFunction): self ); } - /** - * @param mixed $helperFunction - */ - public static function forUnsupportedType($helperFunction): self + public static function forUnsupportedType(mixed $helperFunction): self { return new self( - \sprintf('Only callables, strings and arrays can be defined as helpers, "%s" given.', \gettype($helperFunction)), + \sprintf('Only callables, strings and arrays can be defined as helpers, "%s" given.', \get_debug_type($helperFunction)), 1637339694 ); } @@ -58,7 +55,7 @@ public static function forInvalidCallable(array $callable): self [$className, $methodName] = $callable; return new self( - \sprintf('The helper function with callable [%s, %s] is not valid.', \gettype($className), \gettype($methodName)), + \sprintf('The helper function with callable [%s, %s] is not valid.', \get_debug_type($className), \get_debug_type($methodName)), 1638180355 ); } diff --git a/Classes/Exception/InvalidTemplateFileException.php b/Classes/Exception/InvalidTemplateFileException.php index 814fc6d0..1e61410b 100644 --- a/Classes/Exception/InvalidTemplateFileException.php +++ b/Classes/Exception/InvalidTemplateFileException.php @@ -32,15 +32,12 @@ */ final class InvalidTemplateFileException extends \RuntimeException { - /** - * @var string - */ - private $templateFile; - - public function __construct(string $templateFile = '', int $code = 0, \Throwable $previous = null) - { - $this->templateFile = $templateFile; - $message = \sprintf('The requested template file "%s" is invalid or could not be read.', $templateFile); + public function __construct( + private readonly string $templateFile = '', + int $code = 0, + \Throwable $previous = null, + ) { + $message = \sprintf('The requested template file "%s" is invalid or could not be read.', $this->templateFile); parent::__construct($message, $code, $previous); } diff --git a/Classes/Exception/TemplateCompilationException.php b/Classes/Exception/TemplateCompilationException.php index 89455a30..6fcb1f95 100644 --- a/Classes/Exception/TemplateCompilationException.php +++ b/Classes/Exception/TemplateCompilationException.php @@ -29,6 +29,4 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -final class TemplateCompilationException extends \RuntimeException -{ -} +final class TemplateCompilationException extends \RuntimeException {} diff --git a/Classes/Exception/TemplateNotFoundException.php b/Classes/Exception/TemplateNotFoundException.php index 51b9c680..7d363ef8 100644 --- a/Classes/Exception/TemplateNotFoundException.php +++ b/Classes/Exception/TemplateNotFoundException.php @@ -32,15 +32,12 @@ */ final class TemplateNotFoundException extends \RuntimeException { - /** - * @var string - */ - private $templateFile; - - public function __construct(string $templateFile = '', int $code = 0, \Throwable $previous = null) - { - $this->templateFile = $templateFile; - $message = \sprintf('The requested template file "%s" could not be found.', $templateFile); + public function __construct( + private readonly string $templateFile = '', + int $code = 0, + \Throwable $previous = null, + ) { + $message = \sprintf('The requested template file "%s" could not be found.', $this->templateFile); parent::__construct($message, $code, $previous); } diff --git a/Classes/Exception/UnableToPresentException.php b/Classes/Exception/UnableToPresentException.php index 8cefc341..ba3e90ab 100644 --- a/Classes/Exception/UnableToPresentException.php +++ b/Classes/Exception/UnableToPresentException.php @@ -29,6 +29,4 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -final class UnableToPresentException extends \RuntimeException -{ -} +final class UnableToPresentException extends \RuntimeException {} diff --git a/Classes/Presenter/AbstractPresenter.php b/Classes/Presenter/AbstractPresenter.php index 802ebcd8..e33536e0 100644 --- a/Classes/Presenter/AbstractPresenter.php +++ b/Classes/Presenter/AbstractPresenter.php @@ -33,13 +33,7 @@ */ abstract class AbstractPresenter implements PresenterInterface { - /** - * @var RendererInterface - */ - protected $renderer; - - public function __construct(RendererInterface $renderer) - { - $this->renderer = $renderer; - } + public function __construct( + protected readonly RendererInterface $renderer, + ) {} } diff --git a/Classes/Renderer/HandlebarsRenderer.php b/Classes/Renderer/HandlebarsRenderer.php index 39f84e5d..41038fc8 100644 --- a/Classes/Renderer/HandlebarsRenderer.php +++ b/Classes/Renderer/HandlebarsRenderer.php @@ -37,8 +37,7 @@ use LightnCandy\Partial; use LightnCandy\Runtime; use Psr\EventDispatcher\EventDispatcherInterface; -use Psr\Log\LoggerAwareInterface; -use Psr\Log\LoggerAwareTrait; +use Psr\Log\LoggerInterface; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController; @@ -48,56 +47,23 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -class HandlebarsRenderer implements RendererInterface, HelperAwareInterface, LoggerAwareInterface +class HandlebarsRenderer implements RendererInterface, HelperAwareInterface { use HandlebarsHelperTrait; - use LoggerAwareTrait; - /** - * @var CacheInterface - */ - protected $cache; - - /** - * @var EventDispatcherInterface - */ - protected $eventDispatcher; - - /** - * @var TemplateResolverInterface - */ - protected $templateResolver; - - /** - * @var TemplateResolverInterface|null - */ - protected $partialResolver; - - /** - * @var array - */ - protected $defaultData; + protected readonly bool $debugMode; /** - * @var bool - */ - protected $debugMode; - - /** - * @param array $defaultData + * @param array $defaultData */ public function __construct( - CacheInterface $cache, - EventDispatcherInterface $eventDispatcher, - TemplateResolverInterface $templateResolver, - TemplateResolverInterface $partialResolver = null, - array $defaultData = [] + protected readonly CacheInterface $cache, + protected readonly EventDispatcherInterface $eventDispatcher, + protected readonly LoggerInterface $logger, + protected readonly TemplateResolverInterface $templateResolver, + protected readonly ?TemplateResolverInterface $partialResolver = null, + protected array $defaultData = [], ) { - $this->cache = $cache; - $this->eventDispatcher = $eventDispatcher; - $this->templateResolver = $templateResolver; - $this->partialResolver = $partialResolver; - $this->defaultData = $defaultData; $this->debugMode = $this->isDebugModeEnabled(); } @@ -106,16 +72,14 @@ public function render(string $templatePath, array $data = []): string try { return $this->processRendering($templatePath, $data); } catch (InvalidTemplateFileException | TemplateCompilationException | TemplateNotFoundException $exception) { - if ($this->logger !== null) { - $this->logger->critical($exception->getMessage(), ['exception' => $exception]); - } + $this->logger->critical($exception->getMessage(), ['exception' => $exception]); return ''; } } /** - * @param array $data + * @param array $data * @throws InvalidTemplateFileException if template file is invalid * @throws TemplateCompilationException if template compilation fails and errors are not yet handled by compiler * @throws TemplateNotFoundException if template could not be found @@ -211,7 +175,7 @@ protected function getCompileOptions(): array return [ 'flags' => $this->getCompileFlags(), 'helpers' => $this->getHelperStubs(), - 'partialresolver' => $this->partialResolver ? [$this, 'resolvePartial'] : false, + 'partialresolver' => $this->partialResolver !== null ? $this->resolvePartial(...) : false, ]; } @@ -289,7 +253,7 @@ public function resolvePartial(/** @noinspection PhpUnusedParameterInspection */ } /** - * @return array + * @return array */ public function getDefaultData(): array { @@ -297,7 +261,7 @@ public function getDefaultData(): array } /** - * @param array $defaultData + * @param array $defaultData */ public function setDefaultData(array $defaultData): self { diff --git a/Classes/Renderer/Helper/HelperInterface.php b/Classes/Renderer/Helper/HelperInterface.php index 6a4797bf..c49c1ea9 100644 --- a/Classes/Renderer/Helper/HelperInterface.php +++ b/Classes/Renderer/Helper/HelperInterface.php @@ -29,6 +29,4 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -interface HelperInterface -{ -} +interface HelperInterface {} diff --git a/Classes/Renderer/Helper/VarDumpHelper.php b/Classes/Renderer/Helper/VarDumpHelper.php index 17dc8c46..17c8b2e1 100644 --- a/Classes/Renderer/Helper/VarDumpHelper.php +++ b/Classes/Renderer/Helper/VarDumpHelper.php @@ -23,6 +23,8 @@ namespace Fr\Typo3Handlebars\Renderer\Helper; +use TYPO3\CMS\Core\Utility\DebugUtility; + /** * VarDumpHelper * @@ -32,10 +34,14 @@ class VarDumpHelper implements HelperInterface { /** - * @param array $context + * @param array $context */ public static function evaluate(array $context): string { - return print_r($context['_this'], true); + \ob_start(); + + DebugUtility::debug($context); + + return (string)\ob_get_clean(); } } diff --git a/Classes/Renderer/HelperAwareInterface.php b/Classes/Renderer/HelperAwareInterface.php index 401b5a80..25f16ae4 100644 --- a/Classes/Renderer/HelperAwareInterface.php +++ b/Classes/Renderer/HelperAwareInterface.php @@ -40,8 +40,6 @@ public function getHelpers(): array; /** * Register new Handlebars helper with given function. - * - * @param mixed $function */ - public function registerHelper(string $name, $function): void; + public function registerHelper(string $name, mixed $function): void; } diff --git a/Classes/Renderer/RendererInterface.php b/Classes/Renderer/RendererInterface.php index a6a10d56..e66ea0ba 100644 --- a/Classes/Renderer/RendererInterface.php +++ b/Classes/Renderer/RendererInterface.php @@ -32,7 +32,7 @@ interface RendererInterface { /** - * @param array $data + * @param array $data */ public function render(string $templatePath, array $data = []): string; } diff --git a/Classes/Renderer/Template/HandlebarsTemplateResolver.php b/Classes/Renderer/Template/HandlebarsTemplateResolver.php index b921c7eb..556fb56a 100644 --- a/Classes/Renderer/Template/HandlebarsTemplateResolver.php +++ b/Classes/Renderer/Template/HandlebarsTemplateResolver.php @@ -39,12 +39,12 @@ class HandlebarsTemplateResolver implements TemplateResolverInterface /** * @var string[] */ - protected $templateRootPaths; + protected array $templateRootPaths = []; /** * @var string[] */ - protected $supportedFileExtensions; + protected array $supportedFileExtensions = []; /** * @param string[] $supportedFileExtensions @@ -145,14 +145,11 @@ protected function resolveFilename(string $templatePath, string $templateRootPat return $filename; } - /** - * @param mixed $templateRootPath - */ - protected function validateTemplateRootPath($templateRootPath): void + protected function validateTemplateRootPath(mixed $templateRootPath): void { if (!\is_string($templateRootPath)) { throw new \InvalidArgumentException( - \sprintf('Template root path must be of type string, "%s" given.', \gettype($templateRootPath)), + \sprintf('Template root path must be of type string, "%s" given.', \get_debug_type($templateRootPath)), 1613727984 ); } @@ -164,14 +161,11 @@ protected function validateTemplateRootPath($templateRootPath): void } } - /** - * @param mixed $fileExtension - */ - protected function validateFileExtension($fileExtension): void + protected function validateFileExtension(mixed $fileExtension): void { if (!\is_string($fileExtension)) { throw new \InvalidArgumentException( - \sprintf('File extension must be of type string, "%s" given.', \gettype($fileExtension)), + \sprintf('File extension must be of type string, "%s" given.', \get_debug_type($fileExtension)), 1613727952 ); } diff --git a/Classes/Renderer/Template/TemplatePaths.php b/Classes/Renderer/Template/TemplatePaths.php index b3ba62e2..d6a529fb 100644 --- a/Classes/Renderer/Template/TemplatePaths.php +++ b/Classes/Renderer/Template/TemplatePaths.php @@ -24,8 +24,7 @@ namespace Fr\Typo3Handlebars\Renderer\Template; use Fr\Typo3Handlebars\Configuration\Extension; -use Symfony\Component\DependencyInjection\ContainerAwareInterface; -use Symfony\Component\DependencyInjection\ContainerAwareTrait; +use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface; @@ -35,33 +34,22 @@ * @author Elias Häußler * @license GPL-2.0-or-later */ -class TemplatePaths implements ContainerAwareInterface +class TemplatePaths { - use ContainerAwareTrait; - public const TEMPLATES = 'template_root_paths'; public const PARTIALS = 'partial_root_paths'; - /** - * @var ConfigurationManagerInterface - */ - protected $configurationManager; - - /** - * @var string - */ - protected $type; - /** * @var string[] */ - protected $templatePaths; + protected ?array $templatePaths = null; - public function __construct(ConfigurationManagerInterface $configurationManager, string $type = self::TEMPLATES) - { - $this->configurationManager = $configurationManager; - $this->type = $type; - } + public function __construct( + protected readonly ConfigurationManagerInterface $configurationManager, + // @todo check if this works as expected + protected readonly ParameterBagInterface $parameterBag, + protected readonly string $type = self::TEMPLATES, + ) {} /** * @return string[] @@ -75,6 +63,9 @@ public function get(): array return $this->templatePaths; } + /** + * @phpstan-assert string[] $this->templatePaths + */ protected function resolveTemplatePaths(): void { $this->templatePaths = $this->mergeTemplatePaths( @@ -88,12 +79,13 @@ protected function resolveTemplatePaths(): void */ protected function getTemplatePathsFromContainer(string $type): array { - if ($this->container === null) { + $parameterName = 'handlebars.' . $type; + + if (!$this->parameterBag->has($parameterName)) { return []; } - $parameterName = 'handlebars.' . $type; - $templatePathsParameter = $this->container->getParameter($parameterName); + $templatePathsParameter = $this->parameterBag->get($parameterName); return \is_array($templatePathsParameter) ? $templatePathsParameter : [$templatePathsParameter]; } diff --git a/Classes/Traits/ContentObjectRendererAwareTrait.php b/Classes/Traits/ContentObjectRendererAwareTrait.php index 03dd695e..36cf475e 100644 --- a/Classes/Traits/ContentObjectRendererAwareTrait.php +++ b/Classes/Traits/ContentObjectRendererAwareTrait.php @@ -33,10 +33,7 @@ */ trait ContentObjectRendererAwareTrait { - /** - * @var ContentObjectRenderer|null - */ - protected $contentObjectRenderer; + protected ?ContentObjectRenderer $contentObjectRenderer = null; public function setContentObjectRenderer(ContentObjectRenderer $contentObjectRenderer): void { diff --git a/Classes/Traits/HandlebarsHelperTrait.php b/Classes/Traits/HandlebarsHelperTrait.php index de3839ce..a6ba1c92 100644 --- a/Classes/Traits/HandlebarsHelperTrait.php +++ b/Classes/Traits/HandlebarsHelperTrait.php @@ -24,7 +24,6 @@ namespace Fr\Typo3Handlebars\Traits; use Fr\Typo3Handlebars\Exception\InvalidHelperException; -use Psr\Log\LoggerInterface; use TYPO3\CMS\Core\Utility\GeneralUtility; /** @@ -38,22 +37,17 @@ trait HandlebarsHelperTrait /** * @var array */ - protected $helpers = []; + protected array $helpers = []; - /** - * @param mixed $function - */ - public function registerHelper(string $name, $function): void + public function registerHelper(string $name, mixed $function): void { try { $this->helpers[$name] = $this->resolveHelperFunction($function); } catch (InvalidHelperException | \ReflectionException $exception) { - if ($this->logger instanceof LoggerInterface) { - $this->logger->critical( - 'Error while registering Handlebars helper "' . $name . '".', - ['name' => $name, 'function' => $function, 'exception' => $exception] - ); - } + $this->logger->critical( + 'Error while registering Handlebars helper "' . $name . '".', + ['name' => $name, 'function' => $function, 'exception' => $exception] + ); } } @@ -66,11 +60,10 @@ public function getHelpers(): array } /** - * @param mixed $function * @throws InvalidHelperException * @throws \ReflectionException */ - protected function resolveHelperFunction($function): callable + protected function resolveHelperFunction(mixed $function): callable { // Try to resolve the Helper function in this order: // @@ -147,11 +140,10 @@ protected function resolveHelperFunction($function): callable } /** - * @param mixed $helperFunction * @codeCoverageIgnore * @deprecated use resolveHelperFunction() instead and check for thrown exceptions */ - protected function isValidHelper($helperFunction): bool + protected function isValidHelper(mixed $helperFunction): bool { trigger_error( \sprintf( @@ -165,7 +157,7 @@ protected function isValidHelper($helperFunction): bool try { return (bool)$this->resolveHelperFunction($helperFunction); - } catch (InvalidHelperException | \ReflectionException $e) { + } catch (InvalidHelperException | \ReflectionException) { return false; } } diff --git a/Configuration/Services.php b/Configuration/Services.php index f909ec4d..cdef0e55 100644 --- a/Configuration/Services.php +++ b/Configuration/Services.php @@ -23,11 +23,12 @@ namespace Fr\Typo3Handlebars\DependencyInjection; +use Fr\Typo3Handlebars\DependencyInjection\Extension\HandlebarsExtension; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; return static function (ContainerConfigurator $containerConfigurator, ContainerBuilder $container): void { - $container->registerExtension(new Extension\HandlebarsExtension()); + $container->registerExtension(new HandlebarsExtension()); $container->addCompilerPass(new DataProcessorPass('handlebars.processor', 'handlebars.compatibility_layer')); $container->addCompilerPass(new HandlebarsHelperPass('handlebars.helper', 'handlebars.renderer')); }; diff --git a/Configuration/Services.yaml b/Configuration/Services.yaml index 732688d7..af70a48a 100644 --- a/Configuration/Services.yaml +++ b/Configuration/Services.yaml @@ -38,8 +38,6 @@ services: handlebars.template_paths: class: 'Fr\Typo3Handlebars\Renderer\Template\TemplatePaths' - calls: - - setContainer: ['@service_container'] handlebars.template_paths.template_root_paths: parent: 'handlebars.template_paths' arguments: diff --git a/Resources/Private/Libs/Build/composer.json b/Resources/Private/Libs/Build/composer.json index 4a26f692..5969d1e8 100644 --- a/Resources/Private/Libs/Build/composer.json +++ b/Resources/Private/Libs/Build/composer.json @@ -11,8 +11,7 @@ } ], "require": { - "php": "~7.4.0", - "symfony/polyfill-php80": "^1.23", + "php": "~8.1.0", "zordius/lightncandy": "^1.2" } } diff --git a/Resources/Private/Libs/Build/composer.lock b/Resources/Private/Libs/Build/composer.lock index d6b4f7eb..a73737d1 100644 --- a/Resources/Private/Libs/Build/composer.lock +++ b/Resources/Private/Libs/Build/composer.lock @@ -4,88 +4,8 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "5c811dfa5820ae415209b1b8aaf93671", + "content-hash": "f30a1de0b159b218fecdef37b50495cc", "packages": [ - { - "name": "symfony/polyfill-php80", - "version": "v1.31.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "type": "library", - "extra": { - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-09T11:45:10+00:00" - }, { "name": "zordius/lightncandy", "version": "v1.2.6", @@ -150,7 +70,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "~7.4.0" + "php": "~8.1.0" }, "platform-dev": [], "plugin-api-version": "2.6.0" diff --git a/Tests/Unit/Renderer/Helper/VarDumpHelperTest.php b/Tests/Unit/Renderer/Helper/VarDumpHelperTest.php index 3425af08..47d9b472 100644 --- a/Tests/Unit/Renderer/Helper/VarDumpHelperTest.php +++ b/Tests/Unit/Renderer/Helper/VarDumpHelperTest.php @@ -24,6 +24,7 @@ namespace Fr\Typo3Handlebars\Tests\Unit\Renderer\Helper; use Fr\Typo3Handlebars\Renderer\Helper\VarDumpHelper; +use TYPO3\CMS\Core\Utility\DebugUtility; use TYPO3\TestingFramework\Core\Unit\UnitTestCase; /** @@ -39,13 +40,22 @@ class VarDumpHelperTest extends UnitTestCase */ public function evaluateReturnsDumpedContext(): void { + DebugUtility::usePlainTextOutput(true); + DebugUtility::useAnsiColor(false); + $context = [ '_this' => [ 'foo' => 'baz', ], ]; - $expected = print_r(['foo' => 'baz'], true); - self::assertSame(trim($expected), trim(VarDumpHelper::evaluate($context))); + $expected = << array(1 item) + foo => "baz" (3 chars) +EOF; + + self::assertSame($expected, VarDumpHelper::evaluate($context)); } } diff --git a/composer.json b/composer.json index aefd51d4..7a2866e1 100644 --- a/composer.json +++ b/composer.json @@ -17,20 +17,22 @@ "docs": "https://docs.typo3.org/p/cpsit/typo3-handlebars/main/en-us/" }, "require": { - "php": "^7.1 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.1.0 || ~8.2.0 || ~8.3.0", "ext-json": "*", "psr/event-dispatcher": "^1.0", + "psr/http-message": "^1.0 || ^2.0", "psr/log": "^1.1 || ^2.0 || ^3.0", - "symfony/config": "^4.4 || ^5.0", - "symfony/dependency-injection": "^4.4 || ^5.0", - "symfony/polyfill-php80": "^1.23", - "typo3/cms-core": "~10.4.0 || ~11.5.0", - "typo3/cms-extbase": "~10.4.0 || ~11.5.0", - "typo3/cms-frontend": "~10.4.0 || ~11.5.0", + "symfony/config": "^6.4 || ^7.0", + "symfony/dependency-injection": "^6.4 || ^7.0", + "typo3/cms-core": "^12.4", + "typo3/cms-extbase": "^12.4", + "typo3/cms-fluid": "^12.4", + "typo3/cms-frontend": "^12.4", + "typo3fluid/fluid": "^2.9", "zordius/lightncandy": "^1.2" }, "require-dev": { - "armin/editorconfig-cli": "^1.5 || ^2.0", + "armin/editorconfig-cli": "^1.8 || ^2.0", "ergebnis/composer-normalize": "^2.15", "friendsofphp/php-cs-fixer": "^3.57", "helmich/typo3-typoscript-lint": "^2.5 || ^3.0", @@ -38,12 +40,12 @@ "phpstan/extension-installer": "^1.3", "phpstan/phpstan": "^1.9", "phpstan/phpstan-phpunit": "^1.1", - "phpunit/phpunit": "^9.5", + "phpunit/phpunit": "^10.1 || ^11.0", "saschaegerer/phpstan-typo3": "^1.0", - "ssch/typo3-rector": "^1.0 || ^2.0", - "symfony/event-dispatcher": "^4.4 || ^5.0", - "typo3/coding-standards": "^0.6.0 || ^0.7.0", - "typo3/testing-framework": "^6.15 || ^7.0.2" + "ssch/typo3-rector": "^2.0", + "symfony/event-dispatcher": "^6.4 || ^7.0", + "typo3/coding-standards": "^0.8.0", + "typo3/testing-framework": "^8.0" }, "autoload": { "psr-4": { @@ -77,10 +79,6 @@ } }, "scripts": { - "post-autoload-dump": [ - "mkdir -p .Build/web/typo3conf/ext/", - "[ -L .Build/web/typo3conf/ext/handlebars ] || ln -snvf ../../../../. .Build/web/typo3conf/ext/handlebars" - ], "docs": [ "@docs:cleanup", "@docs:build", diff --git a/composer.lock b/composer.lock index 82923c2c..4b398a9f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "4805960c954e0614da2b2d9e695a1015", + "content-hash": "5d04f6d9496fac18b1ad38752eed8e8a", "packages": [ { "name": "bacon/bacon-qr-code", @@ -171,30 +171,30 @@ }, { "name": "doctrine/annotations", - "version": "1.14.4", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/doctrine/annotations.git", - "reference": "253dca476f70808a5aeed3a47cc2cc88c5cab915" + "reference": "901c2ee5d26eb64ff43c47976e114bf00843acf7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/253dca476f70808a5aeed3a47cc2cc88c5cab915", - "reference": "253dca476f70808a5aeed3a47cc2cc88c5cab915", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/901c2ee5d26eb64ff43c47976e114bf00843acf7", + "reference": "901c2ee5d26eb64ff43c47976e114bf00843acf7", "shasum": "" }, "require": { - "doctrine/lexer": "^1 || ^2", + "doctrine/lexer": "^2 || ^3", "ext-tokenizer": "*", - "php": "^7.1 || ^8.0", + "php": "^7.2 || ^8.0", "psr/cache": "^1 || ^2 || ^3" }, "require-dev": { - "doctrine/cache": "^1.11 || ^2.0", - "doctrine/coding-standard": "^9 || ^12", - "phpstan/phpstan": "~1.4.10 || ^1.10.28", + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.10.28", "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "symfony/cache": "^4.4 || ^5.4 || ^6.4 || ^7", + "symfony/cache": "^5.4 || ^6.4 || ^7", "vimeo/psalm": "^4.30 || ^5.14" }, "suggest": { @@ -241,9 +241,9 @@ ], "support": { "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.14.4" + "source": "https://github.com/doctrine/annotations/tree/2.0.2" }, - "time": "2024-09-05T10:15:52+00:00" + "time": "2024-09-05T10:17:24+00:00" }, { "name": "doctrine/cache", @@ -340,35 +340,40 @@ }, { "name": "doctrine/dbal", - "version": "2.13.9", + "version": "3.9.1", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "c480849ca3ad6706a39c970cdfe6888fa8a058b8" + "reference": "d7dc08f98cba352b2bab5d32c5e58f7e745c11a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/c480849ca3ad6706a39c970cdfe6888fa8a058b8", - "reference": "c480849ca3ad6706a39c970cdfe6888fa8a058b8", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/d7dc08f98cba352b2bab5d32c5e58f7e745c11a7", + "reference": "d7dc08f98cba352b2bab5d32c5e58f7e745c11a7", "shasum": "" }, "require": { - "doctrine/cache": "^1.0|^2.0", + "composer-runtime-api": "^2", + "doctrine/cache": "^1.11|^2.0", "doctrine/deprecations": "^0.5.3|^1", - "doctrine/event-manager": "^1.0", - "ext-pdo": "*", - "php": "^7.1 || ^8" + "doctrine/event-manager": "^1|^2", + "php": "^7.4 || ^8.0", + "psr/cache": "^1|^2|^3", + "psr/log": "^1|^2|^3" }, "require-dev": { - "doctrine/coding-standard": "9.0.0", - "jetbrains/phpstorm-stubs": "2021.1", - "phpstan/phpstan": "1.4.6", - "phpunit/phpunit": "^7.5.20|^8.5|9.5.16", - "psalm/plugin-phpunit": "0.16.1", - "squizlabs/php_codesniffer": "3.6.2", - "symfony/cache": "^4.4", - "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", - "vimeo/psalm": "4.22.0" + "doctrine/coding-standard": "12.0.0", + "fig/log-test": "^1", + "jetbrains/phpstorm-stubs": "2023.1", + "phpstan/phpstan": "1.12.0", + "phpstan/phpstan-strict-rules": "^1.6", + "phpunit/phpunit": "9.6.20", + "psalm/plugin-phpunit": "0.18.4", + "slevomat/coding-standard": "8.13.1", + "squizlabs/php_codesniffer": "3.10.2", + "symfony/cache": "^5.4|^6.0|^7.0", + "symfony/console": "^4.4|^5.4|^6.0|^7.0", + "vimeo/psalm": "4.30.0" }, "suggest": { "symfony/console": "For helpful console commands such as SQL execution and import of files." @@ -379,7 +384,7 @@ "type": "library", "autoload": { "psr-4": { - "Doctrine\\DBAL\\": "lib/Doctrine/DBAL" + "Doctrine\\DBAL\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -422,14 +427,13 @@ "queryobject", "sasql", "sql", - "sqlanywhere", "sqlite", "sqlserver", "sqlsrv" ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/2.13.9" + "source": "https://github.com/doctrine/dbal/tree/3.9.1" }, "funding": [ { @@ -445,7 +449,7 @@ "type": "tidelift" } ], - "time": "2022-05-02T20:28:55+00:00" + "time": "2024-09-01T13:49:23+00:00" }, { "name": "doctrine/deprecations", @@ -496,30 +500,29 @@ }, { "name": "doctrine/event-manager", - "version": "1.2.0", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/event-manager.git", - "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520" + "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/event-manager/zipball/95aa4cb529f1e96576f3fda9f5705ada4056a520", - "reference": "95aa4cb529f1e96576f3fda9f5705ada4056a520", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/b680156fa328f1dfd874fd48c7026c41570b9c6e", + "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e", "shasum": "" }, "require": { - "doctrine/deprecations": "^0.5.3 || ^1", - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "conflict": { "doctrine/common": "<2.9" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^10", - "phpstan/phpstan": "~1.4.10 || ^1.8.8", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.24" + "doctrine/coding-standard": "^12", + "phpstan/phpstan": "^1.8.8", + "phpunit/phpunit": "^10.5", + "vimeo/psalm": "^5.24" }, "type": "library", "autoload": { @@ -568,7 +571,7 @@ ], "support": { "issues": "https://github.com/doctrine/event-manager/issues", - "source": "https://github.com/doctrine/event-manager/tree/1.2.0" + "source": "https://github.com/doctrine/event-manager/tree/2.0.1" }, "funding": [ { @@ -584,34 +587,34 @@ "type": "tidelift" } ], - "time": "2022-10-12T20:51:15+00:00" + "time": "2024-05-22T20:47:39+00:00" }, { "name": "doctrine/instantiator", - "version": "1.5.0", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b" + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/0a0fa9780f5d4e507415a065172d26a98d02047b", - "reference": "0a0fa9780f5d4e507415a065172d26a98d02047b", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", + "reference": "c6222283fa3f4ac679f8b9ced9a4e23f163e80d0", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9 || ^11", + "doctrine/coding-standard": "^11", "ext-pdo": "*", "ext-phar": "*", - "phpbench/phpbench": "^0.16 || ^1", - "phpstan/phpstan": "^1.4", - "phpstan/phpstan-phpunit": "^1", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.30 || ^5.4" + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^1.9.4", + "phpstan/phpstan-phpunit": "^1.3", + "phpunit/phpunit": "^9.5.27", + "vimeo/psalm": "^5.4" }, "type": "library", "autoload": { @@ -638,7 +641,7 @@ ], "support": { "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.5.0" + "source": "https://github.com/doctrine/instantiator/tree/2.0.0" }, "funding": [ { @@ -654,35 +657,36 @@ "type": "tidelift" } ], - "time": "2022-12-30T00:15:36+00:00" + "time": "2022-12-30T00:23:10+00:00" }, { "name": "doctrine/lexer", - "version": "1.2.3", + "version": "3.0.1", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", "shasum": "" }, "require": { - "php": "^7.1 || ^8.0" + "php": "^8.1" }, "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.11" + "doctrine/coding-standard": "^12", + "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^10.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.21" }, "type": "library", "autoload": { "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + "Doctrine\\Common\\Lexer\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -714,7 +718,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.3" + "source": "https://github.com/doctrine/lexer/tree/3.0.1" }, "funding": [ { @@ -730,30 +734,30 @@ "type": "tidelift" } ], - "time": "2022-02-28T11:07:21+00:00" + "time": "2024-02-05T11:56:58+00:00" }, { "name": "egulias/email-validator", - "version": "3.2.6", + "version": "4.0.2", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "e5997fa97e8790cdae03a9cbd5e78e45e3c7bda7" + "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/e5997fa97e8790cdae03a9cbd5e78e45e3c7bda7", - "reference": "e5997fa97e8790cdae03a9cbd5e78e45e3c7bda7", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ebaaf5be6c0286928352e054f2d5125608e5405e", + "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e", "shasum": "" }, "require": { - "doctrine/lexer": "^1.2|^2", - "php": ">=7.2", - "symfony/polyfill-intl-idn": "^1.15" + "doctrine/lexer": "^2.0 || ^3.0", + "php": ">=8.1", + "symfony/polyfill-intl-idn": "^1.26" }, "require-dev": { - "phpunit/phpunit": "^8.5.8|^9.3.3", - "vimeo/psalm": "^4" + "phpunit/phpunit": "^10.2", + "vimeo/psalm": "^5.12" }, "suggest": { "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" @@ -761,7 +765,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0.x-dev" + "dev-master": "4.0.x-dev" } }, "autoload": { @@ -789,7 +793,7 @@ ], "support": { "issues": "https://github.com/egulias/EmailValidator/issues", - "source": "https://github.com/egulias/EmailValidator/tree/3.2.6" + "source": "https://github.com/egulias/EmailValidator/tree/4.0.2" }, "funding": [ { @@ -797,7 +801,7 @@ "type": "github" } ], - "time": "2023-06-01T07:04:22+00:00" + "time": "2023-10-06T06:47:41+00:00" }, { "name": "enshrined/svg-sanitize", @@ -844,6 +848,69 @@ }, "time": "2024-02-22T17:51:05+00:00" }, + { + "name": "firebase/php-jwt", + "version": "v6.10.1", + "source": { + "type": "git", + "url": "https://github.com/firebase/php-jwt.git", + "reference": "500501c2ce893c824c801da135d02661199f60c5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/firebase/php-jwt/zipball/500501c2ce893c824c801da135d02661199f60c5", + "reference": "500501c2ce893c824c801da135d02661199f60c5", + "shasum": "" + }, + "require": { + "php": "^8.0" + }, + "require-dev": { + "guzzlehttp/guzzle": "^7.4", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "psr/cache": "^2.0||^3.0", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0" + }, + "suggest": { + "ext-sodium": "Support EdDSA (Ed25519) signatures", + "paragonie/sodium_compat": "Support EdDSA (Ed25519) signatures when libsodium is not present" + }, + "type": "library", + "autoload": { + "psr-4": { + "Firebase\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Neuman Vong", + "email": "neuman+pear@twilio.com", + "role": "Developer" + }, + { + "name": "Anant Narayanan", + "email": "anant@php.net", + "role": "Developer" + } + ], + "description": "A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.", + "homepage": "https://github.com/firebase/php-jwt", + "keywords": [ + "jwt", + "php" + ], + "support": { + "issues": "https://github.com/firebase/php-jwt/issues", + "source": "https://github.com/firebase/php-jwt/tree/v6.10.1" + }, + "time": "2024-05-18T18:05:11+00:00" + }, { "name": "guzzlehttp/guzzle", "version": "7.9.2", @@ -1301,62 +1368,6 @@ }, "time": "2024-03-31T07:05:07+00:00" }, - { - "name": "nikic/php-parser", - "version": "v4.19.1", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "4e1b88d21c69391150ace211e9eaf05810858d0b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4e1b88d21c69391150ace211e9eaf05810858d0b", - "reference": "4e1b88d21c69391150ace211e9eaf05810858d0b", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": ">=7.1" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" - }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.9-dev" - } - }, - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "support": { - "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.1" - }, - "time": "2024-03-17T08:10:35+00:00" - }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -1581,20 +1592,20 @@ }, { "name": "psr/cache", - "version": "1.0.1", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/php-fig/cache.git", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { @@ -1614,7 +1625,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for caching libraries", @@ -1624,28 +1635,81 @@ "psr-6" ], "support": { - "source": "https://github.com/php-fig/cache/tree/master" + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "psr/clock", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Psr\\Clock\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", + "keywords": [ + "clock", + "now", + "psr", + "psr-20", + "time" + ], + "support": { + "issues": "https://github.com/php-fig/clock/issues", + "source": "https://github.com/php-fig/clock/tree/1.0.0" }, - "time": "2016-08-06T20:24:11+00:00" + "time": "2022-11-25T14:36:26+00:00" }, { "name": "psr/container", - "version": "1.1.2", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", "shasum": "" }, "require": { "php": ">=7.4.0" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, "autoload": { "psr-4": { "Psr\\Container\\": "src/" @@ -1672,9 +1736,9 @@ ], "support": { "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" + "source": "https://github.com/php-fig/container/tree/2.0.2" }, - "time": "2021-11-05T16:50:12+00:00" + "time": "2021-11-05T16:47:00+00:00" }, { "name": "psr/event-dispatcher", @@ -1835,16 +1899,16 @@ }, { "name": "psr/http-message", - "version": "1.1", + "version": "2.0", "source": { "type": "git", "url": "https://github.com/php-fig/http-message.git", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba" + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba", - "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", "shasum": "" }, "require": { @@ -1853,7 +1917,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "2.0.x-dev" } }, "autoload": { @@ -1868,7 +1932,7 @@ "authors": [ { "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" + "homepage": "https://www.php-fig.org/" } ], "description": "Common interface for HTTP messages", @@ -1882,9 +1946,9 @@ "response" ], "support": { - "source": "https://github.com/php-fig/http-message/tree/1.1" + "source": "https://github.com/php-fig/http-message/tree/2.0" }, - "time": "2023-04-04T09:50:52+00:00" + "time": "2023-04-04T09:54:51+00:00" }, { "name": "psr/http-server-handler", @@ -2001,30 +2065,30 @@ }, { "name": "psr/log", - "version": "1.1.4", + "version": "3.0.2", "source": { "type": "git", "url": "https://github.com/php-fig/log.git", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11" + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", "shasum": "" }, "require": { - "php": ">=5.3.0" + "php": ">=8.0.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev" + "dev-master": "3.x-dev" } }, "autoload": { "psr-4": { - "Psr\\Log\\": "Psr/Log/" + "Psr\\Log\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -2045,9 +2109,9 @@ "psr-3" ], "support": { - "source": "https://github.com/php-fig/log/tree/1.1.4" + "source": "https://github.com/php-fig/log/tree/3.0.2" }, - "time": "2021-05-03T11:20:27+00:00" + "time": "2024-09-11T13:17:53+00:00" }, { "name": "ralouphie/getallheaders", @@ -2095,58 +2159,57 @@ }, { "name": "symfony/cache", - "version": "v5.4.42", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "6f5f750692bd5a212e01a4f1945fd856bceef89e" + "reference": "36daef8fce88fe0b9a4f8cf4c342ced5c05616dc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/6f5f750692bd5a212e01a4f1945fd856bceef89e", - "reference": "6f5f750692bd5a212e01a4f1945fd856bceef89e", + "url": "https://api.github.com/repos/symfony/cache/zipball/36daef8fce88fe0b9a4f8cf4c342ced5c05616dc", + "reference": "36daef8fce88fe0b9a4f8cf4c342ced5c05616dc", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/cache": "^1.0|^2.0", + "php": ">=8.1", + "psr/cache": "^2.0|^3.0", "psr/log": "^1.1|^2|^3", - "symfony/cache-contracts": "^1.1.7|^2", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/var-exporter": "^4.4|^5.0|^6.0" + "symfony/cache-contracts": "^2.5|^3", + "symfony/service-contracts": "^2.5|^3", + "symfony/var-exporter": "^6.3.6|^7.0" }, "conflict": { "doctrine/dbal": "<2.13.1", - "symfony/dependency-injection": "<4.4", - "symfony/http-kernel": "<4.4", - "symfony/var-dumper": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/http-kernel": "<5.4", + "symfony/var-dumper": "<5.4" }, "provide": { - "psr/cache-implementation": "1.0|2.0", - "psr/simple-cache-implementation": "1.0|2.0", - "symfony/cache-implementation": "1.0|2.0" + "psr/cache-implementation": "2.0|3.0", + "psr/simple-cache-implementation": "1.0|2.0|3.0", + "symfony/cache-implementation": "1.1|2.0|3.0" }, "require-dev": { "cache/integration-tests": "dev-master", - "doctrine/cache": "^1.6|^2.0", "doctrine/dbal": "^2.13.1|^3|^4", "predis/predis": "^1.1|^2.0", - "psr/simple-cache": "^1.0|^2.0", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/filesystem": "^4.4|^5.0|^6.0", - "symfony/http-kernel": "^4.4|^5.0|^6.0", - "symfony/messenger": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" + "psr/simple-cache": "^1.0|^2.0|^3.0", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/filesystem": "^5.4|^6.0|^7.0", + "symfony/http-kernel": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { "psr-4": { "Symfony\\Component\\Cache\\": "" }, + "classmap": [ + "Traits/ValueWrapper.php" + ], "exclude-from-classmap": [ "/Tests/" ] @@ -2172,7 +2235,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v5.4.42" + "source": "https://github.com/symfony/cache/tree/v6.4.11" }, "funding": [ { @@ -2188,33 +2251,30 @@ "type": "tidelift" } ], - "time": "2024-07-10T06:02:18+00:00" + "time": "2024-08-05T07:40:31+00:00" }, { "name": "symfony/cache-contracts", - "version": "v2.5.3", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/cache-contracts.git", - "reference": "fee6db04d913094e2fb55ff8e7db5685a8134463" + "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/fee6db04d913094e2fb55ff8e7db5685a8134463", - "reference": "fee6db04d913094e2fb55ff8e7db5685a8134463", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/df6a1a44c890faded49a5fca33c2d5c5fd3c2197", + "reference": "df6a1a44c890faded49a5fca33c2d5c5fd3c2197", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/cache": "^1.0|^2.0|^3.0" - }, - "suggest": { - "symfony/cache-implementation": "" + "php": ">=8.1", + "psr/cache": "^3.0" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -2251,7 +2311,81 @@ "standards" ], "support": { - "source": "https://github.com/symfony/cache-contracts/tree/v2.5.3" + "source": "https://github.com/symfony/cache-contracts/tree/v3.5.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-04-18T09:32:20+00:00" + }, + { + "name": "symfony/clock", + "version": "v6.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/clock.git", + "reference": "7a4840efd17135cbd547e41ec49fb910ed4f8b98" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/clock/zipball/7a4840efd17135cbd547e41ec49fb910ed4f8b98", + "reference": "7a4840efd17135cbd547e41ec49fb910ed4f8b98", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/clock": "^1.0", + "symfony/polyfill-php83": "^1.28" + }, + "provide": { + "psr/clock-implementation": "1.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/now.php" + ], + "psr-4": { + "Symfony\\Component\\Clock\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Decouples applications from the system clock", + "homepage": "https://symfony.com", + "keywords": [ + "clock", + "psr20", + "time" + ], + "support": { + "source": "https://github.com/symfony/clock/tree/v6.4.8" }, "funding": [ { @@ -2267,42 +2401,38 @@ "type": "tidelift" } ], - "time": "2024-01-23T13:51:25+00:00" + "time": "2024-05-31T14:51:39+00:00" }, { "name": "symfony/config", - "version": "v5.4.40", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "d4e1db78421163b98dd9971d247fd0df4a57ee5e" + "reference": "12e7e52515ce37191b193cf3365903c4f3951e35" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/d4e1db78421163b98dd9971d247fd0df4a57ee5e", - "reference": "d4e1db78421163b98dd9971d247fd0df4a57ee5e", + "url": "https://api.github.com/repos/symfony/config/zipball/12e7e52515ce37191b193cf3365903c4f3951e35", + "reference": "12e7e52515ce37191b193cf3365903c4f3951e35", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/filesystem": "^4.4|^5.0|^6.0", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php80": "^1.16", - "symfony/polyfill-php81": "^1.22" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/filesystem": "^5.4|^6.0|^7.0", + "symfony/polyfill-ctype": "~1.8" }, "conflict": { - "symfony/finder": "<4.4" + "symfony/finder": "<5.4", + "symfony/service-contracts": "<2.5" }, "require-dev": { - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/finder": "^4.4|^5.0|^6.0", - "symfony/messenger": "^4.4|^5.0|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/yaml": "^4.4|^5.0|^6.0" - }, - "suggest": { - "symfony/yaml": "To use the yaml reference dumper" + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/finder": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/yaml": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -2330,7 +2460,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.4.40" + "source": "https://github.com/symfony/config/tree/v6.4.8" }, "funding": [ { @@ -2346,56 +2476,51 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/console", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "e86f8554de667c16dde8aeb89a3990cfde924df9" + "reference": "42686880adaacdad1835ee8fc2a9ec5b7bd63998" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/e86f8554de667c16dde8aeb89a3990cfde924df9", - "reference": "e86f8554de667c16dde8aeb89a3990cfde924df9", + "url": "https://api.github.com/repos/symfony/console/zipball/42686880adaacdad1835ee8fc2a9ec5b7bd63998", + "reference": "42686880adaacdad1835ee8fc2a9ec5b7bd63998", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^5.4|^6.0|^7.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^6.4|^7.0", + "symfony/http-kernel": "^6.4|^7.0", + "symfony/lock": "^5.4|^6.0|^7.0", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/stopwatch": "^5.4|^6.0|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -2429,7 +2554,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.43" + "source": "https://github.com/symfony/console/tree/v6.4.11" }, "funding": [ { @@ -2445,52 +2570,44 @@ "type": "tidelift" } ], - "time": "2024-08-13T16:31:56+00:00" + "time": "2024-08-15T22:48:29+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "8c946c5c1d1692d5378cb722060969730cebc96d" + "reference": "e93c8368dc9915c2fe12018ff22fcbbdd32c9a9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/8c946c5c1d1692d5378cb722060969730cebc96d", - "reference": "8c946c5c1d1692d5378cb722060969730cebc96d", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/e93c8368dc9915c2fe12018ff22fcbbdd32c9a9e", + "reference": "e93c8368dc9915c2fe12018ff22fcbbdd32c9a9e", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/container": "^1.1.1", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16", - "symfony/polyfill-php81": "^1.22", - "symfony/service-contracts": "^1.1.6|^2" + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/service-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^6.2.10|^7.0" }, "conflict": { "ext-psr": "<1.1|>=2", - "symfony/config": "<5.3", - "symfony/finder": "<4.4", - "symfony/proxy-manager-bridge": "<4.4", - "symfony/yaml": "<4.4.26" + "symfony/config": "<6.1", + "symfony/finder": "<5.4", + "symfony/proxy-manager-bridge": "<6.3", + "symfony/yaml": "<5.4" }, "provide": { - "psr/container-implementation": "1.0", - "symfony/service-implementation": "1.0|2.0" + "psr/container-implementation": "1.1|2.0", + "symfony/service-implementation": "1.1|2.0|3.0" }, "require-dev": { - "symfony/config": "^5.3|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/yaml": "^4.4.26|^5.0|^6.0" - }, - "suggest": { - "symfony/config": "", - "symfony/expression-language": "For using expressions in service container configuration", - "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required", - "symfony/proxy-manager-bridge": "Generate service proxies to lazy load them", - "symfony/yaml": "" + "symfony/config": "^6.1|^7.0", + "symfony/expression-language": "^5.4|^6.0|^7.0", + "symfony/yaml": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -2518,7 +2635,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v5.4.43" + "source": "https://github.com/symfony/dependency-injection/tree/v6.4.11" }, "funding": [ { @@ -2534,29 +2651,29 @@ "type": "tidelift" } ], - "time": "2024-08-27T00:56:45+00:00" + "time": "2024-08-29T08:15:38+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v2.5.3", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "80d075412b557d41002320b96a096ca65aa2c98d" + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/80d075412b557d41002320b96a096ca65aa2c98d", - "reference": "80d075412b557d41002320b96a096ca65aa2c98d", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", + "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1", "shasum": "" }, "require": { - "php": ">=7.1" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -2585,7 +2702,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.3" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0" }, "funding": [ { @@ -2601,53 +2718,40 @@ "type": "tidelift" } ], - "time": "2023-01-24T14:02:46+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { - "name": "symfony/event-dispatcher", - "version": "v5.4.40", + "name": "symfony/doctrine-messenger", + "version": "v6.4.11", "source": { "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "a54e2a8a114065f31020d6a89ede83e34c3b27a4" + "url": "https://github.com/symfony/doctrine-messenger.git", + "reference": "b2b05fefcc906695d4a10151089483a96cd65cdd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/a54e2a8a114065f31020d6a89ede83e34c3b27a4", - "reference": "a54e2a8a114065f31020d6a89ede83e34c3b27a4", + "url": "https://api.github.com/repos/symfony/doctrine-messenger/zipball/b2b05fefcc906695d4a10151089483a96cd65cdd", + "reference": "b2b05fefcc906695d4a10151089483a96cd65cdd", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/event-dispatcher-contracts": "^2|^3", - "symfony/polyfill-php80": "^1.16" + "doctrine/dbal": "^2.13|^3|^4", + "php": ">=8.1", + "symfony/messenger": "^5.4|^6.0|^7.0", + "symfony/service-contracts": "^2.5|^3" }, "conflict": { - "symfony/dependency-injection": "<4.4" - }, - "provide": { - "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0" + "doctrine/persistence": "<1.3" }, "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-foundation": "^4.4|^5.0|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/stopwatch": "^4.4|^5.0|^6.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" + "doctrine/persistence": "^1.3|^2|^3", + "symfony/property-access": "^5.4|^6.0|^7.0", + "symfony/serializer": "^5.4|^6.0|^7.0" }, - "type": "library", + "type": "symfony-messenger-bridge", "autoload": { "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" + "Symfony\\Component\\Messenger\\Bridge\\Doctrine\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -2667,10 +2771,10 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "description": "Symfony Doctrine Messenger Bridge", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.40" + "source": "https://github.com/symfony/doctrine-messenger/tree/v6.4.11" }, "funding": [ { @@ -2686,42 +2790,119 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-08-30T06:59:46+00:00" }, { - "name": "symfony/event-dispatcher-contracts", - "version": "v2.5.3", + "name": "symfony/event-dispatcher", + "version": "v6.4.8", "source": { "type": "git", - "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "540f4c73e87fd0c71ca44a6aa305d024ac68cb73" + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "8d7507f02b06e06815e56bb39aa0128e3806208b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/540f4c73e87fd0c71ca44a6aa305d024ac68cb73", - "reference": "540f4c73e87fd0c71ca44a6aa305d024ac68cb73", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/8d7507f02b06e06815e56bb39aa0128e3806208b", + "reference": "8d7507f02b06e06815e56bb39aa0128e3806208b", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/event-dispatcher": "^1" + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2.5|^3" }, - "suggest": { - "symfony/event-dispatcher-implementation": "" + "conflict": { + "symfony/dependency-injection": "<5.4", + "symfony/service-contracts": "<2.5" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/error-handler": "^5.4|^6.0|^7.0", + "symfony/expression-language": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^5.4|^6.0|^7.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^5.4|^6.0|^7.0" }, + "type": "library", "autoload": { "psr-4": { - "Symfony\\Contracts\\EventDispatcher\\": "" + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-05-31T14:49:08+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.5.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50", + "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.5-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" } }, "notification-url": "https://packagist.org/downloads/", @@ -2749,7 +2930,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.3" + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0" }, "funding": [ { @@ -2765,26 +2946,27 @@ "type": "tidelift" } ], - "time": "2024-01-23T13:51:25+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/expression-language", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/expression-language.git", - "reference": "9d23f7bfd1d602fddc6d6520decedc99739497dd" + "reference": "564e109c40d3637053c942a29a58e9434592a8bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/expression-language/zipball/9d23f7bfd1d602fddc6d6520decedc99739497dd", - "reference": "9d23f7bfd1d602fddc6d6520decedc99739497dd", + "url": "https://api.github.com/repos/symfony/expression-language/zipball/564e109c40d3637053c942a29a58e9434592a8bf", + "reference": "564e109c40d3637053c942a29a58e9434592a8bf", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/cache": "^4.4|^5.0|^6.0", - "symfony/service-contracts": "^1.1|^2|^3" + "php": ">=8.1", + "symfony/cache": "^5.4|^6.0|^7.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/service-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -2812,7 +2994,7 @@ "description": "Provides an engine that can compile and evaluate expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/expression-language/tree/v5.4.43" + "source": "https://github.com/symfony/expression-language/tree/v6.4.11" }, "funding": [ { @@ -2828,30 +3010,29 @@ "type": "tidelift" } ], - "time": "2024-08-09T07:10:35+00:00" + "time": "2024-08-12T09:55:28+00:00" }, { "name": "symfony/filesystem", - "version": "v5.4.41", + "version": "v6.4.9", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "6d29dd9340b372fa603f04e6df4dd76bb808591e" + "reference": "b51ef8059159330b74a4d52f68e671033c0fe463" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/6d29dd9340b372fa603f04e6df4dd76bb808591e", - "reference": "6d29dd9340b372fa603f04e6df4dd76bb808591e", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/b51ef8059159330b74a4d52f68e671033c0fe463", + "reference": "b51ef8059159330b74a4d52f68e671033c0fe463", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8", - "symfony/polyfill-php80": "^1.16" + "symfony/polyfill-mbstring": "~1.8" }, "require-dev": { - "symfony/process": "^5.4|^6.4" + "symfony/process": "^5.4|^6.4|^7.0" }, "type": "library", "autoload": { @@ -2879,7 +3060,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.41" + "source": "https://github.com/symfony/filesystem/tree/v6.4.9" }, "funding": [ { @@ -2895,26 +3076,27 @@ "type": "tidelift" } ], - "time": "2024-06-28T09:36:24+00:00" + "time": "2024-06-28T09:49:33+00:00" }, { "name": "symfony/finder", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "ae25a9145a900764158d439653d5630191155ca0" + "reference": "d7eb6daf8cd7e9ac4976e9576b32042ef7253453" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/ae25a9145a900764158d439653d5630191155ca0", - "reference": "ae25a9145a900764158d439653d5630191155ca0", + "url": "https://api.github.com/repos/symfony/finder/zipball/d7eb6daf8cd7e9ac4976e9576b32042ef7253453", + "reference": "d7eb6daf8cd7e9ac4976e9576b32042ef7253453", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" + }, + "require-dev": { + "symfony/filesystem": "^6.0|^7.0" }, "type": "library", "autoload": { @@ -2942,7 +3124,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.43" + "source": "https://github.com/symfony/finder/tree/v6.4.11" }, "funding": [ { @@ -2958,39 +3140,40 @@ "type": "tidelift" } ], - "time": "2024-08-13T14:03:51+00:00" + "time": "2024-08-13T14:27:37+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.4.42", + "version": "v6.4.10", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "9c375b2abef0b657aa0b7612b763df5c12a465ab" + "reference": "117f1f20a7ade7bcea28b861fb79160a21a1e37b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/9c375b2abef0b657aa0b7612b763df5c12a465ab", - "reference": "9c375b2abef0b657aa0b7612b763df5c12a465ab", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/117f1f20a7ade7bcea28b861fb79160a21a1e37b", + "reference": "117f1f20a7ade7bcea28b861fb79160a21a1e37b", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.1", - "symfony/polyfill-php80": "^1.16" + "symfony/polyfill-php83": "^1.27" }, - "require-dev": { - "predis/predis": "^1.0|^2.0", - "symfony/cache": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^5.4|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4", - "symfony/mime": "^4.4|^5.0|^6.0", - "symfony/rate-limiter": "^5.2|^6.0" + "conflict": { + "symfony/cache": "<6.3" }, - "suggest": { - "symfony/mime": "To use the file extension guesser" + "require-dev": { + "doctrine/dbal": "^2.13.1|^3|^4", + "predis/predis": "^1.1|^2.0", + "symfony/cache": "^6.3|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/expression-language": "^5.4|^6.0|^7.0", + "symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4|^7.0", + "symfony/mime": "^5.4|^6.0|^7.0", + "symfony/rate-limiter": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -3018,7 +3201,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.4.42" + "source": "https://github.com/symfony/http-foundation/tree/v6.4.10" }, "funding": [ { @@ -3034,39 +3217,48 @@ "type": "tidelift" } ], - "time": "2024-07-26T11:59:59+00:00" + "time": "2024-07-26T12:36:27+00:00" }, { - "name": "symfony/lock", - "version": "v5.4.40", + "name": "symfony/mailer", + "version": "v6.4.9", "source": { "type": "git", - "url": "https://github.com/symfony/lock.git", - "reference": "d96955c9919fa8609b193ba76e9f527776b70176" + "url": "https://github.com/symfony/mailer.git", + "reference": "e2d56f180f5b8c5e7c0fbea872bb1f529b6d6d45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/lock/zipball/d96955c9919fa8609b193ba76e9f527776b70176", - "reference": "d96955c9919fa8609b193ba76e9f527776b70176", + "url": "https://api.github.com/repos/symfony/mailer/zipball/e2d56f180f5b8c5e7c0fbea872bb1f529b6d6d45", + "reference": "e2d56f180f5b8c5e7c0fbea872bb1f529b6d6d45", "shasum": "" }, "require": { - "php": ">=7.2.5", + "egulias/email-validator": "^2.1.10|^3|^4", + "php": ">=8.1", + "psr/event-dispatcher": "^1", "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/mime": "^6.2|^7.0", + "symfony/service-contracts": "^2.5|^3" }, "conflict": { - "doctrine/dbal": "<2.13" + "symfony/http-client-contracts": "<2.5", + "symfony/http-kernel": "<5.4", + "symfony/messenger": "<6.2", + "symfony/mime": "<6.2", + "symfony/twig-bridge": "<6.2.1" }, "require-dev": { - "doctrine/dbal": "^2.13|^3|^4", - "predis/predis": "^1.0|^2.0" + "symfony/console": "^5.4|^6.0|^7.0", + "symfony/http-client": "^5.4|^6.0|^7.0", + "symfony/messenger": "^6.2|^7.0", + "symfony/twig-bridge": "^6.2|^7.0" }, "type": "library", "autoload": { "psr-4": { - "Symfony\\Component\\Lock\\": "" + "Symfony\\Component\\Mailer\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -3078,26 +3270,18 @@ ], "authors": [ { - "name": "Jérémy Derussé", - "email": "jeremy@derusse.com" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Creates and manages locks, a mechanism to provide exclusive access to a shared resource", + "description": "Helps sending emails", "homepage": "https://symfony.com", - "keywords": [ - "cas", - "flock", - "locking", - "mutex", - "redlock", - "semaphore" - ], "support": { - "source": "https://github.com/symfony/lock/tree/v5.4.40" + "source": "https://github.com/symfony/mailer/tree/v6.4.9" }, "funding": [ { @@ -3113,44 +3297,55 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-06-28T07:59:05+00:00" }, { - "name": "symfony/mailer", - "version": "v5.4.41", + "name": "symfony/messenger", + "version": "v6.4.10", "source": { "type": "git", - "url": "https://github.com/symfony/mailer.git", - "reference": "13f4fac7f8450381122f0f4cd750a63c2821c7fa" + "url": "https://github.com/symfony/messenger.git", + "reference": "7985801bc96cd5c130746b422d49e371ba5d66de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/13f4fac7f8450381122f0f4cd750a63c2821c7fa", - "reference": "13f4fac7f8450381122f0f4cd750a63c2821c7fa", + "url": "https://api.github.com/repos/symfony/messenger/zipball/7985801bc96cd5c130746b422d49e371ba5d66de", + "reference": "7985801bc96cd5c130746b422d49e371ba5d66de", "shasum": "" }, "require": { - "egulias/email-validator": "^2.1.10|^3|^4", - "php": ">=7.2.5", - "psr/event-dispatcher": "^1", + "php": ">=8.1", "psr/log": "^1|^2|^3", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/mime": "^5.2.6|^6.0", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3" + "symfony/clock": "^6.3|^7.0", + "symfony/deprecation-contracts": "^2.5|^3" }, "conflict": { - "symfony/http-kernel": "<4.4" + "symfony/console": "<6.3", + "symfony/event-dispatcher": "<5.4", + "symfony/event-dispatcher-contracts": "<2.5", + "symfony/framework-bundle": "<5.4", + "symfony/http-kernel": "<5.4", + "symfony/serializer": "<5.4" }, "require-dev": { - "symfony/http-client": "^4.4|^5.0|^6.0", - "symfony/messenger": "^4.4|^5.0|^6.0" + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/console": "^6.3|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/event-dispatcher": "^5.4|^6.0|^7.0", + "symfony/http-kernel": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.0|^7.0", + "symfony/property-access": "^5.4|^6.0|^7.0", + "symfony/rate-limiter": "^5.4|^6.0|^7.0", + "symfony/routing": "^5.4|^6.0|^7.0", + "symfony/serializer": "^5.4|^6.0|^7.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^5.4|^6.0|^7.0", + "symfony/validator": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { "psr-4": { - "Symfony\\Component\\Mailer\\": "" + "Symfony\\Component\\Messenger\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -3162,18 +3357,18 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Samuel Roze", + "email": "samuel.roze@gmail.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Helps sending emails", + "description": "Helps applications send and receive messages to/from other applications or via message queues", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v5.4.41" + "source": "https://github.com/symfony/messenger/tree/v6.4.10" }, "funding": [ { @@ -3189,44 +3384,44 @@ "type": "tidelift" } ], - "time": "2024-06-27T20:38:52+00:00" + "time": "2024-07-09T18:35:14+00:00" }, { "name": "symfony/mime", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "a02711d6ce461edada8c0f8641aa536709b99b47" + "reference": "dba5d5f6073baf7a3576b580cc4a208b4ca00553" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/a02711d6ce461edada8c0f8641aa536709b99b47", - "reference": "a02711d6ce461edada8c0f8641aa536709b99b47", + "url": "https://api.github.com/repos/symfony/mime/zipball/dba5d5f6073baf7a3576b580cc4a208b4ca00553", + "reference": "dba5d5f6073baf7a3576b580cc4a208b4ca00553", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-intl-idn": "^1.10", - "symfony/polyfill-mbstring": "^1.0", - "symfony/polyfill-php80": "^1.16" + "symfony/polyfill-mbstring": "^1.0" }, "conflict": { "egulias/email-validator": "~3.0.0", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", - "symfony/mailer": "<4.4", - "symfony/serializer": "<5.4.35|>=6,<6.3.12|>=6.4,<6.4.3" + "symfony/mailer": "<5.4", + "symfony/serializer": "<6.4.3|>7.0,<7.0.3" }, "require-dev": { "egulias/email-validator": "^2.1.10|^3.1|^4", + "league/html-to-markdown": "^5.0", "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/process": "^5.4|^6.4", - "symfony/property-access": "^4.4|^5.1|^6.0", - "symfony/property-info": "^4.4|^5.1|^6.0", - "symfony/serializer": "^5.4.35|~6.3.12|^6.4.3" + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/process": "^5.4|^6.4|^7.0", + "symfony/property-access": "^5.4|^6.0|^7.0", + "symfony/property-info": "^5.4|^6.0|^7.0", + "symfony/serializer": "^6.4.3|^7.0.3" }, "type": "library", "autoload": { @@ -3258,7 +3453,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.4.43" + "source": "https://github.com/symfony/mime/tree/v6.4.11" }, "funding": [ { @@ -3274,27 +3469,25 @@ "type": "tidelift" } ], - "time": "2024-08-13T10:38:38+00:00" + "time": "2024-08-13T12:15:02+00:00" }, { "name": "symfony/options-resolver", - "version": "v5.4.40", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "bd1afbde6613a8d6b956115e0e14b196191fd0c4" + "reference": "22ab9e9101ab18de37839074f8a1197f55590c1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/bd1afbde6613a8d6b956115e0e14b196191fd0c4", - "reference": "bd1afbde6613a8d6b956115e0e14b196191fd0c4", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/22ab9e9101ab18de37839074f8a1197f55590c1b", + "reference": "22ab9e9101ab18de37839074f8a1197f55590c1b", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php73": "~1.0", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -3327,7 +3520,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.40" + "source": "https://github.com/symfony/options-resolver/tree/v6.4.8" }, "funding": [ { @@ -3343,7 +3536,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/polyfill-ctype", @@ -3502,90 +3695,6 @@ ], "time": "2024-09-09T11:45:10+00:00" }, - { - "name": "symfony/polyfill-intl-icu", - "version": "v1.31.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-icu.git", - "reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-icu/zipball/d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78", - "reference": "d80a05e9904d2c2b9b95929f3e4b5d3a8f418d78", - "shasum": "" - }, - "require": { - "php": ">=7.2" - }, - "suggest": { - "ext-intl": "For best performance and support of other locales than \"en\"" - }, - "type": "library", - "extra": { - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Icu\\": "" - }, - "classmap": [ - "Resources/stubs" - ], - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's ICU-related data and classes", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "icu", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-icu/tree/v1.31.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-09-09T11:45:10+00:00" - }, { "name": "symfony/polyfill-intl-idn", "version": "v1.31.0", @@ -3831,17 +3940,17 @@ "time": "2024-09-09T11:45:10+00:00" }, { - "name": "symfony/polyfill-php73", + "name": "symfony/polyfill-php83", "version": "v1.31.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb" + "url": "https://github.com/symfony/polyfill-php83.git", + "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f68c03565dcaaf25a890667542e8bd75fe7e5bb", - "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb", + "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/2fb86d65e2d424369ad2905e83b236a8805ba491", + "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491", "shasum": "" }, "require": { @@ -3859,7 +3968,7 @@ "bootstrap.php" ], "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" + "Symfony\\Polyfill\\Php83\\": "" }, "classmap": [ "Resources/stubs" @@ -3879,7 +3988,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 8.3+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -3888,7 +3997,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.0" }, "funding": [ { @@ -3907,22 +4016,28 @@ "time": "2024-09-09T11:45:10+00:00" }, { - "name": "symfony/polyfill-php80", + "name": "symfony/polyfill-uuid", "version": "v1.31.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + "url": "https://github.com/symfony/polyfill-uuid.git", + "reference": "21533be36c24be3f4b1669c4725c7d1d2bab4ae2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", - "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/21533be36c24be3f4b1669c4725c7d1d2bab4ae2", + "reference": "21533be36c24be3f4b1669c4725c7d1d2bab4ae2", "shasum": "" }, "require": { "php": ">=7.2" }, + "provide": { + "ext-uuid": "*" + }, + "suggest": { + "ext-uuid": "For best performance" + }, "type": "library", "extra": { "thanks": { @@ -3935,11 +4050,8 @@ "bootstrap.php" ], "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] + "Symfony\\Polyfill\\Uuid\\": "" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -3947,28 +4059,24 @@ ], "authors": [ { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "description": "Symfony polyfill for uuid functions", "homepage": "https://symfony.com", "keywords": [ "compatibility", "polyfill", "portable", - "shim" + "uuid" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.31.0" }, "funding": [ { @@ -3987,38 +4095,34 @@ "time": "2024-09-09T11:45:10+00:00" }, { - "name": "symfony/polyfill-php81", - "version": "v1.31.0", + "name": "symfony/property-access", + "version": "v6.4.11", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c" + "url": "https://github.com/symfony/property-access.git", + "reference": "866f6cd84f2094cbc6f66ce9752faf749916e2a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", - "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", + "url": "https://api.github.com/repos/symfony/property-access/zipball/866f6cd84f2094cbc6f66ce9752faf749916e2a9", + "reference": "866f6cd84f2094cbc6f66ce9752faf749916e2a9", "shasum": "" }, "require": { - "php": ">=7.2" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/property-info": "^5.4|^6.0|^7.0" }, - "type": "library", - "extra": { - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } + "require-dev": { + "symfony/cache": "^5.4|^6.0|^7.0" }, + "type": "library", "autoload": { - "files": [ - "bootstrap.php" - ], "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" + "Symfony\\Component\\PropertyAccess\\": "" }, - "classmap": [ - "Resources/stubs" + "exclude-from-classmap": [ + "/Tests/" ] }, "notification-url": "https://packagist.org/downloads/", @@ -4027,24 +4131,29 @@ ], "authors": [ { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", + "description": "Provides functions to read and write from/to an object or array using a simple string notation", "homepage": "https://symfony.com", "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" + "access", + "array", + "extraction", + "index", + "injection", + "object", + "property", + "property-path", + "reflection" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0" + "source": "https://github.com/symfony/property-access/tree/v6.4.11" }, "funding": [ { @@ -4060,38 +4169,43 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2024-08-30T16:10:11+00:00" }, { - "name": "symfony/property-access", - "version": "v5.4.43", + "name": "symfony/property-info", + "version": "v6.4.10", "source": { "type": "git", - "url": "https://github.com/symfony/property-access.git", - "reference": "2d751866b976a02e22743359733edc55cd20e9fd" + "url": "https://github.com/symfony/property-info.git", + "reference": "edaea9dcc723cb4a0ab6a00f7d6f8c07c0d8ff77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/2d751866b976a02e22743359733edc55cd20e9fd", - "reference": "2d751866b976a02e22743359733edc55cd20e9fd", + "url": "https://api.github.com/repos/symfony/property-info/zipball/edaea9dcc723cb4a0ab6a00f7d6f8c07c0d8ff77", + "reference": "edaea9dcc723cb4a0ab6a00f7d6f8c07c0d8ff77", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16", - "symfony/property-info": "^5.2|^6.0" + "php": ">=8.1", + "symfony/string": "^5.4|^6.0|^7.0" }, - "require-dev": { - "symfony/cache": "^4.4|^5.0|^6.0" + "conflict": { + "phpdocumentor/reflection-docblock": "<5.2", + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/dependency-injection": "<5.4", + "symfony/serializer": "<6.4" }, - "suggest": { - "psr/cache-implementation": "To cache access methods." + "require-dev": { + "phpdocumentor/reflection-docblock": "^5.2", + "phpstan/phpdoc-parser": "^1.0", + "symfony/cache": "^5.4|^6.0|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/serializer": "^6.4|^7.0" }, "type": "library", "autoload": { "psr-4": { - "Symfony\\Component\\PropertyAccess\\": "" + "Symfony\\Component\\PropertyInfo\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -4103,109 +4217,15 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Kévin Dunglas", + "email": "dunglas@gmail.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Provides functions to read and write from/to an object or array using a simple string notation", - "homepage": "https://symfony.com", - "keywords": [ - "access", - "array", - "extraction", - "index", - "injection", - "object", - "property", - "property-path", - "reflection" - ], - "support": { - "source": "https://github.com/symfony/property-access/tree/v5.4.43" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2024-08-29T08:50:14+00:00" - }, - { - "name": "symfony/property-info", - "version": "v5.4.42", - "source": { - "type": "git", - "url": "https://github.com/symfony/property-info.git", - "reference": "825aa937f6e8cd63dcc118d0af84d7d4979cddf4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/825aa937f6e8cd63dcc118d0af84d7d4979cddf4", - "reference": "825aa937f6e8cd63dcc118d0af84d7d4979cddf4", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16", - "symfony/string": "^5.1|^6.0" - }, - "conflict": { - "phpdocumentor/reflection-docblock": "<3.2.2", - "phpdocumentor/type-resolver": "<1.4.0", - "symfony/dependency-injection": "<4.4" - }, - "require-dev": { - "doctrine/annotations": "^1.10.4|^2", - "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", - "phpstan/phpdoc-parser": "^1.0", - "symfony/cache": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/serializer": "^4.4|^5.0|^6.0" - }, - "suggest": { - "phpdocumentor/reflection-docblock": "To use the PHPDoc", - "psr/cache-implementation": "To cache results", - "symfony/doctrine-bridge": "To use Doctrine metadata", - "symfony/serializer": "To use Serializer metadata" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\PropertyInfo\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Kévin Dunglas", - "email": "dunglas@gmail.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Extracts information about PHP class' properties using metadata of popular sources", + "description": "Extracts information about PHP class' properties using metadata of popular sources", "homepage": "https://symfony.com", "keywords": [ "doctrine", @@ -4216,7 +4236,7 @@ "validator" ], "support": { - "source": "https://github.com/symfony/property-info/tree/v5.4.42" + "source": "https://github.com/symfony/property-info/tree/v6.4.10" }, "funding": [ { @@ -4232,29 +4252,30 @@ "type": "tidelift" } ], - "time": "2024-07-22T18:03:36+00:00" + "time": "2024-07-26T07:32:07+00:00" }, { "name": "symfony/rate-limiter", - "version": "v5.4.40", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/rate-limiter.git", - "reference": "b3de902fc83923b9121169ade2453c41d0819110" + "reference": "d96117211cf6740080827ee8c9eaf7e370243b50" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/rate-limiter/zipball/b3de902fc83923b9121169ade2453c41d0819110", - "reference": "b3de902fc83923b9121169ade2453c41d0819110", + "url": "https://api.github.com/repos/symfony/rate-limiter/zipball/d96117211cf6740080827ee8c9eaf7e370243b50", + "reference": "d96117211cf6740080827ee8c9eaf7e370243b50", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/lock": "^5.2|^6.0", - "symfony/options-resolver": "^5.1|^6.0" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/options-resolver": "^5.4|^6.0|^7.0" }, "require-dev": { - "psr/cache": "^1.0|^2.0|^3.0" + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/lock": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -4286,7 +4307,7 @@ "rate-limiter" ], "support": { - "source": "https://github.com/symfony/rate-limiter/tree/v5.4.40" + "source": "https://github.com/symfony/rate-limiter/tree/v6.4.8" }, "funding": [ { @@ -4302,47 +4323,40 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/routing", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "b6f71780bbdd5e93e1c5638671cf0ba42aa8c6d8" + "reference": "8ee0c24c1bf61c263a26f1b9b6d19e83b1121f2a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/b6f71780bbdd5e93e1c5638671cf0ba42aa8c6d8", - "reference": "b6f71780bbdd5e93e1c5638671cf0ba42aa8c6d8", + "url": "https://api.github.com/repos/symfony/routing/zipball/8ee0c24c1bf61c263a26f1b9b6d19e83b1121f2a", + "reference": "8ee0c24c1bf61c263a26f1b9b6d19e83b1121f2a", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" }, "conflict": { "doctrine/annotations": "<1.12", - "symfony/config": "<5.3", - "symfony/dependency-injection": "<4.4", - "symfony/yaml": "<4.4" + "symfony/config": "<6.2", + "symfony/dependency-injection": "<5.4", + "symfony/yaml": "<5.4" }, "require-dev": { "doctrine/annotations": "^1.12|^2", "psr/log": "^1|^2|^3", - "symfony/config": "^5.3|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-foundation": "^4.4|^5.0|^6.0", - "symfony/yaml": "^4.4|^5.0|^6.0" - }, - "suggest": { - "symfony/config": "For using the all-in-one router or any loader", - "symfony/expression-language": "For using expression matching", - "symfony/http-foundation": "For using a Symfony Request object", - "symfony/yaml": "For using the YAML loader" + "symfony/config": "^6.2|^7.0", + "symfony/dependency-injection": "^5.4|^6.0|^7.0", + "symfony/expression-language": "^5.4|^6.0|^7.0", + "symfony/http-foundation": "^5.4|^6.0|^7.0", + "symfony/yaml": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -4376,7 +4390,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.4.43" + "source": "https://github.com/symfony/routing/tree/v6.4.11" }, "funding": [ { @@ -4392,37 +4406,34 @@ "type": "tidelift" } ], - "time": "2024-08-27T06:36:52+00:00" + "time": "2024-08-29T08:15:38+00:00" }, { "name": "symfony/service-contracts", - "version": "v2.5.3", + "version": "v3.5.0", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "a2329596ddc8fd568900e3fc76cba42489ecc7f3" + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a2329596ddc8fd568900e3fc76cba42489ecc7f3", - "reference": "a2329596ddc8fd568900e3fc76cba42489ecc7f3", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", + "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f", "shasum": "" }, "require": { - "php": ">=7.2.5", - "psr/container": "^1.1", - "symfony/deprecation-contracts": "^2.1|^3" + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" }, "conflict": { "ext-psr": "<1.1|>=2" }, - "suggest": { - "symfony/service-implementation": "" - }, "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "3.5-dev" }, "thanks": { "name": "symfony/contracts", @@ -4432,7 +4443,10 @@ "autoload": { "psr-4": { "Symfony\\Contracts\\Service\\": "" - } + }, + "exclude-from-classmap": [ + "/Test/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -4459,7 +4473,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.3" + "source": "https://github.com/symfony/service-contracts/tree/v3.5.0" }, "funding": [ { @@ -4475,38 +4489,38 @@ "type": "tidelift" } ], - "time": "2023-04-21T15:04:16+00:00" + "time": "2024-04-18T09:32:20+00:00" }, { "name": "symfony/string", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "8be1d484951ff5ca995eaf8edcbcb8b9a5888450" + "reference": "5bc3eb632cf9c8dbfd6529d89be9950d1518883b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/8be1d484951ff5ca995eaf8edcbcb8b9a5888450", - "reference": "8be1d484951ff5ca995eaf8edcbcb8b9a5888450", + "url": "https://api.github.com/repos/symfony/string/zipball/5bc3eb632cf9c8dbfd6529d89be9950d1518883b", + "reference": "5bc3eb632cf9c8dbfd6529d89be9950d1518883b", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-intl-grapheme": "~1.0", "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php80": "~1.15" + "symfony/polyfill-mbstring": "~1.0" }, "conflict": { - "symfony/translation-contracts": ">=3.0" + "symfony/translation-contracts": "<2.5" }, "require-dev": { - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/http-client": "^4.4|^5.0|^6.0", - "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0|^6.0" + "symfony/error-handler": "^5.4|^6.0|^7.0", + "symfony/http-client": "^5.4|^6.0|^7.0", + "symfony/intl": "^6.2|^7.0", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -4545,7 +4559,81 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.4.43" + "source": "https://github.com/symfony/string/tree/v6.4.11" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-08-12T09:55:28+00:00" + }, + { + "name": "symfony/uid", + "version": "v6.4.11", + "source": { + "type": "git", + "url": "https://github.com/symfony/uid.git", + "reference": "6a0394ad707de386547223948fac1e0f2805bc0b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/uid/zipball/6a0394ad707de386547223948fac1e0f2805bc0b", + "reference": "6a0394ad707de386547223948fac1e0f2805bc0b", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/polyfill-uuid": "^1.15" + }, + "require-dev": { + "symfony/console": "^5.4|^6.0|^7.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Uid\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to generate and represent UIDs", + "homepage": "https://symfony.com", + "keywords": [ + "UID", + "ulid", + "uuid" + ], + "support": { + "source": "https://github.com/symfony/uid/tree/v6.4.11" }, "funding": [ { @@ -4561,28 +4649,30 @@ "type": "tidelift" } ], - "time": "2024-08-01T10:24:28+00:00" + "time": "2024-08-12T09:55:28+00:00" }, { "name": "symfony/var-exporter", - "version": "v5.4.40", + "version": "v6.4.9", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "6a13d37336d512927986e09f19a4bed24178baa6" + "reference": "f9a060622e0d93777b7f8687ec4860191e16802e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/6a13d37336d512927986e09f19a4bed24178baa6", - "reference": "6a13d37336d512927986e09f19a4bed24178baa6", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/f9a060622e0d93777b7f8687ec4860191e16802e", + "reference": "f9a060622e0d93777b7f8687ec4860191e16802e", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3" }, "require-dev": { - "symfony/var-dumper": "^4.4.9|^5.0.9|^6.0" + "symfony/property-access": "^6.4|^7.0", + "symfony/serializer": "^6.4|^7.0", + "symfony/var-dumper": "^5.4|^6.0|^7.0" }, "type": "library", "autoload": { @@ -4615,10 +4705,12 @@ "export", "hydrate", "instantiate", + "lazy-loading", + "proxy", "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v5.4.40" + "source": "https://github.com/symfony/var-exporter/tree/v6.4.9" }, "funding": [ { @@ -4634,35 +4726,32 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-06-24T15:53:56+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.43", + "version": "v6.4.11", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "62f96e1cfd4cf518882a36bfedcf1fe4093c1299" + "reference": "be37e7f13195e05ab84ca5269365591edd240335" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/62f96e1cfd4cf518882a36bfedcf1fe4093c1299", - "reference": "62f96e1cfd4cf518882a36bfedcf1fe4093c1299", + "url": "https://api.github.com/repos/symfony/yaml/zipball/be37e7f13195e05ab84ca5269365591edd240335", + "reference": "be37e7f13195e05ab84ca5269365591edd240335", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/console": "<5.3" + "symfony/console": "<5.4" }, "require-dev": { - "symfony/console": "^5.3|^6.0" - }, - "suggest": { - "symfony/console": "For validating YAML files using the lint command" + "symfony/console": "^5.4|^6.0|^7.0" }, "bin": [ "Resources/bin/yaml-lint" @@ -4693,7 +4782,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.43" + "source": "https://github.com/symfony/yaml/tree/v6.4.11" }, "funding": [ { @@ -4709,7 +4798,7 @@ "type": "tidelift" } ], - "time": "2024-08-11T17:40:32+00:00" + "time": "2024-08-12T09:55:28+00:00" }, { "name": "typo3/class-alias-loader", @@ -4808,31 +4897,28 @@ }, { "name": "typo3/cms-composer-installers", - "version": "v3.1.4", + "version": "v5.0.1", "source": { "type": "git", "url": "https://github.com/TYPO3/CmsComposerInstallers.git", - "reference": "29fb214976fe05f39c7d0619ce1d648d59c50a08" + "reference": "444a228d3ae4320d7ba0b769cfab008b0c09443c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3/CmsComposerInstallers/zipball/29fb214976fe05f39c7d0619ce1d648d59c50a08", - "reference": "29fb214976fe05f39c7d0619ce1d648d59c50a08", + "url": "https://api.github.com/repos/TYPO3/CmsComposerInstallers/zipball/444a228d3ae4320d7ba0b769cfab008b0c09443c", + "reference": "444a228d3ae4320d7ba0b769cfab008b0c09443c", "shasum": "" }, "require": { - "composer-plugin-api": "^1.0.0 || ^2.0.0", - "php": "^7.2 || ^8.0" - }, - "conflict": { - "composer/installers": "<2.0.0" + "composer-plugin-api": "^2.1.0", + "php": "^8.1" }, "replace": { "lw/typo3cms-installers": "*", "netresearch/composer-installers": "*" }, "require-dev": { - "composer/composer": "1.2.*@dev || 2.0.*@dev", + "composer/composer": "^2.1", "friendsofphp/php-cs-fixer": "^2.18", "overtrue/phplint": "^2.0", "phpunit/phpunit": "^8.5" @@ -4841,7 +4927,7 @@ "extra": { "class": "TYPO3\\CMS\\Composer\\Installer\\Plugin", "branch-alias": { - "dev-main": "3.1.x-dev" + "dev-main": "5.0.x-dev" } }, "autoload": { @@ -4877,83 +4963,80 @@ "support": { "general": "https://typo3.org/support/", "issues": "https://github.com/TYPO3/CmsComposerInstallers/issues", - "source": "https://github.com/TYPO3/CmsComposerInstallers/tree/v3.1.4" + "source": "https://github.com/TYPO3/CmsComposerInstallers/tree/v5.0.1" }, - "time": "2024-08-13T14:56:37+00:00" + "time": "2024-08-13T14:58:06+00:00" }, { "name": "typo3/cms-core", - "version": "v11.5.39", + "version": "v12.4.20", "source": { "type": "git", "url": "https://github.com/TYPO3-CMS/core.git", - "reference": "abd8216fb314e214ef35aaff2ceb2e018b2a352e" + "reference": "b15e032a77fc62c9ade53f6a147caea1fee554b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/abd8216fb314e214ef35aaff2ceb2e018b2a352e", - "reference": "abd8216fb314e214ef35aaff2ceb2e018b2a352e", + "url": "https://api.github.com/repos/TYPO3-CMS/core/zipball/b15e032a77fc62c9ade53f6a147caea1fee554b0", + "reference": "b15e032a77fc62c9ade53f6a147caea1fee554b0", "shasum": "" }, "require": { - "bacon/bacon-qr-code": "^2.0.4", + "bacon/bacon-qr-code": "^2.0.7", "christian-riesen/base32": "^1.6", "composer-runtime-api": "^2.1", - "doctrine/annotations": "^1.11", - "doctrine/dbal": "^2.13.8", - "doctrine/event-manager": "^1.0.0", - "doctrine/instantiator": "^1.4", - "doctrine/lexer": "^1.2.3", - "egulias/email-validator": "^3.2.1", + "doctrine/annotations": "^1.13.3 || ^2.0", + "doctrine/dbal": "^3.9", + "doctrine/event-manager": "^2.0", + "doctrine/lexer": "^2.0 || ^3.0", + "egulias/email-validator": "^4.0", "enshrined/svg-sanitize": "^0.18.0", "ext-dom": "*", + "ext-intl": "*", "ext-json": "*", "ext-libxml": "*", + "ext-mbstring": "*", "ext-pcre": "*", "ext-pdo": "*", "ext-session": "*", + "ext-tokenizer": "*", "ext-xml": "*", + "firebase/php-jwt": "^6.4.0", "guzzlehttp/guzzle": "^7.7.0", - "guzzlehttp/psr7": "^2.4.3", - "lolli42/finediff": "^1.0.1", + "guzzlehttp/psr7": "^2.5.0", + "lolli42/finediff": "^1.0.2", "masterminds/html5": "^2.7.6", - "nikic/php-parser": "^4.13.2", - "php": "^7.4 || ^8.0", - "psr/container": "^1.1 || ^2.0", + "php": "^8.1", + "psr/container": "^2.0", "psr/event-dispatcher": "^1.0", "psr/http-client": "^1.0", "psr/http-factory": "^1.0", - "psr/http-message": "^1.0", + "psr/http-message": "^1.1 || ^2.0", "psr/http-server-handler": "^1.0", "psr/http-server-middleware": "^1.0", - "psr/log": "^1.0", - "symfony/config": "^5.4", - "symfony/console": "^5.4", - "symfony/dependency-injection": "^5.4", - "symfony/event-dispatcher-contracts": "^1.1 || ^2.0", - "symfony/expression-language": "^5.4", - "symfony/filesystem": "^5.4", - "symfony/finder": "^5.4", - "symfony/http-foundation": "^5.4", - "symfony/mailer": "^5.4", - "symfony/mime": "^5.4", - "symfony/options-resolver": "^5.4", - "symfony/polyfill-intl-icu": "^1.23.0", - "symfony/polyfill-intl-idn": "^1.23.0", - "symfony/polyfill-intl-normalizer": "^1.27", - "symfony/polyfill-mbstring": "^1.23.1", - "symfony/polyfill-php80": "^1.23.1", - "symfony/polyfill-php81": "^1.23", - "symfony/rate-limiter": "^5.4.8", - "symfony/routing": "^5.4", - "symfony/yaml": "^5.4", + "psr/log": "^2.0 || ^3.0", + "symfony/config": "^6.4 || ^7.0", + "symfony/console": "^6.4 || ^7.0", + "symfony/dependency-injection": "^6.4 || ^7.0", + "symfony/doctrine-messenger": "^6.4 || ^7.0", + "symfony/event-dispatcher-contracts": "^3.1", + "symfony/expression-language": "^6.4 || ^7.0", + "symfony/filesystem": "^6.4 || ^7.0", + "symfony/finder": "^6.4 || ^7.0", + "symfony/http-foundation": "^6.4 || ^7.0", + "symfony/mailer": "^6.4 || ^7.0", + "symfony/messenger": "^6.4 || ^7.0", + "symfony/mime": "^6.4 || ^7.0", + "symfony/options-resolver": "^6.4 || ^7.0", + "symfony/rate-limiter": "^6.4 || ^7.0", + "symfony/routing": "^6.4 || ^7.0", + "symfony/uid": "^6.4 || ^7.0", + "symfony/yaml": "^6.4 || ^7.0", "typo3/class-alias-loader": "^1.1.4", "typo3/cms-cli": "^3.1", - "typo3/cms-composer-installers": "^2.0 || ^3.0 || ^4.0", + "typo3/cms-composer-installers": "^5.0", "typo3/html-sanitizer": "^2.1.4", - "typo3/phar-stream-wrapper": "^3.1.7", - "typo3/symfony-psr-event-dispatcher-adapter": "^1.0 || ^2.0", - "typo3fluid/fluid": "^2.7.2" + "typo3fluid/fluid": "^2.9.2" }, "conflict": { "hoa/core": "*", @@ -4969,9 +5052,9 @@ "typo3/cms-sv": "self.version" }, "suggest": { + "ext-apcu": "Needed when non-default APCU based cache backends are used", "ext-fileinfo": "Used for proper file type detection in the file abstraction layer", "ext-gd": "GDlib/Freetype is required for building images with text (GIFBUILDER) and can also be used to scale images", - "ext-intl": "TYPO3 with unicode-based filesystems", "ext-mysqli": "", "ext-openssl": "OpenSSL is required for sending SMTP mails over an encrypted channel endpoint", "ext-zip": "", @@ -4980,7 +5063,7 @@ "type": "typo3-cms-framework", "extra": { "branch-alias": { - "dev-master": "11.5.x-dev" + "dev-main": "12.4.x-dev" }, "typo3/cms": { "Package": { @@ -5014,7 +5097,7 @@ "role": "Developer" } ], - "description": "The core library of TYPO3.", + "description": "TYPO3 CMS Core", "homepage": "https://typo3.org", "support": { "chat": "https://typo3.org/help", @@ -5022,29 +5105,30 @@ "issues": "https://forge.typo3.org", "source": "https://github.com/typo3/typo3" }, - "time": "2024-08-13T08:25:48+00:00" + "time": "2024-09-10T07:47:57+00:00" }, { "name": "typo3/cms-extbase", - "version": "v11.5.39", + "version": "v12.4.20", "source": { "type": "git", "url": "https://github.com/TYPO3-CMS/extbase.git", - "reference": "5c66d051f21c59b56b2d83d8867a1d5bc57dede6" + "reference": "749e81e3afc7375ccb4613bf3f4a6ff3dc61e4d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/extbase/zipball/5c66d051f21c59b56b2d83d8867a1d5bc57dede6", - "reference": "5c66d051f21c59b56b2d83d8867a1d5bc57dede6", + "url": "https://api.github.com/repos/TYPO3-CMS/extbase/zipball/749e81e3afc7375ccb4613bf3f4a6ff3dc61e4d9", + "reference": "749e81e3afc7375ccb4613bf3f4a6ff3dc61e4d9", "shasum": "" }, "require": { + "doctrine/instantiator": "^1.5 || ^2.0", "phpdocumentor/reflection-docblock": "^5.2", - "phpdocumentor/type-resolver": "^1.4", - "symfony/dependency-injection": "^5.4", - "symfony/property-access": "^5.4", - "symfony/property-info": "^5.4", - "typo3/cms-core": "11.5.39" + "phpdocumentor/type-resolver": "^1.7.1", + "symfony/dependency-injection": "^6.4 || ^7.0", + "symfony/property-access": "^6.4 || ^7.0", + "symfony/property-info": "^6.4 || ^7.0", + "typo3/cms-core": "12.4.20" }, "conflict": { "typo3/cms": "*" @@ -5055,7 +5139,7 @@ "type": "typo3-cms-framework", "extra": { "branch-alias": { - "dev-master": "11.5.x-dev" + "dev-main": "12.4.x-dev" }, "typo3/cms": { "Package": { @@ -5083,7 +5167,7 @@ "role": "Developer" } ], - "description": "A framework to build extensions for TYPO3 CMS.", + "description": "TYPO3 CMS Extbase - Extension framework to create TYPO3 frontend plugins and TYPO3 backend modules.", "homepage": "https://typo3.org", "support": { "chat": "https://typo3.org/help", @@ -5091,26 +5175,89 @@ "issues": "https://forge.typo3.org", "source": "https://github.com/typo3/typo3" }, - "time": "2024-08-13T08:25:48+00:00" + "time": "2024-09-10T07:47:57+00:00" + }, + { + "name": "typo3/cms-fluid", + "version": "v12.4.20", + "source": { + "type": "git", + "url": "https://github.com/TYPO3-CMS/fluid.git", + "reference": "9999805b18fe5df2f22a446207cb3bd5df600880" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/TYPO3-CMS/fluid/zipball/9999805b18fe5df2f22a446207cb3bd5df600880", + "reference": "9999805b18fe5df2f22a446207cb3bd5df600880", + "shasum": "" + }, + "require": { + "symfony/dependency-injection": "^6.4 || ^7.0", + "typo3/cms-core": "12.4.20", + "typo3/cms-extbase": "12.4.20", + "typo3fluid/fluid": "^2.9.2" + }, + "conflict": { + "typo3/cms": "*" + }, + "type": "typo3-cms-framework", + "extra": { + "branch-alias": { + "dev-main": "12.4.x-dev" + }, + "typo3/cms": { + "Package": { + "serviceProvider": "TYPO3\\CMS\\Fluid\\ServiceProvider", + "protected": true, + "partOfFactoryDefault": true, + "partOfMinimalUsableSystem": true + }, + "extension-key": "fluid" + } + }, + "autoload": { + "psr-4": { + "TYPO3\\CMS\\Fluid\\": "Classes/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "TYPO3 Core Team", + "email": "typo3cms@typo3.org", + "role": "Developer" + } + ], + "description": "TYPO3 CMS Fluid Integration - Integration of the Fluid templating engine into TYPO3.", + "homepage": "https://typo3.org", + "support": { + "chat": "https://typo3.org/help", + "docs": "https://docs.typo3.org/other/typo3/view-helper-reference/main/en-us/", + "issues": "https://forge.typo3.org", + "source": "https://github.com/typo3/typo3" + }, + "time": "2024-09-10T07:47:57+00:00" }, { "name": "typo3/cms-frontend", - "version": "v11.5.39", + "version": "v12.4.20", "source": { "type": "git", "url": "https://github.com/TYPO3-CMS/frontend.git", - "reference": "e10fde3aaf0485c2c937061c65ca114903944dbd" + "reference": "4432df3f46566d2a9494420d61d44a177d7505cd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/frontend/zipball/e10fde3aaf0485c2c937061c65ca114903944dbd", - "reference": "e10fde3aaf0485c2c937061c65ca114903944dbd", + "url": "https://api.github.com/repos/TYPO3-CMS/frontend/zipball/4432df3f46566d2a9494420d61d44a177d7505cd", + "reference": "4432df3f46566d2a9494420d61d44a177d7505cd", "shasum": "" }, "require": { "ext-libxml": "*", - "symfony/polyfill-mbstring": "^1.23.1", - "typo3/cms-core": "11.5.39" + "typo3/cms-core": "12.4.20" }, "conflict": { "typo3/cms": "*" @@ -5121,7 +5268,7 @@ "type": "typo3-cms-framework", "extra": { "branch-alias": { - "dev-master": "11.5.x-dev" + "dev-main": "12.4.x-dev" }, "typo3/cms": { "Package": { @@ -5131,6 +5278,11 @@ "partOfMinimalUsableSystem": true }, "extension-key": "frontend" + }, + "typo3/class-alias-loader": { + "class-alias-maps": [ + "Migrations/Code/ClassAliasMap.php" + ] } }, "autoload": { @@ -5149,7 +5301,7 @@ "role": "Developer" } ], - "description": "Classes for the frontend of TYPO3.", + "description": "TYPO3 CMS Frontend", "homepage": "https://typo3.org", "support": { "chat": "https://typo3.org/help", @@ -5157,7 +5309,7 @@ "issues": "https://forge.typo3.org", "source": "https://github.com/typo3/typo3" }, - "time": "2024-08-13T08:25:48+00:00" + "time": "2024-09-10T07:47:57+00:00" }, { "name": "typo3/html-sanitizer", @@ -5211,187 +5363,91 @@ "time": "2024-07-12T15:52:25+00:00" }, { - "name": "typo3/phar-stream-wrapper", - "version": "v3.1.7", + "name": "typo3fluid/fluid", + "version": "2.15.0", "source": { "type": "git", - "url": "https://github.com/TYPO3/phar-stream-wrapper.git", - "reference": "5cc2f04a4e2f5c7e9cc02a3bdf80fae0f3e11a8c" + "url": "https://github.com/TYPO3/Fluid.git", + "reference": "0a8ebdb9bab1510380f18bef6395fbb4754c01b7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3/phar-stream-wrapper/zipball/5cc2f04a4e2f5c7e9cc02a3bdf80fae0f3e11a8c", - "reference": "5cc2f04a4e2f5c7e9cc02a3bdf80fae0f3e11a8c", + "url": "https://api.github.com/repos/TYPO3/Fluid/zipball/0a8ebdb9bab1510380f18bef6395fbb4754c01b7", + "reference": "0a8ebdb9bab1510380f18bef6395fbb4754c01b7", "shasum": "" }, "require": { - "ext-json": "*", - "php": "^7.0 || ^8.0" + "ext-mbstring": "*", + "php": "^8.1" }, "require-dev": { - "ext-xdebug": "*", - "phpspec/prophecy": "^1.10", - "symfony/phpunit-bridge": "^5.1" + "ext-json": "*", + "ext-simplexml": "*", + "friendsofphp/php-cs-fixer": "^3.59.3", + "phpstan/phpstan": "^1.10.14", + "phpstan/phpstan-phpunit": "^1.3.11", + "phpunit/phpunit": "^10.2.6" }, "suggest": { - "ext-fileinfo": "For PHP builtin file type guessing, otherwise uses internal processing" + "ext-json": "PHP JSON is needed when using JSONVariableProvider: A relatively rare use case", + "ext-simplexml": "SimpleXML is required for the XSD schema generator" }, + "bin": [ + "bin/fluid" + ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "v3.x-dev" - } - }, "autoload": { "psr-4": { - "TYPO3\\PharStreamWrapper\\": "src/" + "TYPO3Fluid\\Fluid\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "MIT" - ], - "description": "Interceptors for PHP's native phar:// stream handling", - "homepage": "https://typo3.org/", - "keywords": [ - "phar", - "php", - "security", - "stream-wrapper" + "LGPL-3.0-or-later" ], + "description": "The TYPO3 Fluid template rendering engine", + "homepage": "https://github.com/TYPO3/Fluid", "support": { - "issues": "https://github.com/TYPO3/phar-stream-wrapper/issues", - "source": "https://github.com/TYPO3/phar-stream-wrapper/tree/v3.1.7" + "docs": "https://docs.typo3.org/other/typo3fluid/fluid/main/en-us/", + "issues": "https://github.com/TYPO3/Fluid/issues", + "source": "https://github.com/TYPO3/Fluid" }, - "time": "2021-09-20T19:19:13+00:00" + "time": "2024-08-30T21:24:26+00:00" }, { - "name": "typo3/symfony-psr-event-dispatcher-adapter", - "version": "v2.1.0", + "name": "webmozart/assert", + "version": "1.11.0", "source": { "type": "git", - "url": "https://github.com/TYPO3/symfony-psr-event-dispatcher-adapter.git", - "reference": "c93fd7cc9f215cfbbc6ce89089eadabedf65a21f" + "url": "https://github.com/webmozarts/assert.git", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3/symfony-psr-event-dispatcher-adapter/zipball/c93fd7cc9f215cfbbc6ce89089eadabedf65a21f", - "reference": "c93fd7cc9f215cfbbc6ce89089eadabedf65a21f", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", + "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", "shasum": "" }, "require": { - "php": "^7.2 || ^8.0", - "psr/event-dispatcher": "^1.0", - "symfony/event-dispatcher-contracts": "^2.0" + "ext-ctype": "*", + "php": "^7.2 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" }, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, "autoload": { "psr-4": { - "TYPO3\\SymfonyPsrEventDispatcherAdapter\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Adapter to provide compatibility with the Symfony's event dispatcher interface in all versions with the PSR-14 specification.", - "homepage": "https://typo3.org/", - "keywords": [ - "adapter", - "events", - "psr", - "psr-14" - ], - "support": { - "issues": "https://github.com/TYPO3/symfony-psr-event-dispatcher-adapter/issues", - "source": "https://github.com/TYPO3/symfony-psr-event-dispatcher-adapter/tree/v2.1.0" - }, - "time": "2021-03-02T09:36:49+00:00" - }, - { - "name": "typo3fluid/fluid", - "version": "2.7.4", - "source": { - "type": "git", - "url": "https://github.com/TYPO3/Fluid.git", - "reference": "24f4494083c8d304680e4c9c38667dff33720dd4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3/Fluid/zipball/24f4494083c8d304680e4c9c38667dff33720dd4", - "reference": "24f4494083c8d304680e4c9c38667dff33720dd4", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "require-dev": { - "ext-json": "*", - "ext-mbstring": "*", - "friendsofphp/php-cs-fixer": "^3.4", - "phpstan/phpstan": "^1.7", - "phpstan/phpstan-phpunit": "^1.1", - "phpunit/phpunit": "^8.5.33 || ^9.5.28 || ^10.0.16" - }, - "suggest": { - "ext-json": "PHP JSON is needed when using JSONVariableProvider: A relatively rare use case" - }, - "bin": [ - "bin/fluid" - ], - "type": "library", - "autoload": { - "psr-4": { - "TYPO3Fluid\\Fluid\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "description": "The TYPO3 Fluid template rendering engine", - "homepage": "https://github.com/TYPO3/Fluid", - "support": { - "docs": "https://docs.typo3.org/other/typo3fluid/fluid/main/en-us/", - "issues": "https://github.com/TYPO3/Fluid/issues", - "source": "https://github.com/TYPO3/Fluid" - }, - "time": "2023-03-23T12:04:09+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.11.0", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", - "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", - "shasum": "" - }, - "require": { - "ext-ctype": "*", - "php": "^7.2 || ^8.0" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<4.6.1 || 4.6.2" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.13" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.10-dev" - } - }, - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" + "Webmozart\\Assert\\": "src/" } }, "notification-url": "https://packagist.org/downloads/", @@ -6501,35 +6557,35 @@ }, { "name": "helmich/typo3-typoscript-lint", - "version": "v3.1.1", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/martin-helmich/typo3-typoscript-lint.git", - "reference": "0902ebc26e6d805f218eb3e95221646f23b6772a" + "reference": "1a5eefea17da9441a19cdd8484fa195796a1db67" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/martin-helmich/typo3-typoscript-lint/zipball/0902ebc26e6d805f218eb3e95221646f23b6772a", - "reference": "0902ebc26e6d805f218eb3e95221646f23b6772a", + "url": "https://api.github.com/repos/martin-helmich/typo3-typoscript-lint/zipball/1a5eefea17da9441a19cdd8484fa195796a1db67", + "reference": "1a5eefea17da9441a19cdd8484fa195796a1db67", "shasum": "" }, "require": { "ext-json": "*", "helmich/typo3-typoscript-parser": "^2.3", - "php": "^7.4 || ^8.0", - "symfony/config": "^4.4 || ^5.4 || ^6.2", - "symfony/console": "^4.4 || ^5.4 || ^6.2", - "symfony/dependency-injection": "^4.4 || ^5.4 || ^6.2", - "symfony/event-dispatcher": "^4.4 || ^5.4 || ^6.2", - "symfony/filesystem": "^4.4 || ^5.4 || ^6.2", - "symfony/finder": "^4.4 || ^5.4 || ^6.2", - "symfony/yaml": "^4.4 || ^5.4 || ^6.2" + "php": "^8.1", + "symfony/config": "^5.4 || ^6.4 || ^7.0", + "symfony/console": "^5.4 || ^6.4 || ^7.0", + "symfony/dependency-injection": "^5.4 || ^6.4 || ^7.0", + "symfony/event-dispatcher": "^5.4 || ^6.4 || ^7.0", + "symfony/filesystem": "^5.4 || ^6.4 || ^7.0", + "symfony/finder": "^5.4 || ^6.4 || ^7.0", + "symfony/yaml": "^5.4 || ^6.4 || ^7.0" }, "require-dev": { "mikey179/vfsstream": "^1.6.11", "phpspec/prophecy-phpunit": "^2.0.2", "phpunit/phpunit": "^9.6.8", - "vimeo/psalm": "^4.29.0" + "vimeo/psalm": "^5.22.2" }, "bin": [ "typoscript-lint" @@ -6555,7 +6611,7 @@ "homepage": "https://github.com/martin-helmich", "support": { "issues": "https://github.com/martin-helmich/typo3-typoscript-lint/issues", - "source": "https://github.com/martin-helmich/typo3-typoscript-lint/tree/v3.1.1" + "source": "https://github.com/martin-helmich/typo3-typoscript-lint/tree/v3.2.1" }, "funding": [ { @@ -6567,34 +6623,34 @@ "type": "github" } ], - "time": "2024-02-26T15:45:11+00:00" + "time": "2024-02-29T08:41:04+00:00" }, { "name": "helmich/typo3-typoscript-parser", - "version": "v2.5.0", + "version": "v2.6.1", "source": { "type": "git", "url": "https://github.com/martin-helmich/typo3-typoscript-parser.git", - "reference": "2c350d1a9148e4fc14d33602bb7fc18fe79b284b" + "reference": "0803b532a1d8e79973fbff45473ea54e4d454855" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/martin-helmich/typo3-typoscript-parser/zipball/2c350d1a9148e4fc14d33602bb7fc18fe79b284b", - "reference": "2c350d1a9148e4fc14d33602bb7fc18fe79b284b", + "url": "https://api.github.com/repos/martin-helmich/typo3-typoscript-parser/zipball/0803b532a1d8e79973fbff45473ea54e4d454855", + "reference": "0803b532a1d8e79973fbff45473ea54e4d454855", "shasum": "" }, "require": { - "php": ">=7.4", - "symfony/config": "~3.0|~4.0|~5.0|~6.0", - "symfony/dependency-injection": "~3.0|~4.0|~5.0|~6.0", - "symfony/yaml": "~3.0|~4.0|~5.0|~6.0" + "php": ">=8.1", + "symfony/config": "^5.4 || ^6.4 || ^7.0", + "symfony/dependency-injection": "^5.4 || ^6.4 || ^7.0", + "symfony/yaml": "^5.4 || ^6.4 || ^7.0" }, "require-dev": { - "php-vfs/php-vfs": "^1.3", - "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5", - "symfony/phpunit-bridge": "~2.7|~3.0|~4.0|~5.0|~6.0", - "vimeo/psalm": "^4.20" + "php-vfs/php-vfs": "^1.4.2", + "phpspec/prophecy-phpunit": "^2.1.0", + "phpunit/phpunit": "^10.5.11", + "symfony/phpunit-bridge": "^5.4 || ^6.4 || ^7.0", + "vimeo/psalm": "^5.22.0" }, "type": "library", "autoload": { @@ -6617,7 +6673,7 @@ "homepage": "https://github.com/martin-helmich", "support": { "issues": "https://github.com/martin-helmich/typo3-typoscript-parser/issues", - "source": "https://github.com/martin-helmich/typo3-typoscript-parser/tree/v2.5.0" + "source": "https://github.com/martin-helmich/typo3-typoscript-parser/tree/v2.6.1" }, "funding": [ { @@ -6629,7 +6685,7 @@ "type": "github" } ], - "time": "2022-12-13T15:27:29+00:00" + "time": "2024-03-03T13:38:45+00:00" }, { "name": "idiosyncratic/editorconfig", @@ -6747,39 +6803,50 @@ }, { "name": "league/flysystem", - "version": "2.5.0", + "version": "3.28.0", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem.git", - "reference": "8aaffb653c5777781b0f7f69a5d937baf7ab6cdb" + "reference": "e611adab2b1ae2e3072fa72d62c62f52c2bf1f0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/8aaffb653c5777781b0f7f69a5d937baf7ab6cdb", - "reference": "8aaffb653c5777781b0f7f69a5d937baf7ab6cdb", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/e611adab2b1ae2e3072fa72d62c62f52c2bf1f0c", + "reference": "e611adab2b1ae2e3072fa72d62c62f52c2bf1f0c", "shasum": "" }, "require": { - "ext-json": "*", + "league/flysystem-local": "^3.0.0", "league/mime-type-detection": "^1.0.0", - "php": "^7.2 || ^8.0" + "php": "^8.0.2" }, "conflict": { - "guzzlehttp/ringphp": "<1.1.1" + "async-aws/core": "<1.19.0", + "async-aws/s3": "<1.14.0", + "aws/aws-sdk-php": "3.209.31 || 3.210.0", + "guzzlehttp/guzzle": "<7.0", + "guzzlehttp/ringphp": "<1.1.1", + "phpseclib/phpseclib": "3.0.15", + "symfony/http-client": "<5.2" }, "require-dev": { - "async-aws/s3": "^1.5", - "async-aws/simple-s3": "^1.0", - "aws/aws-sdk-php": "^3.132.4", + "async-aws/s3": "^1.5 || ^2.0", + "async-aws/simple-s3": "^1.1 || ^2.0", + "aws/aws-sdk-php": "^3.295.10", "composer/semver": "^3.0", "ext-fileinfo": "*", "ext-ftp": "*", - "friendsofphp/php-cs-fixer": "^3.2", + "ext-mongodb": "^1.3", + "ext-zip": "*", + "friendsofphp/php-cs-fixer": "^3.5", "google/cloud-storage": "^1.23", - "phpseclib/phpseclib": "^2.0", - "phpstan/phpstan": "^0.12.26", - "phpunit/phpunit": "^8.5 || ^9.4", - "sabre/dav": "^4.1" + "guzzlehttp/psr7": "^2.6", + "microsoft/azure-storage-blob": "^1.1", + "mongodb/mongodb": "^1.2", + "phpseclib/phpseclib": "^3.0.36", + "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^9.5.11|^10.0", + "sabre/dav": "^4.6.0" }, "type": "library", "autoload": { @@ -6813,42 +6880,77 @@ ], "support": { "issues": "https://github.com/thephpleague/flysystem/issues", - "source": "https://github.com/thephpleague/flysystem/tree/2.5.0" + "source": "https://github.com/thephpleague/flysystem/tree/3.28.0" }, - "funding": [ - { - "url": "https://ecologi.com/frankdejonge", - "type": "custom" - }, - { - "url": "https://github.com/frankdejonge", - "type": "github" - }, + "time": "2024-05-22T10:09:12+00:00" + }, + { + "name": "league/flysystem-local", + "version": "3.28.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem-local.git", + "reference": "13f22ea8be526ea58c2ddff9e158ef7c296e4f40" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/13f22ea8be526ea58c2ddff9e158ef7c296e4f40", + "reference": "13f22ea8be526ea58c2ddff9e158ef7c296e4f40", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "league/flysystem": "^3.0.0", + "league/mime-type-detection": "^1.0.0", + "php": "^8.0.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\Flysystem\\Local\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ { - "url": "https://tidelift.com/funding/github/packagist/league/flysystem", - "type": "tidelift" + "name": "Frank de Jonge", + "email": "info@frankdejonge.nl" } ], - "time": "2022-09-17T21:02:32+00:00" + "description": "Local filesystem adapter for Flysystem.", + "keywords": [ + "Flysystem", + "file", + "files", + "filesystem", + "local" + ], + "support": { + "source": "https://github.com/thephpleague/flysystem-local/tree/3.28.0" + }, + "time": "2024-05-06T20:05:52+00:00" }, { "name": "league/flysystem-memory", - "version": "2.0.6", + "version": "3.28.0", "source": { "type": "git", "url": "https://github.com/thephpleague/flysystem-memory.git", - "reference": "f644026c705b8a501543f38cb8b745a603aa4952" + "reference": "009a4a1b64dfbfb709fad9ced8dc3d2ed2224f85" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem-memory/zipball/f644026c705b8a501543f38cb8b745a603aa4952", - "reference": "f644026c705b8a501543f38cb8b745a603aa4952", + "url": "https://api.github.com/repos/thephpleague/flysystem-memory/zipball/009a4a1b64dfbfb709fad9ced8dc3d2ed2224f85", + "reference": "009a4a1b64dfbfb709fad9ced8dc3d2ed2224f85", "shasum": "" }, "require": { "ext-fileinfo": "*", - "league/flysystem": "^2.0.0", - "php": "^7.2 || ^8.0" + "league/flysystem": "^3.0.0", + "php": "^8.0.2" }, "type": "library", "autoload": { @@ -6875,10 +6977,9 @@ "memory" ], "support": { - "issues": "https://github.com/thephpleague/flysystem-memory/issues", - "source": "https://github.com/thephpleague/flysystem-memory/tree/2.0.6" + "source": "https://github.com/thephpleague/flysystem-memory/tree/3.28.0" }, - "time": "2021-02-12T19:24:17+00:00" + "time": "2024-05-06T20:05:52+00:00" }, { "name": "league/mime-type-detection", @@ -7110,29 +7211,30 @@ }, { "name": "nette/utils", - "version": "v3.2.10", + "version": "v4.0.5", "source": { "type": "git", "url": "https://github.com/nette/utils.git", - "reference": "a4175c62652f2300c8017fb7e640f9ccb11648d2" + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/a4175c62652f2300c8017fb7e640f9ccb11648d2", - "reference": "a4175c62652f2300c8017fb7e640f9ccb11648d2", + "url": "https://api.github.com/repos/nette/utils/zipball/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", + "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96", "shasum": "" }, "require": { - "php": ">=7.2 <8.4" + "php": "8.0 - 8.4" }, "conflict": { - "nette/di": "<3.0.6" + "nette/finder": "<3", + "nette/schema": "<1.2.2" }, "require-dev": { "jetbrains/phpstorm-attributes": "dev-master", - "nette/tester": "~2.0", + "nette/tester": "^2.5", "phpstan/phpstan": "^1.0", - "tracy/tracy": "^2.3" + "tracy/tracy": "^2.9" }, "suggest": { "ext-gd": "to use Image", @@ -7140,13 +7242,12 @@ "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", "ext-json": "to use Nette\\Utils\\Json", "ext-mbstring": "to use Strings::lower() etc...", - "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", - "ext-xml": "to use Strings::length() etc. when mbstring is not available" + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-master": "4.0-dev" } }, "autoload": { @@ -7190,9 +7291,65 @@ ], "support": { "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v3.2.10" + "source": "https://github.com/nette/utils/tree/v4.0.5" + }, + "time": "2024-08-07T15:39:19+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.19.2", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "0ed4c8949a32986043e977dbe14776c14d644c45" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/0ed4c8949a32986043e977dbe14776c14d644c45", + "reference": "0ed4c8949a32986043e977dbe14776c14d644c45", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=7.1" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" }, - "time": "2023-07-30T15:38:18+00:00" + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v4.19.2" + }, + "time": "2024-09-17T19:36:00+00:00" }, { "name": "phar-io/manifest", @@ -7472,16 +7629,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.32", + "version": "10.1.16", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5" + "reference": "7e308268858ed6baedc8704a304727d20bc07c77" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5", - "reference": "85402a822d1ecf1db1096959413d35e1c37cf1a5", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/7e308268858ed6baedc8704a304727d20bc07c77", + "reference": "7e308268858ed6baedc8704a304727d20bc07c77", "shasum": "" }, "require": { @@ -7489,18 +7646,18 @@ "ext-libxml": "*", "ext-xmlwriter": "*", "nikic/php-parser": "^4.19.1 || ^5.1.0", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.6", - "phpunit/php-text-template": "^2.0.4", - "sebastian/code-unit-reverse-lookup": "^2.0.3", - "sebastian/complexity": "^2.0.3", - "sebastian/environment": "^5.1.5", - "sebastian/lines-of-code": "^1.0.4", - "sebastian/version": "^3.0.2", + "php": ">=8.1", + "phpunit/php-file-iterator": "^4.1.0", + "phpunit/php-text-template": "^3.0.1", + "sebastian/code-unit-reverse-lookup": "^3.0.0", + "sebastian/complexity": "^3.2.0", + "sebastian/environment": "^6.1.0", + "sebastian/lines-of-code": "^2.0.2", + "sebastian/version": "^4.0.1", "theseer/tokenizer": "^1.2.3" }, "require-dev": { - "phpunit/phpunit": "^9.6" + "phpunit/phpunit": "^10.1" }, "suggest": { "ext-pcov": "PHP extension that provides line coverage", @@ -7509,7 +7666,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "9.2.x-dev" + "dev-main": "10.1.x-dev" } }, "autoload": { @@ -7538,7 +7695,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.32" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/10.1.16" }, "funding": [ { @@ -7546,32 +7703,32 @@ "type": "github" } ], - "time": "2024-08-22T04:23:01+00:00" + "time": "2024-08-22T04:31:57+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "3.0.6", + "version": "4.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + "reference": "a95037b6d9e608ba092da1b23931e537cadc3c3c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", - "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/a95037b6d9e608ba092da1b23931e537cadc3c3c", + "reference": "a95037b6d9e608ba092da1b23931e537cadc3c3c", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -7598,7 +7755,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/4.1.0" }, "funding": [ { @@ -7606,28 +7764,28 @@ "type": "github" } ], - "time": "2021-12-02T12:48:52+00:00" + "time": "2023-08-31T06:24:48+00:00" }, { "name": "phpunit/php-invoker", - "version": "3.1.1", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7", + "reference": "f5e568ba02fa5ba0ddd0f618391d5a9ea50b06d7", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "suggest": { "ext-pcntl": "*" @@ -7635,7 +7793,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "3.1-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -7661,7 +7819,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + "source": "https://github.com/sebastianbergmann/php-invoker/tree/4.0.0" }, "funding": [ { @@ -7669,32 +7827,32 @@ "type": "github" } ], - "time": "2020-09-28T05:58:55+00:00" + "time": "2023-02-03T06:56:09+00:00" }, { "name": "phpunit/php-text-template", - "version": "2.0.4", + "version": "3.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + "reference": "0c7b06ff49e3d5072f057eb1fa59258bf287a748" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/0c7b06ff49e3d5072f057eb1fa59258bf287a748", + "reference": "0c7b06ff49e3d5072f057eb1fa59258bf287a748", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -7720,7 +7878,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + "security": "https://github.com/sebastianbergmann/php-text-template/security/policy", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/3.0.1" }, "funding": [ { @@ -7728,32 +7887,32 @@ "type": "github" } ], - "time": "2020-10-26T05:33:50+00:00" + "time": "2023-08-31T14:07:24+00:00" }, { "name": "phpunit/php-timer", - "version": "5.0.3", + "version": "6.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/e2a2d67966e740530f4a3343fe2e030ffdc1161d", + "reference": "e2a2d67966e740530f4a3343fe2e030ffdc1161d", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -7779,7 +7938,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + "source": "https://github.com/sebastianbergmann/php-timer/tree/6.0.0" }, "funding": [ { @@ -7787,24 +7946,23 @@ "type": "github" } ], - "time": "2020-10-26T13:16:10+00:00" + "time": "2023-02-03T06:57:52+00:00" }, { "name": "phpunit/phpunit", - "version": "9.6.20", + "version": "10.5.34", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "49d7820565836236411f5dc002d16dd689cde42f" + "reference": "3c69d315bdf79080c8e115b69d1961c6905b0e18" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/49d7820565836236411f5dc002d16dd689cde42f", - "reference": "49d7820565836236411f5dc002d16dd689cde42f", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3c69d315bdf79080c8e115b69d1961c6905b0e18", + "reference": "3c69d315bdf79080c8e115b69d1961c6905b0e18", "shasum": "" }, "require": { - "doctrine/instantiator": "^1.5.0 || ^2", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", @@ -7814,27 +7972,26 @@ "myclabs/deep-copy": "^1.12.0", "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", - "php": ">=7.3", - "phpunit/php-code-coverage": "^9.2.31", - "phpunit/php-file-iterator": "^3.0.6", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.4", - "phpunit/php-timer": "^5.0.3", - "sebastian/cli-parser": "^1.0.2", - "sebastian/code-unit": "^1.0.8", - "sebastian/comparator": "^4.0.8", - "sebastian/diff": "^4.0.6", - "sebastian/environment": "^5.1.5", - "sebastian/exporter": "^4.0.6", - "sebastian/global-state": "^5.0.7", - "sebastian/object-enumerator": "^4.0.4", - "sebastian/resource-operations": "^3.0.4", - "sebastian/type": "^3.2.1", - "sebastian/version": "^3.0.2" + "php": ">=8.1", + "phpunit/php-code-coverage": "^10.1.16", + "phpunit/php-file-iterator": "^4.1.0", + "phpunit/php-invoker": "^4.0.0", + "phpunit/php-text-template": "^3.0.1", + "phpunit/php-timer": "^6.0.0", + "sebastian/cli-parser": "^2.0.1", + "sebastian/code-unit": "^2.0.0", + "sebastian/comparator": "^5.0.2", + "sebastian/diff": "^5.1.1", + "sebastian/environment": "^6.1.0", + "sebastian/exporter": "^5.1.2", + "sebastian/global-state": "^6.0.2", + "sebastian/object-enumerator": "^5.0.0", + "sebastian/recursion-context": "^5.0.0", + "sebastian/type": "^4.0.0", + "sebastian/version": "^4.0.1" }, "suggest": { - "ext-soap": "To be able to generate mocks based on WSDL files", - "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" + "ext-soap": "To be able to generate mocks based on WSDL files" }, "bin": [ "phpunit" @@ -7842,7 +7999,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "9.6-dev" + "dev-main": "10.5-dev" } }, "autoload": { @@ -7874,7 +8031,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.20" + "source": "https://github.com/sebastianbergmann/phpunit/tree/10.5.34" }, "funding": [ { @@ -7890,7 +8047,7 @@ "type": "tidelift" } ], - "time": "2024-07-10T11:45:39+00:00" + "time": "2024-09-13T05:19:38+00:00" }, { "name": "react/cache", @@ -8555,28 +8712,28 @@ }, { "name": "sebastian/cli-parser", - "version": "1.0.2", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b" + "reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b", - "reference": "2b56bea83a09de3ac06bb18b92f068e60cc6f50b", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/c34583b87e7b7a8055bf6c450c2c77ce32a24084", + "reference": "c34583b87e7b7a8055bf6c450c2c77ce32a24084", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "2.0-dev" } }, "autoload": { @@ -8599,7 +8756,8 @@ "homepage": "https://github.com/sebastianbergmann/cli-parser", "support": { "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.2" + "security": "https://github.com/sebastianbergmann/cli-parser/security/policy", + "source": "https://github.com/sebastianbergmann/cli-parser/tree/2.0.1" }, "funding": [ { @@ -8607,32 +8765,32 @@ "type": "github" } ], - "time": "2024-03-02T06:27:43+00:00" + "time": "2024-03-02T07:12:49+00:00" }, { "name": "sebastian/code-unit", - "version": "1.0.8", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" + "reference": "a81fee9eef0b7a76af11d121767abc44c104e503" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/a81fee9eef0b7a76af11d121767abc44c104e503", + "reference": "a81fee9eef0b7a76af11d121767abc44c104e503", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "2.0-dev" } }, "autoload": { @@ -8655,7 +8813,7 @@ "homepage": "https://github.com/sebastianbergmann/code-unit", "support": { "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" + "source": "https://github.com/sebastianbergmann/code-unit/tree/2.0.0" }, "funding": [ { @@ -8663,32 +8821,32 @@ "type": "github" } ], - "time": "2020-10-26T13:08:54+00:00" + "time": "2023-02-03T06:58:43+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5e3a687f7d8ae33fb362c5c0743794bbb2420a1d", + "reference": "5e3a687f7d8ae33fb362c5c0743794bbb2420a1d", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -8710,7 +8868,7 @@ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", "support": { "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/3.0.0" }, "funding": [ { @@ -8718,34 +8876,36 @@ "type": "github" } ], - "time": "2020-09-28T05:30:19+00:00" + "time": "2023-02-03T06:59:15+00:00" }, { "name": "sebastian/comparator", - "version": "4.0.8", + "version": "5.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a" + "reference": "2d3e04c3b4c1e84a5e7382221ad8883c8fbc4f53" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a", - "reference": "fa0f136dd2334583309d32b62544682ee972b51a", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/2d3e04c3b4c1e84a5e7382221ad8883c8fbc4f53", + "reference": "2d3e04c3b4c1e84a5e7382221ad8883c8fbc4f53", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" + "ext-dom": "*", + "ext-mbstring": "*", + "php": ">=8.1", + "sebastian/diff": "^5.0", + "sebastian/exporter": "^5.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -8784,7 +8944,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8" + "security": "https://github.com/sebastianbergmann/comparator/security/policy", + "source": "https://github.com/sebastianbergmann/comparator/tree/5.0.2" }, "funding": [ { @@ -8792,33 +8953,33 @@ "type": "github" } ], - "time": "2022-09-14T12:41:17+00:00" + "time": "2024-08-12T06:03:08+00:00" }, { "name": "sebastian/complexity", - "version": "2.0.3", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a" + "reference": "68ff824baeae169ec9f2137158ee529584553799" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a", - "reference": "25f207c40d62b8b7aa32f5ab026c53561964053a", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/68ff824baeae169ec9f2137158ee529584553799", + "reference": "68ff824baeae169ec9f2137158ee529584553799", "shasum": "" }, "require": { "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.2-dev" } }, "autoload": { @@ -8841,7 +9002,8 @@ "homepage": "https://github.com/sebastianbergmann/complexity", "support": { "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.3" + "security": "https://github.com/sebastianbergmann/complexity/security/policy", + "source": "https://github.com/sebastianbergmann/complexity/tree/3.2.0" }, "funding": [ { @@ -8849,33 +9011,33 @@ "type": "github" } ], - "time": "2023-12-22T06:19:30+00:00" + "time": "2023-12-21T08:37:17+00:00" }, { "name": "sebastian/diff", - "version": "4.0.6", + "version": "5.1.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc" + "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc", - "reference": "ba01945089c3a293b01ba9badc29ad55b106b0bc", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/c41e007b4b62af48218231d6c2275e4c9b975b2e", + "reference": "c41e007b4b62af48218231d6c2275e4c9b975b2e", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3", - "symfony/process": "^4.2 || ^5" + "phpunit/phpunit": "^10.0", + "symfony/process": "^6.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.1-dev" } }, "autoload": { @@ -8907,7 +9069,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.6" + "security": "https://github.com/sebastianbergmann/diff/security/policy", + "source": "https://github.com/sebastianbergmann/diff/tree/5.1.1" }, "funding": [ { @@ -8915,27 +9078,27 @@ "type": "github" } ], - "time": "2024-03-02T06:30:58+00:00" + "time": "2024-03-02T07:15:17+00:00" }, { "name": "sebastian/environment", - "version": "5.1.5", + "version": "6.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed" + "reference": "8074dbcd93529b357029f5cc5058fd3e43666984" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", - "reference": "830c43a844f1f8d5b7a1f6d6076b784454d8b7ed", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/8074dbcd93529b357029f5cc5058fd3e43666984", + "reference": "8074dbcd93529b357029f5cc5058fd3e43666984", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "suggest": { "ext-posix": "*" @@ -8943,7 +9106,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "5.1-dev" + "dev-main": "6.1-dev" } }, "autoload": { @@ -8962,7 +9125,7 @@ } ], "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", + "homepage": "https://github.com/sebastianbergmann/environment", "keywords": [ "Xdebug", "environment", @@ -8970,7 +9133,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.5" + "security": "https://github.com/sebastianbergmann/environment/security/policy", + "source": "https://github.com/sebastianbergmann/environment/tree/6.1.0" }, "funding": [ { @@ -8978,34 +9142,34 @@ "type": "github" } ], - "time": "2023-02-03T06:03:51+00:00" + "time": "2024-03-23T08:47:14+00:00" }, { "name": "sebastian/exporter", - "version": "4.0.6", + "version": "5.1.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72" + "reference": "955288482d97c19a372d3f31006ab3f37da47adf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72", - "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/955288482d97c19a372d3f31006ab3f37da47adf", + "reference": "955288482d97c19a372d3f31006ab3f37da47adf", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" + "ext-mbstring": "*", + "php": ">=8.1", + "sebastian/recursion-context": "^5.0" }, "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.1-dev" } }, "autoload": { @@ -9047,7 +9211,8 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6" + "security": "https://github.com/sebastianbergmann/exporter/security/policy", + "source": "https://github.com/sebastianbergmann/exporter/tree/5.1.2" }, "funding": [ { @@ -9055,38 +9220,35 @@ "type": "github" } ], - "time": "2024-03-02T06:33:00+00:00" + "time": "2024-03-02T07:17:12+00:00" }, { "name": "sebastian/global-state", - "version": "5.0.7", + "version": "6.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9" + "reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", - "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/987bafff24ecc4c9ac418cab1145b96dd6e9cbd9", + "reference": "987bafff24ecc4c9ac418cab1145b96dd6e9cbd9", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=8.1", + "sebastian/object-reflector": "^3.0", + "sebastian/recursion-context": "^5.0" }, "require-dev": { "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "5.0-dev" + "dev-main": "6.0-dev" } }, "autoload": { @@ -9105,13 +9267,14 @@ } ], "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", + "homepage": "https://www.github.com/sebastianbergmann/global-state", "keywords": [ "global state" ], "support": { "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7" + "security": "https://github.com/sebastianbergmann/global-state/security/policy", + "source": "https://github.com/sebastianbergmann/global-state/tree/6.0.2" }, "funding": [ { @@ -9119,33 +9282,33 @@ "type": "github" } ], - "time": "2024-03-02T06:35:11+00:00" + "time": "2024-03-02T07:19:19+00:00" }, { "name": "sebastian/lines-of-code", - "version": "1.0.4", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5" + "reference": "856e7f6a75a84e339195d48c556f23be2ebf75d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5", - "reference": "e1e4a170560925c26d424b6a03aed157e7dcc5c5", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/856e7f6a75a84e339195d48c556f23be2ebf75d0", + "reference": "856e7f6a75a84e339195d48c556f23be2ebf75d0", "shasum": "" }, "require": { "nikic/php-parser": "^4.18 || ^5.0", - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-main": "2.0-dev" } }, "autoload": { @@ -9168,7 +9331,8 @@ "homepage": "https://github.com/sebastianbergmann/lines-of-code", "support": { "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.4" + "security": "https://github.com/sebastianbergmann/lines-of-code/security/policy", + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/2.0.2" }, "funding": [ { @@ -9176,34 +9340,34 @@ "type": "github" } ], - "time": "2023-12-22T06:20:34+00:00" + "time": "2023-12-21T08:38:20+00:00" }, { "name": "sebastian/object-enumerator", - "version": "4.0.4", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/202d0e344a580d7f7d04b3fafce6933e59dae906", + "reference": "202d0e344a580d7f7d04b3fafce6933e59dae906", "shasum": "" }, "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" + "php": ">=8.1", + "sebastian/object-reflector": "^3.0", + "sebastian/recursion-context": "^5.0" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -9225,7 +9389,7 @@ "homepage": "https://github.com/sebastianbergmann/object-enumerator/", "support": { "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/5.0.0" }, "funding": [ { @@ -9233,32 +9397,32 @@ "type": "github" } ], - "time": "2020-10-26T13:12:34+00:00" + "time": "2023-02-03T07:08:32+00:00" }, { "name": "sebastian/object-reflector", - "version": "2.0.4", + "version": "3.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + "reference": "24ed13d98130f0e7122df55d06c5c4942a577957" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/24ed13d98130f0e7122df55d06c5c4942a577957", + "reference": "24ed13d98130f0e7122df55d06c5c4942a577957", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "2.0-dev" + "dev-main": "3.0-dev" } }, "autoload": { @@ -9280,7 +9444,7 @@ "homepage": "https://github.com/sebastianbergmann/object-reflector/", "support": { "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + "source": "https://github.com/sebastianbergmann/object-reflector/tree/3.0.0" }, "funding": [ { @@ -9288,32 +9452,32 @@ "type": "github" } ], - "time": "2020-10-26T13:14:26+00:00" + "time": "2023-02-03T07:06:18+00:00" }, { "name": "sebastian/recursion-context", - "version": "4.0.5", + "version": "5.0.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1" + "reference": "05909fb5bc7df4c52992396d0116aed689f93712" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", - "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/05909fb5bc7df4c52992396d0116aed689f93712", + "reference": "05909fb5bc7df4c52992396d0116aed689f93712", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.3" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-main": "5.0-dev" } }, "autoload": { @@ -9343,7 +9507,7 @@ "homepage": "https://github.com/sebastianbergmann/recursion-context", "support": { "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5" + "source": "https://github.com/sebastianbergmann/recursion-context/tree/5.0.0" }, "funding": [ { @@ -9351,32 +9515,32 @@ "type": "github" } ], - "time": "2023-02-03T06:07:39+00:00" + "time": "2023-02-03T07:05:40+00:00" }, { - "name": "sebastian/resource-operations", - "version": "3.0.4", + "name": "sebastian/type", + "version": "4.0.0", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e" + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "462699a16464c3944eefc02ebdd77882bd3925bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e", - "reference": "05d5692a7993ecccd56a03e40cd7e5b09b1d404e", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/462699a16464c3944eefc02ebdd77882bd3925bf", + "reference": "462699a16464c3944eefc02ebdd77882bd3925bf", "shasum": "" }, "require": { - "php": ">=7.3" + "php": ">=8.1" }, "require-dev": { - "phpunit/phpunit": "^9.0" + "phpunit/phpunit": "^10.0" }, "type": "library", "extra": { "branch-alias": { - "dev-main": "3.0-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -9391,13 +9555,15 @@ "authors": [ { "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" + "email": "sebastian@phpunit.de", + "role": "lead" } ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "description": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", "support": { - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.4" + "issues": "https://github.com/sebastianbergmann/type/issues", + "source": "https://github.com/sebastianbergmann/type/tree/4.0.0" }, "funding": [ { @@ -9405,32 +9571,29 @@ "type": "github" } ], - "time": "2024-03-14T16:00:52+00:00" + "time": "2023-02-03T07:10:45+00:00" }, { - "name": "sebastian/type", - "version": "3.2.1", + "name": "sebastian/version", + "version": "4.0.1", "source": { "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7" + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", - "reference": "75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c51fa83a5d8f43f1402e3f32a005e6262244ef17", + "reference": "c51fa83a5d8f43f1402e3f32a005e6262244ef17", "shasum": "" }, "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.5" + "php": ">=8.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.2-dev" + "dev-main": "4.0-dev" } }, "autoload": { @@ -9449,11 +9612,11 @@ "role": "lead" } ], - "description": "Collection of value objects that represent the types of the PHP type system", - "homepage": "https://github.com/sebastianbergmann/type", + "description": "Library that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version", "support": { - "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/3.2.1" + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/4.0.1" }, "funding": [ { @@ -9461,60 +9624,7 @@ "type": "github" } ], - "time": "2023-02-03T06:13:03+00:00" - }, - { - "name": "sebastian/version", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "support": { - "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:39:44+00:00" + "time": "2023-02-07T11:34:05+00:00" }, { "name": "ssch/typo3-debug-dump-pass", @@ -9690,23 +9800,178 @@ ], "time": "2024-08-29T12:15:16+00:00" }, + { + "name": "symfony/polyfill-php80", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-09T11:45:10+00:00" + }, + { + "name": "symfony/polyfill-php81", + "version": "v1.31.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", + "reference": "4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php81\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2024-09-09T11:45:10+00:00" + }, { "name": "symfony/process", - "version": "v5.4.40", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "deedcb3bb4669cae2148bc920eafd2b16dc7c046" + "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/deedcb3bb4669cae2148bc920eafd2b16dc7c046", - "reference": "deedcb3bb4669cae2148bc920eafd2b16dc7c046", + "url": "https://api.github.com/repos/symfony/process/zipball/8d92dd79149f29e89ee0f480254db595f6a6a2c5", + "reference": "8d92dd79149f29e89ee0f480254db595f6a6a2c5", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -9734,7 +9999,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.40" + "source": "https://github.com/symfony/process/tree/v6.4.8" }, "funding": [ { @@ -9750,25 +10015,25 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "symfony/stopwatch", - "version": "v5.4.40", + "version": "v6.4.8", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "0e9daf3b7c805c747638b2cc48f1649e594f9625" + "reference": "63e069eb616049632cde9674c46957819454b8aa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/0e9daf3b7c805c747638b2cc48f1649e594f9625", - "reference": "0e9daf3b7c805c747638b2cc48f1649e594f9625", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/63e069eb616049632cde9674c46957819454b8aa", + "reference": "63e069eb616049632cde9674c46957819454b8aa", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/service-contracts": "^1|^2|^3" + "php": ">=8.1", + "symfony/service-contracts": "^2.5|^3" }, "type": "library", "autoload": { @@ -9796,7 +10061,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.40" + "source": "https://github.com/symfony/stopwatch/tree/v6.4.8" }, "funding": [ { @@ -9812,7 +10077,7 @@ "type": "tidelift" } ], - "time": "2024-05-31T14:33:22+00:00" + "time": "2024-05-31T14:49:08+00:00" }, { "name": "theseer/tokenizer", @@ -9866,22 +10131,21 @@ }, { "name": "typo3/cms-backend", - "version": "v11.5.39", + "version": "v12.4.20", "source": { "type": "git", "url": "https://github.com/TYPO3-CMS/backend.git", - "reference": "766d0ee6b84b82af192309ec87212ef9015db0da" + "reference": "175402085bb835a9ea4f6ab670195f0e091a61be" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/backend/zipball/766d0ee6b84b82af192309ec87212ef9015db0da", - "reference": "766d0ee6b84b82af192309ec87212ef9015db0da", + "url": "https://api.github.com/repos/TYPO3-CMS/backend/zipball/175402085bb835a9ea4f6ab670195f0e091a61be", + "reference": "175402085bb835a9ea4f6ab670195f0e091a61be", "shasum": "" }, "require": { "psr/event-dispatcher": "^1.0", - "typo3/cms-core": "11.5.39", - "typo3/cms-recordlist": "11.5.39" + "typo3/cms-core": "12.4.20" }, "conflict": { "typo3/cms": "*" @@ -9891,6 +10155,7 @@ "typo3/cms-context-help": "self.version", "typo3/cms-cshmanual": "self.version", "typo3/cms-func-wizards": "self.version", + "typo3/cms-recordlist": "self.version", "typo3/cms-wizard-crpages": "self.version", "typo3/cms-wizard-sortpages": "self.version" }, @@ -9900,7 +10165,7 @@ "type": "typo3-cms-framework", "extra": { "branch-alias": { - "dev-master": "11.5.x-dev" + "dev-main": "12.4.x-dev" }, "typo3/cms": { "Package": { @@ -9910,203 +10175,16 @@ "partOfMinimalUsableSystem": true }, "extension-key": "backend" - } - }, - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Backend\\": "Classes/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "description": "Classes for the TYPO3 backend.", - "homepage": "https://typo3.org", - "support": { - "chat": "https://typo3.org/help", - "docs": "https://docs.typo3.org", - "issues": "https://forge.typo3.org", - "source": "https://github.com/typo3/typo3" - }, - "time": "2024-08-13T08:25:48+00:00" - }, - { - "name": "typo3/cms-fluid", - "version": "v11.5.39", - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/fluid.git", - "reference": "2aa55fe0c295f41a8aa2d38c292e3ade7965b41f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/fluid/zipball/2aa55fe0c295f41a8aa2d38c292e3ade7965b41f", - "reference": "2aa55fe0c295f41a8aa2d38c292e3ade7965b41f", - "shasum": "" - }, - "require": { - "symfony/dependency-injection": "^5.4", - "typo3/cms-core": "11.5.39", - "typo3/cms-extbase": "11.5.39", - "typo3fluid/fluid": "^2.7.2" - }, - "conflict": { - "typo3/cms": "*" - }, - "type": "typo3-cms-framework", - "extra": { - "branch-alias": { - "dev-master": "11.5.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Fluid\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "fluid" - } - }, - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Fluid\\": "Classes/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "description": "Fluid is a next-generation templating engine which makes the life of extension authors a lot easier!", - "homepage": "https://typo3.org", - "support": { - "chat": "https://typo3.org/help", - "docs": "https://docs.typo3.org/other/typo3/view-helper-reference/main/en-us/", - "issues": "https://forge.typo3.org", - "source": "https://github.com/typo3/typo3" - }, - "time": "2024-08-13T08:25:48+00:00" - }, - { - "name": "typo3/cms-install", - "version": "v11.5.39", - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/install.git", - "reference": "3bb82d446c6e22cf0393d3b1f60d03d2af5e6055" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/install/zipball/3bb82d446c6e22cf0393d3b1f60d03d2af5e6055", - "reference": "3bb82d446c6e22cf0393d3b1f60d03d2af5e6055", - "shasum": "" - }, - "require": { - "doctrine/dbal": "^2.13.8", - "guzzlehttp/promises": "^1.5.2 || ^2.0", - "nikic/php-parser": "^4.13.2", - "symfony/finder": "^5.4", - "symfony/http-foundation": "^5.4", - "typo3/cms-core": "11.5.39", - "typo3/cms-extbase": "11.5.39", - "typo3/cms-fluid": "11.5.39" - }, - "conflict": { - "typo3/cms": "*" - }, - "type": "typo3-cms-framework", - "extra": { - "branch-alias": { - "dev-master": "11.5.x-dev" - }, - "typo3/cms": { - "Package": { - "serviceProvider": "TYPO3\\CMS\\Install\\ServiceProvider", - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "install" - } - }, - "autoload": { - "psr-4": { - "TYPO3\\CMS\\Install\\": "Classes/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "GPL-2.0-or-later" - ], - "authors": [ - { - "name": "TYPO3 Core Team", - "email": "typo3cms@typo3.org", - "role": "Developer" - } - ], - "description": "The Install Tool mounted as the module Tools>Install in TYPO3.", - "homepage": "https://typo3.org", - "support": { - "chat": "https://typo3.org/help", - "docs": "https://docs.typo3.org", - "issues": "https://forge.typo3.org", - "source": "https://github.com/typo3/typo3" - }, - "time": "2024-08-13T08:25:48+00:00" - }, - { - "name": "typo3/cms-recordlist", - "version": "v11.5.39", - "source": { - "type": "git", - "url": "https://github.com/TYPO3-CMS/recordlist.git", - "reference": "43ad9b8ac66ef505ab3ffc94e4b54679481dbcfa" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/TYPO3-CMS/recordlist/zipball/43ad9b8ac66ef505ab3ffc94e4b54679481dbcfa", - "reference": "43ad9b8ac66ef505ab3ffc94e4b54679481dbcfa", - "shasum": "" - }, - "require": { - "typo3/cms-core": "11.5.39" - }, - "conflict": { - "typo3/cms": "*" - }, - "type": "typo3-cms-framework", - "extra": { - "branch-alias": { - "dev-master": "11.5.x-dev" }, - "typo3/cms": { - "Package": { - "protected": true, - "partOfFactoryDefault": true, - "partOfMinimalUsableSystem": true - }, - "extension-key": "recordlist" + "typo3/class-alias-loader": { + "class-alias-maps": [ + "Migrations/Code/ClassAliasMap.php" + ] } }, "autoload": { "psr-4": { - "TYPO3\\CMS\\Recordlist\\": "Classes/" + "TYPO3\\CMS\\Backend\\": "Classes/" } }, "notification-url": "https://packagist.org/downloads/", @@ -10120,7 +10198,7 @@ "role": "Developer" } ], - "description": "List of database-records", + "description": "TYPO3 CMS backend", "homepage": "https://typo3.org", "support": { "chat": "https://typo3.org/help", @@ -10128,44 +10206,44 @@ "issues": "https://forge.typo3.org", "source": "https://github.com/typo3/typo3" }, - "time": "2024-08-13T08:25:48+00:00" + "time": "2024-09-10T07:47:57+00:00" }, { "name": "typo3/coding-standards", - "version": "v0.6.1", + "version": "v0.8.0", "source": { "type": "git", "url": "https://github.com/TYPO3/coding-standards.git", - "reference": "59591f376f441b3db561bd91ac3eab896923a3ab" + "reference": "d99bdb92e5647bedc3d05e4aef1ab4d1808a17b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3/coding-standards/zipball/59591f376f441b3db561bd91ac3eab896923a3ab", - "reference": "59591f376f441b3db561bd91ac3eab896923a3ab", + "url": "https://api.github.com/repos/TYPO3/coding-standards/zipball/d99bdb92e5647bedc3d05e4aef1ab4d1808a17b1", + "reference": "d99bdb92e5647bedc3d05e4aef1ab4d1808a17b1", "shasum": "" }, "require": { "ext-json": "*", - "friendsofphp/php-cs-fixer": "^3.0", - "php": "^7.2 || ^8.0", - "symfony/console": "^4.4.30 || ^5.3.7 || ^6.0", - "symfony/filesystem": "^4.4 || ^5.0 || ^6.0" + "friendsofphp/php-cs-fixer": "^3.49", + "php": "^8.1", + "symfony/console": "^6.4 || ^7.0", + "symfony/filesystem": "^6.4 || ^7.0" }, "require-dev": { - "composer/package-versions-deprecated": "^1.11.99.4", - "ergebnis/composer-normalize": "*", + "composer/package-versions-deprecated": "^1.11.99.5", + "ergebnis/composer-normalize": "^2.28", "keradus/cli-executor": "^1.5", - "maglnet/composer-require-checker": "*", - "nikic/php-parser": "^4.13.1", - "overtrue/phplint": "^3.0", - "phpstan/extension-installer": "^1.1", - "phpstan/phpstan-deprecation-rules": "^1.0", - "phpstan/phpstan-phpunit": "^1.0", - "phpstan/phpstan-strict-rules": "^1.0", - "phpstan/phpstan-symfony": "^1.0", - "phpunit/phpunit": "^8.5.24 || ^9.5.18", - "symfony/finder": ">=4.4", - "symfony/process": ">=4.4" + "maglnet/composer-require-checker": "^4.7.1", + "overtrue/phplint": "^9.0", + "phpstan/extension-installer": "^1.3.1", + "phpstan/phpstan": "^1.11.3", + "phpstan/phpstan-deprecation-rules": "^1.2.0", + "phpstan/phpstan-phpunit": "^1.4.0", + "phpstan/phpstan-strict-rules": "^1.6.0", + "phpstan/phpstan-symfony": "^1.4.3", + "phpunit/phpunit": "^10.1.3", + "symfony/finder": "^6.4 || ^7.0", + "symfony/process": "^6.4 || ^7.0" }, "bin": [ "t3-cs", @@ -10174,7 +10252,7 @@ "type": "coding-standards", "extra": { "branch-alias": { - "dev-main": "0.6.x-dev" + "dev-main": "0.8.x-dev" } }, "autoload": { @@ -10211,38 +10289,32 @@ "issues": "https://github.com/TYPO3/coding-standards/issues", "source": "https://github.com/TYPO3/coding-standards" }, - "time": "2022-12-20T16:01:37+00:00" + "time": "2024-06-03T14:17:54+00:00" }, { "name": "typo3/testing-framework", - "version": "7.1.0", + "version": "8.2.1", "source": { "type": "git", "url": "https://github.com/TYPO3/testing-framework.git", - "reference": "76acb9c6b44a891801cda07e6413b015165b288c" + "reference": "d317133015a7028854f05ad68b97666c7b6d634d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TYPO3/testing-framework/zipball/76acb9c6b44a891801cda07e6413b015165b288c", - "reference": "76acb9c6b44a891801cda07e6413b015165b288c", + "url": "https://api.github.com/repos/TYPO3/testing-framework/zipball/d317133015a7028854f05ad68b97666c7b6d634d", + "reference": "d317133015a7028854f05ad68b97666c7b6d634d", "shasum": "" }, "require": { - "guzzlehttp/psr7": "^2.4.3", - "php": ">= 7.4", - "phpunit/phpunit": "^9.5.25 || ^10.1", + "guzzlehttp/psr7": "^2.5.0", + "php": "^8.1", + "phpunit/phpunit": "^10.1 || ^11.0", "psr/container": "^1.1.0 || ^2.0.0", - "typo3/cms-backend": "11.*.*@dev || 12.*.*@dev", - "typo3/cms-core": "11.*.*@dev || 12.*.*@dev", - "typo3/cms-extbase": "11.*.*@dev || 12.*.*@dev", - "typo3/cms-fluid": "11.*.*@dev || 12.*.*@dev", - "typo3/cms-frontend": "11.*.*@dev || 12.*.*@dev", - "typo3/cms-install": "11.*.*@dev || 12.*.*@dev", - "typo3/cms-recordlist": "11.*.*@dev || 12.*.*@dev", - "typo3fluid/fluid": "^2.7.1" - }, - "conflict": { - "doctrine/dbal": "2.13.0 || 2.13.1" + "typo3/cms-backend": "12.*.*@dev || 13.*.*@dev", + "typo3/cms-core": "12.*.*@dev || 13.*.*@dev", + "typo3/cms-extbase": "12.*.*@dev || 13.*.*@dev", + "typo3/cms-fluid": "12.*.*@dev || 13.*.*@dev", + "typo3/cms-frontend": "12.*.*@dev || 13.*.*@dev" }, "replace": { "sbuerk/typo3-cmscomposerinstallers-testingframework-bridge": "*" @@ -10251,7 +10323,7 @@ "friendsofphp/php-cs-fixer": "^3.37.1", "phpstan/phpstan": "^1.9.2", "phpstan/phpstan-phpunit": "^1.1.1", - "typo3/cms-workspaces": "11.*.*@dev" + "typo3/cms-workspaces": "12.*.*@dev || 13.*.*@dev" }, "type": "library", "autoload": { @@ -10287,9 +10359,9 @@ "support": { "general": "https://typo3.org/support/", "issues": "https://github.com/TYPO3/testing-framework/issues", - "source": "https://github.com/TYPO3/testing-framework/tree/7.1.0" + "source": "https://github.com/TYPO3/testing-framework/tree/8.2.1" }, - "time": "2024-08-14T18:02:45+00:00" + "time": "2024-08-14T18:02:34+00:00" } ], "aliases": [], @@ -10298,7 +10370,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": "^7.1 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0", + "php": "~8.1.0 || ~8.2.0 || ~8.3.0", "ext-json": "*" }, "platform-dev": [], diff --git a/ext_emconf.php b/ext_emconf.php index 0ab4b7dd..200c50e8 100644 --- a/ext_emconf.php +++ b/ext_emconf.php @@ -24,15 +24,15 @@ 'title' => 'Handlebars', 'description' => 'A TYPO3 extension that provides an entire rendering environment for Handlebars templates. It is seamlessly integrated into TYPO3 and offers extensive configuration options to get all the power out of your templates.', 'category' => 'fe', - 'version' => '0.7.26', + 'version' => '1.0.0', 'state' => 'beta', 'author' => 'Elias Häußler', 'author_email' => 'e.haeussler@familie-redlich.de', 'author_company' => 'coding. powerful. systems. CPS GmbH', 'constraints' => [ 'depends' => [ - 'typo3' => '10.4.0-11.5.99', - 'php' => '7.1.0-8.3.99', + 'typo3' => '12.4.0-12.4.99', + 'php' => '8.1.0-8.3.99', ], ], ]; diff --git a/phpunit.xml b/phpunit.xml index 52d84c1d..bc6d10f6 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -5,10 +5,7 @@ colors="true" xsi:noNamespaceSchemaLocation=".Build/vendor/phpunit/phpunit/phpunit.xsd" > - - - Classes - + @@ -23,4 +20,9 @@ + + + Classes + + diff --git a/rector.php b/rector.php index e9db5e31..111726b1 100644 --- a/rector.php +++ b/rector.php @@ -22,52 +22,22 @@ */ use Rector\Config\RectorConfig; -use Rector\PostRector\Rector\NameImportingPostRector; +use Rector\Set\ValueObject\LevelSetList; use Rector\ValueObject\PhpVersion; -use Ssch\TYPO3Rector\CodeQuality\General\ConvertImplicitVariablesToExplicitGlobalsRector; -use Ssch\TYPO3Rector\CodeQuality\General\ExtEmConfRector; -use Ssch\TYPO3Rector\Configuration\Typo3Option; use Ssch\TYPO3Rector\Set\Typo3LevelSetList; return static function (RectorConfig $rectorConfig): void { - $rectorConfig->sets([ - Typo3LevelSetList::UP_TO_TYPO3_10, - ]); - - // In order to have a better analysis from phpstan we teach it here some more things - $rectorConfig->phpstanConfig(Typo3Option::PHPSTAN_FOR_RECTOR_PATH); - - // Disable parallel otherwise non php file processing is not working i.e. typoscript - $rectorConfig->disableParallel(); - - // this will not import root namespace classes, like \DateTime or \Exception - $rectorConfig->importShortClasses(false); - - // Define your target version which you want to support - $rectorConfig->phpVersion(PhpVersion::PHP_71); - - // If you only want to process one/some TYPO3 extension(s), you can specify its path(s) here. - // If you use the option --config change __DIR__ to getcwd() $rectorConfig->paths([ - __DIR__, + __DIR__ . '/Classes', + __DIR__ . '/Configuration', + __DIR__ . '/Tests', + __DIR__ . '/ext_*.php', ]); - // If you use importNames(), you should consider excluding some TYPO3 files. - $rectorConfig->skip([ - __DIR__ . '/.Build/*', - __DIR__ . '/.github/*', - __DIR__ . '/config/*', - __DIR__ . '/Resources/Private/Libs/Build/vendor/*', - __DIR__ . '/var/*', - NameImportingPostRector::class => [ - __DIR__ . '/ext_*.php', - __DIR__ . '/Configuration/Services.php', - ], - ]); + $rectorConfig->phpVersion(PhpVersion::PHP_81); - // Add some general TYPO3 rules - $rectorConfig->rule(ConvertImplicitVariablesToExplicitGlobalsRector::class); - $rectorConfig->ruleWithConfiguration(ExtEmConfRector::class, [ - ExtEmConfRector::ADDITIONAL_VALUES_TO_BE_REMOVED => [], + $rectorConfig->sets([ + LevelSetList::UP_TO_PHP_81, + Typo3LevelSetList::UP_TO_TYPO3_12, ]); };