A Week of Symfony #777 (15-21 November 2021)

This week, Symfony 5.4.0 BETA3 and 6.0.0 BETA3 versions were published so you can test them on your applications before their final release at the end of the month. In addition, the Symfony Core Team added four new members to help grow the Symfony project in the next few years.

Symfony development highlights

This week, 81 pull requests were merged (52 in code and 29 in docs) and 49 issues were closed (36 in code and 13 in docs). Excluding merges, 43 authors made 5,841 additions and 2,323 deletions. See details for code and docs.

4.4 changelog:

6a60cfc: never rely on dynamic PHP properties
94ff309: [Cache] fix dbindex Redis
e70ad34: [Process] intersect with getenv() to populate default envs
da00866: [Serializer] fix support for unset properties on PHP < 7.4
17e5244: [Serializer] fix support for lazy properties
b643481: [Serializer] return unique attributes in PropertyNormalizer extractAttributes function
eee7b80: [TwigBridge] do not merge label classes into expanded choice labels
38f3c12: [Yaml] properly parse quoted strings tagged with !!str
bfc8b1e: [HttpClient, Mime] add correct IDN flags for IDNA2008 compliance

5.3 changelog:

56798bd: [Translation] generate id parameter instead of letting Loco do it
ca1a431: [FrameworkBundle] fix API gateway service name
86deb3c: [FrameworkBundle] remove FlattenExceptionNormalizer definition if serializer not available
22e688b: remove more dynamic properties
a09c139: [FrameworkBundle] fix default PHP attributes support in validation and serializer configuration when doctrine/annotations is not installed with PHP 8
2e950c6: [Tests] remove some unused fixtures

5.4 changelog:

f98024f: [FrameworkBundle] deprecate notifier service aliases that don’t follow the convention
feb75f3: [DependencyInjection] fix creating second container instances
f7d70f1: [Cache] fix releasing not acquired locks
814dd27: [Cache] decrease the probability of invalidation loss on tag eviction
6f8b029: [Cache] fix calculate TTL in couchbase sdk 3.0
a0d778e: allow AbstractDoctrineExtension implementations to support the newer bundle structure
8ca777b: [Security] make ExpressionVoter Cacheable
a8bee28: [FrameworkBundle] add framework config for DBAL cache adapter
4106530: [DependencyInjection] fix preloading
678b0cd: [Serializer] add a setter on DateTimeNormalizer to change the default context at runtime
5ae859d: [Doctrine bridge] allow autodetecting mapping type for any object
bde6c09: [WebProfilerBundle] prevent installation of incompatible mailer component versions
ff92249: [Security] mark Guard as incompatible with Symfony 6

6.0 changelog:

ba6de87: [SecurityBundle] remove outdated conditions based on authenticatorManagerEnabled
93d643c: [FrameworkBundle] remove code relating to old StoreInterface
66829fc: remove obsolete PHP version checks

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 4.26.9 version
with the following changes:

Add a –webapp flag to symfony new to create a project with some recommended packages and configuration for web applications
Deprecate –expose-env-vars on tunnel:open in favor of var:expose-from-tunnel
Fix some panics

Newest issues and pull requests

[RFC] New component HtmlSanitizer
[Security] Allow definition of a custom RequestMatcher in access control rules like in firewalls
[Secrets] Extract in other repository
[Mailer] Ability to specify message size

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 5 Security, Chapter 19: form_login: The Built-in Authenticator
(Video) Symfony 5 Security, Chapter 20: More form_login Config
(Video) Symfony 5 Security, Chapter 21: Denying Access in a Controller
(Video) Symfony 5 Security: Authenticators, Chapter 22: Dynamic Roles
(Video) Symfony 5 Security: Authenticators, Chapter 23: The Special IS_AUTHENTICATED_ Strings

They talked about us

Using PHP 8.1 enumerations in Symfony
Symfony Station Communique – 19 November 2021. A Look at Symfony and PHP News.
How to create a custom CLI and use it in Symfony (part1)
How to create a custom CLI and use it in Symfony (part2)
What if we define validations rules in the routing configuration
Deploy Sylius to Heroku
Mastering Doctrine ORM relations
Symfony 5: The Fast Track
Contrôlez la qualité de vos projets PHP & Symfony à l’aide des GitHub Actions
Оптимистическая блокировка коллекций Агрегата при использовании Doctrine

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

Generated by Feedzy