ICU 4.0 Archive

NOTE: This is an archive of a very old ICU release.

Use these links to find the source mentioned below:

Download ICU 4.0 release

Description

ICU is the premier library for software internationalization. ICU 4.0 is a major reference release of ICU, with new features, new APIs, and many bug fixes in data and code.

Major changes in ICU 4.0 include the following:

  • Common Changes

      • Unicode 5.1 (#5696)

      • Locale Data: ICU uses and supports data from Common Locale Data Repository (CLDR) 1.6 , which includes many improvements in quality and quantity of data.

      • add/removeLikelySubtags (#6124)

      • Charset converter file size improvement (#5987)

      • Date Interval Formatting (#6157) Note: Calendar type supported by this feature is Gregorian only in this release.

      • Improved Plural support

  • ICU4C Specific Changes

    • Additional Calendars

  • ICU4J Specific Changes

      • Charset

          • Graduated from Technology Preview status

          • ICU2022 Converter (#5791)

          • HZ Converter (#6128)

          • SCSU/BOCU-1 Converter (#2147)

          • Charset Converter Callback (#6144)

      • Thai Dictionary break iterator (#5385)

      • JDK TimeZone support (#5975)

      • Locale Service Provider (#5976)

      • More convenient formatting of year+month, day+month, and other combinations (#6304)

      • Simple Duration Formatting (#6303)

  • ICU4C Security Fixes

    • ICU4C 4.0 resolves the vulnerabilities CVE-2007-4770 and CVE-2007-4771 which were found in earlier versions of ICU. The standard ICU tests verify that these have been corrected, however, the updated versions of the previous tests may be run by applying the following patch to ICU 4.0: r24324. As well, ICU4C and ICU4J 4.0 resolve the issue underlying CVE-2008-1036.

ICU4C Download

Release Date

2009-01-15 (version 4.0.1)

Source Code Download

In addition to these .tar and .zip files, the code is also tagged in SubVersion with release-4-0-1.

Size

2.1 MB

4.1 MB

11.8 MB

12.5 MB

219 B

Description

ZIP file with the User Guide documentation

ZIP file with the API documentation

gzipped tar archive for Unix and other platforms

ZIP file for Windows platforms

MD5 hash

Binary Distribution Download

Here are the binary distributions of the ICU libraries on our reference platforms.

Size

9.0 MB

10.1 MB

7.3 MB

8.7 MB

7.5 MB

7.6 MB

377 B

Description

AIX 6.1 (PowerPC 64-bit) VisualAge 9

HP-UX 11iv3 (Itanium 64-bit) aCC A.06.15

Red Hat Enterprise Linux 5 (x86 32-bit) gcc 4.1.2

Solaris 10 (Sparc 64-bit) Forte 12

Windows (win32 x86 32-bit) Visual Studio 2005 (MSVC 8.0)

Windows (win64 x86 64-bit) Visual Studio 2005 (MSVC 8.0) - Cygwin Build

MD5 hash

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 4.0 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.

Maintenance Release Notes

ICU4C 4.0.1 is a maintenance release of ICU4C 4.0. The primary changes of this release were:

    • Updated time zone data to 2008i

    • Technical preview of string search implementation using Boyer-Moore algorithm (#6286). For detail information, please see the tech note here.

    • #5691 Conversion: consistent illegal sequences

    • #6435 Bad @stable ICU4.0 tags

    • #6597 TestDisplayNamesMeta failure

    • #6670 Test failure in format/TimeZoneTest/TestShortZoneIDs

Older 4.0 Releases

Here are links to the older ICU4C 4.0.x releases.

Version

4.0

Description

First release (2008-07-02)

ICU4J Download

Release Date

2009-08-26 (version 4.0.1.1)

Downloads

In addition to these .jar, the code is also tagged in SubVersion with release-4-0-1-1.

Size

1.5 MB

14.4 MB

5.4 MB

2.4 MB

47 KB

288 B

Description

Jar file containing the documentation.

Jar file containing the sources.

Jar file containing binaries.

Jar file containing binaries for charsets.

Jar file containing binaries for Locale SPI.

MD5 hash

Platform Installation Notes

Please be sure to view the readme.html that is included in ICU4J. Most installation questions can be answered there.

Maintenance Release Notes

ICU4J 4.0.1.1 is a maintenance release of ICU4J 4.0. The primary changes of this release were:

    • Updated time zone data to 2009l

    • #6921 Performance degration in RuleBasedCollator

    • #7014 TimeZone.getTimeZone("Asia/Amman") returns GMT with tzdata 2009i

ICU4J 4.0.1.1 also contains changes made for former ICU4J 4.0 maintenance releases:

    • #6361 Invalid behavor in MessageFormat for null values

    • #6422 DurationFormat.getInstance(ULocale) throws MissingResourcesException

    • #6459 ICU4J TimeZone#setDefault messes up historic time zone rules in JDK Calendar

    • #6502 Holiday.getDisplayName(); doesn't work

    • #6503 DateIntervalFormat creation is too slow

    • #6612 ICU4J charset converter should not read source data beyond Buffer.limit()

    • #6620 Default locale always taken for lenient parse of RuleBasedNumberFormat

    • #6644 getDisplayName problem in ICU4J

    • #6672 ULocale#getDefault() strips off keywords

    • #6670 Test failure in format/TimeZoneTest/TestShortZoneIDs

Older 4.0 Releases

Here are links to the older ICU4J 4.0.x releases.

Version

4.0

4.0.1

Description

First release (2008-07-02)

Maintenance release 1 (2009-01-15)