Releases: slang-i18n/slang
Releases · slang-i18n/slang
v4.4.0
v4.3.0
- feat: simplify file names without namespaces (#267)
- DEPRECATED: Do not use namespaces in file names when namespaces are disabled:
strings_de.json
->de.json
- DEPRECATED: Always specify the locale in the file name (namespace enabled):
strings.json
->strings_en.json
, except the locale is specified in the directory name
Note: This might make the files order in your IDE less pleasant if input and output files are in the same directory.
You can specify the output directory to a subdirectory to avoid this.
For example, output_directory: lib/i18n/gen
v4.2.0
v4.1.0
v4.0.0
DateFormat, NumberFormat, and Lazy loading
Format translations with DateFormat
and NumberFormat
:
Hello {name}, today is {today: yMd}. You have {money: currency(symbol: '€')}.
On web, Deferred loading is used to reduce initial load time.
- feat: add
DateFormat
andNumberFormat
support (#112) - feat: add
lazy: true
config which is enabled by default (#135) - fix:
slang analyze
should not treat translations as unused if they are used in linked translations (#231) - fix:
slang analyze
should detect missing enums (#234) - fix: trim enum keys in compressed format while parsing (e.g.
"male, female": "..."
to"male,female": "..."
) (#247) - fix: compilation error on web when using large interfaces (#251)
- fix: correctly transform keys with modifiers when
key_case
is set (#253) - Breaking: Require Dart 3.3 and Flutter 3.19
- Breaking:
setLocale
,setLocaleRaw
, anduseDeviceLocale
returns a Future, use-Sync
suffix for synchronous calls - Breaking:
output_format
removed, always generates multiple files now - Breaking: deprecated functions in
LocaleSettings
(supportedLocales
,supportedLocalesRaw
) removed - Breaking: defining contexts (enums) is no longer allowed in
build.yaml
orslang.yaml
(deprecated in v3.19.0) - Breaking: enums specified in
context
are no longer transformed into pascal case keeping the original case
You can read the detailed migration guide here.
v3.31.0
v3.30.0
v3.29.0
- feat:
dart run slang analyze
supports csv files (#185) @nikaera - feat: also add linter and coverage ignore to part files (#188) @cmenkemeller
- fix: generate base translations as fallback when using context enums where some enum values are missing (#182) @Tienisto
- fix: generate correct
part of
directive when using a custom dart file extension (#187) @cmenkemeller