This week, the upcoming Symfony 8.1 version introduced ServicesBundle and ConsoleBundle as a first step in splitting FrameworkBundle into smaller, standalone bundles. In addition, we released Symfony Polyfill 1.34.0, which covers features from PHP 8.4, 8.5, and 8.6. Lastly, we published more information about talks and workshops at the SymfonyLive Berlin 2026 conference.
Symfony development highlights
This week, 28 pull requests were merged (18 in code and 10 in docs) and 22 issues were closed (17 in code and 5 in docs). Excluding merges, 14 authors made additions and deletions. See details for code and docs.
- 04d03d1: [DependencyInjection] fix instanceof autoconfiguration for anonymous classes
- 8b44fc1: [Serializer] fix getAllowedAttributes() when groups contain wildcard '*'
- e7a281b: [Dotenv] fix self-referencing variable resolution with suffix/prefix
- 3fb5a40: [DependencyInjection] fix excludeSelf not applied when using AutowireLocator
- 2dad500: [Filesystem] fix Path methods replacing backslashes on UNIX
- 99f010d: set ignoreUndefinedTriggers to true in phpunit.xml.dist files
- b0ed57c: [Mailer] fix handling of webhook.test verification event from MailerSend webhook
- c4192b6: [ObjectMapper] auto-inject ObjectMapper into ObjectMapperAwareInterface transforms
- 5f848d8: bump PHP requirement to >= 8.4.1
- 217545b: [HttpKernel] fix cache warmers running on every kernel boot instead of only on compilation
- 1f7d4cd: [Console] improve Table rendering performance
- 4801411: [VarExporter] fix serialization of objects with __serialize/__unserialize
- 3acb4ac: [DependencyInjection] add #[RequiredBundle], ServicesBundle and ConsoleBundle
- 1596fb2: [ErrorHandler] fix http_response_code() warning on PHP 8.5 for max execution time errors
- 57f65c5: [VarExporter] make DeepCloner::__serialize() return a pure array and add toArray()/fromArray()
- d770961: [DependencyInjection] fix bundles cache freshness check
- da9ba59: [VarExporter] leverage ext-deepclone when available
Newest issues and pull requests
- [DependencyInjection] Allow inline Definition as factory and configurator
- [Messenger] Add ID range support for failed:retry and failed:remove
- [RateLimiter] Add #[RateLimit] attribute to rate limit controllers declaratively
- [TwigBundle] Add twig.safe_class resource tag to register safe classes for the escaper
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 version with the following changes:
- update tests according to cloud templates (@tucksaun)
- Bump go to 1.26 and update deps (@tucksaun)
- Update deps (@fabpot)
- add a CI job to check if tests are changing any files (@tucksaun)
- Add autocompletion support for symfony pie (@tucksaun)
- Tweak the migration instructions (@tucksaun)
- Consider composer.cmd when looking for Composer on Windows (@tucksaun)
- fix: DEFAULT_URI should also be exposed locally (@tucksaun)
- Update configuration directory name to symfony-cli and a warning if legacy directory is detected (@tucksaun)
- prefer os specific config dirs (@tjblackheart)
Symfony Jobs
These are some of the most recent Symfony job offers:
- Symfony Developer at Design Force Marketing
Full-time - $60,000 – $100,000 / year
Grand Haven Michigan, United States
View details - Backend Symfony Developer at ShipMonk
Contract / Freelance - $5,000 – $8,000 / month
Full remote
View details - Backend Symfony Developer at Vacatia
Full-time - $150,000 – $180,000 / year
Remote + part-time onsite (Portland, Oregon, United States)
View details - Backend Symfony Developer at POLAVIS
Full-time - €30 – €45 / hour
Full remote
View details - Backend Symfony Developer at Travis International Road Services
Full-time - €3,800 – €4,500 / month
Remote + part-time onsite (Tilburg, Netherlands)
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
- Creating a Symfony Tui application
- Symfony Lock + Workflow: Taming the Race Condition that will hit you in production
- How I turned hundreds of thousands of SVG icons into a semantic search engine in 7 languages under 20ms (using LLM and Meilisearch)
- How Doppar’s Temporal ORM gives every database record a queryable history
- I Studied the etcd Codebase — and It Changed How I Write PHP
- 10x Less RAM: The Senior Guide to Native JSON Streaming in Symfony
- SymfonyLive Paris 2026: AI Revolution and a Peak Reunion for Team SensioLabs
- OroCommerce: ACL, REST API, and Controller Permission Auth Architecture
- Notre retour sur le SymfonyLive Paris 2026
Upcoming Symfony Events
- Sylius Meetup & Hackathon Mannheim 2026: Mannheim, Germany (April 30, 2026)
- Web Summer Camp 2026: Opatija, Croatia (July 2, 2026 – July 4, 2026)
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.