A Week of Symfony #796 (28 March – 3 April 2022)

This week, Symfony 4.4.40, 5.4.7 and 6.0.7 maintenance versions were released. Meanwhile, the upcoming Symfony 6.1 version added new features such as a Serializer profiler panel and a simpler bundle/extension configuration. Lastly, the SymfonyLive Paris 2022 conference will take place next week.

Symfony development highlights

This week, 41 pull requests were merged (39 in code and 2 in docs) and 43 issues were closed (41 in code and 2 in docs). Excluding merges, 25 authors made 590,883 additions and 485,537 deletions. See details for code and docs.

4.4 changelog:

780efff: [Validator] fix File constraint invalid max size exception message
7dc98de: [ExpressionLanguage] fix matches when the regexp is not valid
5762970: [HttpClient] fix exporting objects with readonly properties
888e552: [Messenger] add mysql indexes back and work around deadlocks using soft-delete
deb9030: [Messenger] fix cannot select FOR UPDATE from view on Oracle
bbcfb0c: [HttpClient] on redirections don’t send content related request headers
f0fde2f: [Form, TwigBundle] reset Twig form theme resources between requests
a4c8f4e: [Messenger] reset connection on worker shutdown

5.4 changelog:

5dd5dd2: [RateLimiter] always store SlidingWindows with an expiration set
45d0023: [RateLimiter] add BC layer to handle old objects already present in cache
3a76820: [TwigBridge] fix bootstrap_3_layout ChoiceType’s expanded label_html
7790d41: [Filesystem] missing return type in getFilenameWithoutExtension function

6.1 changelog:

72ae634: [Cache] improve reliability and performance of TagAwareAdapter by making tag versions an integral part of item value
9a14dd0: [Validator] improve Image constraint invalid mime type message
1db1443: [HttpKernel] resolve DateTime values with default timezone
a4592e1: [Ldap] LDAP authentication should return a meaningful error when the LDAP server is unavailable
7cdf8b4: [DependencyInjection] add argument type closure to help passing closures to services
7dc98de: [ExpressionLanguage] fix matches when the regexp is not valid
acee03f: [HttpFoundation] allow dynamic session „ttl“ when using a remote storage
4e6b803: [HttpKernel] simplifying Bundle/Extension config definition
39a69bb: [Messenger] add Redis Sentinel support
1a15826: [PhpUnitBridge] add option ignoreFile to configure a file that lists deprecation messages to ignore
e3306c4: [Mailer] improve extensibility of EsmtpTransport
8075e1d: [TwigBundle] pre-compile only *.twig files in cache warmup
9fbe216: [Finder] look for gitignore patterns up to git root
34cebec: [Validator] allow creating constraints with required arguments
f3ec7a0: [Serializer] add serializer profiler
cfd44fb: [ExpressionLanguage] add some more operators

Newest issues and pull requests

[PropertyInfo] Support union types through PhpDoc
[Security] Allow specifying attributes._route for RequestMatcher
[Messenger] Be able to start a worker for multiple queues with custom consumption priorities

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) Symfony 6 course, Chapter 11: Generate Urls & bin/console
(Video) Symfony 6 course, Chapter 12: JSON API Endpoint
(Video) EasyAdmin course, Chapter 35: Simple Custom GET Action
(Video) EasyAdmin course, Chapter 36: True Custom Action
(Video) EasyAdmin course, Chapter 37: Custom Controller & Generating Admin URLs

They talked about us

Using id value objects for better readability and type safety
Symfony Station Communiqué — 1 April 2022
Strangler Pattern in practice
Comment faire cohabiter des ressources portant le même nom, depuis deux domaines différents avec API Platform ?

Call to Action

Follow Symfony on Twitter and retweet this article.
Subscribe to the Symfony blog RSS and never miss a Symfony story again.

Sponsor the Symfony project.

Symfony Blog
Read More

Latest News

PHP-Releases

PHP 8.0.19 released!

PHP 7.4.29 released!