This changelog references the relevant changes (bug and security fixes) done in 5.3 minor versions.
To get the diff for a specific change, go to https://github.com/symfony/symfony/commit/XXX where XXX is the change hash To get the diff between two versions, go to https://github.com/symfony/symfony/compare/v5.3.0...v5.3.1
-
5.3.0-BETA1 (2021-04-18)
-
feature #40838 [SecurityBundle] Deprecate public services to private (fancyweb)
-
feature #40782 [DependencyInjection] Add
#[When(env: 'foo')]
to skip autoregistering a class when the env doesn't match (nicolas-grekas) -
feature #40840 [Security] Add passport to AuthenticationTokenCreatedEvent (scheb)
-
feature #40799 [FrameworkBundle] Add AbstractController::handleForm() helper (dunglas)
-
feature #40646 [Notifier] Add MessageBird notifier bridge (StaffNowa)
-
feature #40804 [Config][FrameworkBundle] Add CacheWarmer for ConfigBuilder (Nyholm)
-
feature #40814 Remove the experimental flag from the authenticator system 🚀 (chalasr)
-
feature #40690 [Form] Add support for sorting fields (yceruto)
-
feature #40691 [Notifier] Add SmsBiuras notifier bridge (StaffNowa)
-
feature #40406 [DependencyInjection] Autowire arguments using attributes (derrabus, nicolas-grekas)
-
feature #40155 [Messenger] Support Redis Cluster (nesk)
-
feature #40600 [Config][DependencyInjection] Add configuration builder for writing PHP config (Nyholm)
-
feature #40171 [Workflow] Add Mermaid.js dumper (eFrane)
-
feature #40761 [MonologBridge] Reset loggers on workers (l-vo)
-
feature #40785 [Security] Deprecate using UsageTrackingTokenStorage outside the request-response cycle (wouterj)
-
feature #40718 [Messenger] Add X-Ray trace header support to the SQS transport (WaylandAce)
-
feature #40682 [DependencyInjection] Add env() and EnvConfigurator in the PHP-DSL (fancyweb)
-
feature #40145 [Security] Rework the remember me system (wouterj)
-
feature #40695 [Console] Deprecate Helper::strlen() for width() and length() (Nyholm)
-
feature #40486 [Security] Add concept of required passport badges (wouterj)
-
feature #39007 [Notifier] Add notifier for Microsoft Teams (idetox)
-
feature #40710 [Serializer] Construct annotations using named arguments (derrabus)
-
feature #40647 [Notifier] [FakeChat] Added the bridge (OskarStark)
-
feature #40607 [Notifier] Add LightSms notifier bridge (Vasilij Dusko, StaffNowa)
-
feature #40576 [Mime] Remove @internal from Headers methods (VincentLanglet)
-
feature #40575 [FrameworkBundle][HttpKernel][TwigBridge] Add an helper to generate fragments URL (dunglas)
-
feature #38468 Messenger multiple failed transports (monteiro)
-
feature #39949 [Notifier] [FakeSms] Add the bridge (JamesHemery)
-
feature #40403 [Security] Rename UserInterface::getUsername() to getUserIdentifier() (wouterj)
-
feature #40602 [Cache] Support a custom serializer in the ApcuAdapter class (ste93cry)
-
feature #40449 [TwigBridge] add tailwindcss form layout (kbond)
-
feature #40567 [Security] Move the badges resolution check to
AuthenticatorManager
(chalasr) -
feature #40300 [HttpFoundation] Add support for mysql unix_socket and charset in PdoSessionHandler::buildDsnFromUrl (bcremer, Nyholm)
-
feature #40153 [Security] LoginLink with specific locale (roromix)
-
feature #40489 [Serializer] Add a Custom End Of Line in CSV File (xfifix)
-
feature #40554 [Contracts] Add
TranslatorInterface::getLocale()
(nicolas-grekas) -
feature #40556 Add
#[As-prefix]
to service attributes (nicolas-grekas) -
feature #40555 [HttpKernel] Add
#[AsController]
attribute for declaring standalone controllers on PHP 8 (nicolas-grekas) -
feature #40550 [Notifier] Move abstract test cases to namespace (OskarStark)
-
feature #40530 [Uid] Handle predefined namespaces keywords "dns", "url", "oid" and "x500" (fancyweb)
-
feature #40536 [HttpFoundation][HttpKernel] Rename master request to main request (derrabus)
-
feature #40513 [Runtime] make GenericRuntime ... generic (nicolas-grekas)
-
feature #40430 [Form] Add "form_attr" FormType option (cristoforocervino)
-
feature #38488 [Validator] Add normalizer option to Unique constraint (henry2778)
-
feature #40487 [Security] Remove deprecated support for passing a UserInterface implementation to Passport (wouterj)
-
feature #40443 [Security] Rename User to InMemoryUser (chalasr)
-
feature #40468 Deprecate configuring tag names and service ids in compiler passes (nicolas-grekas)
-
feature #40248 [DependencyInjection] Add
#[TaggedItem]
attribute for defining the index and priority of classes found in tagged iterators/locators (nicolas-grekas) -
feature #40240 [Validator] Add Validation::createIsValidCallable() that returns a boolean instead of exception (wouterj)
-
feature #40366 [FrameworkBundle] Add KernelTestCase::getContainer() (Nyholm)
-
feature #40441 [WebProfilerBundle] Disable CSP if dumper was used (monojp)
-
feature #40448 [twig-bridge] Allow NotificationEmail to be marked as public (maxailloud)
-
feature #38465 [Runtime] a new component to decouple applications from global state (nicolas-grekas)
-
feature #40432 [HttpKernel] Deprecate returning a
ContainerBuilder
fromKernelInterface::registerContainerConfiguration()
(nicolas-grekas) -
feature #40337 [DependencyInjection] Add support an integer return for default_index_method (maranqz)
-
feature #39693 [PropertyAccess] use bitwise flags to configure when the property accessor should throw (xabbuh)
-
feature #40267 [Security] Decouple passwords from UserInterface (chalasr)
-
feature #40377 [Notifier] [OvhCloud] Add "sender" (notFloran)
-
feature #40384 [DependencyInjection] Implement psr/container 1.1 (derrabus)
-
feature #40229 [FrameworkBundle][Translation] Extract translation IDs from all of src (natewiebe13)
-
feature #40338 [FrameworkBundle] Add support for doctrine/annotations:1.13 || 2.0 (Nyholm)
-
feature #40323 [TwigBridge][TwigBundle] Twig serialize filter (jrushlow)
-
feature #40339 [RateLimiter][Security] Add a
login_throttling.interval
(insecurity.firewalls
) option to change the default throttling interval. (damienfa, wouterj) -
feature #40307 [HttpKernel] Handle multi-attribute controller arguments (chalasr)
-
feature #40284 [RateLimiter][Security] Allow to use no lock in the rate limiter/login throttling (wouterj)
-
feature #39607 [Messenger] Add
rediss://
DSN scheme support for TLS to Redis transport (njutn95) -
feature #40306 [HttpClient] Add
HttpClientInterface::withOptions()
(nicolas-grekas) -
feature #39883 [Uid] Add Generate and Inspect commands (fancyweb)
-
feature #40140 [DependencyInjection] Add ContainerBuilder::willBeAvailable() to help with conditional configuration (nicolas-grekas)
-
feature #40266 [Routing] Construct Route annotations using named arguments (derrabus)
-
feature #40288 Deprecate passing null as $message or $code to exceptions (derrabus)
-
feature #40298 [Form] Remove hard dependency on symfony/intl (Nyholm)
-
feature #40214 [FrameworkBundle] allow container/routing configurators to vary by env (nicolas-grekas)
-
feature #40257 [Intl] Add
Currencies::getCashFractionDigits()
andCurrencies::getCashRoundingIncrement()
(nicolas-grekas) -
feature #39326 [Security] Added debug:firewall command (TimoBakx)
-
feature #40234 [Console] Add
ConsoleCommand
attribute for declaring commands on PHP 8 (nicolas-grekas) -
feature #39897 [DependencyInjection] Autoconfigurable attributes (derrabus)
-
feature #39804 [DependencyInjection] Add
#[Autoconfigure]
to help define autoconfiguration rules (nicolas-grekas) -
feature #40174 [Mailer] AWS SES transport Source ARN header support (chekalsky)
-
feature #38473 [Framework] Add tag assets.package to register asset packages (GromNaN)
-
feature #39399 [Serializer] Allow to provide (de)normalization context in mapping (ogizanagi)
-
feature #40202 [Workflow] Deprecate InvalidTokenConfigurationException (chalasr)
-
feature #40176 [PasswordHasher] Use bcrypt as default hash algorithm for "native" and "auto" (chalasr)
-
feature #40048 [FrameworkBundle] Deprecate session.storage service (jderusse)
-
feature #40169 [DependencyInjection] Negated (not:) env var processor (bpolaszek)
-
feature #39802 [Security] Extract password hashing from security-core - with proper wording (chalasr)
-
feature #40143 [Filesystem] improve messages on failure (nicolas-grekas)
-
feature #40144 [Filesystem] Remove dirs atomically if possible (nicolas-grekas)
-
feature #39507 [Uid] Add UidFactory to create Ulid and Uuid from timestamps and randomness/nodes (fancyweb)
-
feature #39688 [FrameworkBundle][Messenger] Added RouterContextMiddleware (jderusse)
-
feature #40102 [Notifier] [Firebase] Add data field to options (Raresmldvn)
-
feature #39978 [DoctrineBridge] Make subscriber and listeners prioritizable (jderusse)
-
feature #39732 [Routing] don't decode nor double-encode already encoded slashes when generating URLs (nicolas-grekas)
-
feature #39893 [HttpKernel] Show full URI when route not found (ruudk)
-
feature #40059 [PhpUnitBridge] Add SYMFONY_PHPUNIT_REQUIRE env variable (acasademont)
-
feature #39948 [Notifier] [SpotHit] Add the bridge (JamesHemery)
-
feature #38973 [Messenger] Allow to limit consumer to specific queues (dbu)
-
feature #40029 [DoctineBridge] Remove UuidV*Generator classes (nicolas-grekas)
-
feature #39976 [Console] Add bright colors to console. (CupOfTea696)
-
feature #40028 [Semaphore] remove "experimental" status (jderusse)
-
feature #38616 [FrameworkBundle][HttpFoundation][Security] Deprecate service "session" (jderusse)
-
feature #40010 [Uid] remove "experimental" status (nicolas-grekas)
-
feature #40012 [Uid] Add RFC4122 UUID namespaces as constants (nicolas-grekas)
-
feature #40008 [Uid] Replace getTime() with getDateTime() (fancyweb)
-
feature #39910 [FrameworkBundle] Command cache:pool:clear warns and fails when one of the pools fails to clear (jderusse)
-
feature #39699 [String] Made AsciiSlugger fallback to parent locale's symbolsMap (jontjs)
-
feature #39971 [Cache] Change PDO cache table collate from utf8_bin to utf8mb4_bin (pdragun)
-
feature #38922 [Notifier] Add notifier for Clickatell (Kevin Auivinet, Kevin Auvinet, ke20)
-
feature #39587 [Notifier] [Mobyt] Change ctor signature and validate message types (OskarStark)
-
feature #39919 [Security] Randomize CSRF token to harden BREACH attacks (jderusse)
-
feature #39850 [Uid] Add fromBase58(), fromBase32(), fromRfc4122() and fromBinary() methods (fancyweb)
-
feature #39904 [Console] add option
--short
to thelist
command (nicolas-grekas) -
feature #39851 [Console] enable describing commands in ways that make the
list
command lazy (nicolas-grekas) -
feature #39838 [Notifier] Add Gitter Bridge (christingruber)
-
feature #39342 [Notifier] Add mercure bridge (mtarld)
-
feature #39863 [Form][Uid] Add UlidType and UuidType form types (Gemorroj)
-
feature #39806 [DependencyInjection] Add a remove() method to the PHP configurator (dunglas)
-
feature #39843 [FrameworkBundle] Add renderForm() helper setting the appropriate HTTP status code (dunglas)
-
feature #39852 [Security] RoleHierarchy returns an unique array of roles (lyrixx)
-
feature #39855 [HttpFoundation] deprecate the NamespacedAttributeBag class (xabbuh)
-
feature #39579 [Notifier] [GoogleChat] [BC BREAK] Rename threadKey parameter to thread_key + set parameter via ctor (OskarStark)
-
feature #39617 [Notifier] Add AllMySms Bridge (qdequippe)
-
feature #39702 [Notifier] Add Octopush notifier transport (aurelienheyliot)
-
feature #39568 [Notifier] Add GatewayApi bridge (Piergiuseppe Longo)
-
feature #39585 [Notifier] Change Dsn api (OskarStark)
-
feature #39675 [Serializer] [UidNormalizer] Add normalization formats (fancyweb)
-
feature #39457 [Notifier] [DX] Dsn::getRequiredOption() (OskarStark)
-
feature #39098 [PhpUnitBridge] Add log file option for deprecations (michaelKaefer)
-
feature #39642 [Console] Support binary / negatable options (greg-1-anderson, jderusse)
-
feature #39051 [WebProfilerBundle] Possibility to dynamically set mode (brusch)
-
feature #39701 [Lock] Create flock directory (jderusse)
-
feature #39696 [DoctrineBridge] Deprecate internal test helpers in Test namespace (wouterj)
-
feature #39684 [DomCrawler] deprecate parents() in favor of ancestors() (xabbuh)
-
feature #39666 [FrameworkBundle][HttpFoundation] add assertResponseFormatSame() (dunglas)
-
feature #39660 [Messenger] Deprecate option prefetch_count (jderusse)
-
feature #39577 [Serializer] Migrate ArrayDenormalizer to DenormalizerAwareInterface (derrabus)
-
feature #39020 [PropertyInfo] Support multiple types for collection keys & values (Korbeil)
-
feature #39557 [Notifier] [BC BREAK] Final classes (OskarStark)
-
feature #39592 [Notifier] [BC BREAK] Change constructor signature for Mattermost and Esendex transport (OskarStark)
-
feature #39643 [PhpUnitBridge] Remove obsolete polyfills (derrabus)
-
feature #39606 [Notifier] [Slack] Validate token syntax (OskarStark)
-
feature #39549 [Notifier] [BC BREAK] Fix return type (OskarStark)
-
feature #39096 [Notifier] add iqsms bridge (alexandrbarabolia)
-
feature #39493 [Notifier] Introduce LengthException (OskarStark)
-
feature #39484 [FrameworkBundle] Allow env variables in
json_manifest_path
(jderusse) -
feature #39480 [FrameworkBundle] Add "mailer" monolog channel to mailer transports (chalasr)
-
feature #39419 [PhpUnitBridge] bump "php" to 7.1+ and "phpunit" to 7.5+ (nicolas-grekas)
-
feature #39410 [Notifier] Add HeaderBlock for slack notifier (norkunas)
-
feature #39365 [Notifier] [DX] UnsupportedMessageTypeException for notifier transports (OskarStark)
-
feature #38469 [Form] Add "choice_translation_parameters" option (VincentLanglet)
-
feature #39352 [TwigBridge] export concatenated translations (Stephen)
-
feature #39378 [Messenger] Use "warning" instead of "error" log level for RecoverableException (lyrixx)
-
feature #38622 [BrowserKit] Allowing body content from GET with a content-type (thiagomp)
-
feature #39363 [Cache] Support Redis Sentinel mode when using phpredis/phpredis extension (renan)
-
feature #39340 [Security] Assert voter returns valid decision (jderusse)
-
feature #39327 [FrameworkBundle] Add validator.expression_language service (fbourigault)
-
feature #39276 [FrameworkBundle] Added option to specify the event dispatcher in debug:event-dispatcher (TimoBakx)
-
feature #39042 [Console] Extracting ProgressBar's format's magic strings into const (CesarScur)
-
feature #39323 Search for pattern on debug:event-dispatcher (Nyholm)
-
feature #39317 [Form] Changed DataMapperInterface $forms parameter type to \Traversable (vudaltsov)
-
feature #39258 [Notifier] Add ContextBlock for slack notifier (norkunas)
-
feature #39300 [Notifier] Check for maximum number of buttons in slack action block (malteschlueter)
-
feature #39097 [DomCrawler] Cache discovered namespaces (simonberger, fabpot)
-
feature #39037 [Ldap] Ldap Entry case-sensitive attribute key option (karlshea)
-
feature #39146 [Console] Added Invalid constant into Command Class (TheGarious)
-
feature #39075 [Messenger] Allow InMemoryTransport to serialize message (tyx)
-
feature #38982 [Console][Yaml] Linter: add Github annotations format for errors (ogizanagi)
-
feature #38846 [Messenger] Make all the dependencies of AmazonSqsTransport injectable (jacekwilczynski)
-
feature #38596 [BrowserKit] Add jsonRequest function to the browser-kit client (alexander-schranz)
-
feature #38998 [Messenger][SQS] Make sure one can enable debug logs (Nyholm)
-
feature #38974 [Intl] deprecate polyfills in favor of symfony/polyfill-intl-icu (nicolas-grekas)