From ed8fe2c3366ea952cb640bd54c2fe170e00d856f Mon Sep 17 00:00:00 2001 From: Markus Scherer Date: Tue, 26 Mar 2024 20:59:42 -0700 Subject: [PATCH] ICU-22707 ICU Unicode 16 version numbers --- icu4c/source/common/unicode/uchar.h | 4 ++-- icu4c/source/data/makedata.mak | 2 +- icu4c/source/data/unidata/changes.txt | 8 +++++--- .../core/src/main/java/com/ibm/icu/util/VersionInfo.java | 9 ++++++++- .../java/com/ibm/icu/dev/test/lang/UCharacterTest.java | 2 +- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/icu4c/source/common/unicode/uchar.h b/icu4c/source/common/unicode/uchar.h index 4572230d9fe..c85cdc95745 100644 --- a/icu4c/source/common/unicode/uchar.h +++ b/icu4c/source/common/unicode/uchar.h @@ -54,14 +54,14 @@ U_CDECL_BEGIN /*==========================================================================*/ /** * Unicode version number, default for the current ICU version. - * The actual Unicode Character Database (UCD) data is stored in uprops.dat + * The actual Unicode Character Database (UCD) data is stored in uprops.icu * and may be generated from UCD files from a different Unicode version. * Call u_getUnicodeVersion to get the actual Unicode version of the data. * * @see u_getUnicodeVersion * @stable ICU 2.0 */ -#define U_UNICODE_VERSION "15.1" +#define U_UNICODE_VERSION "16.0" /** * \file diff --git a/icu4c/source/data/makedata.mak b/icu4c/source/data/makedata.mak index 8694326337b..a9f7e0ed62f 100644 --- a/icu4c/source/data/makedata.mak +++ b/icu4c/source/data/makedata.mak @@ -19,7 +19,7 @@ U_ICUDATA_NAME=icudt76 U_ICUDATA_NAME=icudt76 !ENDIF U_ICUDATA_ENDIAN_SUFFIX=l -UNICODE_VERSION=15.1 +UNICODE_VERSION=16.0 ICU_LIB_TARGET=$(DLL_OUTPUT)\$(U_ICUDATA_NAME).dll # ICUMAKE diff --git a/icu4c/source/data/unidata/changes.txt b/icu4c/source/data/unidata/changes.txt index d1b28c7a9af..c265ff28cf2 100644 --- a/icu4c/source/data/unidata/changes.txt +++ b/icu4c/source/data/unidata/changes.txt @@ -95,8 +95,8 @@ export LD_LIBRARY_PATH=$ICU_OUT/icu4c/lib export UNICODE_TOOLS=~/oss/unicodetools/mine/src *** Unicode version numbers -- makedata.mak -- uchar.h +- icu4c/source/data/makedata.mak +- icu4c/source/common/unicode/uchar.h - com.ibm.icu.util.VersionInfo - com.ibm.icu.dev.test.lang.UCharacterTest.VERSION_ @@ -104,7 +104,9 @@ export UNICODE_TOOLS=~/oss/unicodetools/mine/src - Run ICU4C "configure" _after_ updating the Unicode version number in uchar.h so that the makefiles see the new version number. cd $ICU_OUT/icu4c - ICU_DATA_BUILDTOOL_OPTS=--include_uni_core_data ../../../doconfig-clang-dbg.sh + ICU_DATA_BUILDTOOL_OPTS=--include_uni_core_data CXXFLAGS="-DU_USING_ICU_NAMESPACE=0 -Wimplicit-fallthrough" CPPFLAGS="-DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1 -fsanitize=bounds" LDFLAGS=-fsanitize=bounds ../../src/icu4c/source/runConfigureICU --enable-debug --disable-release Linux/clang --prefix=/usr/local/google/home/mscherer/icu/mine/inst/icu4c > config.out 2>&1 ; tail config.out + +TODO *** data files & enums & parser code diff --git a/icu4j/main/core/src/main/java/com/ibm/icu/util/VersionInfo.java b/icu4j/main/core/src/main/java/com/ibm/icu/util/VersionInfo.java index 796f763d69f..d684c592ffb 100644 --- a/icu4j/main/core/src/main/java/com/ibm/icu/util/VersionInfo.java +++ b/icu4j/main/core/src/main/java/com/ibm/icu/util/VersionInfo.java @@ -217,6 +217,12 @@ public final class VersionInfo implements Comparable */ public static final VersionInfo UNICODE_15_1; + /** + * Unicode 16.0 version + * @stable ICU 76 + */ + public static final VersionInfo UNICODE_16_0; + /** * ICU4J current release version * @stable ICU 2.8 @@ -573,10 +579,11 @@ public final class VersionInfo implements Comparable UNICODE_14_0 = getInstance(14, 0, 0, 0); UNICODE_15_0 = getInstance(15, 0, 0, 0); UNICODE_15_1 = getInstance(15, 1, 0, 0); + UNICODE_16_0 = getInstance(16, 0, 0, 0); ICU_VERSION = getInstance(76, 0, 1, 0); ICU_DATA_VERSION = ICU_VERSION; - UNICODE_VERSION = UNICODE_15_1; + UNICODE_VERSION = UNICODE_16_0; UCOL_RUNTIME_VERSION = getInstance(9); UCOL_BUILDER_VERSION = getInstance(9); diff --git a/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/lang/UCharacterTest.java b/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/lang/UCharacterTest.java index 2d5ffd7d4f8..69207a4ae11 100644 --- a/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/lang/UCharacterTest.java +++ b/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/lang/UCharacterTest.java @@ -60,7 +60,7 @@ public final class UCharacterTest extends CoreTestFmwk /** * Expected Unicode version. */ - private final VersionInfo VERSION_ = VersionInfo.getInstance(15, 1); + private final VersionInfo VERSION_ = VersionInfo.getInstance(16, 0); // constructor ===================================================