ICU is the premier library for software internationalization, used by a wide array of companies and organizations.
The features for this release include support of CLDR 29 and Unicode 8.0 with grapheme/word/line breaking improved for Emoji sequences.
For more details, including migration issues, see below.
List of tickets fixed in ICU 57
CLDR 29: For details of the many changes in CLDR, see CLDR 29.
Grapheme/word/line breaking for emoji sequences, based on Unicode 9 proposed rules. See the Unicode emoji break proposal and the Unicode Emoji Technical Report Proposed Update describing the new emoji sequences. (#12081).
Four new Unicode emoji properties (#11802).
DateFormat day period formatting of "noon", "at night", etc. via new pattern characters b & B, and DateTimePatternGenerator support of C for selecting the customary form (#11872).
Except: Formatting of "0:00 midnight" has been disabled because it is confusing except for at the end of an interval.
RelativeDateTimeFormatter: Simpler formatting API (#12072).
More robust CLDR data loading for MeasureFormat (#11986, #12030), RelativeDateTimeFormatter (#12018), and DateIntervalFormat/DateIntervalInfo (#12013).
New simple & fast SimpleFormatter class for a trivial subset of MessageFormat as used in CLDR data, e.g., "{0} {1}" (#10896).
C API support for RelativeDateTimeFormatter (#12072).
Clang annotations for intended switch case fallthroughs, can now compile with -Wimplicit-fallthrough (#12166).
Internal header files can be compiled by themselves, for simpler alternative build scripts (#12141).
There is an impact on performance and memory impact for the first use of transliterators in a process, likely due to the number of new transforms added in CLDR 29 (#12380).
C: ICU4C 57.1 does not build with Visual Studio 2015 when using the included project files. See ticket for workaround. (#11822)
C: ICU4C 57.1 does not build under IBM i. This should be remedied in ICU 58. (#12701)
ICU4J classes are compiled against Java SE 6 runtime and the class file format was changed to Java 6. ICU4J 57 no longer supports JRE 5 or older Java runtime.
There are details on migration issues that may result from CLDR changes on CLDR 29 Migration.
The ICU license file has been reformatted to plain text and renamed (#12037).
New Japanese era Reiwa (令和) support
IANA tzdata2019a
Latest ICU4C 57 Release
Version: 57.2
Release Date: 2019-04-11
Source and binary downloads are available on the git/GitHub tag page: https://github.com/unicode-org/icu/releases/tag/release-57-2
Previous ICU4C 57 Releases
Version: 57.1
Release Date: 2016-03-23
Latest ICU4J 57 Release
Version: 57.2
Release Date: 2019-04-11
Source and binary downloads are available on the git/GitHub tag page: https://github.com/unicode-org/icu/releases/tag/release-57-2
Maven dependency:
<dependency>
<groupId>com.ibm.icu</groupId>
<artifactId>icu4j</artifactId>
<version>57.2</version>
</dependency>
Previous ICU4 Releases
Version: 57.1
Release Date: 2016-03-23