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

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:

They talked about us

Call to Action

Sponsor the Symfony project.