Index: readme.html |
diff --git a/readme.html b/readme.html |
index 486a78d435c635eee5aac5a1174d28a18a22c8c4..2461bfafc10803b0bb18069a3b3001a842900c9d 100644 |
--- a/readme.html |
+++ b/readme.html |
@@ -3,25 +3,26 @@ |
<html lang="en-US" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> |
<head> |
- <title>ReadMe for ICU 56.1</title> |
+ <title>ReadMe for ICU 58.1</title> |
<meta name="COPYRIGHT" content= |
- "Copyright (c) 1997-2015 IBM Corporation and others. All Rights Reserved." /> |
+ "Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html"/> |
+ <!-- meta name="COPYRIGHT" content= |
+ "Copyright (c) 1997-2016 IBM Corporation and others. All Rights Reserved." / --> |
<meta name="KEYWORDS" content= |
"ICU; International Components for Unicode; ICU4C; what's new; readme; read me; introduction; downloads; downloading; building; installation;" /> |
<meta name="DESCRIPTION" content= |
"The introduction to the International Components for Unicode with instructions on building, installation, usage and other information about ICU." /> |
- <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> |
+ <meta http-equiv="content-type" content="text/html; charset=utf-8" /> |
<link type="text/css" href="./icu4c.css" rel="stylesheet"/> |
</head> |
- |
-<!-- |
- classes to use with the "body" - |
+ |
+<!-- |
+ classes to use with the "body" - |
draft - if the release note is itself a draft (May be combined with the other two) |
rc - if the release note is a release candidate |
milestone - if the release note is a milestone release |
--> |
- |
- <!-- <body class="milestone"> --> |
+ |
<body class="rc"> |
<!-- <body> --> |
<p class="only-draft"><b>Note:</b> This is a draft readme.</p> |
@@ -31,7 +32,7 @@ |
International Components for Unicode<br/> |
<span class="only-rc">Release Candidate</span> |
<span class="only-milestone">(Milestone Release)</span> |
- <abbr title="International Components for Unicode">ICU</abbr> 56.1 ReadMe |
+ <abbr title="International Components for Unicode">ICU</abbr> 58.1 ReadMe |
</h1> |
<!-- Shouldn't need to comment/uncomment this paragraph, just change the body class --> |
@@ -43,9 +44,11 @@ |
<p class="note only-rc">This is a release candidate version of ICU4C. |
It is not recommended for production use.</p> |
- <p>Last updated: 2015-Sep-07<br /> |
- Copyright © 1997-2015 International Business Machines Corporation and |
- others. All Rights Reserved.</p> |
+ <p>Last updated: 2016-Sep-28<br/> |
+ Copyright © 2016 and later: Unicode, Inc. and others. License & terms of use: |
+ <a href="http://www.unicode.org/copyright.html">http://www.unicode.org/copyright.html</a><br/> |
+ Copyright © 1997-2016 International Business Machines Corporation and others. |
+ All Rights Reserved.</p> |
<!-- Remember that there is a copyright at the end too --> |
<hr/> |
@@ -58,12 +61,14 @@ |
<li><a href="#News">What Is New In This release?</a></li> |
+ <li><a href="#RecentPreviousChanges">Changes in recent previous releases</a></li> |
+ |
<li><a href="#Download">How To Download the Source Code</a></li> |
<li><a href="#SourceCode">ICU Source Code Organization</a></li> |
<li> |
- <a href="#HowToBuild">How To Build And Install ICU</a> |
+ <a href="#HowToBuild">How To Build And Install ICU</a> |
<ul > |
<li><a href="#RecBuild">Recommended Build Options</a></li> |
@@ -88,7 +93,7 @@ |
<li><a href="#HowToPackage">How To Package ICU</a></li> |
<li> |
- <a href="#ImportantNotes">Important Notes About Using ICU</a> |
+ <a href="#ImportantNotes">Important Notes About Using ICU</a> |
<ul > |
<li><a href="#ImportantNotesMultithreaded">Using ICU in a Multithreaded |
@@ -101,7 +106,7 @@ |
</li> |
<li> |
- <a href="#PlatformDependencies">Platform Dependencies</a> |
+ <a href="#PlatformDependencies">Platform Dependencies</a> |
<ul > |
<li><a href="#PlatformDependenciesNew">Porting To A New |
@@ -146,8 +151,6 @@ |
<li>Calendar specific date and time manipulation</li> |
- <li>Complex text layout for Arabic, Hebrew, Indic and Thai</li> |
- |
<li>Text boundary analysis for finding characters, word and sentence |
boundaries</li> |
</ul> |
@@ -227,17 +230,91 @@ |
</table> |
<p><strong>Important:</strong> Please make sure you understand the <a href= |
- "license.html">Copyright and License Information</a>.</p> |
+ "http://source.icu-project.org/repos/icu/icu/trunk/LICENSE">Copyright and License Information</a>.</p> |
<h2><a name="News" href="#News" id="News">What is new in this |
release?</a></h2> |
+ <h3>New License</h3> |
+ <p>This is the first release of ICU since the project |
+ <a href="http://blog.unicode.org/2016/05/icu-joins-unicode-consortium.html">joined |
+ the Unicode Consortium</a>. The license has changed to the |
+ <a href="http://www.unicode.org/copyright.html#License">Unicode license</a> |
+ (which is similar to the ICU 1.8.1-57 license).</p> |
+ |
+ <h3>Layout Engine Removed</h3> |
+ <p>The LayoutEngine was deprecated in ICU 54 and has now been removed. |
+ see <a href='http://userguide.icu-project.org/layoutengine'>the |
+ User's Guide</a> for more details and migration recommendations. |
+ </p> |
+ <p> |
+ Note that the ParagraphLayout (layoutex) library is not deprecated. |
+ There is a new option, <tt>--enable-layoutex</tt> which will build |
+ the ParagraphLayout library using <a href="http://harfbuzz.org">HarfBuzz</a> |
+ instead of ICU as the layout engine. See <a href="http://userguide.icu-project.org/layoutengine"> |
+ the users' guide</a> for more information about how to build. |
+ </p> |
+ <p> |
+ The options <tt>--disable-layout</tt> |
+ or <tt>--with-layout=false</tt> are being retained for |
+ compatibility, but have no effect. |
+ </p> |
+ |
+ <h3>Changes in CLDR 30 data</h3> |
+ <ul> |
+ <li>For some combinations of numbering system (arab, arabext, latn) and/or locale |
+ (ar, fa, he), there were changes to the bidirectional control characters used |
+ with certain symbols (percent, minus, plus), and changes to number patterns |
+ (currency and/or percent, including addition of bidirectional control |
+ characters in some cases).</li> |
+ <li>The bidirectional controls used for such purposes now include U+061C ARABIC |
+ LETTER MARK (ALM), which requires use of the bidirectional algorithm from |
+ Unicode 6.3 or later.</li> |
+ <li>The time separator for Norwegian locales (nb, nn) was changed to be ‘:’ |
+ throughout.</li> |
+ <li>For more information on CLDR 30 changes, see |
+ <a href="http://cldr.unicode.org/index/downloads/cldr-30">CLDR 30 download |
+ page</a>.</li> |
+ </ul> |
+ |
+ <h3>Windows build changes</h3> |
+ <p>Windows builds using Visual Studio now require Visual Studio 2015; otherwise you can |
+ use cygwin or similar to build for Windows.</p> |
+ |
<h3>API Changes</h3> |
- <p>See the <a href="APIChangeReport.html">API Change Report</a> for a complete |
+ <p>See the <a href="APIChangeReport.html">API Change Report</a> for a complete |
list of APIs added, removed, or changed in this release.</p> |
+ <!-- standing item --> |
+ <h3>Full release notes and the latest updates</h3> |
+ <p>The previous list concentrates on <em>changes that affect existing |
+ applications migrating from previous ICU releases</em>. |
+ For more news about this release, as well as late-breaking news, see the |
+ <a href="http://site.icu-project.org/download/57">ICU download page</a>.</p> |
+ |
+ <h3>Upcoming changes</h3> |
+ <p>Please note the following changes planned for an upcoming ICU4C release (likely ICU 59):</p> |
+ <ul> |
+ <li>Compiler support for C++11 will be required.</li> |
+ <li>Support for Windows XP will be removed.</li> |
+ </ul> |
+ |
+ <h2><a name="RecentPreviousChanges" href="#RecentPreviousChanges" id="RecentPreviousChanges">Changes in recent |
+ previous releases</a></h2> |
+ |
+ <!-- ICU 57 items --> |
+ <h3>ICU 57: Changes related to new CLDR data and specifications</h3> |
+ <ul> |
+ <li>Time formats may include the new day period characters b, B, and |
+ these may produced in response to the new skeleton character C used |
+ with DateTimePatternGenerator.</li> |
+ <li>In day period rules, the use of "after" has been deprecated.</li> |
+ <li>The measurement unit "proportion-karat" has been renamed to |
+ "concentr-karat".</li> |
+ </ul> |
+ |
<!-- ICU 56 items --> |
- <h3>COLON withdrawn as date/time pattern character</h3> |
+ <h3>ICU 56: COLON withdrawn as date/time pattern character</h3> |
<p>In ICU 55, COLON was introduced as a date/time pattern character |
to be replaced by the value of the timeSeparator for the number |
system being used; a corresponding new UDateFormatField |
@@ -248,28 +325,13 @@ |
value of the timeSeparator; a new pattern character may be |
assigned in the future.</p> |
- <h3>ICU Plugins: disabled by default</h3> |
+ <h3>ICU 56: ICU Plugins are disabled by default</h3> |
<p>ICU Plugins are now disabled by default. They may be enabled |
with the configure option |
<tt>--enable-plugins</tt> or by means of |
<tt>#define UCONFIG_ENABLE_PLUGINS</tt>. |
</p> |
- <!-- ICU 55 items --> |
- <h3>ICU 55: Layout Engine breaking API change</h3> |
- <p>The LayoutEngine (already deprecated) has had the function |
- <tt>LEFontInstance::getFontTable(LETag, size_t &length)</tt> |
- since ICU 52. Its implementation was optional. In ICU 55, this |
- version |
- of <tt>getFontTable</tt> has been made pure virtual, and the |
- version without a length (<tt>getFontTable(LETag)</tt>) has been |
- completely removed. This is a breaking change for users who have |
- not implemented the two-argument <tt>getFontTable()</tt> |
- function in their <tt>LEFontInstance</tt> subclasses. |
- The break is intentional, as the one-argument version cannot be |
- made secure. See <tt>LEFontInstance</tt> api docs for more detail. |
- </p> |
- |
<h3>ICU 55: Deprecations in PluralRules (plurrule.h)</h3> |
<p>The following PluralRules methods never had an implementation |
but were inadvertently marked @stable; they have now been |
@@ -292,23 +354,8 @@ |
<li><tt>uidna_toUnicode</tt></li> |
</ul> |
- <!-- ICU 54 items --> |
- <h3>ICU 54: Deprecation of Layout Engine</h3> |
- <p>The LayoutEngine is now deprecated. Please |
- see <a href='http://userguide.icu-project.org/layoutengine'>the |
- User's Guide</a> for more details and migration recommendations. |
- In the future, passing "<tt>--enable-layout</tt>" to configure |
- will be required to |
- enable the layout engine.</p> |
- <p> |
- Note that the ParagraphLayout (layoutex) library is not deprecated. |
- There is a new option, <tt>--enable-layoutex</tt> which will build |
- the ParagraphLayout library using <a href="http://harfbuzz.org">HarfBuzz</a> |
- instead of ICU as the layout engine. See <a href="http://userguide.icu-project.org/layoutengine"> |
- the users' guide</a> for more information about how to build. |
- </p> |
<h3>ICU 54: Deprecation of Collation Short Strings</h3> |
- <p>The collation short naming scheme and its API functions are deprecated. |
+ <p>The collation short naming scheme and its API functions are deprecated. |
Use ucol_open() with language tag collation keywords instead (see <a href="http://userguide.icu-project.org/collation/api">Collation API Details</a>). For example, <code>ucol_open("de-u-co-phonebk-ka-shifted", &errorCode)</code> |
for German Phonebook order with "ignore punctuation" mode.</p> |
@@ -324,13 +371,6 @@ |
the individual methods did not correctly indicate the deprecated status; they |
do as of ICU 54. Use the MeasureFormat class and its methods instead.</p> |
- <!-- standing item --> |
- <h3>Full release notes and the latest updates</h3> |
- <p>The previous list concentrates on <em>changes that affect existing |
- applications migrating from previous ICU releases</em>. |
- For more news about this release, as well as late-breaking news, see the |
- <a href="http://site.icu-project.org/download/54">ICU download page</a>.</p> |
- |
<!-- end of What's New items --> |
<h2><a name="Download" href="#Download" id="Download">How To Download the |
@@ -390,7 +430,7 @@ |
</tr> |
<tr> |
- <td>license.html</td> |
+ <td>LICENSE</td> |
<td>Contains the text of the ICU license</td> |
</tr> |
@@ -429,11 +469,6 @@ |
</tr> |
<tr> |
- <td><i><ICU></i>/source/<b>layout</b>/</td> |
- |
- <td>Contains the ICU complex text layout engine. (Deprecated)</td> |
- </tr> |
- <tr> |
<td><i><ICU></i>/source/<b>layoutex</b>/</td> |
<td>Contains the ICU paragraph layout engine.</td> |
@@ -816,7 +851,7 @@ |
<ul> |
<li>Microsoft Windows</li> |
- <li>Microsoft Visual C++ (see the ICU download page for the currently compatible version)</li> |
+ <li>Microsoft Visual C++ (see the ICU download page for the currently compatible version)</li> |
</ul> |
<p class="note"><a href="#HowToBuildCygwin">Cygwin</a> is required if using a version of MSVC other than the one |
compatible with the supplied project files or if other compilers are used to build ICU. (e.g. GCC)</p> |
@@ -839,7 +874,7 @@ |
"#HowToBuildWindowsCommandLine">command line note below</a> if you want to |
build from the command line instead.</li> |
- <li>Set the active platform to "Win32" or "x64" (See <a href="#HowToBuildWindowsPlatform">Windows platform note</a> below) |
+ <li>Set the active platform to "Win32" or "x64" (See <a href="#HowToBuildWindowsPlatform">Windows platform note</a> below) |
and configuration to "Debug" or "Release" (See <a href="#HowToBuildWindowsConfig">Windows configuration note</a> below).</li> |
<li>Choose the "Build" menu and select "Rebuild Solution". If you want to |
@@ -863,7 +898,7 @@ |
<samp><i><ICU></i>\source\allinone\icucheck.bat <b>x86</b> <b>Release</b></samp> |
or |
<samp><i><ICU></i>\source\allinone\icucheck.bat <b>x64</b> <b>Release</b></samp></li> |
- </ul> |
+ </ul> |
<h4>Running the Tests from within Visual Studio</h4> |
@@ -902,10 +937,10 @@ |
use Cygwin with this compiler to build ICU, and you can refer to the <a href= |
"#HowToBuildCygwin">How To Build And Install On Windows with Cygwin</a> |
section for more details.</p> |
- |
+ |
<p><a name="HowToBuildWindowsPlatform" id= |
"HowToBuildWindowsPlatform"><strong>Setting Active Platform |
- Note:</strong></a> Even though you are able to select "x64" as the active platform, if your operating system is |
+ Note:</strong></a> Even though you are able to select "x64" as the active platform, if your operating system is |
not a 64 bit version of Windows, the build will fail. To set the active platform, two different possibilities are:</p> |
<ul> |
@@ -932,7 +967,7 @@ |
</ul> |
<p><a name="HowToBuildWindowsBatch" id="HowToBuildWindowsBatch"><strong>Batch |
- Configuration Note:</strong></a> If you want to build the Win32 and x64 platforms and |
+ Configuration Note:</strong></a> If you want to build the Win32 and x64 platforms and |
Debug and Release configurations at the same time, choose "Build" menu, and select "Batch |
Build...". Click the "Select All" button, and then click the "Rebuild" |
button.</p> |
@@ -949,7 +984,7 @@ |
<li>Microsoft Visual C++ (when gcc isn't used).</li> |
<li> |
- Cygwin with the following installed: |
+ Cygwin with the following installed: |
<ul> |
<li>bash</li> |
@@ -1014,7 +1049,7 @@ |
"HowToWindowsConfigureICU"><strong>Configuring ICU on Windows |
NOTE:</strong></a> </p> |
<p> |
- Ensure that the order of the PATH is MSVC, Cygwin, and then other PATHs. The configure |
+ Ensure that the order of the PATH is MSVC, Cygwin, and then other PATHs. The configure |
script needs certain tools in Cygwin (e.g. grep). |
</p> |
<p> |
@@ -1106,7 +1141,7 @@ |
you may want to give runConfigureICU. If you are not using the |
runConfigureICU script, or your platform is not supported by the script, you |
may need to set your CC, CXX, CFLAGS and CXXFLAGS environment variables, and |
- type <tt>"./configure"</tt>. |
+ type <tt>"./configure"</tt>. |
HP-UX users, please see this <a href="#ImportantNotesHPUX">note regarding |
HP-UX multithreaded build issues</a> with newer compilers. Solaris users, |
please see this <a href="#ImportantNotesSolaris">note regarding Solaris |
@@ -1202,13 +1237,13 @@ |
<pre><samp>export _CXX_PSYSIX="CEE.SCEELIB(C128N)":"CBC.SCLBSID(IOSTREAM,COMPLEX)"</samp></pre> |
</li> |
- |
+ |
<li>When building ICU data, the heap size may need to be increased with the following |
environment variable: |
<pre><samp>export _CEE_RUNOPTS="HEAPPOOLS(ON),HEAP(4M,1M,ANY,FREE,0K,4080)"</samp></pre> |
</li> |
- |
+ |
<li>The rest of the instructions for building and testing ICU on z/OS with |
UNIX System Services are the same as the <a href="#HowToBuildUNIX">How To |
@@ -1308,7 +1343,8 @@ Data set name type : PDS</samp> |
<li>ILE C/C++ Compiler installed on the system</li> |
<li>The latest IBM tools for Developers for IBM i — |
- <a href='http://www.ibm.com/servers/enable/site/porting/tools/'>http://www.ibm.com/servers/enable/site/porting/tools/</a> |
+ <a href='https://www-356.ibm.com/partnerworld/wps/servlet/ContentHandler/pw_com_porting_tools_index'>https://www-356.ibm.com/partnerworld/wps/servlet/ContentHandler/pw_com_porting_tools_index</a> |
+ <!-- formerly http://www.ibm.com/servers/enable/site/porting/tools/'>http://www.ibm.com/servers/enable/site/porting/tools/</a> --> |
<!-- formerly: http://www.ibm.com/servers/enable/site/porting/iseries/overview/gnu_utilities.html --> |
</li> |
</ul> |
@@ -1366,7 +1402,7 @@ cd ../../..</samp></pre> |
<li>Build ICU. <i>(Note: Do not use the -j option)</i> <pre><samp>gmake</samp></pre></li> |
- <li>Test ICU. <pre><samp>gmake check</samp></pre> |
+ <li>Test ICU. <pre><samp>gmake check</samp></pre> |
(The <tt> QIBM_MULTI_THREADED=Y</tt> flag will be automatically applied to intltest - |
you can look at the <a href= |
"http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=/apis/concept4.htm"> |
@@ -1392,7 +1428,7 @@ cd ../../..</samp></pre> |
<th align="left">/buildB</th><td>an empty directory, it will contain ICU built for B<br />(HaikuOS in this case)</td> |
</tr> |
</table> |
- |
+ |
<ol> |
<li>Check out or unpack the ICU source code into the /icu directory.You will have the directories /icu/source, etc.</li> |
<li>Build ICU in /buildA normally (using runConfigureICU or configure): |
@@ -1499,23 +1535,15 @@ gnumake</pre> |
</tr> |
<tr> |
- <td>Layout Engine</td> |
- |
- <td>icule<i>XY</i>.dll</td> |
- |
- <td>libicule.so.<i>XY</i>.<i>Z</i></td> |
- |
- <td>An optional engine for doing font layout.</td> |
- </tr> |
- |
- <tr> |
<td>Layout Extensions Engine</td> |
<td>iculx<i>XY</i>.dll</td> |
<td>libiculx.so.<i>XY</i>.<i>Z</i></td> |
- <td>An optional engine for doing font layout that uses parts of ICU.</td> |
+ <td>An optional engine for doing paragraph layout that uses |
+ parts of ICU. |
+ HarfBuzz is required.</td> |
</tr> |
<tr> |
@@ -1787,7 +1815,7 @@ gnumake</pre> |
<strong>unicode/p<i>XXXX</i>.h</strong> (others: pwin32.h, ppalmos.h, |
..): Platform-dependent typedefs and defines:<br /> |
<br /> |
- |
+ |
<ul> |
<li>Generic types like UBool, int8_t, int16_t, int32_t, int64_t, |
@@ -1805,7 +1833,7 @@ gnumake</pre> |
<strong>unicode/putil.h, putil.c</strong>: platform-dependent |
implementations of various functions that are platform dependent:<br /> |
<br /> |
- |
+ |
<ul> |
<li>uprv_isNaN, uprv_isInfinite, uprv_getNaN and uprv_getInfinity for |
@@ -1846,12 +1874,9 @@ gnumake</pre> |
these #ifdef's can cause testing problems for your platform.</li> |
</ul> |
<hr /> |
- |
- <p>Copyright © 1997-2015 International Business Machines Corporation and |
- others. All Rights Reserved.<br /> |
- IBM Globalization Center of Competency - San José<br /> |
- 4400 North First Street<br /> |
- San José, CA 95134<br /> |
- USA</p> |
+ <p> Copyright © 2016 and later: Unicode, Inc. and others. License & terms of use: |
+ <a href="http://www.unicode.org/copyright.html">http://www.unicode.org/copyright.html</a><br/> |
+ Copyright © 1997-2016 International Business Machines Corporation and others. |
+ All Rights Reserved.</p> |
</body> |
</html> |