commit | b86966153ca66c9e9d35148823e9a71ad41b29fa | [log] [tgz] |
---|---|---|
author | Frank Tang <ftang@chromium.org> | Fri Oct 25 14:58:21 2019 -0700 |
committer | Jungshik Shin <jshin@chromium.org> | Tue Oct 29 06:00:13 2019 +0000 |
tree | dc6b863ba84acb65eccb39b829ab12eb6a6052f7 | |
parent | b51014b96251d1a0194db61a2aa36eb216daf43c [diff] |
Update to ICU 65.1 ICU 65.1 release notes: http://site.icu-project.org/download/65 CLDR 36: http://blog.unicode.org/2019/10/unicode-cldr-version-36-languagelocale.html 1. Update to 65-1 Diary https://docs.google.com/document/d/1RHttPn26N3hPeGUz9LLTsrQ7UvORLDOK9XumhgqgtvU/edit# 2. Remove unnecessary files $ git rm source/data/*/*local.mk $ git rm source/data/translit/root_subset.txt 3. Reduce the data size by filtering supplemental data Size changes: 65-1 . 64-2 7786368 7777488 android/icudtl.dat 6412768 6427344 android_small/icudtl.dat 1418320 1394480 android_small/icudtl_extra.dat 5060080 5108144 cast/icudtl.dat 10481216 10450592 chromeos/icudtl.dat 10505952 10426816 common/icudtb.dat 10505952 10426816 common/icudtl.dat 900576 . 901808 flutter/icudtl.dat 6375984 6377520 ios/icudtl.dat A. Filter supplementalData by keeping fields only if referenced by the code. calendarData source/i18n/erarules.cpp calendarPreferenceData source/i18n/calendar.cpp source/i18n/ucal.cpp cldrVersion source/i18n/ulocdata.cpp codeMappings source/i18n/region.cpp idValidity source/i18n/region.cpp measurementData source/i18n/ulocdata.cpp territoryContainment source/i18n/region.cpp timeData source/i18n/dtptngen.cpp weekData source/i18n/dtptngen.cpp weekData%variant source/i18n/dtptngen.cpp The following fields will be dropped because there's no code reference in ICU, Chrome and v8: codeMappingsCurrency languageData languageMatching languageMatchingInfo languageMatchingNew parentLocales subdivisionContainment territoryInfo unitPreferenceData weekOfPreference To verify that they're not needed by running the following command: find -type f |egrep -v "./data/"|xargs egrep "(codeMappingsCurrency|languageData|languageMatching|parentLocales|subdivisionContainment|territoryInfo|unitPreferenceData|weekOfPreference)" under icu4c/source in ICU65 tree. B. add back dnam in unit to prepare for extension of Intl.DisplayNames Note that ICU 65.1 comes with a new file langInfo.res which is needed by the new LocaleMatcher API. The languageMatching* fields in supplementalData, although named very similar to that, is not used by the implementation of LocaleMatcher* API. We also search the chromium code and found no references to these fields name in chromium tree. See https://cs.chromium.org/search/?q=%5B%5EA-Za-z0-9%5D(codeMappingsCurrency%7ClanguageData%7ClanguageMatching%7CparentLocales%7CsubdivisionContainment%7CterritoryInfo%7CunitPreferenceData%7CweekOfPreference)%5B%5EA-Za-z0-9%5D&type=cs Bug: chromium:1014272 Change-Id: I30220449b1dbe58371ca89fbfe61c6b3f47295c2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/deps/icu/+/1881599 Reviewed-by: Jungshik Shin <jshin@chromium.org>