# Changelog
## v0.2.1 (2026-06-01)
### Fixed
- `mix gettext.pseudolocalize` (without arguments) no longer crashes with
`Gettext.Plural.UnknownLocaleError` on `gettext ~> 1.0`. The task now
temporarily registers `GettextPseudolocalize.Plural` while running
`gettext.merge` so the unknown `xx` locale resolves to `nplurals=2`, and
restores the previous `:gettext, :plural_forms` configuration afterwards.
- `GettextPseudolocalize.Plural` is now a complete `Gettext.Plural`
implementation, making it safe to register as the global
`config :gettext, :plural_forms` pluralizer (so `mix gettext.merge` and
`mix compile` resolve `xx` instead of raising `UnknownLocaleError`). It now
implements the optional `init/1` and `plural_forms_header/1` callbacks and
accepts both the bare-string and `{locale, plural_forms}` context shapes that
Gettext passes for `xx`.
### Documentation
- README now explains how to configure `GettextPseudolocalize.Plural` as the
permanent pluralizer when the host app's Gettext backend compiles against
`priv/gettext/xx/`.
## v0.2.0 (2026-05-11)
### Changed
- Bumped `gettext` dependency to `~> 1.0` (previously `~> 0.26`).
## v0.1.1
- Handle invalid interpolations.
- Optimizations and more tests.
## v0.1.0
- Initial release.