December 19, 2019 Fabien Potencier

Symfony 4.4.2 has just been released. Here is a list of the most important changes:

bug #35051 [DependencyInjection] Fix binding tagged services to containers (@nicolas-grekas)

bug #35039 [DI] skip looking for config class when the extension class is anonymous (@nicolas-grekas)

bug #35049 [ProxyManager] fix generating proxies for root-namespaced classes (@nicolas-grekas)

bug #35022 [Dotenv] FIX missing getenv (@mccullagh)

bug #35023 [HttpKernel] ignore failures generated by opcache.restric _api (@nicolas-grekas)

bug #35024 [HttpFoundation] fix pdo session handler for sqlsrv (@azjezz)

bug #35025 [HttpClient][Psr18Client] Remove Psr18ExceptionTrait (@fancyweb)

bug #35015 [Config] fix perf of glob discovery when GLO _BRACE is not available (@nicolas-grekas)

bug #35014 [HttpClient] make pushed responses retry-able (@nicolas-grekas)

bug #35010 [VarDumper] ignore failing debugInfo() (@nicolas-grekas)

bug #34998 [DI] fix auto-binding service providers to their service subscribers (@nicolas-grekas)

bug #34954 [Mailer] Fixed undefined index when sending via Mandrill API (@wulff)

bug #33670 [DI] Service locators can't be decorated (@malarzm)

bug #35000 [Console][SymfonyQuestionHelper] Handle multibytes question choices keys and custom prompt (@fancyweb)

bug #35005 [HttpClient] force HTTP/1.1 when NTLM auth is used (@nicolas-grekas)

bug #34707 [Validation][FrameworkBundle] Allow EnableAutoMapping to work without auto-mapping namespaces (@ogizanagi)

bug #34996 Fix displaying anonymous classes on PHP 7.4 (@nicolas-grekas)

bug #29839 [Validator] fix comparisons with null values at property paths (@xabbuh)

bug #34900 [DoctrineBridge] Fixed submitting invalid ids when using queries with limit (@HeahDude)

bug #34791 [Serializer] Skip uninitialized (PHP 7.4) properties in PropertyNormalizer and ObjectNormalizer (@vudaltsov)

bug #34956 [Messenger][AMQP] Use deliver _mode=2 by default (@lyrixx)

bug #34915 [FrameworkBundle] Fix invalid Windows path normalization in TemplateNameParser (@mvorisek)

bug #34981 stop using deprecated Doctrine persistence classes (@xabbuh)

bug #34904 [Validator][ConstraintValidator] Safe fail on invalid timezones (@fancyweb)

bug #34935 [FrameworkBundle][DependencyInjection] Skip removed ids in the lint container command and its associated pass (@fancyweb)

bug #34957 [Security] Revert "AbstractAuthenticationListener.php error instead info" (@larzuk91)

bug #34922 [FrameworkBundle][Secrets] Hook configured local dotenv file (@fancyweb)

bug #34967 [HttpFoundation] fix redis multi host dsn not recognized (@Jan Christoph Beyer)

bug #34963 [Lock] fix constructor argument type declaration (@xabbuh)

bug #34955 Require doctrine/persistence ^1.3 (@nicolas-grekas)

bug #34923 [DI] Fix support for immutable setters in CallTrait (@Lctrs)

bug #34878 [TwigBundle] fix broken FilesystemLoader::exists() with Twig 3 (@dpesch)

bug #34921 [HttpFoundation] Removed "Content-Type" from the preferred format guessing mechanism (@yceruto)

bug #34886 [HttpKernel] fix triggering deprecation in file locator (@xabbuh)

bug #34918 [Translation] fix memoryleak in PhpFileLoader (@nicolas-grekas)

bug #34920 [Routing] fix memoryleak when loading compiled routes (@nicolas-grekas)

bug #34787 [Cache] Propagate expiry when syncing items in ChainAdapter (@trvrnrth)

bug #34694 [Validator] Fix auto-mapping constraints should not be validated (@ogizanagi)

bug #34848 [Process] change the syntax of portable command lines (@nicolas-grekas)

bug #34862 [FrameworkBundle][ContainerLintCommand] Reinitialize bundles when the container is reprepared (@fancyweb)

bug #34896 [Cache] fix memory leak when using PhpFilesAdapter (@nicolas-grekas)

bug #34438 [HttpFoundation] Use Cache-Control: must-revalidate only if explicit lifetime has been given (@mpdude)

bug #34449 [Yaml] Implement multiline string as scalar block for tagged values (@natepage)

bug #34601 [MonologBridge] Fix debug processor datetime type (@mRoca)

bug #34842 [ExpressionLanguage] Process division by zero (@tigr1991)

bug #34902 [PropertyAccess] forward caught exception (@xabbuh)

bug #34903 Fixing bad order of operations with null coalescing operator (@weaverryan)

bug #34888 [TwigBundle] add tags before processing them (@xabbuh)

bug #34760 [Mailer] Fix SMTP Authentication when using STARTTLS (@DjLeChuck)

bug #34762 [Config] never try loading failed classes twice with ClassExistenceResource (@nicolas-grekas)

bug #34783 [DependencyInjection] Handle env var placeholders in CheckTypeDeclarationsPass (@fancyweb)

bug #34839 [Cache] fix memory leak when using PhpArrayAdapter (@nicolas-grekas)

bug #34812 [Yaml] fix parsing negative octal numbers (@xabbuh)

bug #34854 [Messenger] gracefully handle missing event dispatchers (@xabbuh)

bug #34802 [Security] Check UserInterface::getPassword is not null before calling needsRehash (@dbrekelmans)

bug #34788 [SecurityBundle] Properly escape regex in AddSessionDomainConstraintPass (@fancyweb)

bug #34859 [SecurityBundle] Fix TokenStorage::reset not called in stateless firewall (@jderusse)

bug #34827 [HttpFoundation] get currently session.g _maxlifetime if ttl doesnt exists (@rafaeltovar)

bug #34755 [FrameworkBundle] resolve service locators in debug: commands (@nicolas-grekas)

bug #34832 [Validator] Allow underscore character _" in URL username and password (@romainneutron)

bug #34811 [TwigBridge] Update bootstra _ _layout.html.twig missing switch-custom label (@sabruss)

bug #34820 [FrameworkBundle][SodiumVault] Create secrets directory only when it is used (@fancyweb)

bug #34776 [DI] fix resolving bindings for named TypedReference (@nicolas-grekas)

bug #34794 [DependencyInjection] Resolve expressions in CheckTypeDeclarationsPass (@fancyweb)

bug #34797 [Translation] Fix FileDumper behavior (@yceruto)

bug #34738 [SecurityBundle] Passwords are not encoded when algorithm set to "true" (@nieuwenhuisen)

bug #34759 [SecurityBundle] Fix switc _user provider configuration handling (@fancyweb)

bug #34779 [Security] do not validate passwords when the hash is null (@xabbuh)

bug #34786 [SecurityBundle] Use config variable in AnonymousFactory (@martijnboers)

bug #34784 [FrameworkBundle] Set the parameter bag as resolved in ContainerLintCommand (@fancyweb)

bug #34763 [Security/Core] Fix checking for SHA256/SHA512 passwords (@David Brooks)

bug #34757 [DI] Fix making the container path-independent when the app is in /app (@nicolas-grekas)

Want to upgrade to this new release? Fortunately, because Symfony protects backwards-compatibility very closely, this should be quite easy. Read our upgrade documentation to learn more.

Want to be notified whenever a new Symfony release is published? Or when a version is not maintained anymore? Or only when a security issue is fixed? Consider subscribing to the Symfony Roadmap Notifications.