Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow all available locales for template lookups #45169

Merged

Commits on May 30, 2022

  1. Allow all available locales for template lookups.

    Following the discussion here:
    https://github.com/rails/rails/pull/44174/files#r785160819
    
    Background: The `i18n` gem is relatively lax when it comes
    to naming locales. It does not enforce any standard. Thus
    it is possible to have e.g. per tenant locales (think
    `en_tenant1`, `en_tenant2` etc.). This also worked for
    translated templates up until rails 6.1.
    
    Rails 7 changed the template lookup and enforced a naming
    scheme for locales. This poses a problem for legacy apps
    that use non-standard locale names.
    
    This commit changes the way locale names are detected in
    template file names. In addition to the previously used
    regexp it also allows all known locales from
    `I18n.available_locales`.
    
    This makes it backwards compatible to rails 7.0
    behavior while also allowing non-standard locale names.
    Thanks to jvillarejo for the great idea.
    
    Also introduce the usage of `Regexp.union`, a wonderful
    suggestion by casperisfine.
    oneiros committed May 30, 2022
    Configuration menu
    Copy the full SHA
    12c1289 View commit details
    Browse the repository at this point in the history