New in Symfony 3.4: Deprecate configuration options

Contributed by
Sanpi
in #22382.

Symfony project follows the semantic versioning strategy and a backward compatibility promise to ensure smooth upgrades of your projects. The main piece of this strategy are the deprecation messages, which warn you when using features that will be removed or changed in the next major Symfony version.

Deprecations are not only important for code changes. When using semantic configuration in your applications, it's also important to warn users about any future change in the config options. That's why in Symfony 3.4 we added a feature to simplify the deprecation of config nodes:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// ...
->scalarNode('config_option_1')
    // this outputs the following generic deprecation message:
    // The child node "config_option_1" at path "acme_root" is deprecated.
    ->setDeprecated()
->end()
->scalarNode('config_option_2')
    // you can also pass a custom deprecation message (%node% and %path% placeholders are available):
    ->setDeprecated('The "%node%" option is deprecated. Use "new_config_option" instead.')
->end()

Comments

This will be useful. Thanks.
Thank you 👍🏻
Awesome \o/
Login with SensioLabsConnect to post a comment