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

  • bug #23366 [FrameworkBundle] Don't get() private services from debug:router (@chalasr)
  • bug #23239 [FrameworkBundle] call setContainer() for autowired controllers (@xabbuh)
  • bug #23351 [Dotenv] parse concatenated variable values (@xabbuh)
  • bug #23341 [DoctrineBridge][Security][Validator] do not validate empty values (@xabbuh)
  • bug #23274 Display a better error design when the toolbar cannot be displayed (@yceruto)
  • bug #23342 [Dotenv] parse escaped quotes in unquoted env var values (@xabbuh)
  • bug #23291 [Security] Fix Firewall ExceptionListener priority (@chalasr)
  • bug #23296 [WebProfilerBundle] Fix css trick used for offsetting html anchor from fixed header (@ogizanagi)
  • bug #23333 [PropertyAccess] Fix TypeError discard (@dunglas)
  • bug #23326 [Cache] fix cleanup of expired items for PdoAdapter (@dmaicher)
  • bug #23345 [Console] fix description of INF default values (@xabbuh)
  • bug #23328 [FrameworkBundle] Display a proper warning on cache:clear without the --no-warmup option (@ogizanagi)
  • bug #23299 [Workflow] Added more events to the announce function (@Nyholm)
  • bug #23279 Don't call count on non countable object (@pierredup)
  • bug #23283 [TwigBundle] add back exception check (@xabbuh)
  • bug #23268 Show exception is checked twice in ExceptionController of twig (@gmponos)
  • bug #23266 Display a better error message when the toolbar cannot be displayed (@javiereguiluz)
  • bug #23271 [FrameworkBundle] allow SSI fragments configuration in XML files (@xabbuh)
  • bug #23254 [Form][TwigBridge] render hidden _method field in form_rest() (@xabbuh)
  • bug #23250 [Translation] return fallback locales whenever possible (@xabbuh)
  • bug #23237 [Cache] Fix Predis client cluster with pipeline (@flolivaud)
  • bug #23240 [Console] Fix catching exception type in QuestionHelper (@voronkovich)
  • bug #23218 [DI] Dedup tags when using instanceof/autoconfigure (@ogizanagi)
  • bug #23231 Improved the exception page when there is no message (@javiereguiluz)
  • bug #23229 [WebProfilerBundle] Eliminate line wrap on count column (routing) (@e-moe)
  • bug #22732 [Security] fix switch user _exit without having current token (@dmaicher)
  • bug #23226 [Validator] replace hardcoded service id (@xabbuh)
  • bug #22730 [FrameworkBundle] Sessions: configurable "use_strict_mode" option for NativeSessionStorage (@MacDada)
  • bug #23195 [FrameworkBundle] [Command] Clean bundle directory, fixes #23177 (@NicolasPion)
  • bug #23213 Fixed composer resources between web/cli (@iltar)
  • bug #23160 [WebProfilerBundle] Fix the icon for the Cache panel (@javiereguiluz)
  • bug #23052 [TwigBundle] Add Content-Type header for exception response (@rchoquet)
  • bug #23173 [WebServerBundle] Fix router script option BC (@1ed)
  • bug #23199 Reset redirectCount when throwing exception (@hvanoch)
  • bug #23180 [FrameworkBundle] Expose the AbstractController's container to its subclasses (@BPScott)
  • bug #23186 [TwigBundle] Move template.xml loading to a compiler pass (@ogizanagi)
  • bug #23130 Keep s-maxage when expiry and validation are used in combination (@mpdude)
  • bug #23129 Fix two edge cases in ResponseCacheStrategy (@mpdude)
  • feature #22636 [Routing] Expose request in route conditions, if needed and possible (@ro0NL)
  • bug #22636 [Routing] Expose request in route conditions, if needed and possible (@ro0NL)
  • bug #22943 [SecurityBundle] Move cache of the firewall context into the request parameters (@GromNaN)
  • bug #23088 [FrameworkBundle] Dont set pre-defined esi/ssi services (@ro0NL)
  • bug #23057 [Translation][FrameworkBundle] Fix resource loading order inconsistency reported in #23034 (@mpdude)
  • bug #23092 [Filesystem] added workaround in Filesystem::rename for PHP bug (@VolCh)
  • bug #23074 [HttpFoundation] add back support for legacy constant values (@xabbuh)
  • bug #23128 [HttpFoundation] fix for Support for new 7.1 session options (@vincentaubert)
  • bug #23176 [VarDumper] fixes (@nicolas-grekas)
  • bug #23100 [PropertyAccess] Do not silence TypeErrors from client code. (@tsufeki)
  • bug #23156 [PropertyAccess] Fix Usage with anonymous classes (@mablae)
  • bug #23168 [Config] Fix GlobResource on Windows (@nicolas-grekas)
  • bug #23171 [Yaml] Fix linting yaml with constants as keys (@chalasr)
  • bug #23121 [Routing] Revert the change in [#b42018] with respect to Routing/Route.php (@Dan Wilga)
  • bug #23141 [DI] Fix keys resolution in ResolveParameterPlaceHoldersPass (@nicolas-grekas)
  • bug #23145 Fix the conditional definition of the SymfonyTestsListener (@stof)
  • bug #23091 [Cache] ApcuAdapter::isSupported() should return true when apc.enable_cli=Off (@nicolas-grekas)
  • bug #22953 #22839 - changed debug toolbar dump section to relative and use full window width (@mkurzeja)
  • bug #23086 [FrameworkBundle] Fix perf issue in CacheClearCommand::warmup() (@nicolas-grekas)
  • bug #23090 [SecurityBundle] Made 2 service aliases private (@nicolas-grekas)
  • bug #23108 [Yaml] Remove line number in deprecation notices (@nicolas-grekas)
  • bug #23098 Cache ipCheck (2.7) (@gonzalovilaseca)
  • bug #23082 [MonologBridge] Do not silence errors in ServerLogHandler::formatRecord (@lyrixx)
  • bug #23007 [HttpKernel][Debug] Fix missing trace on deprecations collected during bootstrapping & silenced errors (@ogizanagi)
  • bug #23069 [SecurityBundle] Show unique Inherited roles in profile panel (@yceruto)

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.

Published in #Releases