This week, Symfony development activity focused on finishing and polishing some features, mostly about the Messenger, HttpClient and Mailer components. Meanwhile, the full Symfony Mailer component was finally unveiled during the SymfonyLive Paris 2019 conference.

Symfony development highlights

This week, 86 pull requests were merged (66 in code and 20 in docs) and 40 issues were closed (39 in code and 1 in docs). Excluding merges, 51 authors made 9,251 additions and 1,489 deletions. See details for code and docs.

3.4 changelog:

  • 2d00024: [Validator] fixed annotation default for @count and @Length
  • ee5d7fd: [Validator] improved constraint default option check
  • 2b73460: [Routing] fixed routes annotation loading with glob pattern
  • cc6bfea: [Serializer] added check of constuctor modifiers to AbstractNormalizer
  • e3bbf8d: [Serializer] fixed getSetMethodNormalizer to correctly ignore the attributes
  • c79e52a: [Validator] updated the Vietnamese translations

4.2 changelog:

  • 8d7e002: [FrameworkBundle] properly describe service definitions without class
  • 84ce070: [Serializer] used object class resolver when extracting attributes
  • 438940f: [DependencyInjection] added test asserting service with factory is not tagged
  • fdb0490: [Cache] ensured key exists before checking array value

Master changelog:

  • 31cd26b: [Form, Console] use dumper
  • 47a2f58: [FrameworkBundle] debug container environment variables
  • c146744: [Validator] added constraint on unique elements collection
  • 5ca968d: [Messenger] added missing information in messenger logs
  • 0034a0f: [Messenger] avoid dispatching SendMessageToTransportsEvent on redeliver
  • 79aeed6: [Form] allow to specify message to display in TransformationFailedException
  • c949f9a, 3edb79f: [Contracts, EventDispatcher] added EventDispatcherInterface to symfony/contracts and use it where possible
  • bc18e39: [DependencyInjection] deprecated non-string default envs
  • 8952c02: [PropertyInfo] added possibility to extract private and protected properties in reflection extractor
  • 0c02a40: [Asset] added an alias for each assets package
  • 19c6639: [Mime] fixed serialization of Message instances
  • a35ad63: [Finder] get filename without extension
  • 93018de: [Mime] added BodyRendererInterface
  • 91b0afa: [Messenger] added a command to setup transports
  • 71c33c1: [Validator] allowed brackets in the optional query string
  • 8551ec7: [DependencyInjection] ServiceProviderInterface, implementation for ServiceLocator
  • c30f462: [Messenger] added optional parameter "prefetching" for AMQP connection
  • efb6414: [HttpClient] correctly clean state on destruct in CurlResponse
  • 37b616f: [Messenger] changed message handling log levels to higher levels
  • b12351a: [Messenger] ReceiverInterface::handle() to get() & Worker with prioritized transports
  • 6ffad7b: [Messenger] added the "sync" transport to call handlers synchronously
  • 30b9617: [Finder] throw a dedicated exception for non-existing directory
  • e9e2f21: [HttpKernel] changed $previous argument for HttpException to \Throwable
  • 845cf9e: added the Mailer component
  • c128d50: [Mailer] fixed SMTP support when a message cannot be sent

Newest issues and pull requests

They talked about us

Upcoming Symfony Events

Call to Action

Published in #A week of symfony