Skip to content
Snippets Groups Projects
  1. May 18, 2017
  2. May 16, 2017
  3. 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
  4. May 05, 2017
    • Jungshik Shin's avatar
      Customize the ICU data for iOS · 4b06aadd
      Jungshik Shin authored
      Add ios/icudtl.dat and ios/patch_locale.sh.
      
      Update README.chromium and BUILD.gn accordingly.
      Update scripts/copy_data.sh to take (ios|common|android).
      
      At the moment, iOS data is almost identical to that of Android, but in the future
      more cuts may be made (e.g. dictionary data for breakiterator).
      
      Bug: 718955
      TEST: iOS Chrome works as before.
      Review-Url: https://codereview.chromium.org/2743123002 .
      4b06aadd
  5. Feb 21, 2017
  6. Dec 07, 2016
  7. Nov 17, 2016
  8. Nov 11, 2016
  9. 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
  10. Oct 23, 2016
    • Jungshik Shin's avatar
      Update ICU to 58 part1 · 5feb9ad5
      Jungshik Shin authored
      * Note that this CL will be followed by CLs with local changes.
        Until then, ICU should not be rolled in DEPS. See READ_THIS_FIRST
        for details.
      
      * Adjust scripts/update.sh and scripts/data_files_to_preserve.txt
        - CLDR/ICU added ckb/ast locale data. Drop them from the list to preserve.
        - source/layout does not exist in 58.1 any more.
      
      * Update the tree to ICU 58.1 from the upstream by running
        scripts/update.sh
      
      * Update README.chromium and add READ_THIS_FIRST to warn about the
        status of the tree.
      
      BUG=637001
      TEST=None
      5feb9ad5
  11. Oct 21, 2016
    • Jungshik Shin's avatar
      Delete Visual Studio build files · f8aa31da
      Jungshik Shin authored
      There's no need for VS build files.
      Besides, update scripts/update.sh to post-edit source/configure
      for missing test/ directory.
      
      This clean up is necessary to get 'git cl upload/rietveld' work
      smoothly in an upcoming ICU update.
      
      BUG=637001
      TEST=source/runConfigureICU Linux --disable-tests --disable-layout
      
      Review URL: https://codereview.chromium.org/2443653002 .
      f8aa31da
  12. Jul 27, 2016
    • Jungshik Shin's avatar
      Update IANA timezone db to 2016f from 2016d · 4ba0bcf3
      Jungshik Shin authored
      The only change affecting the current and future time stamp
      is that Asia/Novosibirsk swiches from +06 to +07. The Egyptian
      change in 2016f cancelled out the Egyptian change in 2016e.
      
      http://mm.icann.org/pipermail/tz-announce/2016-July/000040.html
      
      All the pre-built data files are updated except for icudt.dll
      for Windows (non-default build configuration. The default build
      configuration on Windows is covered by this CL).
      
      BUG=473288
      TEST=Try the following in d8 or Chrome's JS console:
      > (new Date("07/23/2016 12:00Z")).toLocaleString("en", {timeZone:
      "Asia/Novosibirsk"})
      7/23/2016, 6:00:00 PM
      > (new Date("07/24/2016 12:00Z")).toLocaleString("en", {timeZone:
      "Asia/Novosibirsk"})
      7/24/2016, 7:00:00 PM
      
      Review URL: https://codereview.chromium.org/2183313002 .
      4ba0bcf3
    • Jungshik Shin's avatar
      Big Endian support part 4 · 3655cfba
      Jungshik Shin authored
      Delete three pre-built assembly source files because they're now
      generated at build-time.
      
      Update data build scripts and README.chromium accordingly.
      
      Update copy_data.sh and copy_data_android.sh so that the assembly
      source files are not copied. Besides, convert the little endian
      data bundle to the big endian data bundle for non-Android platforms.
      
      BUG=v8:4828
      TEST=Rebuild icu data following the procedure in README.chromium
      TEST='gn args <builddir>' with icu_use_data_file set to true or false
      TEST=build base_unittests and run with --gtest_filter=ICU*
      TEST=build base_unittests and run with --gtest_filter=Message*ormat*
      TEST=build 'd8' (v8) and try `(new Date()).toLocaleString("de")`
      
      Review URL: https://codereview.chromium.org/2182883004 .
      3655cfba
  13. May 20, 2016
    • Jungshik Shin's avatar
      Update IANA timezone DB to 2016d · 54f86bb1
      Jungshik Shin authored
      What's new in 2016d is found at
      
        http://mm.icann.org/pipermail/tz-announce/2016-April/000038.html
      
      Rebuilt ICU data/assembly files are checked in (not shown in the
      codereview due to their sizes).
      
      While I'm at it, add scripts/LICENSE file that is identical to
      LICENSE at the top of the Chromium tree. Because LICENSE in
      third_party/icu is for ICU and is not applicable to files in scripts/.
      
      BUG=473288
      TBR=mark
      TEST=In JavaScript console, run the following.
            apr30_2016_1200 = new Date("04/30/2016 12:00Z")
            may01_2016_1200 = new Date("05/01/2016 12:00Z")
            apr30_2016_1200.toLocaleString("en", {timeZone: "America/Caracas"})
            may01_2016_1200.toLocaleString("en", {timeZone: "America/Caracas"})
      
        On April 30, 2016, Caracas is 4:30 behind UTC. On May 1, it's 4:00 behind.
      
      Review URL: https://codereview.chromium.org/1985243002 .
      54f86bb1
  14. Apr 05, 2016
  15. Mar 25, 2016
  16. Mar 20, 2016
  17. Feb 08, 2016
  18. Feb 04, 2016
  19. Feb 02, 2016
  20. Jan 29, 2016
    • Jungshik Shin's avatar
      ICU 56 step 6:Check in the pre-built ICU data · d2c18300
      Jungshik Shin authored
      * Update the pre-built ICU data files for all platforms
      
        source/data/in/icudtl.dat for non-Android platforms
        {linux,mac}/icudt*.S for linux/mac
        android/icudtl.dat and android/icudt*.S for Android
        windows/icudt.dll for Windows
      
      * Update Android data trimming script
      
        1. Make sure that 'default' calendar is kept in locales where it's relevant
          : root, th, fa, ar_SA, etc.
        2. Add a minimal region data to work around a bug in ICU with pool.res
           handling
      
      * Update gn and gyp files
      * And add a TODO comment to update.sh to automate the build file update.
      * Add it_CH to the locale list.
      * Add sr_Latn to unit/reslocal.mk (required by sh) and
        line_normal_fi to brkitr/brklocal.mk (referred to in brkitr/fi.txt) in
        place of line_fi.
      
      * Update and add scripts for data building
      * Completely rewrite README.chromium
      * Check-in the prebuilt ICU data files/assembly sources for
        Linux,Mac,Windows,Chrome OS and Android.
      
      BUG=575007
      TEST=Blink layout tests, webkit unittests
      TEST=All bots can build successfully
      TEST=net_unittests --gtest_filter="*ilenameUtil*"
      TEST=net_unittests --gtest_filter="*IDN*" (pending bug 336973)
      TEST=base_unittests --gtest_filter="*Conv*"
      TEST=browser_tests --gtest_filter="*ncoding*"
      TEST=base_unittests --gtest_filter="*essage*"
      TEST=ui_base_unittests --gtest_filter="*ormat*"
      TEST=ui_base_unittests --gtest_filter="L10n*"
      R=mark@chromium.org
      
      Review URL: https://codereview.chromium.org/1639543006 .
      d2c18300
    • Jungshik Shin's avatar
      Apply the remaining local patches · 5dac1b26
      Jungshik Shin authored
      Below is the list of changes in reverse order.
      
      1. Drop uconv.patch (upstream took my patch)
      2. Apply data.build.win and data_sym patches
      3. Apply vscomp.patch and update the patch file.
         update README.chromium about two parts of the patch that
         are not necessary any more.
      
      4. Apply wpo patch and update the patch file
      
      5. Android brkitr adjustment
         * Do not apply the patch but just updates the patch
         * Do not use CJdict on Android to save 2MB in the data size.
      
      6. Clean up brkitr patches
        * Rename brkitr.patch to wordbkr.patch and keep only word.txt diff
        * Make a new linebrk.patch with line breaking adjustment (dropping
          loose rules to save space until the upstream implements space-efficient mechanism for line breaking rule variations)
        * Update README.chromium
        * Apply local patches for Khmer dictionary handling and cjdict
      
      7. Adjust line breaking rules.
        This corresponds to set 2 in
           https://code.google.com/p/chromium/issues/detail?id=575007#c6
      
      BUG=575007
      TEST=None
      R=mark@chromium.org
      
      Review URL: https://codereview.chromium.org/1637683002 .
      5dac1b26
    • Jungshik Shin's avatar
      ICU 56 step 4: Apply post-56 fixes for measure/date format · 825221bb
      Jungshik Shin authored
      1. Apply post-56 patches from the trunk for measure/date format
          http://bugs.icu-project.org/trac/ticket/11986
          http://bugs.icu-project.org/trac/ticket/12031
          http://bugs.icu-project.org/trac/ticket/12030
          http://bugs.icu-project.org/trac/ticket/12041
      2. Generate a combined patch (measure_format.patch) for the above.
      3. Split locale_google.patch into 'locale_google.patch' and
         'relative_date.patch'. The latter is taken from Android.
      4. Update README.chromium
      
      Besides, apply two local patches : {tzdetect,xlit..}.patch and
      adjust gb18030.ucm and the corresponding patch
      
      Also, remove obsolte patches and update README.chromium
      
      BUG=575007
      R=mark@chromium.org
      
      Review URL: https://codereview.chromium.org/1621943002 .
      825221bb
  21. Jan 07, 2016
  22. Dec 14, 2015
  23. Sep 25, 2015
  24. 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
  25. 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
  26. Jul 16, 2015
  27. Jul 14, 2015
  28. Jun 18, 2015
  29. Jun 09, 2015
  30. Jun 04, 2015
  31. May 26, 2015
  32. Apr 06, 2015
  33. Apr 03, 2015
  34. Apr 02, 2015
    • Jungshik Shin (jungshik at google)'s avatar
      Update tz db to 2015b · 5f18004f
      Jungshik Shin (jungshik at google) authored
      1. Update the IANA tz db to 2015b.
        - http://mm.icann.org/pipermail/tz-announce/2015-March/000029.html
        - Mongolia decided to observe DST again in 2015 starting on the last
          Sunday in March.
        - Palestine's DST start date is corrected to be March 28 instead of 27th.
      
      2. Add a script to download the tz database files (update_tz.sh)
      
      3. Check in scripts/make_n_copy_data.sh that I've been using to build ICU
         data/assembly files and update README.chromium.
      
      4. Update android/patch_locale.sh to apply android/brkitr.patch as well.
      
      BUG=473288
      TEST=1. In JavaScript console, run the following.
        mar27_2015_1200 = new Date("03/27/2015 12:00Z")
        mar28_2015_1200 = new Date("03/28/2015 12:00Z")
        mar27_2015_1200.toLocaleString("en", {timeZone: "Asia/Gaza"}
        mar28_2015_1200.toLocaleString("en", {timeZone: "Asia/Gaza"}
        apr15_2014_1200 = new Date("04/15/2014 12:00Z")
        apr15_2015_1200 = new Date("04/15/2015 12:00Z")
        apr15_2014_1200.toLocaleString("en", {timeZone: "Asia/Ulan_Bator"}
        apr15_2015_1200.toLocaleString("en", {timeZone: "Asia/Ulan_Bator"}
      
      In Asia/Gaza, Mar 27 12:00Z should be 2PM and mar28 12:00Z should be 3PM.
      In Asia/Ulan_Bator, April 15 12:00Z should be 8PM in 2014 and should be 9PM
      in 2015. Ulan_Bator does not work due to http://crbug.com/364374.
      
      R=mark@chromium.org
      
      Review URL: https://codereview.chromium.org/1051193002
      5f18004f
Loading