Download ICU 3.8 release
Description
ICU is the premier library for software internationalization. ICU 3.8 is a
major reference release of ICU, with new features, new APIs, and many bug
fixes in data and code.
Major changes in ICU 3.8 include the following:
-
Common Changes
- Locale Data: ICU uses and supports data from
Common Locale
Data Repository (CLDR) 1.5.0.1, which includes many improvements in
quality and quantity of data.
- Rule Based Time Zone: This set of classes provides
the ability to read and write time zone data in RFC2445 VTIMEZONE
format. This also provides access Olson timezone transitions.
- Timezone Formatting: This has changed to give more
human readable results.
- Relative Date/Time Formatting: A draft of the
relative date/time format class has been added. This functionality can
be accessed through the DateFormat::createDateInstance or
DateFormat.getInstance factory method. It provides the ability to format
localized dates in terms of "yesterday", "today" and "tomorrow", instead
of a specific only date or time.
-
Demonstrations and Tools
-
ICU4C Specific Changes
- Flexible Date/Time Formatting: A draft of flexible
date/time format generator has been added. This allows multiple date
and time format patterns to be generated that are valid for specific
locales. This funtionality can be accessed through the
DateTimePatternGenerator API.
- Time Zones: The default time zone is detected more
accurately on Unix machines.
-
Additional Calendars
- @calendar=taiwan: This calendar is a variant
of the Gregorian calendar used in Taiwan.
- @calendar=indian: This is the Indian national
calendar.
- @calendar=persian: This is the Persian
calendar. It is also known as the Jalāli Calendar. It is used
in several Arabic countries.
-
UnicodeSet
- The Freezable design pattern is now supported, which can
improve performance for the contains() and span() methods on frozen
UnicodeSet objects.
- A span function was added for iterating through strings.
- The containsAll(string) and containsNone(string) now support
set strings, instead of only codepoints.
-
Performance
- Charset conversion performance has been enhanced. The amount of
improvement varies depending on the converter being used and
platform being used.
- Rule based transliterator construction performance has been
improved.
-
ICU4J Specific Changes
-
Additional Calendars
- @calendar=taiwan: This calendar is a variant
of the Gregorian calendar used in Taiwan.
- @calendar=indian: This is the Indian national
calendar.
-
Charset Conversion
- The ICU4J implementation of java.nio.charset.Charset
is included as a Technology Preview. Use
with caution.
- CESU-8, UTF-7 and ISCII converters have been ported from ICU4C
to ICU4J.
- Several bugs involving proper mapping of characters to or from
a charset have been fixed.
- Performance has been improved for several converters.
- BiDi: A new BiDi implementation was added.
- PluralFormat: This new MessageFormat type was
added. This functionality is helpful for Eastern European languages
that have different plural inflections of a word at regular intervals
of a described quantity.
- DurationFormat: This new implementation can format
a duration in time such as "2 hours, 46 minutes, and 40 seconds".
- MessageFormat named arguments: Arguments can now
be named in MessageFormat.
Release Date
2007-Dec-12 (version 3.8.1)
Source Code Download
In addition to these .tar and .zip files, the code is also tagged in
SubVersion with release-3-8-1.
Binary Distribution Download
Here are the binary distributions of the ICU libraries on our reference
platforms.
You can verify the downloads with the following MD5 sum file
Platform Installation Notes
Please be sure to view the readme.html
that is included in ICU. Most installation questions can be answered there.
The z/OS (OS/390)
unpax-icu.sh script is required to unpackage the compressed tar file on
z/OS, and the i5/OS (OS/400)
unpax-icu.sh script is required to unpackage the compressed file on
i5/OS.
The ICU4C 3.8 source downloads contains a pre-built .dat data archive with
ICU's data rather than the data source files. This is to simplify the build
process for the majority of users and to reduce platform porting issues. If
you need the data source files for customization, then please download the
ICU source code from SubVersion repository. If you
need to remove data from ICU's data library, you can also consider using the
new icupkg tool to modify the data built into ICU.
Known Issues, Bugs and Patches
As a byproduct,
the behavior of date formatting and parsing has changed in ways that may
requiring recoding on your part depending on your usage. For more
information, see Formatting Dates
and Times in the User Guide.
For the list of known issues with ICU4C 3.8 please see the readme
file.
Maintenance Release Notes
ICU4C 3.8.1 is a maintenance release of ICU4C 3.8. The primary changes
of this release were:
- Updated time zone data to Olson 2007j.
- Updated to CLDR 1.5.1 data (Tickets
6010
6047).
- Various string search fixes (Tickets
4038
4279
5024
5950
5993).
- Various collation fixes (Tickets
5913
6004).
- Various time zone parsing, formatting and calculation fixes (Tickets
5934
5965
5971
5990).
- Various font layout engine fixes (Tickets
5906
5923
5991
6006
6007).
- Various platform specific fixes (Tickets
5951
5985
5992
5994
6054).
- Improved BiDi implementation to handle multiple levels (Ticket
6032).
Older 3.8 Releases
Here are links to the older 3.8.x releases.
| Version |
Description |
| 3.8.0 |
First release |
Release Date
2007-Dec-12 (version 3.8.1)
Downloads
In addition to these .jar, the code is also tagged in SubVersion with release-3-8-1.
Platform Installation Notes
Please be sure to view the readme.html
that is included in ICU4J. Most installation questions can be answered
there.
As a byproduct,
the behavior of date formatting and parsing has changed in ways that may
requiring recoding on your part depending on your usage. For more
information, see Formatting Dates
and Times in the User Guide.
Starting in 2008 one of ICU4J's tests started failing. The failing test
(ICU/Duration/ICUDurationTest/TestBasics) does not affect library code. To
fix the failing test, you can patch your copy of
ICU4J with this patch
to the test.
The ICU4J implementation of java.nio.charset.Charset is included
as a Technology Preview. Not all functionality from the java.nio.Charset
interfaces is operational, and some converters are known to mis-handle
Unicode supplementary characters. Use with caution.
For the list of known issues with ICU4J 3.8 please see the readme
file.
Maintenance Release Notes
ICU4J 3.8.1 is a maintenance release of ICU4J 3.8. The primary changes
of this release were:
Older 3.8 Releases
Here are links to the older 3.8.x releases.
| Version |
Description |
| 3.8.0 |
First release |
|