This week, Symfony announced that Symfony 6.1 will require PHP 8.1. This is needed to fix some issues related to PHP preloading. We also decided to extend Symfony 6.0 maintenance by an additional 6 months to give you more time to prepare the migration to PHP 8.1. Finally, Symfony announced the last talks and speakers for the SymfonyLive Paris 2022 conference.
Symfony development highlights
This week, 41 pull requests were merged (32 in code and 9 in docs) and 52 issues were closed (48 in code and 4 in docs). Excluding merges, 23 authors made 2,181 additions and 1,647 deletions. See details for code and docs.
- 5da0d00: [Cache] add missing log when saving namespace
- 7bc53c6: [HttpFoundation] fix missing ReturnTypeWillChange attribute
- 46408f0: [VarDumper] fix dumping mysqli_driver instances
- 75bf7fa: [Validator] fix AssertingContextualValidator not throwing on remaining expectations
- 9a22b37: [Serializer] fix passing null to str_contains()
- 19eae7e: [DependencyInjection] clarify that using expressions in parameters is not allowed
- d6ba84f: [HttpClient] fix overriding default options with null
- 7ce0ebe: [DependencyInjection] don't reset env placeholders during compilation
- 392d88e: [Validator] improve tests for the Image and File constraints
- 989175a: [Mailer] fix failed exception contract when enabling Messenger in MailerInterface
- 65e6faa: [WebProfilerBundle] add nonces to profiler
- b8bf937: [HttpClient] handle requests with null body
- 49b6d7f: [Messenger] fix dealing with unexpected payload in Redis transport
- 87a1a34: [Lock] release Locks from Internal Store on Postgres waitAndSave
- 1765f3f: [Console] fix null handling in formatAndWrap()
- d2ab9cf: [Validator] multi decimal to alpha for CssColor validator
- 30aeb85: [WebProfilerBundle] improved profiler log panel adding a filter for notice messages, fixed log priority and accessibility
- b823652: use ::class instead of FQCN
- f341ce5: [PhpUnitBridge] limit the list of deprecations to 5 per message
- 0c1bf57: [HttpKernel] add Profiler::isEnabled() method
- 49b6d7f: [Messenger] fix dealing with unexpected payload in Redis transport
- 3eb26c1: [Routing] support the attribute type (as an alias of annotation) in annotation loaders
- a14eb3f: [Serializer] deprecate support for abstract uid denormalization in UidNormalizer
- 8a31425: [HttpKernel] add the UidValueResolver argument value resolver
- 63c3e95: [Mailer] ability to customize payload when sending mail through mailjet+api
- c38a9bd: [Translation] add the possibilty to export xliff translation with the .xliff suffix
- 1765f3f: [Console] fix null handling in formatAndWrap()
- d907339: [Console] add missing return type to WrappableOutputFormatterInterface
- 08fa74a: bump minimum version of PHP to 8.1
Newest issues and pull requests
- Allow enum type for validation groups
- [Messenger] Exactly-once messages
- [Messenger] [AMQP] Support decoding user/pass with special characters from DSN
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.4.0 and 5.4.1 versions with the following changes:
- Update supported Platform.sh services (@fabpot)
- Remove some cloud:* commands (@fabpot)
- Add Docker config detection when creating a project on Cloud (@fabpot)
- Use terminal.Logger as base logger instead of a raw zerolog one in local:php:list (@tucksaun)
- Fix book:checkout when using docker-compose.yml instead of docker-compose.yaml (@fabpot)
- Fix book:checkout for Doctrine migrations (@fabpot)
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.
These were some of the most relevant SymfonyCasts updates of the week:
- (Video) EasyAdmin course, Chapter 18: Creating a Custom Field
- (Video) EasyAdmin course, Chapter 19: configureCrud()
- (Video) EasyAdmin course, Chapter 20: Custom Field JavaScript
They talked about us
- Autowiring in Symfony
- Symfony Examples of API Endpoints to Download Files
- Simple API mocking with the Symfony HTTP client
- How we got to Sylius 1.11 release – a developer’s perspective
- How to Create a Connection to Spotify’s Web API Using Symfony
- Symfony Station Communiqué — 25 February 2022
- Symfony Form — JsonType
- DDD, Hexagonal Architecture & CQRS with Symfony and Doctrine
- Solid PHP - SOLID principles in PHP
- Symfony Messenger vs EventDispatcher learn more
- CMS en Symfony : quelles fonctionnalités ?
- Substitution simple d'API avec le client HTTP Symfony
Call to Action
- Follow Symfony on Twitter and retweet this article.
- Subscribe to the Symfony blog RSS and never miss a Symfony story again.