Releases: elixir-cldr/cldr_plugs
Cldr Plugs version 1.3.3
Bug Fixes
- Add
config/prod.exs
soMIX_ENV=prod
compilation succeeds. Thanks to @camelpunch for the PR. Closes #12.
Cldr Plugs version 1.3.2
Cldr Plugs version 1.3.0
Enhancements
- Updates to ex_cldr version 2.37.0 which includes data from CLDR release 43
Cldr Plugs version 1.2.1
Bug Fixes
-
Improves logger messages when
Cldr.Plug.PutLocale
is attempting to set the Gettext locale. There are now one of two warnings logged:- One when the CLDR backend module has no configured Gettext module
- One when there is a configured Gettext module but that module does not have the specified locale configured.
-
Changes
Logger.warn/1
toLogger.warning/1
to avoid deprecation messages on Elixir 1.15
Cldr Plugs version 1.2.0
Deprecations
-
Deprecate
Cldr.Plug.SetLocale
in favour of the more consistentCldr.Plug.PutLocale
name. -
Deprecate the
:assigns
from
key in favour of they key:route
.Cldr.Route
will, as of version 0.5.0, place the locale in theconn.private.cldr_locale
location.from: :route
better reflects the intent. The:assigns
keyword remains valid with a deprecation warning.
Bug Fixes
-
Fix setting the locale from the result returned from an
{M, f}
or{M, f, [a]}
. Thanks to @rubas for the PR. -
Don't make modules
Cldr.Plug.AcceptLanguage
andCldr.Plug.PutSession
dependent onPlug
,Plug
is a required dependency since this library was split fromex_cldr
. Thanks to @linusdm for the report. Closes #1.
Enhancements
- Adds
Cldr.Session.put_locale/{1, 2}
that takes the locale from the session (if there is one) and puts the Cldr locale and/or the Gettext locale into the current process. This is very useful to add to theon_mount
callback in LiveView but it can be applied at any time the session is available. For example:
def on_mount(:default, _params, session, socket) do
{:ok, locale} = Cldr.Session.put_locale(session)
....
end
Cldr.Plug.PutSession
now has the option to store the full%Cldr.LanguageTag{}
into the session, or just the string representation (which the default and the same as previous releases). The tradeoff is space used the session (less than 10 bytes typically for the string, around 500 bytes for the struct) versus the performance hit serializing and parsing the locale when storing it in the session or retrieving it later on.
Cldr Plugs version 1.1.0
Enhancements
- Adds
:assigns
as an optional source of the locale inCldr.Plug.SetLocale
. The library ex_cldr_routes introduces localised routing. These localised routes will set theconn.assigns[:cldr_locale]
and therefore may be used as an indicator of the users locale preference if no other locale source (like the session, path or params) can be identified. Since the routes locale is tied to the route, not necessarily the users preference, this should be considered a lower priority locale source. The default:from
parameter is updated to reflect this and is now set to[:session, :accept_language, :query, :path, :assigns]
.
Cldr Plugs version 1.0.0
Enhancements
-
Intiial release, extracted from
ex_cldr
-
Adds support for MFA (and the variant without arguments
MF
) tuples that can be used as part of theCldr.Plug.SetLocale
configuration in the:from
and:default
cases.