This week, development activity focused on the upcoming Symfony 7.3 version. We introduced a simpler way to configure DKIM and SMIME options, improved how to work with value objects in the container and added Markdown format support for tables in the console.
Symfony development highlights
This week, 43 pull requests were merged (36 in code and 7 in docs) and 32 issues were closed (29 in code and 3 in docs). Excluding merges, 26 authors made 3,149 additions and 356 deletions. See details for code and docs.
- e1ce353: [HttpClient] fix activity tracking leading to negative timeout errors
- 0247b1b: [DependencyInjection] fix cloned lazy services not sharing their dependencies when dumped with PhpDumper
- 818423e: [DependencyInjection] do not preload functions
- 068105e, 4897024: [WebProfilerBundle] fix interception for non conventional redirects
- e1cf65c: [BrowserKit] fix submitting forms with empty file fields
- d43bac4: [Cache] tests for Redis Replication with cache
- 2a5e399: [Translation] check empty notes
- 08a6428: [HttpClient] don't send any default content-type when the body is empty
- 88649d9: [VarExporter] fix lazy objects with hooked properties
- 3062f05: [BrowserKit] enable JSON_PRESERVE_ZERO_FRACTION in jsonRequest method
- f5b66b5: [WebProfilerBundle] fix rendering notifier message options
- 5c8c72b: [DomCrawler] check for null parent nodes in the case of orphaned branches
- 7c709de: [Form, FrameworkBundle] use auto-configuration to make the default CSRF token id apply only to the app not to bundles
- 6262b65: [Notifier] change the value returned as the message ID in BlueSky bridge
- 09ce967: [FrameworkBundle] the DeduplicateMiddleware requires the lock feature to be enable
- 4d9b7be: [DependencyInjection] don't skip classes with private constructor when autodiscovering
- 4ecc160: [Security] ability to add roles in form_login_ldap by ldap group
- 3918524: [Mailer] add configuration for dkim and smime signers
- 802940e: [Security] support hashing the hashed password using crc32c when putting the user in the session
- af2df09: [Mailer] add DSN param to enforce TLS/STARTTLS
- 4b6f05d: [FrameworkBundle] allow to pass signals to StopWorkerOnSignalsListener in XML config and as plain strings
- 09ba274: [DependencyInjection] add Definition::addExcludedTag() and ContainerBuilder::findExcludedServiceIds() for auto-discovering value-objects
- fd9c5b4: [Validator] allow Unique constraint validation on all elements
- 736ef64: [Console] add markdown format to Table
- 7cf8df1: [Serializer] fix deserializing XML Attributes into string properties
- 6a6ebac: [Notifier] do not implement JsonSerializable in MatrixOptions
- 6fe4cb5: [Messenger, Process] add fromShellCommandline to RunProcessMessage
Newest issues and pull requests
- [Security] Add ability for voters to explain their vote
- Improved output of debug route collection
- [Config] Add NodeDefinition::documentationUri()
- [RFC][Validator] Allow to set the translation domain or disable translations on a per-constraint level
They talked about us
- Symfony Station Communiqué - 14 February 2025
- The Value of Value Objects in Symfony
- How I create my docker images for my Symfony projects
- Flexible authentication parameters in multi-tenant environments with Symfony
- A Symfony - React SPA application. The Reload problem
- Monitoring Symfony Messenger with Zenstruck Messenger Monitor Bundle
- php-redis-om available as a Symfony bundle
- How to Implement Datepicker in Symfony Form?
- Why Strategy and Chain of Responsibility are everywhere in Symfony Components
- What is New in PHP Event Sourcing 3.8
- Nouveauté : php-redis-om disponible comme bundle Symfony
- YAML парсер на Symfony framework
- Взгляд на JWT как на инструмент построения стройной архитектуры приложения
Symfony CLI
Symfony CLI is a must-have tool when developing Symfony applications on your local machine. It includes the Symfony Local Server, the best way to run local Symfony applications. This week Symfony CLI released its new 5.10.8 and 5.10.9 versions with the following changes:
- Cleanup unused fields (@tucksaun)
- Cleanup stale temporary directories (@tucksaun)
- Cleanup additional temporary directories (@tucksaun)
- Cleanup $HOME/.symfony5/tmp temporary directories (@tucksaun)
- Update local/php/executor.go (@tucksaun)
Symfony Jobs
These are some of the most recent Symfony job offers:
- Lead Symfony Developer at E-Liberty
Full-time - €40,000 – €60,000 / year
Remote + part-time onsite (Chambery, France)
View details - Lead Symfony Developer at Moodle
Full-time - €50,000 – €62,000 / year
Full remote
View details - Backend Symfony Developer at Cobbleweb
Full-time - €40,000 – €60,000 / year
Full remote
View details
You can publish a Symfony job offer for free on symfony.com.
SymfonyCasts Updates
SymfonyCasts is the official way to learn Symfony. Select a track for a guided path through 100+ video tutorial courses about Symfony, PHP and JavaScript.
This week, SymfonyCasts published the following updates:
- (Video) Symfony 7 - Mailer and Webhook with Mailtrap: Attachments and Images
- (Video) Symfony 7 - Mailer and Webhook with Mailtrap: Global From (and Fun) with Email Events
Call to Action
- Follow Symfony on X, on Mastodon, on Bluesky and on Threads and share this article.
- Subscribe to the Symfony blog RSS and never miss a Symfony story again.