Living on the Edge
A series of posts showcasing the new features introduced by each Symfony version.
Symfony 4.2 adds a new validation constraint called DivisibleBy to check whether one number is a multiple of some other number.
Symfony 4.2 simplifies the way links are clicked and forms are submitted in functional tests.
Symfony Panther is a a new library to scrape websites and to run end-to-end tests using real browsers. Panther leverages the W3C's WebDriver protocol to drive native web browsers such as Google Chrome and Firefox.
In Symfony 4.1, AbstractController provides a getParameter() helper, anonymous services can be configured with PHP DSL, PropertyInfo can introspect information using the constructor arguments and the level of the PHP logger is configurable.
In Symfony 4.1, MoneyType rounding is configurable, updating LDAP entries is more efficient, query strings can be kept when redirecting and hassers are supported by the PropertyInfo component.
In Symfony 4.1 there is a new choice_translation_locale option for some form types, a new command to delete cache items, allow_if expression can use custom expressions and you can use the new dd() debug helper.
Some small but nice new features added to Symfony 4.1: use csrf_token() without the Form component, parse env vars stored in CSV files, change progress bars dynamically and check more easily the contents of your .env files.
In Symfony 4.1, when importing some routes under a common prefix, you can configure whether or not the root route adds a trailing slash to its path.
In Symfony 4.1 some operations of the Serializer component have been cached, improving the application performance up to 40%.
In Symfony 4.1 form fields can define their own help messages with a new help option.