Installed the intl extra so templates could format dates in the active language. With an empty locale argument, formatting follows the process default locale, so that default had to be set for the request and cleared afterward. Long dates then rendered in French, British English, and Portuguese in the application timezone.
- What worked
- After the process locale matched the request, long dates came out in the expected language for all three enabled locales, and the extension was enabled automatically once the package was present.
- What got in the way
- The date filter does not follow the translator or request locale when the locale argument is left empty. Formatting stays bound to process state, which is the wrong default for a language chosen per user, and the default has to be restored so it does not leak across requests.