NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #217 most downloaded on Packagist
Provides a tight integration between Symfony components and the Symfony full-stack framework
Last release 9 days ago
28 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Rarely documented
notes for 7 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
798 releases · first in 2011
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Session use_strict_mode is now enabled by default and the corresponding option has been deprecated
translator.default_path option and parameteruse_strict_mode is now enabled by default and the corresponding option has been deprecatedcache:clear command to not clear "app" PSR-6 cache pools anymore,
but to still clear "system" ones; use the cache:pool:clear command to clear "app" pools insteadstderrprofiler.matcher optionEventSubscriberInterface on MicroKernelTraitdoctrine/cache from the list of required dependencies in composer.jsonvalidator.mapping.cache.doctrine.apc servicesymfony/stopwatch dependency has been removed, require it via composer require symfony/stopwatch in your dev environment.KERNEL_DIR environment variable with KernelTestCase::getKernelClass().KernelTestCase::getPhpUnitXmlDir() and KernelTestCase::getPhpUnitCliConfigArgument() methods.AddCacheClearerPass, use tagged iterator arguments instead.AddCacheWarmerPass, use tagged iterator arguments instead.TranslationDumperPass, use
Symfony\Component\Translation\DependencyInjection\TranslationDumperPass insteadTranslationExtractorPass, use
Symfony\Component\Translation\DependencyInjection\TranslationExtractorPass insteadTranslatorPass, use
Symfony\Component\Translation\DependencyInjection\TranslatorPass insteadcommand attribute to the console.command tag which takes the command
name as value, using it makes the command lazycache:pool:prune command to allow manual stale cache item pruning of supported PSR-6 and PSR-16 cache pool
implementationsSymfony\Bundle\FrameworkBundle\Translation\TranslationLoader, use
Symfony\Component\Translation\Reader\TranslationReader insteadtranslation.loader service, use translation.reader insteadAssetsInstallCommand::__construct() now takes an instance of
Symfony\Component\Filesystem\Filesystem as first argumentCacheClearCommand::__construct() now takes an instance of
Symfony\Component\HttpKernel\CacheClearer\CacheClearerInterface as
first argumentCachePoolClearCommand::__construct() now takes an instance of
Symfony\Component\HttpKernel\CacheClearer\Psr6CacheClearer as
first argumentEventDispatcherDebugCommand::__construct() now takes an instance of
Symfony\Component\EventDispatcher\EventDispatcherInterface as
first argumentRouterDebugCommand::__construct() now takes an instance of
Symfony\Component\Routing\RouterInterface as
first argumentRouterMatchCommand::__construct() now takes an instance of
Symfony\Component\Routing\RouterInterface as
first argumentTranslationDebugCommand::__construct() now takes an instance of
Symfony\Component\Translation\TranslatorInterface as
first argumentTranslationUpdateCommand::__construct() now takes an instance of
Symfony\Component\Translation\TranslatorInterface as
first argumentAssetsInstallCommand, CacheClearCommand, CachePoolClearCommand,
EventDispatcherDebugCommand, RouterDebugCommand, RouterMatchCommand,
TranslationDebugCommand, TranslationUpdateCommand, XliffLintCommand
and YamlLintCommand classes have been marked as finalasset.request_context.base_path and asset.request_context.secure parameters
to provide a default request context in case the stack is empty (similar to router.request_context.* parameters)Dotenv in AboutCommandNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Not defining the type option of the framework.workflows.* configuration entries is deprecated. The default value will be state_machine in Symfony 4.0.
type option of the framework.workflows.* configuration entries is deprecated.
The default value will be state_machine in Symfony 4.0.CompilerDebugDumpPass classJsonManifestVersionStrategy.Symfony\Bundle\FrameworkBundle\Controller\AbstractController. It provides
the same helpers as the Controller class, but does not allow accessing the dependency
injection container, in order to encourage explicit dependency declarations.controller.service_arguments tag, for injecting services into controllers' actionscanBeEnabled() to
canBeDisabled() when Flex is usedframework.translator option
is disabled.GlobalVariables::getToken()Symfony\Bundle\FrameworkBundle\DependencyInjection\Compiler\AddConsoleCommandPass. Use Symfony\Component\Console\DependencyInjection\AddConsoleCommandPass instead.SerializerPass, use Symfony\Component\Serializer\DependencyInjection\SerializerPass insteadFormPass, use Symfony\Component\Form\DependencyInjection\FormPass insteadSessionListenerTestSessionListenerSymfony\Bundle\FrameworkBundle\DependencyInjection\Compiler\ConfigCachePass.
Use tagged iterator arguments instead.PropertyInfoPass, use Symfony\Component\PropertyInfo\DependencyInjection\PropertyInfoPass insteadControllerArgumentValueResolverPass. Use
Symfony\Component\HttpKernel\DependencyInjection\ControllerArgumentValueResolverPass insteadRoutingResolverPass, use Symfony\Component\Routing\DependencyInjection\RoutingResolverPass insteadserver:run, server:start, server:stop and
server:status console commands have been moved to a dedicated bundle.
Require symfony/web-server-bundle in your composer.json and register
Symfony\Bundle\WebServerBundle\WebServerBundle in your AppKernel to use them.$defaultLocale as 3rd argument of Translator::__construct()
making Translator works with any PSR-11 containerframework.serializer.mapping config option allowing to define custom
serialization mapping files and directoriesAddValidatorInitializersPass, use
Symfony\Component\Validator\DependencyInjection\AddValidatorInitializersPass insteadAddConstraintValidatorsPass, use
Symfony\Component\Validator\DependencyInjection\AddConstraintValidatorsPass insteadValidateWorkflowsPass, use
Symfony\Component\Workflow\DependencyInjection\ValidateWorkflowsPass insteadConstraintValidatorFactory, use
Symfony\Component\Validator\ContainerConstraintValidatorFactory instead.PhpStringTokenParser, use
Symfony\Component\Translation\Extractor\PhpStringTokenParser instead.PhpExtractor, use
Symfony\Component\Translation\Extractor\PhpExtractor instead.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Removed doctrine/annotations from the list of required dependencies in composer.json
doctrine/annotations from the list of required dependencies in composer.jsonsymfony/security-core and symfony/security-csrf from the list of required dependencies in composer.jsonsymfony/templating from the list of required dependencies in composer.jsonsymfony/translation from the list of required dependencies in composer.jsonsymfony/asset from the list of required dependencies in composer.jsonResources/public/images/* files have been removed.Resources/public/css/*.css files have been removed (they are now inlined in TwigBundle).'priority' attribute on tags form.type_extensionNothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →