ICU 55 Milestone 1

Note: This is a development milestone release of ICU 55. This milestone is intended for those wishing to get an early look at ICU 55 new features and API changes. It is not recommended for production use.

Description

ICU is the premier library for software internationalization. This page contains the latest ICU 55 milestone 1 (55.0.1) build links.

Significant changes since ICU 54 include the following:

Common Changes

    • Collation: The root collation order is still based on the UCA 7.0 DUCET, but with most of the Cyrillic contractions removed as in UCA 8.0. The Cyrillic tailorings have been updated. (#11375, CLDR #7246)

    • ScientificNumberFormatter: (#10952) Formats numbers in scientific notation using either html markup or unicode superscript digits instead of using E notation. Removed ScientificFormatHelper (@draft ICU 54) in favor of ScientificNumberFormatter.

  • "UK" measurement system added, and returned for GB. (#11357)

    • Marked @draft ICU 55 in milestone 1, will be @stable in the release. (#11444)

  • Unicode algorithms fall back to root, not to unrelated default locale (#10823)

    • Root behavior is intended, appropriate, and well-defined for collation, segmentation, case mappings — unless language-specific data overrides it.

    • Behavior fixed where code used to fall back to the default locale: Collator.getInstance() (Java & C/C++) & BreakIterator.getInstance() (Java only)

  • Locale display name to use localized currency keyword value such as "English (US dollar)" instead of "English (Currency:USD)". (#11415)

  • Spoof Check data update to Unicode 7.0. Note that identifier skeletons have changed, with possible compatibility considerations. (#11262)

ICU4C Specific Changes

    • A new date format API udat_formatCalendar() allowing C API users to specify a calendar as a parameter, instead of UDate. This function does not need to create a defensive copy of a calendar, therefore, performs better in a tight loop. (#11293)

    • DateFormat::createInstanceForSkeleton: methods that allow the creation of DateFormat objects from skeleton strings as in JAVA. (#11139)

    • Create DateFormat objects up to 5x faster than before.

    • Time zone resources may be loaded separately from other ICU data, simplifying the procedures for updating an ICU installation to the latest time zone data. (#10942)

    • MeasureFormat.formatMeasurePerUnit() API added (e.g., "3.5 meters per second"; API modified from ICU 54 tech preview) (#11303) [The Java API will be in ICU 55, #11445]

ICU4J Specific Changes

Known Issues

  • ICU4C

      • 55m1 is known to fail under Solaris/GCC and SmartOS/GCC. A fix is in progress. (#11435)

      • There are compiler warnings in this milestone release which will be fixed before 55 final.

ICU4C Download

Version: 55 milestone 1 (55.0.1)

Release Date: 2014-12-17

(If the list of files does not appear above, see ICU4C Binaries.)

(If the list of files does not appear above, see ICU4C Source.)

To extract the source code, use the following command: svn export http://source.icu-project.org/repos/icu/icu/tags/milestone-55-0-1/

ICU4J Download

Version: 55 milestone 1 (55.0.1)

Release Date: 2014-12-17

(If the list of files does not appear above, see ICU4J files.)

To extract the source code, use the following command: svn export http://source.icu-project.org/repos/icu/icu4j/tags/milestone-55-0-1/