Skip to content
Snippets Groups Projects
  1. May 16, 2017
  2. May 14, 2017
    • Jungshik Shin's avatar
      Update ICU to 59.1 · 87232d8d
      Jungshik Shin authored
      * Highlights:
        - Emoji 5.0 data (partial; Emoji_Component property not included)
        - CLDR 31.0.1 (http://blog.unicode.org/2017/03/cldr-version-31-released.html)
          UTC and GMT are treated as distinct)
        - New case mapping API for styled text
        - C++ 11 is required
        - char16_t for UChar (UTF-16)
        - Source code is in UTF-8
      
      * Size changes
      
        common: 10,130,560 => 10,175,056
        android: 6,573,872 => 6,616,864
        iOS: 6,562,352 => 6,605,152
      
      On top of ICU 59.1 from the upstream, the following changes were applied.
      See https://chromium.googlesource.com/chromium/deps/icu/+log/chromium/59staging
      
        - Fix C++ 11 string literal assignment issue (upstream bug: 13192)
        - Fix C4229 warning by MSVC
        - Apply utf32.patch and include unistr.h in fuzzer_util
        - Update ICU data files
        - Fix wpo.patch
        - Apply Google locale patch and locale1.patch
        - update readme
        - Apply breakiterator related patches
        - Apply and update wpo.patch
        - Drop unused patch, apply data.build.win.patch, update README.chromium
        - Add /utf-8 flag for Windows/Visual Studio
        - Update BUILD.gn for UChar, stubdata and apply data_sym.patch
        - use stubdata.cpp instead of stubdata.c in icu.gyp
        - Update icu.gyp* files for v8
        - Update BUILD.gn, apply data.build.patch and vscomp.patch
        - Add new files in ICU 59.1
        - Get a fresh copy of ICU 59.1 from the upstream
        - Update update.sh script
      
      TBR=drott@chromium.org, yangguo@chromium.org
      Bug:699469
      TEST: layout tests, all unittests, browser tests
      Change-Id: Ie1e77323aa0c7f872153680c4deca6471a771a5c
      Reviewed-on: https://chromium-review.googlesource.com/505173
      
      
      Reviewed-by: default avatarJungshik Shin <jshin@chromium.org>
      87232d8d
  3. Mar 07, 2017
  4. Nov 11, 2016
  5. Oct 28, 2016
    • Jungshik Shin's avatar
      ICU update to 58 part 2 · e0d9b90c
      Jungshik Shin authored
      Follw-up to https://chromium.googlesource.com/chromium/deps/icu/+/5feb9ad5
      (due to a rietveld issue, part 1 was manually pushed).
      
      Update ICU to 58.1 release from ICU 56.1 part2.
      
      Listed below a tiny subset of what's new in 58.1:
      
        1. Unicode 9.0 from Unicode 8.0
          - Updated character properties including Emoji data up to 4.0beta.
          - Updated grapheme/word/line breaking rules for Emoji sequences and others.
      
        2. CLDR 30.0.2 from CLDR 28
          - Numerous locale data updates/improvements
      
        3. Spoofing API changes
        4. Greek uppercasing support as a part of regular case-mapping API.
        5. Line breaking rule file format optimization. This change enables me
           to add CJ loose line breaking rules back (previously, it's dropped
           to save space) so that Blink can use it for CJ.
      
      See http://site.icu-project.org/download/58 for more details on ICU 58.1
      and http://site.icu-project.org/download/57 for more details on ICU 57.1
      
      For CLDR 30, see http://cldr.unicode.org/index/downloads/cldr-30 .
      
      The size impact:
         Non-Android: 10,127,200 => 10,128,624 (delta = 1,424 / 0.014%)
         Android: 6,563,152 => 6,571,936 (delta = 8,784 / 0.13%)
      
      Below are the list of changes made on top of the upstream ICU 58.1
      in reverse order. Most of these changes were made in 58staging branch
      to run trybots and cherry-picked back for this CL. See
         https://chromium.googlesource.com/chromium/deps/icu/+/log/chromium/58staging
         https://codereview.chromium.org/2447513002/ : cr+blink update cl with
             58staging branch head.
      
      * Fix a build on Win without std::string (v8)
      * Add ms932 alias to Shift_JIS
      
      * Apply Google-specific locale data patches
      
      * Fix a bug in scriptset
      
      * Update windows-1255 mapping
      
      * Disable C4333 warning by MSVC (harmless)
      
      * Apply and update utf32.patch and README.chromium
      
      * Update and apply vscomp.patch
        stringpiece patch removed. VS2015 seems to be fine with a redefinition.
      
      * Update pre-built ICU data files
         Update *local.mk with a new copyright line
      
      * Apply more patches
        The following patches were applied and updated: data_symb, vscomp, wpo
      
        The unnecessary part was dropped from vscomp
      
      * Update BUILD.gn and icu.gyp* files
      
      * Update android/brkitr.patch
      
      * Update and apply more patches
      
      * Update and apply cjdict.patch
         Apply data.build.patch
      
      * Delete obsolete patches: cmemory,regex
      
      * Update README.chromium and apply brkitr patches
      
        - Update README.chromium
        - Remove obsolete patches
        - Update linebrk.patch and apply it: add back line_loose_cj
      
      * Update wordbrk.patch and apply it
      
      * Update and apply khmer-dictbe.patch
      
      * Update data trimming
      
        - android/patch_locale.sh
        - scripts/trim_data.sh
           ExemplarCh* removed
           charac*Label removed
           relative/relativeTime removed for daysOfWeek and quarter
      
      * Update the following patches
      
        android/brkitr.patch
        patches/linebrk.patch
        patches/data.build.patch
      
      * Update cjdict.patch and linebrk.patch
      
      BUG=637001
      TEST=Layout tests, all unittests, browser tests, ui tests.
      R=jsbell@chromium.org, mark@chromium.org
      
      Review URL: https://codereview.chromium.org/2442923002 .
      e0d9b90c
  6. Apr 05, 2016
  7. Mar 25, 2016
  8. Mar 20, 2016
  9. Feb 04, 2016
  10. Feb 02, 2016
  11. Jan 29, 2016
  12. Jan 07, 2016
  13. Sep 25, 2015
  14. Aug 25, 2015
    • Nico Weber's avatar
      Fix -Wmicrosoft-unqualified-friend warning. · 6b3ce817
      Nico Weber authored
      The warning complains that StringThreadTest is declared in the global namespace,
      but the friend line says `friend class StringThreadTest;` instead of
      `friend class ::StringThreadTest`.  MSVC doesn't require this ::, but gcc does
      -- without it, the friend line declares a new class in the namespace containing
      UnicodeString.
      
      Since StringThreadTest was in test/threadtest which isn't built as part of
      Chromium's build and which was removed in upstream ICU in ICU 37392, just
      delete the friend line, it has no effect.
      
      BUG=505296
      R=jshin@chromium.org
      
      Review URL: https://codereview.chromium.org/1317603003 .
      6b3ce817
  15. Aug 18, 2015
    • Nico Weber's avatar
      Fix -Woverloaded-virtual warnings in ICU. · 80ac4c39
      Nico Weber authored
      1.
      In Win32NumberFormat, rename the private format() method to variadicFormat().
      It's just an implementation detail of the class. Fixes:
      ..\..\third_party\icu\source\i18n/winnmfmt.h(146,20) :  error(clang):
              'icu_54::Win32NumberFormat::format' hides overloaded virtual functions
              [-Werror,-Woverloaded-virtual]
          UnicodeString &format(int32_t numDigits, UnicodeString &appendTo, const wchar_t *format, ...) const;
                         ^
      ..\..\third_party\icu\source\i18n\unicode/numfmt.h(255,28) :  note(clang):
              hidden overloaded virtual function 'icu_54::NumberFormat::format'
              declared here: different number of parameters (4 vs 3)
          virtual UnicodeString& format(const Formattable& obj,
                                 ^
      ...
      
      2.
      In Win32DateFormat, remove the two-argument format() function that just
      forwards to the base class.  (If this happens to produce compile errors,
      the function should be replaced by
      `using Win32DateFormat::format(UDate, UnicodeString&) const;`) Fixes:
      ..\..\third_party\icu\source\i18n/windtfmt.h(55,20) :  error(clang):
              'icu_54::Win32DateFormat::format' hides overloaded virtual functions
              [-Werror,-Woverloaded-virtual]
          UnicodeString& format(UDate date, UnicodeString& appendTo) const;
                         ^
      ..\..\third_party\icu\source\i18n\unicode/datefmt.h(240,28) :  note(clang):
              hidden overloaded virtual function 'icu_54::DateFormat::format'
              declared here: different number of parameters (4 vs 2)
          virtual UnicodeString& format(const Formattable& obj,
                                 ^
      ...
      
      BUG=505301
      R=jshin@chromium.org
      
      Review URL: https://codereview.chromium.org/1296803002 .
      80ac4c39
  16. Jul 16, 2015
  17. Jul 14, 2015
  18. Jun 18, 2015
  19. Jun 09, 2015
  20. Jun 04, 2015
  21. May 26, 2015
  22. Apr 06, 2015
  23. Apr 03, 2015
  24. Mar 26, 2015
  25. Mar 21, 2015
  26. Feb 14, 2015
    • Jungshik Shin (jungshik at google)'s avatar
      Move stubdata.c from icudata to icuuc · d158fece
      Jungshik Shin (jungshik at google) authored
      This is to fix a linker error when linking icuuc.dll;  ICU_DATA_ENTRY (icudt54_dat) symbol is not found on Windows clean build from the scratch (component=shared_library).
      
      Move stubdata.c to icuuc target from icudata target. Also, make
      U_DATA_API (used for U_ICU_DATA_ENTRYPOINT in common/udata.cpp) to be
      U_EXPORT instead of U_IMPORT when icu_use_data_file_flag = 1 or
      on Windows. On Windows, using the icudt.dll  (i.e. icu_use_data_file_flag=0) also requires this change.
      
      BUG=428145
      TEST=All trybots can build a target that requires ICU.
      R=mark@chromium.org, scottmg@chromium.org
      
      Review URL: https://codereview.chromium.org/926113004
      d158fece
  27. Feb 10, 2015
  28. Jan 31, 2015
    • Jungshik Shin (jungshik at google)'s avatar
      ICU update to 54.1 step 7 · 26c111a7
      Jungshik Shin (jungshik at google) authored
      1. Fix a Windows build failure due to:
         a. 'signed vs unsigned' comparison
         b. 'possible data loss' in conversion : Apply pkasting's patch at
            http://bugs.icu-project.org/trac/ticket/11104
      
      2. Drop a few currencies to cut down the data size by 50kB for non-Android
         platforms.
      
      2. Build the ICU data for Android and check in.
        - Drop all display names for languages/scripts/regions except for zh-Han{s,t}
          as before. ( ~ 1.2MB reduction)
        - Drop cjdict by applying android/brkitr.patch. (~ 2MB reduction)
        - Include the display names for only 60+ currencies ( ~ 400kB reduction
          from the non-Android data.
        - Minimize the locale data for 9 locales Chrome on Android is not localized
          to. Drop currency names for those 9 locales. ( ~ 150kB reduction)
      
      Size change:
        1. Non-android: 10,255,584 to 10,200,880
        2. Android:
           - Final : 6,270,880
             With 60+ currency names added (for bug 370849) and
             9 unnecessary locale data dropped.
             It's 232,240 bytes larger than ICU 52.1 (6,038,640).
           - Without any currency names but with 9 unnecessary locale data: 6,026,816
           - With 60+ currency names and 9 unnecessary locale data: 6,426,368
      
      BUG=370849,428145
      TEST=Build on Windows. Blink layout tests, webkit unittests.
      R=mark@chromium.org, wangxianzhu@chromium.org
      
      Review URL: https://codereview.chromium.org/877193003
      26c111a7
  29. Jan 23, 2015
    • Jungshik Shin (jungshik at google)'s avatar
      ICU update to 54.1 - step 5 · 4a0ebf11
      Jungshik Shin (jungshik at google) authored
      1. Apply Chrome's locale data change on top of Google's locale data
         changes
      
      2. Breakiterator changes
        - Apply brkitr.patch with update to ICU 54.1; line/word.txt
        - Check in a more compact Khmer dictionary along with
          a parameter adjustment in dictbe.cpp
        - Add a few common words to the CJ dictionary
        - Update brklocal.mk (out customized build file) to ICU 54
        - Update android/brkitr.patch and data/brkitr/word_ja.txt for Android
      
      Data size checkpoint:
       * Non-Android: 19,575,216 bytes. ~500kB reduction relative
         to the previous step comes mainly from the compact Khmer dictionary.
       * Android: 17,601,520 bytes. 2MB difference comes from removing cjdict.
      
      BUG=428145
      TEST=net_unittests --gtest_filter="*IDN*"
      TEST=layout tests
      R=mark@chromium.org
      
      Review URL: https://codereview.chromium.org/858363003
      4a0ebf11
  30. Jan 21, 2015
    • Jungshik Shin (jungshik at google)'s avatar
      ICU update to 54 - step 4 · 7f05ab40
      Jungshik Shin (jungshik at google) authored
      Google's locale data changes are applied before Chrome's own locale data
      trimming.
      
      1. Use "Rs." instead of the Indian Rupee sign (U+20A8) for which the font
         support is not available on all platforms.
         Google platforms (CrOS / Android ) have them, but other
         platforms may not.
      2. Use shorter names for Hong Kong and Macau without 'S.A.R.' at the
         end. This cuts down the data size a bit.
      3. Timezone names for Korea standard time and a couple of other zones
         are shortened.
      4. zh_Hant_TW, pa_Arab_PK and a few more locales are changed.
      
      Besides, update data.build.patch and README.chromium to drop
      the collation rule files ('-R' option to genrb.). This should have been
      done in ICU update step 2.
      
      Data size checkpoint: 20,066,624 bytes
       - about 500k reduction from step 3 mostly due to '-R' option with
          the rest attributed to shorter display names for HK, MO and Korean tz.
       - the original ICU 54.1 : 25,343,024
      
      BUG=428145
      TEST=NONE
      TBR=mark
      
      Review URL: https://codereview.chromium.org/856153003
      7f05ab40
    • Jungshik Shin (jungshik at google)'s avatar
      ICU update to 54 step 3 · afd723ba
      Jungshik Shin (jungshik at google) authored
      A. Converter update per HTML encoding spec along with changes in
        the encoding name alias table.
      B. Remove all the codes for converters Blink and Chromium do not need
      (SCSU, Lotus, ISO-2022-xx other than JP, BOCU, UTF-7, etc).
      
      This is reapplying the following CLs (that we used for ICU 52.1) to ICU 54.1 :
      
      https://codereview.chromium.org/598383002
      https://codereview.chromium.org/654153002
      
      We have two upstream bugs filed for A and B above:
        http://www.icu-project.org/trac/ticket/11296
        http://www.icu-project.org/trac/ticket/10303
      
      In addiition to A and B, we unified Big5 and Big5-HKSCS per
      the encoding spec (bug 277868). That also includes properly supporting
      the four 2-character sequences ( see http://crbug.com/277868#c3 ).
      big5_gen.sh deviates from the current spec to work around a bug
      in the spec. (see https://www.w3.org/Bugs/Public/show_bug.cgi?id=27878)
      
      Moreover, ucmlocal.mk is added to list only encodings we want to support.
      
      Also, tighten the state table for windows-946-2000.ucm that we use
      for EUC-KR for now. And, drop 'base' map for windows-{936,949}-2000.ucm.
      
      Finally, add euc-kr-html.ucm along with scripts/euckr_gen.sh, but
      it is not yet used pending the resolution of bug 450312.
      
      Data size checkpoint: 20,566,864 bytes (the original ICU 54=25,343,024)
      
      BUG=277868, 428145, 450312
      TEST=net_unittests --gtest_filter="*ilenameUtil*"
      TEST=base_unittests --gtest_filter="*Conv*"
      TEST=browser_tests --gtest_filter="*ncoding*"
      TEST=Blink: fast/encoding/*
      R=jsbell@chromium.org, mark@chromium.org
      
      Review URL: https://codereview.chromium.org/839713003
      afd723ba
  31. Jan 12, 2015
    • Jungshik Shin (jungshik at google)'s avatar
      ICU upgrade to 54.1 step 2 · 5580ad69
      Jungshik Shin (jungshik at google) authored
      Update the following patches and apply to the fresh copy of icu 54.1:
      
        configure.patch
        declspec.patch
        locid.patch
        platform_nacl.patch
        regex.patch
        wpo.patch
        vscomp.patch: two chunks are not necessary any more; upstream has
                      them.
        data.build.patch
        data.build_win.patch
      
      Delete the following patches:
        putil.patch: not necessary any more; upstream has it.
        regex2.patch: merged to regex.patch.
        col.patch: not necessary any more; upstream code changed drastically
                   and does not have a bug any more.
        clang_win.patch: not necessary any more; upstream has it.
      
      BUG=428145
      TEST=None
      R=mark@chromium.org
      
      Review URL: https://codereview.chromium.org/822213003
      5580ad69
  32. Dec 11, 2014
  33. Dec 10, 2014
  34. Nov 26, 2014
Loading