This week, Symfony improved the compatibility of the HttpClient component with PSR-18 and with httplug. In addition, it introduced a significant performance improvement for EventDispatcher in the dev environment. Finally, we started working on the support for PHP 7.4 preloading in preparation for the PHP 7.4 release at the end of this year.
Symfony development highlights
This week, 81 pull requests were merged (38 in code and 43 in docs) and 46 issues were closed (30 in code and 16 in docs). Excluding merges, 37 authors made 2,067 additions and 1,642 deletions. See details for code and docs.
- 27316a4: [Form] fixed binary operation
+
,-
or*
on string by type casting to integer - faf7b30: [VarDumper] fixed dumping objects that implement __debugInfo()
- bd9d0a4: [Routing] fixed absolute url generation when scheme is not known
- b8978bd: [Serializer] handle true and false appropriately in CSV encoder
- 575e922: [Form] validate composite constraints in all groups
- cfbb5b5: [Cache] fixed SimpleCacheAdapter fails to cache any item if a namespace is used
- cf728f5: [DoctrineBridge] fixed handling nested embeddables
- 2f4f8c0: [HttpClient] fixed Psr18Client handling of non-200 response codes
- 8bdd25b: [TwigBridge] added back possibility to use form themes without translations
- ac1a660: [EventDispatcher] collect called listeners information only once
- 1c1d6d9: [Mailer] fixed sender/recipients in SMTP Envelope
- d74f389: [Contracts] added missing required dependencies
- e635775: [HttpClient] fixed closing debug stream prematurely
- d7ba773: [Mailer] parameterize Mailgun's region
- 6b50c89: [HttpClient] don't use CurlHttpClient on Windows when curl.cainfo is not set
- a9bcdcc: [Messenger] fixed delay delivery for non-fanout exchanges
- c33f69c: [FrameworkBundle] allowed dots in translation domains
- 71731c6: [HttpClient] made Psr18Client implement relevant PSR-17 factories
- 9d7e9fc: [HttpClient] added HttplugClient for compat with libs that need httplug v1 or v2
- bad18dc: [VarDumper] caster for HttpClient's response dumps all info
- f06a35b: [DomCrawler] added Form::getName() method
- 50c62d7: [Config] introduce find method in ArrayNodeDefinition to ease configuration tree manipulation
- 68d1b3f: [Validator] deprecate unused arg in ExpressionValidator
Newest issues and pull requests
- [Messenger] make it easier to consume third-party messages
- [Translation] Support name attribute in XLIFF 2.0 loader
- Add Couchbase bucket adapter in cache component
- [Messenger] Why are you forced to specify a default bus?
- Replace return-type annotations by real type declarations on final classes
- [EventSubscriber] Subscribe with a parent event class
- [Form] Suggesting a WeekType for Symfony Forms
They talked about us
- Upgrade Symfony to 4.3: Messenger Component changes
- About Doctrine inheritance
- Symfony 4: Kernel Events y casos de uso
- Conviertiendo una aplicación legacy en una aplicación Symfony monolítica
- Nuevo en Symfony 4.3: Mejorado el componente Inflector
- Nuevo en Symfony 4.3: Mejoras en el componente Workflow
- Nuevo en Symfony 4.3: Acceso más simple a los datos de internacionalización
- Nuevo en Symfony 4.3: Validadores numéricos
- Symfony Google Recaptcha
Upcoming Symfony Events
- Symfony is easy and doing RESTful projects with API Platform is easier: Córdoba, Spain (June 20)
- [Paris] SfPot Juin 2019: Paris, France (June 26)
- API Platform: A Framework for API-driven projects: San Francisco, United States (July 18, 2019)
- Treffen der Symfony User Group Hamburg: Hamburg, Germany (August 6, 2019)
Call to Action
- Give Symfony a star on GitHub
- Follow Symfony on Twitter and retweet this article.
- Follow Symfony on Medium and clap for this article.
- Subscribe to the Symfony blog RSS and never miss a Symfony story again.