This week, Symfony celebrated the Online January 2026 conference. Meanwhile, the upcoming Symfony 8.1 version added support for persistent cURL handles in HttpClient, enabled mocking non-shared services in tests, and updated ContainerConfigurator to allow excluding items when importing services. Lastly, Twig 3.23 was released with new operators and destructuring support.
Symfony development highlights
This week, 52 pull requests were merged (40 in code and 12 in docs) and 17 issues were closed (14 in code and 3 in docs). Excluding merges, 26 authors made additions and deletions. See details for code and docs.
- 9e00306: [Serializer] fix NameConverter not detecting wrong input format with allow_extra_attributes=false
- ffff4b0: [Form] fix ICU 72+ whitespace handling in DateTimeToLocalizedStringTransformer
- 4f55bbb: [ErrorHandler] fix parsing of complexe type
- 59438c9: [DoctrineBridge] fix custom type based on Uid on entity loader
- 6e00648: [Form] don't skip custom view transformers while normalizing submitted newlines
- 0e7c9fb: [Form] fix OrderedHashMap auto-increment logic with mixed keys
- 1db906a: [Serializer] fix is/has/can accessor naming to strip prefix unless colliding
- 101a5cc: [PropertyInfo] do not parse scalar as an object
- 6d95721: [Cache] fix DSN auth not passed to clusters in RedisTrait
- 158f8d9: [DependencyInjection] fix alias chain inversion when deprecated alias points to decorated service
- f54f23d, ca37246: do not use PHPUnit mock objects without configured expectations
- 3ccf36c: [HttpClient] skip HTTP/3 when using a proxy
- 805179c: [JsonStreamer] fix exponential resource class memory growth
- ce11be4, 08b622f: [FrameworkBundle] add AbstractController::createFormFlowBuilder
- 2d7d901: [Translation, FramworkBundle] allow using env vars in the list of enabled locales
- a4d18c8: [HttpClient] add support of the persistent cURL handles
- 2ed74bd: [FrameworkBundle] enable mocking non-shared services in tests
- 21aa580: [DependencyInjection, Routing] extract loadContent() methods into reusable traits
- 5943a0b: [Semaphore] add SemaphoreKeyNormalizer
- 5f967cc: [HttpKernel] move the Extension class to the DependencyInjection component
- 9f07b1b: [Scheduler] add option to order recurring messages by next run date in debug command
- 4b6d12d: [DependencyInjection] add argument exclude to ContainerConfigurator::import()
- 1c66b40: [DependencyInjection] throw exception when #[Required] attribute on non-public(set) property
- bb3c143: [ObjectMapper] add targetClass on MapCollection transform
Newest issues and pull requests
- [Messenger] Add CompressStamp
- Add assertCommandFailed and assertCommandIsInvalid helpers in TesterTrait
- [EventDispatcher] Use listeners' __toString() method as a hint to display their name in the profiler
Symfony Jobs
These are some of the most recent Symfony job offers:
- Software Architect for a Symfony project at Califrais
Full-time - €60,000 – €75,000 / year
Remote + part-time onsite (Paris, France)
View details - Symfony Developer at Paystone
Full-time - CA$75,000 – CA$100,000 / year
Full remote
View details - Backend Symfony Developer at DonkeyCode
Contract / Freelance - €400 – €450 / day
Full remote
View details - Symfony Developer at Dutch Volleyball Federation Nevobo
Full-time - €33,000 – €46,000 / year
Remote + part-time onsite (Utrecht, Netherlands)
View details - Backend Symfony Developer at SportFinder
Full-time - €3,500 – €4,500 / month
Remote + part-time onsite (Charleroi, Belgium)
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
- DDD Sylius Bundle: Using the Sylius Stack Without Leaking It Into Your Domain
- From 45ms to 8ms: Benchmarking Symfony 7.4 on FrankenPHP
- Introducing the GTranslate Bundle
- Symfony 8: Tutte le Novità del Framework PHP
- Технический долг vs сроки: баланс при разработке госреестра
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.