diff --git a/icu4c/source/data/curr/ha_NE.txt b/icu4c/source/data/curr/ha_NE.txt deleted file mode 100644 index 771143add00..00000000000 --- a/icu4c/source/data/curr/ha_NE.txt +++ /dev/null @@ -1,63 +0,0 @@ -// © 2016 and later: Unicode, Inc. and others. -// License & terms of use: http://www.unicode.org/copyright.html -// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml -ha_NE{ - CurrencyPlurals{ - BOB{ - one{"boliviano na ƙasar Bolivia"} - other{"Boloviano na ƙasar Bolivia"} - } - CLP{ - one{"peso na ƙasar Chile"} - other{"Peso na ƙasar Chile"} - } - COP{ - one{"peso na ƙasar Columbia"} - other{"Peso na ƙasar Columbia"} - } - CRC{ - one{"colón na ƙasar Costa Rica"} - other{"colón na ƙasar Costa Rica"} - } - GYD{ - one{"dalar Guyana"} - other{"Dalar Guyana"} - } - NIO{ - one{"córdoba na ƙasar Nicaragua"} - other{"Córdoba na ƙasar Nicaragua"} - } - PAB{ - one{"balboa na ƙasar Panama"} - other{"Balboa na ƙasar Panama"} - } - PEN{ - one{"sol na ƙasar Peru"} - other{"Sol na ƙasar Peru"} - } - PHP{ - one{"kuɗin Philippine"} - other{"Kuɗin Philippine"} - } - PYG{ - one{"guarani na ƙasar Paraguay"} - other{"Guarani na ƙasar Paraguay"} - } - SRD{ - one{"dalar ƙasar Suriname"} - other{"Dalar ƙasar Suriname"} - } - USD{ - one{"Dalar Amirka"} - other{"Dalar Amurka"} - } - VES{ - one{"bolívar na ƙasar Venezuela"} - other{"Bolívar na ƙasar Venezuela"} - } - } - CurrencyUnitPatterns{ - one{"{0} {1}"} - other{"{0} {1}"} - } -} diff --git a/icu4c/source/data/lang/ha_NE.txt b/icu4c/source/data/lang/ha_NE.txt deleted file mode 100644 index 3a5208da5c9..00000000000 --- a/icu4c/source/data/lang/ha_NE.txt +++ /dev/null @@ -1,41 +0,0 @@ -// © 2016 and later: Unicode, Inc. and others. -// License & terms of use: http://www.unicode.org/copyright.html -// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml -ha_NE{ - Keys{ - hc{"Zagayen Awowi"} - } - Languages{ - en_CA{"Turanci Kanada"} - en_GB{"Turanci Biritaniya"} - en_US{"Turanci Amirka"} - fa{"Farisa"} - ff{"Fulah"} - hi_Latn{"Hindi (Latinanci)"} - jv{"Jafananci"} - ko{"Harshen Koreya"} - ms{"Harshen Malai"} - sah{"Sakha"} - xh{"Bazosa"} - } - Languages%short{ - en_GB{"Turancin Ingila"} - en_US{"Turancin Amurka"} - } - Languages%variant{ - hi_Latn{"Hinglish"} - } - Scripts{ - Armn{"Armeniyawa"} - Cans{"Haɗaɗɗun Gaɓoɓin Ƴan Asali na Kanada"} - Grek{"Girka"} - Hans{"Sauƙaƙaƙƙen"} - Jamo{"Jamo"} - Thai{"Thai"} - } - Types{ - hc{ - h11{"Tsarin Awowi 12(0–11)"} - } - } -} diff --git a/icu4c/source/data/region/ha_NE.txt b/icu4c/source/data/region/ha_NE.txt deleted file mode 100644 index ef2908410f7..00000000000 --- a/icu4c/source/data/region/ha_NE.txt +++ /dev/null @@ -1,31 +0,0 @@ -// © 2016 and later: Unicode, Inc. and others. -// License & terms of use: http://www.unicode.org/copyright.html -// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml -ha_NE{ - Countries{ - 053{"Asturesiya"} - AR{"Arjantiniya"} - BD{"Bangiladas"} - BH{"Baharan"} - CK{"Tsibiran Kuku"} - CL{"Cayile"} - CV{"Tsibiran Kap Barde"} - CY{"Sifurus"} - CZ{"Jamhuriyar Cak"} - GE{"Jiwarjiya"} - GQ{"Gini Ta Ikwaita"} - GU{"Gwam"} - IM{"Isle na Mutum"} - KW{"Kwiyat"} - LA{"Lawas"} - ME{"Mantanegara"} - MY{"Malaisiya"} - NU{"Niyu"} - PN{"Pitakarin"} - TL{"Timor Ta Gabas"} - VA{"Batikan"} - XA{"Gogewar Kwalwa"} - XB{"Gano wani abu ta hanyar amfani da fasaha"} - YE{"Yamal"} - } -} diff --git a/icu4c/source/data/unit/ha_NE.txt b/icu4c/source/data/unit/ha_NE.txt deleted file mode 100644 index ac731ccbbfa..00000000000 --- a/icu4c/source/data/unit/ha_NE.txt +++ /dev/null @@ -1,58 +0,0 @@ -// © 2016 and later: Unicode, Inc. and others. -// License & terms of use: http://www.unicode.org/copyright.html -// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml -ha_NE{ - units{ - angle{ - revolution{ - dnam{"revolution"} - } - } - compound{ - 10p2{"hekta{0}"} - } - graphics{ - em{ - dnam{"typographic em"} - } - } - length{ - mile-scandinavian{ - dnam{"mile-scandinavian"} - } - } - temperature{ - generic{ - one{"Digirin yanayi {0}"} - other{"digiri-digiri {0}"} - } - } - torque{ - pound-force-foot{ - dnam{"pound-feet"} - } - } - volume{ - dessert-spoon{ - dnam{"dessert spoon"} - one{"dessert spoon {0}"} - other{"dessert spoon {0}"} - } - dessert-spoon-imperial{ - dnam{"Imp. dessert spoon"} - one{"Imp. dessert spoon {0}"} - other{"Imp. dessert spoon {0}"} - } - dram{ - dnam{"dram"} - one{"dram {0}"} - other{"{0} dram"} - } - quart-imperial{ - dnam{"Imp. quart"} - one{"Imp. quart {0}"} - other{"Imp. quart {0}"} - } - } - } -} diff --git a/icu4c/source/data/zone/ha_NE.txt b/icu4c/source/data/zone/ha_NE.txt deleted file mode 100644 index 8e467a67187..00000000000 --- a/icu4c/source/data/zone/ha_NE.txt +++ /dev/null @@ -1,68 +0,0 @@ -// © 2016 and later: Unicode, Inc. and others. -// License & terms of use: http://www.unicode.org/copyright.html -// Generated using tools/cldr/cldr-to-icu/build-icu-data.xml -ha_NE{ - zoneStrings{ - "meta:Africa_Southern"{ - ls{"South Africa Standard Time"} - } - "meta:Arabian"{ - ld{"Lokacin Rana na Arebiya"} - lg{"Lokacin Arebiya"} - ls{"Arabian Standard Time"} - } - "meta:Australia_Central"{ - ld{"Lokacin Rana na Tsakiyar Austiraliya"} - lg{"Central Australia Time"} - ls{"Tsayayyen Lokacin Tsakiyar Austiraliya"} - } - "meta:Australia_Eastern"{ - ld{"Lokacin Rana na Gabashin Austiraliya"} - lg{"Lokacin Gabashin Austiraliya"} - ls{"Australian Eastern Standard Time"} - } - "meta:Bhutan"{ - ls{"Bhutan Time"} - } - "meta:Cape_Verde"{ - ld{"Lokacin Bazara na Cape Verde"} - lg{"Lokacin Cape Verde"} - ls{"Cape Verde Standard Time"} - } - "meta:GMT"{ - ls{"Lokacin Greenwhich a London"} - } - "meta:Georgia"{ - ld{"Georgia Summer Time"} - lg{"Lokacin Georgia"} - ls{"Tsayayyen Lokacin Georgia"} - } - "meta:Gulf"{ - ls{"Lokacin Golf"} - } - "meta:India"{ - ls{"India Standard Time"} - } - "meta:Indonesia_Eastern"{ - ls{"Eastern Indonesia Time"} - } - "meta:Israel"{ - ld{"Israel Daylight Time"} - lg{"Lokacin Israʼila"} - ls{"Israel Standard Time"} - } - "meta:Japan"{ - ld{"Japan Daylight Time"} - lg{"Lokacin Japan"} - ls{"Japan Standard Time"} - } - "meta:Tokelau"{ - ls{"Tokelau Time"} - } - "meta:Turkmenistan"{ - ld{"Turkmenistan Summer Time"} - lg{"Lokacin Turkmenistan"} - ls{"Tsayayyen Lokacin Turkmenistan"} - } - } -} diff --git a/icu4c/source/test/cintltst/cloctst.c b/icu4c/source/test/cintltst/cloctst.c index 1e05658038e..1955e518f42 100644 --- a/icu4c/source/test/cintltst/cloctst.c +++ b/icu4c/source/test/cintltst/cloctst.c @@ -6202,6 +6202,11 @@ static void TestLikelySubtags(void) const char* const minimal = full_data[i][0]; const char* const maximal = full_data[i][1]; + if (uprv_strcmp(minimal, "und_Hant_CN") == 0 && + log_knownIssue("CLDR-17908", "und_Hant_CN changed expected result for Likely Subtags")) { + continue; + } + /* const int32_t length = */ uloc_addLikelySubtags( minimal, diff --git a/icu4c/source/test/intltest/caltest.cpp b/icu4c/source/test/intltest/caltest.cpp index 95dcc4799d0..11975284d27 100644 --- a/icu4c/source/test/intltest/caltest.cpp +++ b/icu4c/source/test/intltest/caltest.cpp @@ -5634,8 +5634,10 @@ void CalendarTest::TestFirstDayOfWeek() { // ssh => ssh_Arab_AE => Saturday verifyFirstDayOfWeek("ssh", UCAL_SATURDAY); // wbl_Arab => wbl_Arab_AF => Saturday - verifyFirstDayOfWeek("wbl-Arab", UCAL_SATURDAY); - + if (!logKnownIssue("CLDR-17907", "wbl-Arab returns wrong first day of the week, probably caused by wrong Likely Subtag algo")) { + verifyFirstDayOfWeek("wbl-Arab", UCAL_SATURDAY); + } + // en => en_Latn_US => Sunday verifyFirstDayOfWeek("en", UCAL_SUNDAY); // und_Hira => ja_Hira_JP => Sunday diff --git a/icu4c/source/test/intltest/dtptngts.cpp b/icu4c/source/test/intltest/dtptngts.cpp index 2adaffd1e8e..9c483faf603 100644 --- a/icu4c/source/test/intltest/dtptngts.cpp +++ b/icu4c/source/test/intltest/dtptngts.cpp @@ -1390,8 +1390,9 @@ void IntlTestDateTimePatternGeneratorAPI::testJjMapping() { continue; } // Now check that shortPattern and jPattern use the same hour cycle - if ((uprv_strncmp(localeID, "csw", 3) == 0 || uprv_strncmp(localeID, "kxv_", 4) == 0 || uprv_strncmp(localeID, "zh_Hans_MY", 10) == 0) - && logKnownIssue("CLDR-17199", "Need timeFormats with h for csw, kxv_Xxxx, zh_Hans_MY")) { + if ((uprv_strncmp(localeID, "csw", 3) == 0 || uprv_strncmp(localeID, "kxv_", 4) == 0 || uprv_strncmp(localeID, "zh_Hans_MY", 10) == 0 + || uprv_strncmp(localeID, "yue_Hant_CN", 11) == 0) + && logKnownIssue("CLDR-17199", "Need timeFormats with h for csw, kxv_Xxxx, zh_Hans_MY, yue_Hant_CN")) { continue; } UnicodeString jPatSkeleton = DateTimePatternGenerator::staticGetSkeleton(jPattern, status); diff --git a/icu4c/source/test/intltest/loctest.cpp b/icu4c/source/test/intltest/loctest.cpp index 1eb1574561f..debec8b96ed 100644 --- a/icu4c/source/test/intltest/loctest.cpp +++ b/icu4c/source/test/intltest/loctest.cpp @@ -4130,6 +4130,10 @@ LocaleTest::TestAddLikelyAndMinimizeSubtags() { for (const auto& item : full_data) { const char* const org = item.from; const char* const exp = item.add; + if (uprv_strcmp(org,"und_Hant_CN") == 0 && + logKnownIssue("CLDR-17908", "und_Hant_CN changed expected result for Likely Subtags")) { + continue; + } Locale res(org); res.addLikelySubtags(status); status.errIfFailureAndReset("\"%s\"", org); @@ -4143,6 +4147,10 @@ LocaleTest::TestAddLikelyAndMinimizeSubtags() { for (const auto& item : full_data) { const char* const org = item.from; const char* const exp = item.remove; + if (uprv_strcmp(org,"und_Hant_CN") == 0 && + logKnownIssue("CLDR-17908", "und_Hant_CN changed expected result for Likely Subtags")) { + continue; + } Locale res(org); res.minimizeSubtags(status); status.errIfFailureAndReset("\"%s\"", org); diff --git a/icu4c/source/test/intltest/numbertest_api.cpp b/icu4c/source/test/intltest/numbertest_api.cpp index 2a70a596cb1..87881cea42b 100644 --- a/icu4c/source/test/intltest/numbertest_api.cpp +++ b/icu4c/source/test/intltest/numbertest_api.cpp @@ -1220,7 +1220,7 @@ void NumberFormatterApiTest::unitArbitraryMeasureUnits() { .unit(MeasureUnit::forIdentifier("nanogram-per-picobarrel", status)), Locale("en-ZA"), 2.4, - u"2.4 ng/pbbl"); + u"2,4 ng/pbbl"); assertFormatSingle( u"Prefix in the denominator: nanogram-per-picobarrel unit-width-full-name", @@ -1231,7 +1231,7 @@ void NumberFormatterApiTest::unitArbitraryMeasureUnits() { .unitWidth(UNUM_UNIT_WIDTH_FULL_NAME), Locale("en-ZA"), 2.4, - u"2.4 nanograms per picobarrel"); + u"2,4 nanograms per picobarrel"); // Valid MeasureUnit, but unformattable, because we only have patterns for // pow2 and pow3 at this time: @@ -1253,7 +1253,7 @@ void NumberFormatterApiTest::unitArbitraryMeasureUnits() { .unitWidth(UNUM_UNIT_WIDTH_FULL_NAME), Locale("en-ZA"), 2.4, - u"2.4 kibijoule-feet per cubic gigafurlong-square second"); + u"2,4 kibijoule-feet per cubic gigafurlong-square second"); assertFormatSingle( u"kibijoule-foot-per-cubic-gigafurlong-square-second unit-width-full-name", @@ -1280,7 +1280,7 @@ void NumberFormatterApiTest::unitArbitraryMeasureUnits() { .unitWidth(UNUM_UNIT_WIDTH_FULL_NAME), Locale("en-ZA"), 2.4, - u"2.4 kilowatt-hours per 100 kilometres"); + u"2,4 kilowatt-hours per 100 kilometres"); } // TODO: merge these tests into numbertest_skeletons.cpp instead of here: @@ -1472,11 +1472,11 @@ void NumberFormatterApiTest::unitUsage() { u"unit/meter usage/road", unloc_formatter, Locale("en-ZA"), - u"87,650 km", - u"8,765 km", + u"87\u00A0650 km", + u"8\u00A0765 km", u"876 km", // 6.5 rounds down, 7.5 rounds up. u"88 km", - u"8.8 km", + u"8,8 km", u"900 m", u"90 m", u"9 m", @@ -1663,14 +1663,14 @@ void NumberFormatterApiTest::unitUsage() { .precision(Precision::minMaxSignificantDigits(1, 4)) .unitWidth(UNumberUnitWidth::UNUM_UNIT_WIDTH_FULL_NAME), Locale("en-ZA"), - u"8.765E1 square kilometres", - u"8.765E0 square kilometres", - u"8.765E1 hectares", - u"8.765E0 hectares", - u"8.765E3 square metres", - u"8.765E2 square metres", - u"8.765E1 square metres", - u"8.765E0 square metres", + u"8,765E1 square kilometres", + u"8,765E0 square kilometres", + u"8,765E1 hectares", + u"8,765E0 hectares", + u"8,765E3 square metres", + u"8,765E2 square metres", + u"8,765E1 square metres", + u"8,765E0 square metres", u"0E0 square centimetres"); assertFormatSingle( @@ -2039,7 +2039,7 @@ void NumberFormatterApiTest::unitUsageSkeletons() { .precision(Precision::maxSignificantDigits(4)), Locale("en-ZA"), 321.45, // 0.45 rounds down, 0.55 rounds up. - u"3.214E2 m"); + u"3,214E2 m"); assertFormatSingle( u"Scientific notation with Usage: possible when using a reasonable Precision", @@ -2052,7 +2052,7 @@ void NumberFormatterApiTest::unitUsageSkeletons() { .unitWidth(UNumberUnitWidth::UNUM_UNIT_WIDTH_FULL_NAME), Locale("en-ZA"), 1e20, - u"1.5E28 kilometres"); + u"1,5E28 kilometres"); status.assertSuccess(); } diff --git a/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/format/PluralRulesTest.java b/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/format/PluralRulesTest.java index cce79c09cb7..52c182b45ce 100644 --- a/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/format/PluralRulesTest.java +++ b/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/format/PluralRulesTest.java @@ -1574,7 +1574,7 @@ public class PluralRulesTest extends CoreTestFmwk { // [one, other] "am,as,bn,doi,fa,gu,hi,kn,pcm,zu; one: @integer 0, 1; other: @integer 2~17, 100, 1000, 10000, 100000, 1000000, …", "ff,hy,kab; one: @integer 0, 1; other: @integer 2~17, 100, 1000, 10000, 100000, 1000000, …", - "ast,de,en,et,fi,fy,gl,ia,io,lij,nl,sc,scn,sv,sw,ur,yi; one: @integer 1; other: @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, …", + "ast,de,en,et,fi,fy,gl,ia,io,lij,nl,sc,sv,sw,ur,yi; one: @integer 1; other: @integer 0, 2~16, 100, 1000, 10000, 100000, 1000000, …", "si; one: @integer 0, 1; other: @integer 2~17, 100, 1000, 10000, 100000, 1000000, …", "ak,bho,guw,ln,mg,nso,pa,ti,wa; one: @integer 0, 1; other: @integer 2~17, 100, 1000, 10000, 100000, 1000000, …", "tzm; one: @integer 0, 1, 11~24; other: @integer 2~10, 100~106, 1000, 10000, 100000, 1000000, …", @@ -1601,7 +1601,7 @@ public class PluralRulesTest extends CoreTestFmwk { // [one, many, other] "fr; one: @integer 0, 1; many: @integer 1000000, 1c6, 2c6, 3c6, 4c6, 5c6, 6c6, …; other: @integer 2~17, 100, 1000, 10000, 100000, 1c3, 2c3, 3c3, 4c3, 5c3, 6c3, …", "pt; one: @integer 0, 1; many: @integer 1000000, 1c6, 2c6, 3c6, 4c6, 5c6, 6c6, …; other: @integer 2~17, 100, 1000, 10000, 100000, 1c3, 2c3, 3c3, 4c3, 5c3, 6c3, …", - "ca,it,pt_PT,vec; one: @integer 1; many: @integer 1000000, 1c6, 2c6, 3c6, 4c6, 5c6, 6c6, …; other: @integer 0, 2~16, 100, 1000, 10000, 100000, 1c3, 2c3, 3c3, 4c3, 5c3, 6c3, …", + "ca,it,pt_PT,scn,vec; one: @integer 1; many: @integer 1000000, 1c6, 2c6, 3c6, 4c6, 5c6, 6c6, …; other: @integer 0, 2~16, 100, 1000, 10000, 100000, 1c3, 2c3, 3c3, 4c3, 5c3, 6c3, …", "es; one: @integer 1; many: @integer 1000000, 1c6, 2c6, 3c6, 4c6, 5c6, 6c6, …; other: @integer 0, 2~16, 100, 1000, 10000, 100000, 1c3, 2c3, 3c3, 4c3, 5c3, 6c3, …", // [one, two, few, other] diff --git a/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/number/NumberFormatterApiTest.java b/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/number/NumberFormatterApiTest.java index 97509e39648..edfcbfef8b9 100644 --- a/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/number/NumberFormatterApiTest.java +++ b/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/number/NumberFormatterApiTest.java @@ -1204,7 +1204,7 @@ public class NumberFormatterApiTest extends CoreTestFmwk { "Prefix in the denominator: nanogram-per-picobarrel", "unit/nanogram-per-picobarrel", "unit/nanogram-per-picobarrel", NumberFormatter.with().unit(MeasureUnit.forIdentifier("nanogram-per-picobarrel")), - new ULocale("en-ZA"), 2.4, "2.4 ng/pbbl"); + new ULocale("en-ZA"), 2.4, "2,4 ng/pbbl"); assertFormatSingle("Prefix in the denominator: nanogram-per-picobarrel unit-width-full-name", "unit/nanogram-per-picobarrel unit-width-full-name", @@ -1212,7 +1212,7 @@ public class NumberFormatterApiTest extends CoreTestFmwk { NumberFormatter.with() .unit(MeasureUnit.forIdentifier("nanogram-per-picobarrel")) .unitWidth(UnitWidth.FULL_NAME), - new ULocale("en-ZA"), 2.4, "2.4 nanograms per picobarrel"); + new ULocale("en-ZA"), 2.4, "2,4 nanograms per picobarrel"); // Valid MeasureUnit, but unformattable, because we only have patterns for // pow2 and pow3 at this time: @@ -1234,7 +1234,7 @@ public class NumberFormatterApiTest extends CoreTestFmwk { NumberFormatter.with() .unit(MeasureUnit.forIdentifier("kibijoule-foot-per-cubic-gigafurlong-square-second")) .unitWidth(UnitWidth.FULL_NAME), - new ULocale("en-ZA"), 2.4, "2.4 kibijoule-feet per cubic gigafurlong-square second"); + new ULocale("en-ZA"), 2.4, "2,4 kibijoule-feet per cubic gigafurlong-square second"); assertFormatSingle( "kibijoule-foot-per-cubic-gigafurlong-square-second unit-width-full-name", @@ -1255,7 +1255,7 @@ public class NumberFormatterApiTest extends CoreTestFmwk { NumberFormatter.with() .unit(MeasureUnit.forIdentifier("kilowatt-hour-per-100-kilometer")) .unitWidth(UnitWidth.FULL_NAME), - new ULocale("en-ZA"), 2.4, "2.4 kilowatt-hours per 100 kilometres"); + new ULocale("en-ZA"), 2.4, "2,4 kilowatt-hours per 100 kilometres"); } // TODO: merge these tests into NumberSkeletonTest.java instead of here: @@ -1458,11 +1458,11 @@ public class NumberFormatterApiTest extends CoreTestFmwk { "unit/meter usage/road", unloc_formatter, new ULocale("en-ZA"), - "87,650 km", - "8,765 km", + "87\u00A0650 km", + "8\u00A0765 km", "876 km", // 6.5 rounds down, 7.5 rounds up. "88 km", - "8.8 km", + "8,8 km", "900 m", "90 m", "9 m", @@ -1639,14 +1639,14 @@ public class NumberFormatterApiTest extends CoreTestFmwk { .precision(Precision.minMaxSignificantDigits(1, 4)) .unitWidth(UnitWidth.FULL_NAME), new ULocale("en-ZA"), - "8.765E1 square kilometres", - "8.765E0 square kilometres", - "8.765E1 hectares", - "8.765E0 hectares", - "8.765E3 square metres", - "8.765E2 square metres", - "8.765E1 square metres", - "8.765E0 square metres", + "8,765E1 square kilometres", + "8,765E0 square kilometres", + "8,765E1 hectares", + "8,765E0 hectares", + "8,765E3 square metres", + "8,765E2 square metres", + "8,765E1 square metres", + "8,765E0 square metres", "0E0 square centimetres"); // TODO(icu-units#132): Java BigDecimal does not support Inf and NaN, so @@ -2056,7 +2056,7 @@ public class NumberFormatterApiTest extends CoreTestFmwk { .precision(Precision.maxSignificantDigits(4)), new ULocale("en-ZA"), 321.45, // 0.45 rounds down, 0.55 rounds up. - "3.214E2 m"); + "3,214E2 m"); assertFormatSingle( "Scientific notation with Usage: possible when using a reasonable Precision", @@ -2069,7 +2069,7 @@ public class NumberFormatterApiTest extends CoreTestFmwk { .unitWidth(UnitWidth.FULL_NAME), new ULocale("en-ZA"), 1e20, - "1.5E28 kilometres"); + "1,5E28 kilometres"); } diff --git a/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/util/ULocaleTest.java b/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/util/ULocaleTest.java index cbde409b738..a0be8db017f 100644 --- a/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/util/ULocaleTest.java +++ b/icu4j/main/common_tests/src/test/java/com/ibm/icu/dev/test/util/ULocaleTest.java @@ -4166,6 +4166,10 @@ public class ULocaleTest extends CoreTestFmwk { }; for (int i = 0; i < full_data.length; i++) { + if (full_data[i][0].equals("und_Hant_CN") && + logKnownIssue("CLDR-17908", "und_Hant_CN changed expected result for Likely Subtags")) { + continue; + } ULocale org = new ULocale(full_data[i][0]); ULocale res = ULocale.addLikelySubtags(org); String exp = full_data[i][1]; @@ -5714,6 +5718,11 @@ public class ULocaleTest extends CoreTestFmwk { assertEquals("addLikelySubtags(" + test.source + ") should be unchanged", l, ULocale.addLikelySubtags(l)); } else { + if ( ( test.source.equals("und-Latn-MU") || test.source.equals("und-Latn-RS") || test.source.equals("und-Latn-SL") + || test.source.equals("und-Latn-TK") || test.source.equals("und-Latn-ZM") ) + && logKnownIssue("CLDR-17908", "und_Hant_CN changed expected result for Likely Subtags") ) { + return; + } assertEquals("addLikelySubtags(" + test.source + ")", test.addLikely, ULocale.addLikelySubtags(l).toLanguageTag()); } diff --git a/icu4j/main/core/src/main/java/com/ibm/icu/impl/LocaleFallbackData.java b/icu4j/main/core/src/main/java/com/ibm/icu/impl/LocaleFallbackData.java index 9adf488530e..22626f4121d 100644 --- a/icu4j/main/core/src/main/java/com/ibm/icu/impl/LocaleFallbackData.java +++ b/icu4j/main/core/src/main/java/com/ibm/icu/impl/LocaleFallbackData.java @@ -46,6 +46,7 @@ class LocaleFallbackData { t.put("aho", "Ahom"); t.put("ahr", "Deva"); t.put("aib", "Arab"); + t.put("aii", "Syrc"); t.put("aij", "Hebr"); t.put("ain", "Kana"); t.put("aio", "Mymr"); @@ -62,6 +63,7 @@ class LocaleFallbackData { t.put("amw", "Syrc"); t.put("ani", "Cyrl"); t.put("anp", "Deva"); + t.put("anq", "Deva"); t.put("anr", "Deva"); t.put("anu", "Ethi"); t.put("aot", "Beng"); @@ -78,6 +80,7 @@ class LocaleFallbackData { t.put("as", "Beng"); t.put("ase", "Sgnw"); t.put("ask", "Arab"); + t.put("asr", "Deva"); t.put("atn", "Arab"); t.put("atv", "Cyrl"); t.put("auj", "Arab"); @@ -132,12 +135,13 @@ class LocaleFallbackData { t.put("bhm", "Arab"); t.put("bhn", "Syrc"); t.put("bho", "Deva"); - t.put("bht", "Takr"); + t.put("bht", "Deva"); t.put("bhu", "Deva"); t.put("biy", "Deva"); t.put("bjf", "Syrc"); t.put("bjj", "Deva"); t.put("bjm", "Arab"); + t.put("bkk", "Tibt"); t.put("blk", "Mymr"); t.put("blt", "Tavt"); t.put("bmj", "Deva"); @@ -153,7 +157,9 @@ class LocaleFallbackData { t.put("brd", "Deva"); t.put("brh", "Arab"); t.put("brk", "Arab"); + t.put("bro", "Tibt"); t.put("brv", "Laoo"); + t.put("brw", "Knda"); t.put("brx", "Deva"); t.put("bsh", "Arab"); t.put("bsk", "Arab"); @@ -213,6 +219,7 @@ class LocaleFallbackData { t.put("ctg", "Beng"); t.put("ctn", "Deva"); t.put("ctt", "Taml"); + t.put("cty", "Taml"); t.put("cu", "Cyrl"); t.put("cuu", "Lana"); t.put("cv", "Cyrl"); @@ -225,6 +232,7 @@ class LocaleFallbackData { t.put("def", "Arab"); t.put("deh", "Arab"); t.put("der", "Beng"); + t.put("dgl", "Arab"); t.put("dhi", "Deva"); t.put("dhn", "Gujr"); t.put("dho", "Deva"); @@ -290,6 +298,7 @@ class LocaleFallbackData { t.put("ggg", "Arab"); t.put("gha", "Arab"); t.put("ghe", "Deva"); + t.put("gho", "Tfng"); t.put("ghr", "Arab"); t.put("ght", "Tibt"); t.put("gig", "Arab"); @@ -299,12 +308,14 @@ class LocaleFallbackData { t.put("gld", "Cyrl"); t.put("glh", "Arab"); t.put("glk", "Arab"); + t.put("gml", "Latf"); t.put("gmv", "Ethi"); t.put("gmy", "Linb"); t.put("goe", "Tibt"); t.put("gof", "Ethi"); + t.put("goj", "Deva"); t.put("gok", "Deva"); - t.put("gon", "Telu"); + t.put("gon", "Deva"); t.put("got", "Goth"); t.put("gra", "Deva"); t.put("grc", "Cprt"); @@ -327,6 +338,7 @@ class LocaleFallbackData { t.put("hdy", "Ethi"); t.put("he", "Hebr"); t.put("hi", "Deva"); + t.put("hif", "Deva"); t.put("hii", "Takr"); t.put("hit", "Xsux"); t.put("hkh", "Arab"); @@ -338,15 +350,6 @@ class LocaleFallbackData { t.put("hnd", "Arab"); t.put("hne", "Deva"); t.put("hnj", "Hmnp"); - t.put("hnj_AU", "Laoo"); - t.put("hnj_CN", "Laoo"); - t.put("hnj_FR", "Laoo"); - t.put("hnj_GF", "Laoo"); - t.put("hnj_LA", "Laoo"); - t.put("hnj_MM", "Laoo"); - t.put("hnj_SR", "Laoo"); - t.put("hnj_TH", "Laoo"); - t.put("hnj_VN", "Laoo"); t.put("hno", "Arab"); t.put("hoc", "Deva"); t.put("hoh", "Arab"); @@ -398,7 +401,6 @@ class LocaleFallbackData { t.put("jpa", "Hebr"); t.put("jpr", "Hebr"); t.put("jrb", "Hebr"); - t.put("jrb_MA", "Arab"); t.put("jul", "Deva"); t.put("jun", "Orya"); t.put("juy", "Orya"); @@ -409,12 +411,15 @@ class LocaleFallbackData { t.put("kap", "Cyrl"); t.put("kaw", "Kawi"); t.put("kbd", "Cyrl"); + t.put("kbg", "Tibt"); t.put("kbu", "Arab"); t.put("kby", "Arab"); t.put("kca", "Cyrl"); + t.put("kcy", "Arab"); t.put("kdq", "Beng"); t.put("kdt", "Thai"); t.put("ket", "Cyrl"); + t.put("kev", "Mlym"); t.put("kex", "Deva"); t.put("key", "Telu"); t.put("kfa", "Knda"); @@ -422,6 +427,7 @@ class LocaleFallbackData { t.put("kfc", "Telu"); t.put("kfd", "Knda"); t.put("kfe", "Taml"); + t.put("kfg", "Knda"); t.put("kfh", "Mlym"); t.put("kfi", "Taml"); t.put("kfk", "Deva"); @@ -430,6 +436,7 @@ class LocaleFallbackData { t.put("kfq", "Deva"); t.put("kfr", "Deva"); t.put("kfs", "Deva"); + t.put("kfu", "Deva"); t.put("kfx", "Deva"); t.put("kfy", "Deva"); t.put("kgj", "Deva"); @@ -438,6 +445,7 @@ class LocaleFallbackData { t.put("khf", "Thai"); t.put("khg", "Tibt"); t.put("khn", "Deva"); + t.put("kho", "Brah"); t.put("kht", "Mymr"); t.put("khv", "Cyrl"); t.put("khw", "Arab"); @@ -450,6 +458,7 @@ class LocaleFallbackData { t.put("kjo", "Deva"); t.put("kjp", "Mymr"); t.put("kjt", "Thai"); + t.put("kjz", "Tibt"); t.put("kk", "Cyrl"); t.put("kk_AF", "Arab"); t.put("kk_CN", "Arab"); @@ -484,6 +493,7 @@ class LocaleFallbackData { t.put("ksw", "Mymr"); t.put("ksz", "Deva"); t.put("ktb", "Ethi"); + t.put("kte", "Deva"); t.put("ktl", "Arab"); t.put("ktp", "Plrd"); t.put("ku_LB", "Arab"); @@ -508,7 +518,6 @@ class LocaleFallbackData { t.put("lad", "Hebr"); t.put("lae", "Deva"); t.put("lah", "Arab"); - t.put("lbc", "Lisu"); t.put("lbe", "Cyrl"); t.put("lbf", "Deva"); t.put("lbj", "Tibt"); @@ -535,6 +544,7 @@ class LocaleFallbackData { t.put("lsa", "Arab"); t.put("lsd", "Hebr"); t.put("lss", "Arab"); + t.put("ltc", "Hant"); t.put("luk", "Tibt"); t.put("luu", "Deva"); t.put("luv", "Arab"); @@ -553,6 +563,7 @@ class LocaleFallbackData { t.put("mdy", "Ethi"); t.put("mfa", "Arab"); t.put("mfi", "Arab"); + t.put("mga", "Latg"); t.put("mgp", "Deva"); t.put("mhj", "Arab"); t.put("mid", "Mand"); @@ -572,6 +583,7 @@ class LocaleFallbackData { t.put("mlf", "Thai"); t.put("mn", "Cyrl"); t.put("mn_CN", "Mong"); + t.put("mnc", "Mong"); t.put("mni", "Beng"); t.put("mnj", "Arab"); t.put("mns", "Cyrl"); @@ -591,6 +603,7 @@ class LocaleFallbackData { t.put("mut", "Deva"); t.put("muv", "Taml"); t.put("muz", "Ethi"); + t.put("mve", "Arab"); t.put("mvf", "Mong"); t.put("mvy", "Arab"); t.put("mvz", "Ethi"); @@ -629,6 +642,7 @@ class LocaleFallbackData { t.put("nos", "Yiii"); t.put("npb", "Tibt"); t.put("nqo", "Nkoo"); + t.put("nrn", "Runr"); t.put("nsd", "Yiii"); t.put("nsf", "Yiii"); t.put("nsk", "Cans"); @@ -640,6 +654,7 @@ class LocaleFallbackData { t.put("nwx", "Deva"); t.put("nyl", "Thai"); t.put("nyq", "Arab"); + t.put("nyw", "Thai"); t.put("oaa", "Cyrl"); t.put("oac", "Cyrl"); t.put("oar", "Syrc"); @@ -658,6 +673,7 @@ class LocaleFallbackData { t.put("omk", "Cyrl"); t.put("omp", "Mtei"); t.put("omr", "Modi"); + t.put("omx", "Mymr"); t.put("oon", "Deva"); t.put("or", "Orya"); t.put("ort", "Telu"); @@ -671,6 +687,7 @@ class LocaleFallbackData { t.put("otb", "Tibt"); t.put("otk", "Orkh"); t.put("oty", "Gran"); + t.put("oui", "Ougr"); t.put("pa", "Guru"); t.put("pa_PK", "Arab"); t.put("pal", "Phli"); @@ -696,6 +713,7 @@ class LocaleFallbackData { t.put("pho", "Laoo"); t.put("phr", "Arab"); t.put("pht", "Thai"); + t.put("phu", "Thai"); t.put("phv", "Arab"); t.put("phw", "Deva"); t.put("pi", "Sinh"); @@ -714,6 +732,7 @@ class LocaleFallbackData { t.put("psh", "Arab"); t.put("psi", "Arab"); t.put("pst", "Arab"); + t.put("psu", "Brah"); t.put("pum", "Deva"); t.put("pwo", "Mymr"); t.put("pwr", "Deva"); @@ -738,7 +757,6 @@ class LocaleFallbackData { t.put("rmi", "Armn"); t.put("rmt", "Arab"); t.put("rmz", "Mymr"); - t.put("rom_BG", "Cyrl"); t.put("rsk", "Cyrl"); t.put("rtw", "Deva"); t.put("ru", "Cyrl"); @@ -755,7 +773,6 @@ class LocaleFallbackData { t.put("sbu", "Tibt"); t.put("sck", "Deva"); t.put("scl", "Arab"); - t.put("scl_IN", "Arab"); t.put("scp", "Deva"); t.put("sct", "Laoo"); t.put("scu", "Takr"); @@ -766,6 +783,7 @@ class LocaleFallbackData { t.put("sdf", "Arab"); t.put("sdg", "Arab"); t.put("sdh", "Arab"); + t.put("sdr", "Beng"); t.put("sds", "Arab"); t.put("sel", "Cyrl"); t.put("sfm", "Plrd"); @@ -816,11 +834,12 @@ class LocaleFallbackData { t.put("sts", "Arab"); t.put("stv", "Ethi"); t.put("sty", "Cyrl"); - t.put("suz", "Deva"); + t.put("suz", "Sunu"); t.put("sva", "Geor"); t.put("swb", "Arab"); t.put("swi", "Hani"); t.put("swv", "Deva"); + t.put("sxu", "Runr"); t.put("syc", "Syrc"); t.put("syl", "Beng"); t.put("syn", "Syrc"); @@ -877,6 +896,7 @@ class LocaleFallbackData { t.put("tth", "Laoo"); t.put("tto", "Laoo"); t.put("tts", "Thai"); + t.put("ttz", "Deva"); t.put("tvn", "Mymr"); t.put("twm", "Deva"); t.put("txg", "Tang"); @@ -885,7 +905,7 @@ class LocaleFallbackData { t.put("tyv", "Cyrl"); t.put("ude", "Cyrl"); t.put("udg", "Mlym"); - t.put("udi", "Aghb"); + t.put("udi", "Cyrl"); t.put("udm", "Cyrl"); t.put("ug", "Arab"); t.put("ug_KZ", "Cyrl"); @@ -914,12 +934,14 @@ class LocaleFallbackData { t.put("vav", "Deva"); t.put("vay", "Deva"); t.put("vgr", "Arab"); + t.put("vjk", "Deva"); t.put("vmd", "Knda"); t.put("vmh", "Arab"); t.put("wal", "Ethi"); t.put("wbk", "Arab"); t.put("wbq", "Telu"); t.put("wbr", "Deva"); + t.put("wle", "Ethi"); t.put("wlo", "Arab"); t.put("wme", "Deva"); t.put("wne", "Arab"); @@ -928,6 +950,7 @@ class LocaleFallbackData { t.put("wsv", "Arab"); t.put("wtm", "Deva"); t.put("wuu", "Hans"); + t.put("xag", "Aghb"); t.put("xal", "Cyrl"); t.put("xan", "Ethi"); t.put("xas", "Cyrl"); @@ -939,6 +962,7 @@ class LocaleFallbackData { t.put("xis", "Orya"); t.put("xka", "Arab"); t.put("xkc", "Arab"); + t.put("xkf", "Tibt"); t.put("xkj", "Arab"); t.put("xkp", "Arab"); t.put("xlc", "Lyci"); @@ -957,6 +981,7 @@ class LocaleFallbackData { t.put("xrn", "Cyrl"); t.put("xsa", "Sarb"); t.put("xsr", "Deva"); + t.put("xtq", "Brah"); t.put("xub", "Taml"); t.put("xuj", "Taml"); t.put("xve", "Ital"); @@ -977,6 +1002,7 @@ class LocaleFallbackData { t.put("yih", "Hebr"); t.put("yiv", "Yiii"); t.put("ykg", "Cyrl"); + t.put("ykh", "Cyrl"); t.put("yna", "Plrd"); t.put("ynk", "Cyrl"); t.put("yoi", "Jpan"); @@ -1029,8 +1055,10 @@ class LocaleFallbackData { t.put("zln", "Hani"); t.put("zlq", "Hani"); t.put("zqe", "Hani"); + t.put("zrg", "Orya"); t.put("zrp", "Hebr"); t.put("zum", "Arab"); + t.put("zwa", "Ethi"); t.put("zyg", "Hani"); t.put("zyn", "Hani"); t.put("zzj", "Hani"); diff --git a/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/calendar/IBMCalendarTest.java b/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/calendar/IBMCalendarTest.java index e3611b53ecc..1dc5ac7965b 100644 --- a/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/calendar/IBMCalendarTest.java +++ b/icu4j/main/core/src/test/java/com/ibm/icu/dev/test/calendar/IBMCalendarTest.java @@ -265,7 +265,10 @@ public class IBMCalendarTest extends CalendarTestFmwk { // ssh => ssh_Arab_AE => Saturday verifyFirstDayOfWeek("ssh", Calendar.SATURDAY); // wbl_Arab => wbl_Arab_AF => Saturday - verifyFirstDayOfWeek("wbl-Arab", Calendar.SATURDAY); + if (!logKnownIssue("CLDR-17907", "wbl-Arab returns wrong first day of the week, probably caused by wrong Likely Subtag algo")) { + verifyFirstDayOfWeek("wbl-Arab", Calendar.SATURDAY); + } + // en => en_Latn_US => Sunday verifyFirstDayOfWeek("en", Calendar.SUNDAY); diff --git a/icu4j/main/currdata/src/main/resources/com/ibm/icu/impl/data/icudata/curr/ha_NE.res b/icu4j/main/currdata/src/main/resources/com/ibm/icu/impl/data/icudata/curr/ha_NE.res deleted file mode 100644 index c50962f45a8..00000000000 Binary files a/icu4j/main/currdata/src/main/resources/com/ibm/icu/impl/data/icudata/curr/ha_NE.res and /dev/null differ diff --git a/icu4j/main/langdata/src/main/resources/com/ibm/icu/impl/data/icudata/lang/ha_NE.res b/icu4j/main/langdata/src/main/resources/com/ibm/icu/impl/data/icudata/lang/ha_NE.res deleted file mode 100644 index aac6baa645a..00000000000 Binary files a/icu4j/main/langdata/src/main/resources/com/ibm/icu/impl/data/icudata/lang/ha_NE.res and /dev/null differ diff --git a/icu4j/main/regiondata/src/main/resources/com/ibm/icu/impl/data/icudata/region/ha_NE.res b/icu4j/main/regiondata/src/main/resources/com/ibm/icu/impl/data/icudata/region/ha_NE.res deleted file mode 100644 index 1cf97345ff9..00000000000 Binary files a/icu4j/main/regiondata/src/main/resources/com/ibm/icu/impl/data/icudata/region/ha_NE.res and /dev/null differ diff --git a/test.sh b/test.sh new file mode 100755 index 00000000000..3d8d3755cf0 --- /dev/null +++ b/test.sh @@ -0,0 +1,9 @@ +number_one () { + echo "This is the first function speaking..." +} + +number_two () { + echo "This is now the second function speaking..." +} + +number_one \ No newline at end of file diff --git a/util.sh b/util.sh new file mode 100755 index 00000000000..b24b7d39688 --- /dev/null +++ b/util.sh @@ -0,0 +1,18 @@ +# bash +function cldr-tool() { + CLDRCLASS=$1 + if [[ "" == $(echo "${CLDRCLASS}" | tr -c -d .) ]]; + then + # default package + CLDRCLASS=org.unicode.cldr.tool.${CLDRCLASS} + fi + shift + EXECARGS="${1}" + shift + echo ${CLDRCLASS} "${EXECARGS}" -Dexec.cleanupDaemonThreads=false ${@} + env LANG=en_US.UTF-8 mvn -DCLDR_DIR=$(pwd) -DCLDR_GITHUB_ANNOTATIONS=true --file=tools/pom.xml -pl cldr-code ${JVMARGS} \ + -Dfile.encoding=utf-8 compile -DskipTests=true exec:java -Dexec.mainClass=${CLDRCLASS} \ + -Dexec.args="${EXECARGS}" -Dexec.cleanupDaemonThreads=false ${@} +} + +cldr-tool GenerateProductionData \ No newline at end of file