You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+23-3Lines changed: 23 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,10 +4,12 @@ All notable changes to this project will be documented in this file.
4
4
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
7
-
## [0.45.0] — July 4th, 2026
7
+
## [0.45.0] — July 5th, 2026
8
8
9
9
A quality release: the codebase now passes `mix credo --strict` with zero findings (enforced in CI), the full MessageFormat 2 working-group conformance suite runs against the formatter, and the documentation gains four new guides. A test-coverage push from 70% toward 90% surfaced — and this release fixes — more than twenty conformance and correctness bugs across date/time, number, unit, collation and language-tag handling.
10
10
11
+
**Upgrading from 0.42 or earlier?** Version 0.43.0 renamed the inventory functions from the `available_*`/`known_*` names to the uniform `known_*`/`supported_*`/`*_for` scheme and swapped two `:format`/`:style` option names. Every old name still works as a deprecated delegate until Localize 1.0 — see the 0.43.0 entry below for the full list.
12
+
11
13
### Added
12
14
13
15
* The complete MessageFormat 2 working-group conformance suite (16 test files including all nine `functions/` suites) now runs against the formatter: 250 cases asserting formatted output and expected errors, with unimplemented features excluded and documented per case.
@@ -146,9 +148,27 @@ This release settles the public API naming and error conventions ahead of 1.0. E
146
148
147
149
### Deprecated
148
150
149
-
*`Language.available_languages/1` → `Language.languages_for/1`; `Language.known_languages/1` → `Language.language_names_for/1`; `Script.available_scripts/1` → `Script.scripts_for/1`; `Script.known_scripts/1` → `Script.script_names_for/1`; `Subdivision.available_subdivisions/1` → `Subdivision.subdivisions_for/1`; `Subdivision.known_subdivisions/1` → `Subdivision.subdivision_names_for/1`; `Territory.available_styles/0` → `Territory.known_styles/0`. The naming rule is now uniform: `known_*` is the locale-independent CLDR universe, `supported_*` reflects configuration, and `*_for` is data localized into a display locale.
151
+
The naming rule is now uniform: `known_*` is the locale-independent CLDR universe, `supported_*` reflects configuration, and `*_for` is data localized into a display locale. The renamed functions are:
Two option names are also swapped for consistency; the deprecated keys remain accepted until 1.0:
168
+
169
+
* The `:style` option of `Localize.Duration.to_string/2` and of `Localize.quote/2` is deprecated in favour of `:format`.
150
170
151
-
* The `:style` option of `Localize.Duration.to_string/2` is deprecated in favour of `:format`; the `:format`option of `Localize.Unit.display_name/2` is deprecated in favour of `:style`; the `:style` option of `Localize.quote/2` is deprecated in favour of `:format`. The deprecated option keys remain accepted until 1.0.
171
+
* The `:format`option of `Localize.Unit.display_name/2` is deprecated in favour of `:style`.
0 commit comments