This week, Symfony completed the migration to PHPUnit 12 in the 7.4 branch, which required many changes during the past weeks, such as replacing annotations with attributes. In addition, we updated the container XML dumping process to not require the PHP XML extension. Finally, we also published more details about the hackday to be celebrated during the SymfonyCon Amsterdam 2025 conference.
Symfony development highlights
This week, 43 pull requests were merged (36 in code and 7 in docs) and 17 issues were closed (11 in code and 6 in docs). Excluding merges, 20 authors made 20,213 additions and 15,680 deletions. See details for code and docs.
- cfe2fcc: [Console] don't split grapheme clusters in Table
- 8366098: [FrameworkBundle] add tests for secrets:decrypt-to-local
- 348aae1: fix wrong boolean values
- 889bb6b: [Form] use false instead of null to hide the currency symbol
- 9aa072c: [Messenger] remove fix NoAutoAckStamp handling in Worker::flush()
- a29dd87: [SecurityBundle] add tests for debug:firewall command
- 1df3a3d: [JsonStreamer] fix expected stream to native value transformers
- d46d595: [Scheduler] fix scheduler.task tag arguments optionality
- d30c951: [VarDumper] fix dumping objects from the DOM extension
- 6df1a43: replace PHPUnit annotations with attributes
- e9381cc: run tests with PHPUnit 12.0 on PHP >= 8.3
- d0118a9: [Console] adding more helpful error messages to the Questionhelper
- 786b573: [Messenger] allow SQS to handle its own retry/DLQ
- 0e2dea5: [Mailer] add MicrosoftGraph API Transport
- f435f54: [DependencyInjection] dump XML using plain PHP, no DOM needed
- 303a5ea: remove some implicit bool type juggling
- 2ebe25f: [Ldap, Messenger, Validator, Workflow] add methods to interfaces as planned
Newest issues and pull requests
- [Intl] Methods to check if a given currency is obsolete/active
- [ObjectMapper] Add context array, mapping depth, selective instantiation of lazy objects
- [Validator] Add a lat/lon coordinates validator
- [DomCrawler] Add DomCrawler to leverage PHP 8.4's HTML5-compliant DOM parser
- [HtmlSanitizer] Use the native HTML5 parser when using PHP 8.4
Symfony Jobs
These are some of the most recent Symfony job offers:
- Backend Symfony Developer at Evergrowth
Full-time - €60,000 – €72,000 / year
Full remote
View details - Backend Symfony Developer at Eneba
Full-time - €55,000 – €66,000 / year
Full remote
View details - Backend Symfony Developer at Citrus Systems
Full-time - €3,000 – €6,000 / month
Remote + part-time onsite (Belgrade, Serbia)
View details - Lead Symfony Developer at Vacatia
Full-time - $150,000 – $180,000 / year
Remote + part-time onsite (Portland, United States)
View details - Symfony Developer at DocuPet Inc.
Full-time - CA$115,000 – CA$135,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:
They talked about us
- Symfony Station Communiqué - Stardate: ✦ 08 August 2025 ✦
- Do you really need service subscribers?
- How to Add a Maintenance Page in a Symfony + Angular Project (Two Effective Approaches)
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.