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.
- 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
- 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
- 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
- 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 tosymfony new
to create a project with some recommended packages and configuration for web applications - Deprecate
--expose-env-vars
ontunnel:open
in favor ofvar: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.