Release 0.2.0
This release is a milestone in the gettext-tiny development, as it adds a full-fledged msgfmt
tool, which is finally capable to generate real translations, supporting all necessary (in real-world use) features of the GNU implementation, such as plural forms, fuzzy marks.
what is especially important for musl users is that it supports SYSDEP
replacements.
the latter is a half-baked idea that was added to GNU's version as an afterthought to deal with format strings that are system-dependent. this feature is problematic in that the GNU libintl does the expansion at run-time, thereby requiring read/write memory for something that should be (and was in the past) entirely read-only and could be shared among processes, and so defeating the entire purpose of the precompiled translations.
this is why musl's libintl implementation opts out of this feature and requires the msgfmt
tool to expand the SYSDEP
strings into all possible variations, so there's no need for dynamic memory allocation to support it.
gettext-tiny now has the first implementation of msgfmt
which is compatible to musl's requirement, this means that for the first time it will be possible for musl users to enjoy their software with working translations, without the need to use an external libintl
implementation for that.
credits for this release go mostly to our new contributor @xhebox which implemented almost all new functionality.
note that msgmerge
and xgettext
are still stubs, but they are sufficient to build entire distributions without any issues.
fetch your source tarball at :
http://ftp.barfooze.de/pub/sabotage/tarballs/gettext-tiny-0.2.0.tar.xz
$ sha512sum gettext-tiny-0.2.0.tar.xz
4d8d9d02042adf023bfd2502fa7598f9b16ef2e03dd3d39fd3ba36f1be1d884d1b891600d9263e11948e3979909ea810a1d1b8cefc7e522feda8b422a1107a2e gettext-tiny-0.2.0.tar.xz