All Versions
Latest Version
Avg Release Cycle
108 days
Latest Release

Changelog History
Page 2

  • v0.14.0

    December 10, 2017
    • Introduce a global locale (per-process) for all Gettext backends
    • Warn when compiling and raise at runtime for missing plural forms
    • 📜 Separate flags with commas when dumping and parsing .pot files
    • ➕ Add support for extracted comments via gettext_comment/1
    • ⚠ Require Elixir v1.3 and fix warnings
    • 👌 Improve compilation time of Gettext backends in roughtly 20%
    • Add :one_module_per_locale for parallel compilation of backends (requires Elixir v1.6)
    • 🌐 Use the elixir-format flag to mark autogenerated translations
  • v0.13.1

    January 30, 2017
    • 🛠 Fix a bug with Dialyzer specs for the Gettext.Backend.ngettext_noop/2 callback
    • 📜 Parse msgctxt entries in PO and POT files so that they don't cause syntax errors, but ignore them in the parsed result
  • v0.13.0

    December 12, 2016
    • Add the gettext_noop/1, dgettext_noop/2, ngettext_noop/3, and dngettext_noop/4 macros to Gettext backends; these macros can be used to mark translations for extractions without tranlating the given string
  • v0.12.2

    February 14, 2018
    • 🛠 Fix a bug where we failed miserably with a "no process" error when extracting translations without having the :gettext compiler run
    • 🌐 Slightly revisit the indentation of subsequent literal strings in dumped PO(T) files; before, they were dumped one per line, indented one level more than the parenttranslation, while now they're indented at the same level as the parent translation
  • v0.12.1

    • Ensure the Gettext application is started before running mix tasks
  • v0.12.0

    • ⬇️ Drop support for Elixir 1.1 and require ~> 1.2
    • Add :compiler_po_wildcard to explicitly choose the po files that are tracked by the compiler
    • 👍 Allow the developer to configure what happens when there are missing bindings in the translation. The default has been changed to log and return the incomplete string instead of raising
    • 🔧 Move the configuration for the :gettext application to compile-time config in project/0 in mix.exs (under the :gettext key, with configuration options :excluded_refs_from_purging, :compiler_po_wildcard and :fuzzy_threshold)
    • 🔀 Show the file name in syntax errors when running mix gettext.extract and mix gettext.merge
    • 🔀 Don't print tokens as Erlang terms in syntax error when running mix gettext.extract and mix gettext.merge
    • 👍 Allow duplicate interpolation keys
    • Raise when the domain is not a binary at compile-time
    • 🛠 Fix many dialyzer warnings
    • 🔀 No longer traverse directories given to gettext.merge recursively (from now on gettext.merge expect specific locale directories)
    • Reenable the "compile" task in mix gettext.extract
    • 🌐 Ensure translations are tracked to the proper child app when using umbrella apps
  • v0.11.0

    • 💅 Polish so many docs!
    • 👉 Make an error in Gettext.put_locale/2 clearer
    • Pluralize x_Y locales as x, but fail with Gettext.Plural.UnknownLocaleError for any other unknown locale
    • ➕ Add a Gettext.Backend behaviour (automatically implemented if a module calls use Gettext)
    • Allow whitelisting of references via the :excluded_refs_from_purging option in the :gettext application config
  • v0.10.0

    • ⚠ Emit warnings when the domain passed to one of the *gettext macros has slashes in it (as we don't support domains in subdirectories).
    • 📜 Discard dangling comments when parsing/dumping PO(T) files (dangling comments are comments that are not followed by a transaction they can be attached to).
    • ⚡️ Updated informative comments for newly generated PO/POT files.
  • v0.9.0

    • 🔀 Strip ## comments from POT files when they're being merged into PO files; these comments are comments meant to be generated by tools or directed at developers (so they have no use for translators in PO files).
    • ➕ Add informative comments at the top of newly generated PO/POT files.
    • ➕ Add Gettext.known_locales/1
    • 🛠 Fix a bug with PO parsing when the PO file starts with a BOM character (which broke the parser, now a warning is issued).
  • v0.8.0

    • 🛠 Fix a bug with the *gettext macros, which raised an error when given compile-time strings in the form of ~s/~S sigils.
    • Create missing locale directories (for example, en/LC_MESSAGES) when running the gettext.merge Mix task.
    • 🌐 Fallback to default translations (that is, the msgid) when the msgstr (or one or more msgstr strings for plural translations) is empty.