NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #3500 most downloaded on crates.io
Human-readable formatting of dates, times, and time zones in hundreds of locales
Last release 1 months ago
13 Aug 2026
Ships fairly regularly
a new release about every 4 months
Some releases are documented
notes for 10 of 22 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
25 releases · first in 2020
One column per quarter.
The ICU4X Technical Committee is happy to announce ICU4X 2.3, an update to our modular, portable, and secure i18n library.
The ICU4X Technical Committee is happy to announce ICU4X 2.3, an update to our modular, portable, and secure i18n library.
Important changes in ICU4X 2.3 include:
icu_segmenter: Preview of our redesigned segmentation engine based on PRI #555 (new_neo) and an updated line segmenter compliant with Unicode 17 (new_17). Please provide feedback.icu_locale::names: Preview of display name formatting with full language identifier support ("English (US)"), Tiny/Light/Heavy depth data slicing, and cross-language FFI bindings. Please provide feedback.icu_datetime: Preview of date interval formatting in DateRangeFormatter and in FFI ("Dec 22 – 23, 2026"), plus support for flexible day periods ("8 in the morning") and other improvements.icu_experimental::currency: Overhauled the experimental CurrencyFormatter to support generic value representations, ISO code formatting (try_new_code), and accounting usage.icu_properties: New home for UTS#35 UnicodeSet parsing with support for :EastAsianWidth=: set syntax and Unicode 17 property updates.The JapaneseExtended calendar has been deprecated. CLDR removed the pre-Meiji eras because no implementation correctly implemented them. Clients of pr…
The ICU4X Technical Committee is happy to announce ICU4X 2.2, an update to our modular, portable, and secure i18n library.
Important changes in ICU4X 2.2 include:
icu_calendar: This release contains new APIs in icu_calendar, as well as some behavior changes in icu_calendar; see the migration notes section.
date.try_add_with_options() and date.try_until_with_options().Date::try_from_fields() API allows constructing dates from all kinds of constituent data: extended years, era years, ordinal months, month codes, etc., and supports different kinds of overflow handling.Month type replaces month codes in a type safe way. Date::try_from_codes() has been replaced with Date::try_new() which uses these better types. Various calendar-specific constructors for lunisolar calendars have also been refreshed.jiff, chrono, and time crates. See icu_datetime::input::third_party. We’re not yet sure if these integrations should live in ICU4X, in the third party crates, or some adapter crate, and are open to feedback!ffi/mvn), with the same set of supported APIs as our other cross-language bindings.The JapaneseExtended calendar has been deprecated. CLDR removed the pre-Meiji eras because no implementation correctly implemented them. Clients of pre-Meiji eras are encouraged to comment on CLDR-11400 and potentially write a custom east_asian_traditional::Rules implementation of the pre-Meiji lunisolar Japanese calendar.
Hijri<AstronomicalSimulation> has also been deprecated. It previously returned estimates of the Hijri calendar based on simulations published by Reingold et al. To restore this behavior, write a custom hijri::Rules implementation using calendrical_calculations.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
1.3.2 was released to clean up the range dependency on zerovec deliberately introduced in 1.3.0. It includes all previous 1.3.x changes
1.3.2 was released to clean up the range dependency on zerovec deliberately introduced in 1.3.0. It includes all previous 1.3.x changes
A subset of crates received a 1.3.1 patch release, to incorporate documentation fixes (https://github.com/unicode-org/icu4x/pull/4096, https://github.
A subset of crates received a 1.3.1 patch release, to incorporate documentation fixes (https://github.com/unicode-org/icu4x/pull/4096, https://github.com/unicode-org/icu4x/pull/4097, https://github.com/unicode-org/icu4x/pull/4099, https://github.com/unicode-org/icu4x/pull/4101). These crates were: icu_calendar, icu_casemap, icu_datetime, icu_locid_transform, icu_provider.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Non-exhaustive errors for locid, calendar, decimal, plurals (unicode-org#1792, unicode-org#1793)
calendar:
datetime:
decimal: No updateslocale_canonicalizer:
locid:
plurals:
ZeroVec (unicode-org#1240)properties:
codepointtrie:
crlify: New util for line ending conversionsdeduplicating_array: No updatesfixed_decimal:
litemap:
pattern: No updatesuniset: No updateswriteable: No updatesyoke: No updateszerofrom: No updateszerovec:
crabbake: Initial version of baked data provider (unicode-org#1825)segmenter:
DataPayload no longer needs a lifetime (unicode-org#1297, unicode-org#1279)
DataPayload no longer needs a lifetime (unicode-org#1297, unicode-org#1279)calendar:
DateTimeFormat integration (unicode-org#1339)datetime:
DateTimeFormat::resolve_components() (unicode-org#1362)TimeZoneFormatterConfig (unicode-org#1256)decimal: No updateslocale_canonicalizer:
LiteMap (unicode-org#1275)locid: No updatesplurals:
ZeroVec (unicode-org#1240)properties:
General_Category (unicode-org#1355)Canonical_Combining_Class property (unicode-org#1347)Script_Extensions property (unicode-org#1353)General_Category predicate functions (unicode-org#1310)Grapheme_Cluster_Break, Word_Break, and Sentence_Break Unicode properties (unicode-org#1233)codepointtrie: No changesdeduplicating_array: New utility for efficient serialized representation of data with duplicatesfixed_decimal:
FixedDecimal::from_str() (unicode-org#1265)litemap:
LiteMap::get_indexed() and LiteMap::find_index()pattern: No updatesuniset: No updateswriteable:
Writeable (unicode-org#1438)Writeable::writeable_to_string to return a Cow (unicode-org#1452)Writeable for all integers (unicode-org#1408)writeable::LengthHint a range (unicode-org#1400)assert_writeable_parts_eq and assert_writeable_eq (unicode-org#1522, unicode-org#1399)yoke:
Yokeable::Output from ZeroCopyFrom trait (unicode-org#1499)EitherCart (unicode-org#1484)attach_to_option_cart() (unicode-org#1348)Yokeable, add OwnedYokeable (unicode-org#1302)zerovec:
ZeroSlice and VarZeroSlice (unicode-org#1418, unicode-org#1371)ZeroVec/VarZeroVec error handling, consolidate ULEError type (unicode-org#1389)ZeroMapKV (unicode-org#1334)ZeroMap2d, a two-dimensional zero-copy map (unicode-org#1432)ZeroMap (unicode-org#1238)PlainOldULE to RawBytesULE (unicode-org#1413)EncodeAsVarULE (unicode-org#1385)EncodeAsVarULE for ZeroVec (unicode-org#1274, unicode-org#1407)PairULE validation function (unicode-org#1266)Updated to CLDR 40 (unicode-org#1216)
icu_properties (unicode-org#148)DateTimeFormat optimization: memory usage cut by two-thirds and perf improved by 40% (unicode-org#519)BlobDataProvider allowing for dynamic, asynchronous data loading (unicode-org#1084)zerovec utility crate and new benchmarks for ZeroMap (unicode-org#1082, unicode-org#1087)DateTimeFormat components bag (unicode-org#845)LocaleCanicalizer (unicode-org#1189, etc.)ListFormatter (unicode-org#1053)Static data provider without filesystem dependency (unicode-org#78)
ZeroVec and Yoke (unicode-org#652, unicode-org#667)no_std (unicode-org#812)icu4x-datagenUpdated CLDR to 39 (unicode-org#640)
icu_decimal (unicode-org#590)icu_locale_canonicalizer (unicode-org#417)DateTimeFormat gets support for
UnicodeSet gets preliminary support for L3a subset (unicode-org#478)PluralRules support E operand (unicode-org#407)WriteableZeroVecLiteMapFixedDecimalPatternicu_capi- Initial release of ICU4X. - Initial release of: - icu - icu_locid - icu_plurals - icu_datetime - icu_uniset - icu_provider - icu_provider_fs - icu_p
icuicu_locidicu_pluralsicu_datetimeicu_uniseticu_providericu_provider_fsicu_provider_cldricu_testdataicu4x_ecma402fixed_decimalYour coding agent can read these notes before it upgrades. Set up the MCP server →