We are excited to announce the release of Unicode® ICU4X 0.2.
The revision improves completeness of the components introduced in ICU4X 0.1 and introduces a number of lower level utilities.
In 0.2, ICU4X introduces FixedDecimalFormat
which serves as a minimal and lightweight number format API.
This version improves DateTimeFormat
adding initial support for time zones, component bags and day periods. A new LocaleCanonicalizer
component has been added to support Locale
data driven operations. A third improved component is PluralRules
which has gained support for the E
operand.
ICU4X Foreign Function Interface (a layer which allows using ICU4X from other programming languages) bindings include a new C
API prototype. While not part of the release itself, it serves as a validation of the core API model and the team expects it to be published alongside ICU4X in the next release.
With a small set of core components maturing, the project is starting to focus more on the features we want to develop for all components such as strong FFI support and flexible data management.
For that purpose, we have started building a number of lower level utilities focused on bringing high performance data structures and algorithms.
To minimize the size of our WebAssembly binaries we added Writeable
, which introduces a lightweight alternative to std::fmt::Display
and LiteMap
, which adds a std::collections::HashMap
replacement that uses binary_search
instead of a hash function.
ZeroVec
is a utility similar to std::borrow::Cow
which allows us to bring zero-copy deserialization of lists.
FixedDecimal
and ICU Pattern
are two utilities that introduce lower level simple operations on numbers and ICU patterns.
ICU4X 0.2 comes with more feature-complete components, new utilities and [CLDR 39.0] support. It is an unstable release, meaning that the API is in flux and functionality is not complete.
We're looking for testers and contributors interested in working with us on completing the funtionality intended for 1.0 release and the capabilities to bring ICU to FFI targets.
For details, please see CHANGELOG.