A Week of Symfony #786 (17-23 January 2022)

This was a very intense week for Symfony: first we introduced the [new Symfony 6 certification exam](https://symfony.com/blog/introducing-the-symfony-6-certification), then we announced a [new and better way to start Symfony projects](https://symfony.com/blog/a-better-way-to-quickly-start-symfony-projects) and finally, we updated Symfony Flex to provide [fast, smart Flex recipe upgrades](https://symfony.com/blog/fast-smart-flex-recipe-upgrades-with-recipes-update) which will simplify a lot upgrading to newer Symfony versions.

Symfony development highlights

This week, 47 pull requests were merged (22 in code and 25 in docs) and 53 issues were closed (43 in code and 10 in docs). Excluding merges, 33 authors made 7,436 additions and 2,651 deletions. See details for [code](https://github.com/symfony/symfony/pulse) and [docs](https://github.com/symfony/symfony-docs/pulse).

[4.4 changelog](https://github.com/symfony/symfony/commits/4.4):

[d560800](https://github.com/symfony/symfony/commit/d560800b9b2ee1520db294c0d38b68bd365effaf): [Cache] set mtime of cache files 1 year into future if they do not expire
[3838696](https://github.com/symfony/symfony/commit/383869635f56ce701b70422808d8313d254d667b): [Console] use STDOUT/ERR in ConsoleOutput to save opening too many file descriptors
[d0a8092](https://github.com/symfony/symfony/commit/d0a8092e017af5ef676810aa625df21d309cca4d): [HttpClient] fix failed to open stream because of too many open files
[a010891](https://github.com/symfony/symfony/commit/a010891664638f3ff44ef632ad1028de53a12180): [DependencyInjection]
[b8656d4](https://github.com/symfony/symfony/commit/b8656d4a0e89b3be0d288f7e2d27ad46abcc4e32): [DependencyInjection] remove arbitratry limitation to exclude inline services from bindings
[6e67c62](https://github.com/symfony/symfony/commit/6e67c623e1711ad079956657ae968a91e07f30b4): [Console] fix parsing escaped chars in StringInput

[5.4 changelog](https://github.com/symfony/symfony/commits/5.4):

[6a52b66](https://github.com/symfony/symfony/commit/6a52b66da0d35b21031bb344e79522f73d60e05a): [RateLimiter] implicit conversion fix

[6.1 changelog](https://github.com/symfony/symfony/commits/6.1):

[37328e3](https://github.com/symfony/symfony/commit/37328e30a5b2891b06935e466183df1c5c329a33): [Security] fix retrieving strategy for custom AccessDecisionManager
[a4d6d4d](https://github.com/symfony/symfony/commit/a4d6d4d9cdedb6130c4ccdb9984e78fbddf5484b): [Notifier] add Orange SMS bridge
[6153815](https://github.com/symfony/symfony/commit/61538151eedd16bfce2043679954d37d91c91d0a): [Notifier] add 46elks notifier bridge
[0a92ead](https://github.com/symfony/symfony/commit/0a92ead30106946dad215756c13aa5854e862d3f): [Notifier] added KazInfoTeh notifier bridge
[ae3b078](https://github.com/symfony/symfony/commit/ae3b07818fb3c5ea2d76cd4b5d75d7a2e22319be): [Routing] allow using UTF-8 parameter names
[19e99a6](https://github.com/symfony/symfony/commit/19e99a68b29bc0aa448bef71d1970474f61ae4a1): [Mailer] add downloadable attachments to profiler
[1027fad](https://github.com/symfony/symfony/commit/1027fade781305e55884798beaf53d250e0aa38c): [Messenger] add sessionToken option to SQS transport
[5c37c1f](https://github.com/symfony/symfony/commit/5c37c1fdd5396d191b09fe0f1732da26d8099ca8): [Routing] rnrich MissingMandatoryParametersException
[86a7f94](https://github.com/symfony/symfony/commit/86a7f94484e4a2a5f03112b33035246086ae1ea0): [Console] remove needless check for disable_functions ini setting
[1ebb5d9](https://github.com/symfony/symfony/commit/1ebb5d9605ffecf23124413ea6bde729a223e610): [Form] add inputmode attribute on NumberType

Newest issues and pull requests

[Load PHP (and XML) config automatically in Kernel](https://github.com/symfony/symfony/issues/45116)
[[HttpFoundation] Add support for remaining response cache control directives](https://github.com/symfony/symfony/issues/45036)

[[PropertyInfo] Add support for generics](https://github.com/symfony/symfony/issues/45071)
[[Security] Authorization Matrix](https://github.com/symfony/symfony/issues/45108)
[Url Generator and encoding of slashes in query parameters](https://github.com/symfony/symfony/issues/45114)

Symfony CLI

[Symfony CLI](https://github.com/symfony-cli/symfony-cli) is a must-have tool when developing
Symfony applications on your local machine. It includes the
[Symfony Local Server](https://symfony.com/doc/current/setup/symfony_server.html),
the best way to run local Symfony applications. This week Symfony CLI released
its new [5.1.0](https://github.com/symfony-cli/symfony-cli/releases/tag/v5.1.0),
[5.2.0](https://github.com/symfony-cli/symfony-cli/releases/tag/v5.2.0) and
[5.2.1](https://github.com/symfony-cli/symfony-cli/releases/tag/v5.2.1) versions
with the following changes:

Remove Scoop
Make Github actions more verbose
Fix TYPO in help: „poject“ vs „project“
Deprecate the –full flag in favor of –webapp
Add support for Redis 6.2 on Platform.sh
Add local:security:check
Add cloud:organization:create and cloud:organization:delete support (alpha)
Add Symfony CLI to the package descriptions
Remove the version for the Symfony book
Remove some compat code from the closed sourced version
Remove some Platform.sh aliases to avoid confusion
Print Github hint on STDERR instead of STDOUT
Add –docker flag to symfony new
Fix support for shortcut names on psh commands
Ensure stable output for PHP extensions in psh configuration
Add cloud:repo command

SymfonyCasts Updates

[SymfonyCasts](https://symfonycasts.com/) 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](https://symfonycasts.com/updates)
of the week:

(Video) [Symfony 5 Security, Chapter 47: Customize The 2-Factor Auth Form](https://symfonycasts.com/screencast/symfony-security/2fa-customize)

They talked about us

[Configure Symfony Secrets with Hashicorp Vault](https://dev.to/gromnan/store-secrets-in-vault-with-symfony-51ai)
[Symfony Station Communiqué – 21 January 2022. A Look at Symfony and PHP News.](https://dev.to/reubenwalker64/symfony-station-communique-21-january-2022-a-look-at-symfony-and-php-news-3c8k)
[Symfony how to get query string values sent by AJAX calls](https://akashicseer.com/web-development/symfony-how-to-get-query-string-values-sent-by-ajax-calls/)
[4 ways to inject dependencies in Symfony that you probably don’t know about?](https://medium.com/@OCharnyshevich/4-ways-to-inject-dependencies-in-symfony-that-you-probably-dont-know-about-65e8efe02af5)
[How to update your FosJsRoutingBundle routes file](https://akashicseer.com/uncategorized/how-to-update-your-fosjsroutingbundle-routes-file/)
[New in EasyAdmin 4: Menu Badges](https://easycorp.github.io/blog//posts/new-in-easyadmin-4-menu-badges)
[How I was able to find multiple vulnerabilities of a Symfony Web Framework web application](https://rootintrud3r.medium.com/how-i-was-able-to-find-multiple-vulnerabilities-of-a-symfony-web-framework-web-application-2b82cd5de144)
[Symfony Panther: зверь в мире тестирования](https://habr.com/ru/company/otus/blog/646575/)

Call to Action

[Follow Symfony on Twitter](https://twitter.com/symfony) and retweet this article.
[Subscribe to the Symfony blog RSS](https://feeds.feedburner.com/symfony/blog) and never miss a Symfony story again.

Sponsor the Symfony project.

Symfony Blog
Read More