This week, the upcoming Symfony 7.4 version merged the last major new features that will be included in this release: deprecated the fluent PHP format for semantic configuration and deprecated config builder generators, added a FormFlow to create multi-step Symfony forms, and improved how errors and exceptions are displayed in the CLI.
Symfony development highlights
This week, 51 pull requests were merged (39 in code and 12 in docs) and 16 issues were closed (13 in code and 3 in docs). Excluding merges, 22 authors made 7,569 additions and 1,959 deletions. See details for code and docs.
- 385cea7: [Mailer] fix parsing message ids in SMTP responses
- 42bad65: [HttpFoundation] fix issue where ServerEvent with "0" data is not sent
- e91dbca: [DependencyInjection] split ImportsConfig and ParametersConfig out of ServicesConfig
- d21e6ef: [Routing] allow when@env inside new RoutesConfig() trees
- 349c80c: [Config, DependencyInjection] deprecate the fluent PHP format for semantic configuration
- 71a3654: [Config] fix generating array-shapes that list enum cases
- 7224c6c: [Config] fix array shape for canBeEnabled / canBeDisabled
- 0608052: add TEST_GENERATE_FIXTURES=1 to generate fixtures in tests
- 742d742: [JsonStreamer] add synthetic properties support
- 2a1d924: [FrameworkBundle] auto-generate config/reference.php to assist in writing and discovering app's configuration
- c47fb9d: [Config] deprecate config builder generators
- fe30355: [FrameworkBundle] fix test on read-only directory on Windows
- f107568: [DependencyInjection] fix forward compatibility with next version of Config
- c3b9907: [FrameworkBundle] skip non-bundle classes in PhpConfigReferenceDumpPass
- 7fb44f8: [FrameworkBundle] add config/reference.php as ResourceFile
- 550dc0b: [HttpClient] consider cached responses without expiration as immediately stale
- 844a9b2: [Routing] indicate the type of the rejected object in CompiledUrlMatcherDumper
- 5012c38: [Form] add FormFlow for multistep forms management
- 4193549: [Workflow] extract code from the data collector to a dedicated class
- f8a8c85: [JsonStreamer] merge PropertyMetadata value transformers
- 93d4548: [Messenger] add MessageSentToTransportsEvent
- 5787fb6: [DebugBundle, HttpKernel] collect dumps when console profiling is enabled
- ddd0016: [Messenger] allow to use custom HTTP client for SQS Messenger transport
- ecb9dc4: [ErrorHandler, FrameworkBundle] add support for selecting the appropriate error renderer based on the APP_RUNTIME_MODE
- 46e0bec: [HttpClient] don't store response with authentication headers in shared mode
- c8d3ea1: [Security] remove $oidcJWKSetCacheKey parameter from OidcTokenHandler::enableDiscovery()
- d185488: [Config] ensure configuration nodes do not have both isRequired() and defaultValue()
- 358b56e: [Config, DependencyInjection] remove support for the fluent PHP config format
- 5c45d3c: [HttpKernel, Workflow] declare new arguments explicitly
- 0750cf6: [JsonStreamer] remove deprecated code
Newest issues and pull requests
- [RFC][FrameworkBundle] Add assertions assert...StartsWith() and assert...EndsWith() to DomCrawler?
- [Config] Enable injection of service reference or definition into configuration nodes
- [HttpKernel] add new attribute RequestRateLimit
- [Console] Add support for OSC 9;4 escape sequence for progress reporting
- [Runtime] add middleware to FrankenPHP runner
Symfony Jobs
These are some of the most recent Symfony job offers:
- Backend Symfony Developer at Wren Kitchens
Full-time - £35,000 – £44,000 / year
Remote + part-time onsite (Barton-upon-Humber, United Kingdom)
View details - Lead Symfony Developer at Incenteev
Full-time - €65,000 – €80,000 / year
Remote + part-time onsite (Paris, France)
View details - Symfony Developer at SwiftCase
Full-time - £45,000 – £65,000 / year
Full remote
View details - Symfony Developer at Inventis
Full-time - €26,000 – €60,000 / year
Remote + part-time onsite (Oudsbergen, Belgium)
View details - Backend Symfony Developer at MondoSpedizioni
Full-time - €29,000 – €45,000 / year
Remote + part-time onsite (Rome, Italy)
View details
You can publish a Symfony job offer for free on symfony.com.
They talked about us
- Symfony 7 CORS: The Definitive Guide to Fixing the OPTIONS Error and Null Header
- New in MongoDB ODM: Queryable Encryption and Vector Search
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.