This week, we published the second beta of Symfony 7.3, ahead of its final release later in May 2025. Meanwhile, we continued sharing posts about the new features of Symfony 7.3 and the upcoming SymfonyOnline June 2025.

Symfony development highlights

This week, 49 pull requests were merged (36 in code and 13 in docs) and 31 issues were closed (23 in code and 8 in docs). Excluding merges, 27 authors made 12,154 additions and 6,093 deletions. See details for code and docs.

6.4 changelog:

  • 0d971eb: [Security] throw InvalidLoginLinkException on invalid parameters
  • 233f975: [FrameworkBundle] ensure that all supported e-mail validation modes can be configured
  • 166b527: [FrameworkBundle] ensure Email class exists before using it
  • ec1e4a2: [Security] avoid failing when PersistentRememberMeHandler handles a malformed cookie
  • a1228e4: [FrameworkBundle] improve readability of disallow_search_engine_index condition

7.2 changelog:

  • 31f0dd5: [PropertyAccess] improve PropertyAccessor::setValue param docs
  • 310f769: [Messenger] fix asking users to select an option if --force option is used in messenger:failed:retry command
  • e80f5d7: [DoctrineBridge] fix UniqueEntityValidator Stringable identifiers
  • d0ce2d6: [SecurityBundle] use Composer InstalledVersions to check if flex is installed

7.3 changelog:

  • 76ab38f: [Console] use kebab-case for auto-guessed input arguments/options names
  • 7379bfb: [ObjectMapper] Allow to define a condition to target a specific class
  • ed0a235: [Console] ensure overriding Command::execute() keeps priority over __invoke()
  • 57d4f08: [Console] set description as first parameter to Argument and Option attributes
  • c1da2be: [Cache] choose the correctly cased class name for the SQLite platform
  • 0040477: [Messenger] fix integration with newer versions of Pheanstalk
  • 27edcc2: [DependencyInjection, FrameworkBundle] fix precedence of App\Kernel alias and ignore container.excluded tag on synthetic services
  • 00a39e7: [Console] add support for SignalableCommandInterface with invokable commands
  • e532750: [Console] update #[Option] attribute rules & restrictions
  • 532e408: [TwigBundle] use kernel.build_dir to store the templates known at build time
  • 392d0c9: [FrameworkBundle] make ValidatorCacheWarmer and SerializeCacheWarmer use kernel.build_dir instead of kernel.cache_dir
  • cf554e1: [HttpFoundation] emit PHP warning when Response::sendHeaders() is called while output has already been sent
  • b3d4671: [Workflow] add support for executing custom workflow definition validators during the container compilation

Newest issues and pull requests

Symfony Jobs

These are some of the most recent Symfony job offers:

  • Symfony Developer at Transformify
    Full-time - $36,000 / year
    Full Remote
    View details
  • Backend Symfony Developer at Proton
    Full-time - €50,000 – €95,000 / year
    Remote + part-time onsite (Paris, Barcelona, London)
    View details
  • Lead Symfony Developer at SO
    Full-time - €60,000 – €65,000 / year
    Remote + part-time onsite (Paris, France)
    View details

You can publish a Symfony job offer for free on symfony.com.

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.

This week, SymfonyCasts published the following updates:

They talked about us

Call to Action

Published in #A week of symfony