This week, Symfony continued introducing changes needed to make tests compatible with PhpUnit 10. Meanwhile, the upcoming Symfony 6.3 version continued adding PHP types to private methods and functions.

Symfony development highlights

This week, 49 pull requests were merged (42 in code and 7 in docs) and 23 issues were closed (12 in code and 11 in docs). Excluding merges, 24 authors made contributions. See details for code and docs.

5.4 changelog:

  • 672751b: [ErrorHandler] do not patch return statements in closures
  • cd34f41: [Cache] only validate dbindex parameter when applicable
  • 74b5b25: [Tests] migrate tests to static data providers
  • 737cc4c: [HttpKernel] fix setting the session on the main request when it's started by a subrequest
  • 8cf5f02: [Notifier] fix notifier profiler when transport name is null
  • eb9ff9b: [Cache] fix trying to load Memcached before checking we can
  • a9c2bce: [Notifier] make TransportTestCase data providers static
  • c15367e: [DependencyInjection] add doc for RUNTIME_EXCEPTION_ON_INVALID_REFERENCE behavior
  • c7a7cb8: use PHPUnit 9.6 to run Symfony's test suite
  • 703311e: [Notifier] replace tests dummy instances by already in place mocks
  • 65c427d: [Intl] use TestCase suffix for abstract tests in Tests directories
  • 29f46fc: make data providers for abstract test cases static

6.2 changelog:

  • a4ef214: [DependencyInjection] fix autowire attribute with nullable parameters
  • 570776e: fix some version constraints

6.3 changelog:

  • 69b2149: [HtmlSanitizer] remove experimental status
  • 394ae7f: add PHP types to private methods and functions
  • f3dbf6c: [Filesystem] remove always true condition
  • e16aea4: [Yaml] fix parsing sub-second dates on x86
  • a294224: [Twig] remove Twig templates from preloading
  • c694ebb: add missing return types to interfaces
  • 66966ed: [WebProfilerBundle] tweak Mailer panel rendering
  • f4eaacd: [DependencyInjection] add AsAlias attribute
  • 0900333: [PropertyAccess] allow escaping in PropertyPath

Newest issues and pull requests

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

  • feat: Support dumping TLS keylog in NSS format for debugging (@siketyan)
  • feat: Support 'SSLKEYLOGFILE' environment variable (@siketyan)
  • feat: Show warning message if TLS key logging is enabled (@siketyan)
  • feat: Prefer environment variable than config or console argument (@siketyan)
  • Use rel="noopener" for links injected in Symfony's WDT (@tucksaun)
  • Treat any service using usual HTTP ports as an HTTP service (@tucksaun)
  • Support Kibana as service, refs #197 (@tucksaun)
  • Remove github.com/spf13/viper from the vendors (@tucksaun)
  • Reformat very long URL line (@quentint)
  • Refacto: Make the console handles SSLKEYLOGFILE env variable precedences (@tucksaun)
  • Proxy: allow to by-pass some local domains (@tucksaun)
  • Fix missing parameter (@tucksaun)
  • Fix bad printf pattern for links in local:open:* commands (@tucksaun)
  • Fix Composer script detection when it uses an absolute shebang path (@tucksaun)
  • Detect Scoop installation of composer, fix #136 (@tucksaun)
  • Add links to every HTTP services found into the Symfony WDT (@tucksaun)
  • Add a new more generic local:open:service command (@tucksaun)
  • Add MongoDB env vars to match Flex recipes default config (@quentint)

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

Published in #A week of symfony