Symfony News

New in Symfony 6.2: Better Debugging Commands

Symfony includes many commands to help you debug issues in your applications while developing them. In Symfony 6.2 we're improving some of those commands and adding new ones.

New Command to Count Pending Messages

Kévin Therage

Contributed by
Kévin Therage
in #46571.

A useful metric to know when working with the Messenger component is the number of queued messages pending to be processed. In Symfony 6.2 we're adding a new messenger:stats command to show you that:

# displays the number of queued messages in all transports
$ php bin/console messenger:stats

# shows stats only for some transports
$ php bin/console messenger:stats my_transport_name other_transport_name

Improved Config Debug

Alexandre Daubois

Contributed by
Alexandre Daubois
in #46821.

The debug:config displays by default the placeholders of env vars instead of their actual values. For example:

$ php bin/console debug:config framework | grep secret
  secret: '%env(APP_SECRET)%'
  // ...

In Symfony 6.2 we're adding a new --resolve-env option to that command to display the actual value the env vars:

$ php bin/console debug:config framework --resolve-env | grep secret
  secret: 90d83502629d64dec4cd6e33c9b31267
  // ...

Improved Env Var Debug

Rokas Mikalkėnas

Contributed by
Rokas Mikalkėnas
in #46502.

In Symfony 6.2, the debug:dotenv command adds a new optional argument to only display the variables whose names match fully or partially the given string:

$ php bin/console debug:dotenv AWS
  // ...
  ----------------------  -------------------------------------
   Variable               Value
  ----------------------  -------------------------------------
   AWS_ACCESS_KEY_ID       ...
   AWS_SECRET_ACCESS_KEY   ...
   AWS_DEFAULT_REGION      ...
   ...

New Mailer Test Command

Fabien Potencier

Contributed by
Fabien Potencier
in #47040.

A common need when working with emails is to test if a given mailer works properly. The easiest way to do that is to send an actual test email through that mailer. That's why in Symfony 6.2 we're adding a new mailer:test command:

# the only required argument is the TO address
$ php bin/console mailer:test someone@example.com

# you can customize the FROM address, subject, body and transport name
$ php bin/console mailer:test someone@example.com
    --from=testing@example.com
    --subject="New test to check if email works"
    --body="Lorem ipsum dolor sit amet"
    --transport=the-transport-name

You can't use features such as file attachments because the purpose of the command is just to test if a certain transport works (i.e. is properly configured). Also, note that this command bypasses the Messenger bus (if configured) to ease testing even when the messenger consumer is not running.


Sponsor the Symfony project.


About us

What a Symfony developer should know about the framework: News, Jobs, Tweets, Events, Videos,...

Resources

Find us on Twitter

Find us on Facebook