gettext-rs
Safe bindings for gettext
0.8.0
4.5M downloads/mo
#4726 most downloaded on crates.io
gettext-rs/gettext-rs
What this package is like to depend on
Last release 18 days ago
05 Aug 2026
Ships unpredictably
gaps range from 3 weeks to 3.4 years
Nearly every release is documented
notes for 19 of 19 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
19 releases · first in 2016
6 releases in the last 12 months
see the full history below
Release timeline
19 releases · Feb 2016 to Aug 2026
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
Releases
latest 19-
0.8.005 Aug 2026Release notes
Open source →Changed
- Allow gettext-sys 0.27 which bundles GNU gettext 1.0 (Alexander Batischev)
Security
- Mark
setlocale()andTextDomain::init()asunsafebecause callingsetlocale()from multiple threads can lead to memory corruption. See updated docs for details on how to call those functions safely (#64) (Alexander Batischev)
Release notes
Open source →Changed
- Allow gettext-sys 0.27 which bundles GNU gettext 1.0 (Alexander Batischev)
Security
- Mark
setlocaleandTextDomain::init()asunsafebecause callingsetlocalefrom multiple threads can lead to memory corruption. See updated docs for details on how to call those functions safely (#64) (Alexander Batischev)
-
0.7.711 Oct 2025 -
0.7.611 Oct 2025 -
0.7.511 Oct 2025Release notes
Open source →Changed
- Document that GNU gettext tools support Rust since 0.24, so
xgettextcan be
used in place ofxtr(#139) (Bruno Haible) - Allow gettext-sys 0.24
Release notes
Open source →Changed
- Document that GNU gettext tools support Rust since 0.24, so
xgettextcan be used in place ofxtr(#139) (Bruno Haible) - Allow gettext-sys 0.24
- Document that GNU gettext tools support Rust since 0.24, so
-
0.7.410 Oct 2025 -
0.7.310 Oct 2025 -
0.7.210 Oct 2024 -
0.7.130 Aug 2024 -
0.7.025 Apr 2021Release notes
Open source →Changed
- If
XDG_DATA_DIRSenvironment variable is not set, or is empty,TextDomainbuilder defaults to "/usr/local/share/:/usr/share/" instead of current directory. This is in line with XDG base directory specification. (Alexander Batischev)
- If
-
0.6.003 Mar 2021Release notes
Open source →Added
- Documentation on when functions will panic (Alexander Batischev)
- Functions to query gettext configuration. These are wrappers over
textdomain(NULL),bindtextdomain(domain, NULL), andbind_textdomain_codeset(domain, NULL)(Alexander Batischev) impl ErrorforTextDomainError, which makes it easier to use with?operator (Alexander Batischev)
Changed
- Users are required to configure gettext for UTF-8, either explicitly with
bind_textdomain_codeset(), or implicitly withsetlocale()if they understand the consequences. Failure to do this might lead to panics and/or garbled data (Alexander Batischev) - Functions now require more specific types, like
Into<String>andInto<PathBuf>(Alexander Batischev) - Functions that take multiple strings no longer require all strings to be of
exact same type (i.e. you can mix
Stringand&str) (Alexander Batischev) - Functions that configure gettext (
textdomain(),bindtextdomain(),bind_textdomain_codeset()) now return aResultto indicate failures (Alexander Batischev) - Macros now behave like
format!(gettext(…), …), which is more useful than previous behaviour ofgettext(format!(…, …))(Rasmus Thomsen) - On Windows,
TextDomainnow useswbindtextdomain(Alexander Batischev) - Bump
gettext-sysdependency to 0.21 (Alexander Batischev)
Fixed
CStrings being dropped while their pointers are in use (Alexander Batischev)
Removed
Defaultinstance forTextDomain. Default-constructed instance was useless since it would panic oninit()asnameis not set (Alexander Batischev)
-
0.5.001 Sep 2020 -
0.4.422 Sep 2019 -
0.4.316 Aug 2019 -
0.4.226 Jul 2019 -
0.4.117 Aug 2018Release notes
Open source →Added
pgettextandnpgettextfunctions that support contexts (Daniel García Moreno)
-
0.4.023 May 2018Release notes
Open source →Added
TextDomainbuilder that abstracts oversetlocale,textdomain,bindtextdomain, andbind_textdomain_codeset(François Laignel)
Changed
setlocalenow returnsOption<String>to indicate that the requested locale couldn't be installed (Brian Olsen)
Removed
- Raw FFI bindings are now in gettext-sys crate (Brian Olsen)
-
0.3.004 Feb 2016Release notes
Open source →Changed
- Main module renamed from
gettext_rstogettextrs(Konstantin V. Salikhov)
- Main module renamed from
-
0.2.003 Feb 2016Release notes
Open source →Added
- Support for plurals (
d*gettext,n*gettext) (Konstantin V. Salikhov) - Bindings for
bind_textdomain_codeset(Konstantin V. Salikhov)
- Support for plurals (
-
0.1.002 Feb 2016