diff options
author | graysky | 2021-02-02 06:24:00 -0500 |
---|---|---|
committer | graysky | 2021-02-02 06:24:02 -0500 |
commit | 47f0b45ed6948604c0f75454bcf7a308e165a3c1 (patch) | |
tree | 08cdb2f777f425d9f0bfaba11d3df35415faadbe | |
parent | 4600b6fc211c758de463992c8e78d266c226fa77 (diff) | |
download | aur-47f0b45ed6948604c0f75454bcf7a308e165a3c1.tar.gz |
Update to 88.0.4324.96-2: re2 20210201 rebuild
-rw-r--r-- | .SRCINFO | 24 | ||||
-rw-r--r-- | PKGBUILD | 28 | ||||
-rw-r--r-- | icu68.patch | 421 | ||||
-rw-r--r-- | v8-icu68.patch | 192 |
4 files changed, 21 insertions, 644 deletions
@@ -1,7 +1,7 @@ pkgbase = chromium-no-extras pkgdesc = Chromium without hangout services, widevine, pipewire, or chromedriver - pkgver = 87.0.4280.141 - pkgrel = 1 + pkgver = 88.0.4324.96 + pkgrel = 2 url = https://www.chromium.org/Home arch = x86_64 license = BSD @@ -30,7 +30,6 @@ pkgbase = chromium-no-extras depends = dbus depends = libpulse depends = pciutils - depends = json-glib depends = desktop-file-utils depends = hicolor-icon-theme depends = fontconfig @@ -48,24 +47,19 @@ pkgbase = chromium-no-extras depends = libxslt depends = libpng depends = freetype2 - optdepends = pepper-flash: support for Flash content optdepends = libva: hardware-accelerated video decode [experimental] optdepends = kdialog: needed for file dialogs in KDE optdepends = org.freedesktop.secrets: password storage backend on GNOME / Xfce optdepends = kwallet: for storing passwords in KWallet on KDE desktops - provides = chromium=87.0.4280.141 + provides = chromium=88.0.4324.96 conflicts = chromium - source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-87.0.4280.141.tar.xz - source = https://github.com/foutrelis/chromium-launcher/archive/v6/chromium-launcher-6.tar.gz - source = https://github.com/stha09/chromium-patches/releases/download/chromium-87-patchset-9/chromium-87-patchset-9.tar.xz - source = icu68.patch - source = v8-icu68.patch + source = https://commondatastorage.googleapis.com/chromium-browser-official/chromium-88.0.4324.96.tar.xz + source = https://github.com/foutrelis/chromium-launcher/archive/v7/chromium-launcher-7.tar.gz + source = https://github.com/stha09/chromium-patches/releases/download/chromium-88-patchset-3/chromium-88-patchset-3.tar.xz source = subpixel-anti-aliasing-in-FreeType-2.8.1.patch - sha256sums = 147591d7fc21e1a173701d28bbf35baddb91e64dd96ec16d8eee9a5113403375 - sha256sums = 04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1 - sha256sums = c99934bcd2f3ae8ea9620f5f59a94338b2cf739647f04c28c8a551d9083fa7e9 - sha256sums = 38fb5218331d6e03915490dab64f7b8bf26833a581d1aaa02090437c67e9439c - sha256sums = 6e919c9712d8fe6c2918778df1f8c2ee0675a87a48be5d2aaa54e320703ced4b + sha256sums = 8995c5bb28559579f3bed51841420253637f912c425908fe5aa389ce40e9c79f + sha256sums = 86859c11cfc8ba106a3826479c0bc759324a62150b271dd35d1a0f96e890f52f + sha256sums = e5a60a4c9d0544d3321cc241b4c7bd4adb0a885f090c6c6c21581eac8e3b4ba9 sha256sums = 1e2913e21c491d546e05f9b4edf5a6c7a22d89ed0b36ef692ca6272bcd5faec6 pkgname = chromium-no-extras @@ -5,11 +5,11 @@ # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=chromium-no-extras -pkgver=87.0.4280.141 -pkgrel=1 +pkgver=88.0.4324.96 +pkgrel=2 _pkgname=chromium -_launcher_ver=6 -_gcc_patchset=9 +_launcher_ver=7 +_gcc_patchset=3 pkgdesc="Chromium without hangout services, widevine, pipewire, or chromedriver" arch=('x86_64') url="https://www.chromium.org/Home" @@ -17,12 +17,12 @@ license=('BSD') provides=(chromium=$pkgver) conflicts=(chromium) depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt' - 'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib' + 'ttf-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'desktop-file-utils' 'hicolor-icon-theme') makedepends=('python' 'python2' 'gperf' 'mesa' 'ninja' 'nodejs' 'git' 'libva' 'clang' 'lld' 'gn' 'java-runtime-headless' 'python2-setuptools') -optdepends=('pepper-flash: support for Flash content' +optdepends=( 'libva: hardware-accelerated video decode [experimental]' 'kdialog: needed for file dialogs in KDE' 'org.freedesktop.secrets: password storage backend on GNOME / Xfce' @@ -30,14 +30,10 @@ optdepends=('pepper-flash: support for Flash content' source=(https://commondatastorage.googleapis.com/chromium-browser-official/$_pkgname-$pkgver.tar.xz https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz - icu68.patch - v8-icu68.patch subpixel-anti-aliasing-in-FreeType-2.8.1.patch) -sha256sums=('147591d7fc21e1a173701d28bbf35baddb91e64dd96ec16d8eee9a5113403375' - '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1' - 'c99934bcd2f3ae8ea9620f5f59a94338b2cf739647f04c28c8a551d9083fa7e9' - '38fb5218331d6e03915490dab64f7b8bf26833a581d1aaa02090437c67e9439c' - '6e919c9712d8fe6c2918778df1f8c2ee0675a87a48be5d2aaa54e320703ced4b' +sha256sums=('8995c5bb28559579f3bed51841420253637f912c425908fe5aa389ce40e9c79f' + '86859c11cfc8ba106a3826479c0bc759324a62150b271dd35d1a0f96e890f52f' + 'e5a60a4c9d0544d3321cc241b4c7bd4adb0a885f090c6c6c21581eac8e3b4ba9' '1e2913e21c491d546e05f9b4edf5a6c7a22d89ed0b36ef692ca6272bcd5faec6') # Possible replacements are listed in build/linux/unbundle/replace_gn_files.py @@ -87,13 +83,13 @@ prepare() { third_party/libxml/chromium/*.cc # Upstream fixes - patch -Np1 -i ../icu68.patch - patch -Np1 -d v8 <../v8-icu68.patch patch -Np1 -d third_party/skia <../subpixel-anti-aliasing-in-FreeType-2.8.1.patch # Fixes for building with libstdc++ instead of libc++ - patch -Np1 -i ../patches/chromium-87-ServiceWorkerContainerHost-crash.patch patch -Np1 -i ../patches/chromium-87-openscreen-include.patch + patch -Np1 -i ../patches/chromium-88-CompositorFrameReporter-dcheck.patch + patch -Np1 -i ../patches/chromium-88-ideographicSpaceCharacter.patch + patch -Np1 -i ../patches/chromium-88-AXTreeFormatter-include.patch # Force script incompatible with Python 3 to use /usr/bin/python2 sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py diff --git a/icu68.patch b/icu68.patch deleted file mode 100644 index bea451a67f92..000000000000 --- a/icu68.patch +++ /dev/null @@ -1,421 +0,0 @@ -From 4d16e52a5e6771c4aa5f892e14486bf0e87027d1 Mon Sep 17 00:00:00 2001 -From: Frank Tang <ftang@chromium.org> -Date: Tue, 20 Oct 2020 00:11:50 +0000 -Subject: [PATCH] Prepare for landing ICU68 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -In the landing process of ICU68 we found these need to be changed -since ICU68 no longer define TRUE and FALSE for UBool to -avoid C++20 problem. - -Bug: 1138555 -Change-Id: I64fd98c99864aa86b07280537a780105cb0eabbe -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2473522 -Reviewed-by: Frank Tang <ftang@chromium.org> -Reviewed-by: Colin Blundell <blundell@chromium.org> -Reviewed-by: Dominic Battré <battre@chromium.org> -Reviewed-by: Guillaume Jenkins <gujen@google.com> -Reviewed-by: Jungshik Shin <jshin@chromium.org> -Reviewed-by: Mihai Sardarescu <msarda@chromium.org> -Reviewed-by: Dave Tapuska <dtapuska@chromium.org> -Reviewed-by: Mustafa Emre Acer <meacer@chromium.org> -Reviewed-by: Marian Fechete <marianfe@google.com> -Reviewed-by: Matthew Denton <mpdenton@chromium.org> -Commit-Queue: Frank Tang <ftang@chromium.org> -Cr-Commit-Position: refs/heads/master@{#818713} ---- - base/i18n/icu_util.cc | 2 +- - base/i18n/string_compare.cc | 4 ++-- - base/i18n/time_formatting.cc | 2 +- - .../autofill/core/common/autofill_regexes.cc | 8 ++++---- - .../browser/string_conversions_util.cc | 6 +++--- - .../public/identity_manager/identity_utils.cc | 2 +- - .../renderer/spellcheck_worditerator.cc | 2 +- - .../spoof_checks/idn_spoof_checker.cc | 4 ++-- - .../spoof_checks/skeleton_generator.cc | 2 +- - content/zygote/zygote_linux.cc | 2 +- - .../time_zone_monitor_android.cc | 2 +- - .../renderer/core/exported/web_view_test.cc | 12 ++++++------ - .../blink/renderer/platform/text/locale_icu.cc | 4 ++-- - .../platform/text/text_break_iterator_icu.cc | 16 ++++++++-------- - .../renderer/platform/text/unicode_utilities.cc | 2 +- - .../renderer/platform/wtf/text/text_codec_icu.cc | 2 +- - ui/base/l10n/formatter.cc | 6 +++--- - 17 files changed, 39 insertions(+), 39 deletions(-) - -diff --git a/base/i18n/icu_util.cc b/base/i18n/icu_util.cc -index b225f1d46c0b7..20debbe655c46 100644 ---- a/base/i18n/icu_util.cc -+++ b/base/i18n/icu_util.cc -@@ -327,7 +327,7 @@ void InitializeIcuTimeZone() { - // https://ssl.icu-project.org/trac/ticket/13208 . - string16 zone_id = android::GetDefaultTimeZoneId(); - icu::TimeZone::adoptDefault(icu::TimeZone::createTimeZone( -- icu::UnicodeString(FALSE, zone_id.data(), zone_id.length()))); -+ icu::UnicodeString(false, zone_id.data(), zone_id.length()))); - #elif defined(OS_FUCHSIA) - // The platform-specific mechanisms used by ICU's detectHostTimeZone() to - // determine the default time zone will not work on Fuchsia. Therefore, -diff --git a/base/i18n/string_compare.cc b/base/i18n/string_compare.cc -index c0e83c6f7306f..e4fb687c14884 100644 ---- a/base/i18n/string_compare.cc -+++ b/base/i18n/string_compare.cc -@@ -18,8 +18,8 @@ UCollationResult CompareString16WithCollator(const icu::Collator& collator, - StringPiece16 rhs) { - UErrorCode error = U_ZERO_ERROR; - UCollationResult result = collator.compare( -- icu::UnicodeString(FALSE, lhs.data(), static_cast<int>(lhs.length())), -- icu::UnicodeString(FALSE, rhs.data(), static_cast<int>(rhs.length())), -+ icu::UnicodeString(false, lhs.data(), static_cast<int>(lhs.length())), -+ icu::UnicodeString(false, rhs.data(), static_cast<int>(rhs.length())), - error); - DCHECK(U_SUCCESS(error)); - return result; -diff --git a/base/i18n/time_formatting.cc b/base/i18n/time_formatting.cc -index c769b57d7162a..c085f5ef2448a 100644 ---- a/base/i18n/time_formatting.cc -+++ b/base/i18n/time_formatting.cc -@@ -240,7 +240,7 @@ bool TimeDurationFormatWithSeconds(const TimeDelta time, - icu::FieldPosition ignore(icu::FieldPosition::DONT_CARE); - measure_format.formatMeasures(measures, 3, formatted, ignore, status); - *out = i18n::UnicodeStringToString16(formatted); -- return U_SUCCESS(status) == TRUE; -+ return U_SUCCESS(status); - } - - string16 DateIntervalFormat(const Time& begin_time, -diff --git a/components/autofill/core/common/autofill_regexes.cc b/components/autofill/core/common/autofill_regexes.cc -index 02254fa266ac5..1cf12f310d077 100644 ---- a/components/autofill/core/common/autofill_regexes.cc -+++ b/components/autofill/core/common/autofill_regexes.cc -@@ -43,7 +43,7 @@ class AutofillRegexes { - icu::RegexMatcher* AutofillRegexes::GetMatcher(const base::string16& pattern) { - auto it = matchers_.find(pattern); - if (it == matchers_.end()) { -- const icu::UnicodeString icu_pattern(FALSE, pattern.data(), -+ const icu::UnicodeString icu_pattern(false, pattern.data(), - pattern.length()); - - UErrorCode status = U_ZERO_ERROR; -@@ -71,21 +71,21 @@ bool MatchesPattern(const base::string16& input, - base::AutoLock lock(*g_lock); - - icu::RegexMatcher* matcher = g_autofill_regexes->GetMatcher(pattern); -- icu::UnicodeString icu_input(FALSE, input.data(), input.length()); -+ icu::UnicodeString icu_input(false, input.data(), input.length()); - matcher->reset(icu_input); - - UErrorCode status = U_ZERO_ERROR; - UBool matched = matcher->find(0, status); - DCHECK(U_SUCCESS(status)); - -- if (matched == TRUE && match) { -+ if (matched && match) { - icu::UnicodeString match_unicode = - matcher->group(group_to_be_captured, status); - DCHECK(U_SUCCESS(status)); - *match = base::i18n::UnicodeStringToString16(match_unicode); - } - -- return matched == TRUE; -+ return matched; - } - - } // namespace autofill -diff --git a/components/autofill_assistant/browser/string_conversions_util.cc b/components/autofill_assistant/browser/string_conversions_util.cc -index 212bafa637288..1d00d68019fa3 100644 ---- a/components/autofill_assistant/browser/string_conversions_util.cc -+++ b/components/autofill_assistant/browser/string_conversions_util.cc -@@ -39,13 +39,13 @@ bool UnicodeToUTF8(const std::vector<UChar32>& source, std::string* target) { - // |target|. - bool AppendUnicodeToUTF8(const UChar32 source, std::string* target) { - char bytes[4]; -- UBool error = FALSE; -+ UBool error = false; - size_t offset = 0; - U8_APPEND(bytes, offset, base::size(bytes), source, error); -- if (error == FALSE) { -+ if (error == false) { - target->append(bytes, offset); - } -- return error == FALSE; -+ return !error; - } - - } // namespace autofill_assistant -diff --git a/components/signin/public/identity_manager/identity_utils.cc b/components/signin/public/identity_manager/identity_utils.cc -index 1c414e20e5de4..014d6746d95f2 100644 ---- a/components/signin/public/identity_manager/identity_utils.cc -+++ b/components/signin/public/identity_manager/identity_utils.cc -@@ -33,7 +33,7 @@ bool IsUsernameAllowedByPattern(base::StringPiece username, - - // See if the username matches the policy-provided pattern. - UErrorCode status = U_ZERO_ERROR; -- const icu::UnicodeString icu_pattern(FALSE, utf16_pattern.data(), -+ const icu::UnicodeString icu_pattern(false, utf16_pattern.data(), - utf16_pattern.length()); - icu::RegexMatcher matcher(icu_pattern, UREGEX_CASE_INSENSITIVE, status); - if (!U_SUCCESS(status)) { -diff --git a/components/spellcheck/renderer/spellcheck_worditerator.cc b/components/spellcheck/renderer/spellcheck_worditerator.cc -index ec16fefbebc91..3b1f060866021 100644 ---- a/components/spellcheck/renderer/spellcheck_worditerator.cc -+++ b/components/spellcheck/renderer/spellcheck_worditerator.cc -@@ -442,7 +442,7 @@ bool SpellcheckWordIterator::Normalize(size_t input_start, - // spellchecker and we need manual normalization as well. The normalized - // text does not have to be NUL-terminated since its characters are copied to - // string16, which adds a NUL character when we need. -- icu::UnicodeString input(FALSE, &text_[input_start], -+ icu::UnicodeString input(false, &text_[input_start], - base::checked_cast<int32_t>(input_length)); - UErrorCode status = U_ZERO_ERROR; - icu::UnicodeString output; -diff --git a/components/url_formatter/spoof_checks/idn_spoof_checker.cc b/components/url_formatter/spoof_checks/idn_spoof_checker.cc -index 6d66a7c4db885..d73192b1426a4 100644 ---- a/components/url_formatter/spoof_checks/idn_spoof_checker.cc -+++ b/components/url_formatter/spoof_checks/idn_spoof_checker.cc -@@ -368,7 +368,7 @@ IDNSpoofChecker::Result IDNSpoofChecker::SafeToDisplayAsUnicode( - return Result::kICUSpoofChecks; - } - -- icu::UnicodeString label_string(FALSE /* isTerminated */, label.data(), -+ icu::UnicodeString label_string(false /* isTerminated */, label.data(), - base::checked_cast<int32_t>(label.size())); - - // A punycode label with 'xn--' prefix is not subject to the URL -@@ -711,7 +711,7 @@ bool IDNSpoofChecker::IsWholeScriptConfusableAllowedForTLD( - base::StringPiece tld, - base::StringPiece16 tld_unicode) { - icu::UnicodeString tld_string( -- FALSE /* isTerminated */, tld_unicode.data(), -+ false /* isTerminated */, tld_unicode.data(), - base::checked_cast<int32_t>(tld_unicode.size())); - // Allow if the TLD contains any letter from the script, in which case it's - // likely to be a TLD in that script. -diff --git a/components/url_formatter/spoof_checks/skeleton_generator.cc b/components/url_formatter/spoof_checks/skeleton_generator.cc -index 9628626600df5..9a779018ebfae 100644 ---- a/components/url_formatter/spoof_checks/skeleton_generator.cc -+++ b/components/url_formatter/spoof_checks/skeleton_generator.cc -@@ -116,7 +116,7 @@ SkeletonGenerator::~SkeletonGenerator() = default; - Skeletons SkeletonGenerator::GetSkeletons(base::StringPiece16 hostname) { - Skeletons skeletons; - size_t hostname_length = hostname.length() - (hostname.back() == '.' ? 1 : 0); -- icu::UnicodeString host(FALSE, hostname.data(), hostname_length); -+ icu::UnicodeString host(false, hostname.data(), hostname_length); - // If input has any characters outside Latin-Greek-Cyrillic and [0-9._-], - // there is no point in getting rid of diacritics because combining marks - // attached to non-LGC characters are already blocked. -diff --git a/content/zygote/zygote_linux.cc b/content/zygote/zygote_linux.cc -index 95d5a82c25082..b6d8e5a29c55e 100644 ---- a/content/zygote/zygote_linux.cc -+++ b/content/zygote/zygote_linux.cc -@@ -557,7 +557,7 @@ base::ProcessId Zygote::ReadArgsAndFork(base::PickleIterator iter, - if (!iter.ReadString16(&timezone_id)) - return -1; - icu::TimeZone::adoptDefault(icu::TimeZone::createTimeZone( -- icu::UnicodeString(FALSE, timezone_id.data(), timezone_id.length()))); -+ icu::UnicodeString(false, timezone_id.data(), timezone_id.length()))); - - if (!iter.ReadInt(&numfds)) - return -1; -diff --git a/services/device/time_zone_monitor/time_zone_monitor_android.cc b/services/device/time_zone_monitor/time_zone_monitor_android.cc -index 818670a821e41..f57f9724e5d48 100644 ---- a/services/device/time_zone_monitor/time_zone_monitor_android.cc -+++ b/services/device/time_zone_monitor/time_zone_monitor_android.cc -@@ -34,7 +34,7 @@ void TimeZoneMonitorAndroid::TimeZoneChangedFromJava( - // See base/i18n/icu_util.cc:InitializeIcuTimeZone() for more information. - base::string16 zone_id = base::android::GetDefaultTimeZoneId(); - std::unique_ptr<icu::TimeZone> new_zone(icu::TimeZone::createTimeZone( -- icu::UnicodeString(FALSE, zone_id.data(), zone_id.length()))); -+ icu::UnicodeString(false, zone_id.data(), zone_id.length()))); - UpdateIcuAndNotifyClients(std::move(new_zone)); - } - -diff --git a/third_party/blink/renderer/core/exported/web_view_test.cc b/third_party/blink/renderer/core/exported/web_view_test.cc -index a6b9552bb18d9..36809d914d1af 100644 ---- a/third_party/blink/renderer/core/exported/web_view_test.cc -+++ b/third_party/blink/renderer/core/exported/web_view_test.cc -@@ -4868,18 +4868,18 @@ TEST_F(ShowUnhandledTapTest, ShowUnhandledTapUIIfNeeded) { - - TEST_F(ShowUnhandledTapTest, ShowUnhandledTapUIIfNeededWithMutateDom) { - // Test dom mutation. -- TestEachMouseEvent("mutateDom", FALSE); -+ TestEachMouseEvent("mutateDom", false); - - // Test without any DOM mutation. -- TestEachMouseEvent("none", TRUE); -+ TestEachMouseEvent("none", true); - } - - TEST_F(ShowUnhandledTapTest, ShowUnhandledTapUIIfNeededWithMutateStyle) { - // Test style mutation. -- TestEachMouseEvent("mutateStyle", FALSE); -+ TestEachMouseEvent("mutateStyle", false); - - // Test checkbox:indeterminate style mutation. -- TestEachMouseEvent("mutateIndeterminate", FALSE); -+ TestEachMouseEvent("mutateIndeterminate", false); - - // Test click div with :active style. - Tap("style_active"); -@@ -4888,10 +4888,10 @@ TEST_F(ShowUnhandledTapTest, ShowUnhandledTapUIIfNeededWithMutateStyle) { - - TEST_F(ShowUnhandledTapTest, ShowUnhandledTapUIIfNeededWithPreventDefault) { - // Test swallowing. -- TestEachMouseEvent("preventDefault", FALSE); -+ TestEachMouseEvent("preventDefault", false); - - // Test without any preventDefault. -- TestEachMouseEvent("none", TRUE); -+ TestEachMouseEvent("none", true); - } - - TEST_F(ShowUnhandledTapTest, ShowUnhandledTapUIIfNeededWithNonTriggeringNodes) { -diff --git a/third_party/blink/renderer/platform/text/locale_icu.cc b/third_party/blink/renderer/platform/text/locale_icu.cc -index 92fb99e0cc027..f991b5137728c 100644 ---- a/third_party/blink/renderer/platform/text/locale_icu.cc -+++ b/third_party/blink/renderer/platform/text/locale_icu.cc -@@ -169,12 +169,12 @@ static String GetDateFormatPattern(const UDateFormat* date_format) { - return g_empty_string; - - UErrorCode status = U_ZERO_ERROR; -- int32_t length = udat_toPattern(date_format, TRUE, nullptr, 0, &status); -+ int32_t length = udat_toPattern(date_format, true, nullptr, 0, &status); - if (status != U_BUFFER_OVERFLOW_ERROR || !length) - return g_empty_string; - StringBuffer<UChar> buffer(length); - status = U_ZERO_ERROR; -- udat_toPattern(date_format, TRUE, buffer.Characters(), length, &status); -+ udat_toPattern(date_format, true, buffer.Characters(), length, &status); - if (U_FAILURE(status)) - return g_empty_string; - return String::Adopt(buffer); -diff --git a/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc b/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc -index 5bea0079dd343..0e8c60a31599e 100644 ---- a/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc -+++ b/third_party/blink/renderer/platform/text/text_break_iterator_icu.cc -@@ -312,13 +312,13 @@ static inline bool TextInChunkOrOutOfRange(UText* text, - text->chunkOffset = offset <= std::numeric_limits<int32_t>::max() - ? static_cast<int32_t>(offset) - : 0; -- is_accessible = TRUE; -+ is_accessible = true; - return true; - } - if (native_index >= native_length && - text->chunkNativeLimit == native_length) { - text->chunkOffset = text->chunkLength; -- is_accessible = FALSE; -+ is_accessible = false; - return true; - } - } else { -@@ -331,12 +331,12 @@ static inline bool TextInChunkOrOutOfRange(UText* text, - text->chunkOffset = offset <= std::numeric_limits<int32_t>::max() - ? static_cast<int32_t>(offset) - : 0; -- is_accessible = TRUE; -+ is_accessible = true; - return true; - } - if (native_index <= 0 && !text->chunkNativeStart) { - text->chunkOffset = 0; -- is_accessible = FALSE; -+ is_accessible = false; - return true; - } - } -@@ -347,7 +347,7 @@ static UBool TextLatin1Access(UText* text, - int64_t native_index, - UBool forward) { - if (!text->context) -- return FALSE; -+ return false; - int64_t native_length = TextNativeLength(text); - UBool is_accessible; - if (TextInChunkOrOutOfRange(text, native_index, native_length, forward, -@@ -371,7 +371,7 @@ static UBool TextLatin1Access(UText* text, - DCHECK_EQ(new_context, kPriorContext); - TextLatin1SwitchToPriorContext(text, native_index, native_length, forward); - } -- return TRUE; -+ return true; - } - - static const struct UTextFuncs kTextLatin1Funcs = { -@@ -511,7 +511,7 @@ static void TextUTF16SwitchToPriorContext(UText* text, - - static UBool TextUTF16Access(UText* text, int64_t native_index, UBool forward) { - if (!text->context) -- return FALSE; -+ return false; - int64_t native_length = TextNativeLength(text); - UBool is_accessible; - if (TextInChunkOrOutOfRange(text, native_index, native_length, forward, -@@ -533,7 +533,7 @@ static UBool TextUTF16Access(UText* text, int64_t native_index, UBool forward) { - DCHECK_EQ(new_context, kPriorContext); - TextUTF16SwitchToPriorContext(text, native_index, native_length, forward); - } -- return TRUE; -+ return true; - } - - static const struct UTextFuncs kTextUTF16Funcs = { -diff --git a/third_party/blink/renderer/platform/text/unicode_utilities.cc b/third_party/blink/renderer/platform/text/unicode_utilities.cc -index 2cefd5390b6b0..b8c4515dc13ca 100644 ---- a/third_party/blink/renderer/platform/text/unicode_utilities.cc -+++ b/third_party/blink/renderer/platform/text/unicode_utilities.cc -@@ -300,7 +300,7 @@ void NormalizeCharactersIntoNFCForm(const UChar* characters, - DCHECK(U_SUCCESS(status)); - int32_t input_length = static_cast<int32_t>(length); - // copy-on-write. -- icu::UnicodeString normalized(FALSE, characters, input_length); -+ icu::UnicodeString normalized(false, characters, input_length); - // In the vast majority of cases, input is already NFC. Run a quick check - // to avoid normalizing the entire input unnecessarily. - int32_t normalized_prefix_length = -diff --git a/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc b/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc -index b62573550a1cb..fb8ab0530c51e 100644 ---- a/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc -+++ b/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc -@@ -327,7 +327,7 @@ void TextCodecICU::CreateICUConverter() const { - DLOG_IF(ERROR, err == U_AMBIGUOUS_ALIAS_WARNING) - << "ICU ambiguous alias warning for encoding: " << encoding_.GetName(); - if (converter_icu_) -- ucnv_setFallback(converter_icu_, TRUE); -+ ucnv_setFallback(converter_icu_, true); - } - - int TextCodecICU::DecodeToBuffer(UChar* target, -diff --git a/ui/base/l10n/formatter.cc b/ui/base/l10n/formatter.cc -index e4446d4786f49..684ead8c0a0df 100644 ---- a/ui/base/l10n/formatter.cc -+++ b/ui/base/l10n/formatter.cc -@@ -234,7 +234,7 @@ void Formatter::Format(Unit unit, - int value, - icu::UnicodeString* formatted_string) const { - DCHECK(simple_format_[unit]); -- DCHECK(formatted_string->isEmpty() == TRUE); -+ DCHECK(formatted_string->isEmpty()); - UErrorCode error = U_ZERO_ERROR; - FormatNumberInPlural(*simple_format_[unit], - value, formatted_string, &error); -@@ -250,7 +250,7 @@ void Formatter::Format(TwoUnits units, - << "Detailed() not implemented for your (format, length) combination!"; - DCHECK(detailed_format_[units][1]) - << "Detailed() not implemented for your (format, length) combination!"; -- DCHECK(formatted_string->isEmpty() == TRUE); -+ DCHECK(formatted_string->isEmpty()); - UErrorCode error = U_ZERO_ERROR; - FormatNumberInPlural(*detailed_format_[units][0], value_1, - formatted_string, &error); -@@ -283,7 +283,7 @@ std::unique_ptr<icu::MessageFormat> Formatter::InitFormat( - base::string16 pattern = l10n_util::GetStringUTF16(pluralities.id); - UErrorCode error = U_ZERO_ERROR; - std::unique_ptr<icu::MessageFormat> format(new icu::MessageFormat( -- icu::UnicodeString(FALSE, pattern.data(), pattern.length()), error)); -+ icu::UnicodeString(false, pattern.data(), pattern.length()), error)); - DCHECK(U_SUCCESS(error)); - if (format.get()) - return format; diff --git a/v8-icu68.patch b/v8-icu68.patch deleted file mode 100644 index 98739ea4df12..000000000000 --- a/v8-icu68.patch +++ /dev/null @@ -1,192 +0,0 @@ -From b0a7f5691113534c2cf771f2dd3cece5e93bc7d4 Mon Sep 17 00:00:00 2001 -From: Frank Tang <ftang@chromium.org> -Date: Tue, 03 Nov 2020 23:20:37 -0800 -Subject: [PATCH] Update to ICU68-1 - -ICU68-1 change the output skeleton format. So we need to change -resolvedOptions code for 68 migration. - -Chromium roll -https://chromium-review.googlesource.com/c/chromium/src/+/2474093 - -Bug: v8:10945 -Change-Id: I3b2c7fbe8abb22df8fa51287c498ca3245b8c55b -Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2477431 -Commit-Queue: Frank Tang <ftang@chromium.org> -Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> -Reviewed-by: Shu-yu Guo <syg@chromium.org> -Cr-Commit-Position: refs/heads/master@{#70972} - -(ported to work with <ICU-68.1 -- https://bugs.gentoo.org/757606) ---- - -diff --git a/src/objects/js-number-format.cc b/src/objects/js-number-format.cc -index 45b0eab..d18b133 100644 ---- a/src/objects/js-number-format.cc -+++ b/src/objects/js-number-format.cc -@@ -389,17 +389,20 @@ Handle<String> CurrencySignString(Isolate* isolate, - Handle<String> UnitDisplayString(Isolate* isolate, - const icu::UnicodeString& skeleton) { - // Ex: skeleton as -- // "measure-unit/length-meter .### rounding-mode-half-up unit-width-full-name" -+ // <ICU-68.1: "measure-unit/length-meter .### rounding-mode-half-up unit-width-full-name". -+ // >=ICU-68.1: "unit/length-meter .### rounding-mode-half-up unit-width-full-name" - if (skeleton.indexOf("unit-width-full-name") >= 0) { - return ReadOnlyRoots(isolate).long_string_handle(); - } - // Ex: skeleton as -- // "measure-unit/length-meter .### rounding-mode-half-up unit-width-narrow". -+ // <ICU-68.1: "measure-unit/length-meter .### rounding-mode-half-up unit-width-narrow". -+ // >=ICU-68.1: "unit/length-meter .### rounding-mode-half-up unit-width-narrow". - if (skeleton.indexOf("unit-width-narrow") >= 0) { - return ReadOnlyRoots(isolate).narrow_string_handle(); - } - // Ex: skeleton as -- // "measure-unit/length-foot .### rounding-mode-half-up" -+ // <ICU-68.1: "measure-unit/length-foot .### rounding-mode-half-up" -+ // >=ICU-68.1: "unit/length-foot .### rounding-mode-half-up" - return ReadOnlyRoots(isolate).short_string_handle(); - } - -@@ -422,7 +425,8 @@ Notation NotationFromSkeleton(const icu::UnicodeString& skeleton) { - return Notation::COMPACT; - } - // Ex: skeleton as -- // "measure-unit/length-foot .### rounding-mode-half-up" -+ // <ICU-68.1: "measure-unit/length-foot .### rounding-mode-half-up" -+ // >=ICU-68.1: "unit/length-foot .### rounding-mode-half-up" - return Notation::STANDARD; - } - -@@ -562,14 +566,23 @@ namespace { - - // Ex: percent .### rounding-mode-half-up - // Special case for "percent" --// Ex: "measure-unit/length-kilometer per-measure-unit/duration-hour .### --// rounding-mode-half-up" should return "kilometer-per-unit". --// Ex: "measure-unit/duration-year .### rounding-mode-half-up" should return --// "year". -+// <ICU-68.1: -+// Ex: "measure-unit/length-kilometer per-measure-unit/duration-hour .### -+// rounding-mode-half-up" should return "kilometer-per-unit". -+// Ex: "measure-unit/duration-year .### rounding-mode-half-up" should return -+// >=ICU-68.1: -+// Ex: "unit/milliliter-per-acre .### rounding-mode-half-up" -+// should return "milliliter-per-acre". -+// Ex: "unit/year .### rounding-mode-half-up" should return -+// "year". - std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) { - std::string str; - str = skeleton.toUTF8String<std::string>(str); -+#if U_ICU_VERSION_MAJOR_NUM < 68 - std::string search("measure-unit/"); -+#else -+ std::string search("unit/"); -+#endif - size_t begin = str.find(search); - if (begin == str.npos) { - // Special case for "percent". -@@ -578,20 +591,41 @@ std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) { - } - return ""; - } -+#if U_ICU_VERSION_MAJOR_NUM < 68 - // Skip the type (ex: "length"). - // "measure-unit/length-kilometer per-measure-unit/duration-hour" - // b - begin = str.find("-", begin + search.size()); -+#else -+ // Ex: -+ // "unit/acre .### rounding-mode-half-up" -+ // b -+ // Ex: -+ // "unit/milliliter-per-acre .### rounding-mode-half-up" -+ // b -+ begin += search.size(); -+#endif - if (begin == str.npos) { - return ""; - } -+#if U_ICU_VERSION_MAJOR_NUM < 68 - begin++; // Skip the '-'. -+#endif - // Find the end of the subtype. - size_t end = str.find(" ", begin); -- // "measure-unit/length-kilometer per-measure-unit/duration-hour" -- // b e -+ // <ICU-68.1: -+ // "measure-unit/length-kilometer per-measure-unit/duration-hour" -+ // b e -+ // >=ICU-68.1: -+ // Ex: -+ // "unit/acre .### rounding-mode-half-up" -+ // b e -+ // Ex: -+ // "unit/milliliter-per-acre .### rounding-mode-half-up" -+ // b e - if (end == str.npos) { - end = str.size(); -+#if U_ICU_VERSION_MAJOR_NUM < 68 - return str.substr(begin, end - begin); - } - // "measure-unit/length-kilometer per-measure-unit/duration-hour" -@@ -625,17 +659,36 @@ std::string UnitFromSkeleton(const icu::UnicodeString& skeleton) { - // "measure-unit/length-kilometer per-measure-unit/duration-hour" - // [result ] b e - return result + "-per-" + str.substr(begin, end - begin); -+#else -+ } -+ return str.substr(begin, end - begin); -+#endif - } - - Style StyleFromSkeleton(const icu::UnicodeString& skeleton) { - if (skeleton.indexOf("currency/") >= 0) { - return Style::CURRENCY; - } -+#if U_ICU_VERSION_MAJOR_NUM < 68 - if (skeleton.indexOf("measure-unit/") >= 0) { - if (skeleton.indexOf("scale/100") >= 0 && - skeleton.indexOf("measure-unit/concentr-percent") >= 0) { -+#else -+ if (skeleton.indexOf("percent") >= 0) { -+ // percent precision-integer rounding-mode-half-up scale/100 -+ if (skeleton.indexOf("scale/100") >= 0) { -+#endif - return Style::PERCENT; -+#if U_ICU_VERSION_MAJOR_NUM >= 68 -+ } else { -+ return Style::UNIT; -+#endif - } -+#if U_ICU_VERSION_MAJOR_NUM >= 68 -+ } -+ // Before ICU68: "measure-unit/", since ICU68 "unit/" -+ if (skeleton.indexOf("unit/") >= 0) { -+#endif - return Style::UNIT; - } - return Style::DECIMAL; -diff --git a/src/objects/js-relative-time-format.cc b/src/objects/js-relative-time-format.cc -index 267343aaae..64d56a1c12 100644 ---- a/src/objects/js-relative-time-format.cc -+++ b/src/objects/js-relative-time-format.cc -@@ -195,9 +195,18 @@ MaybeHandle<JSRelativeTimeFormat> JSRelativeTimeFormat::New( - } - } - -+#if U_ICU_VERSION_MAJOR_NUM < 68 - icu::DecimalFormat* decimal_format = - static_cast<icu::DecimalFormat*>(number_format); - decimal_format->setMinimumGroupingDigits(-2); -+#else -+ if (number_format->getDynamicClassID() == -+ icu::DecimalFormat::getStaticClassID()) { -+ icu::DecimalFormat* decimal_format = -+ static_cast<icu::DecimalFormat*>(number_format); -+ decimal_format->setMinimumGroupingDigits(-2); -+ } -+#endif - - // Change UDISPCTX_CAPITALIZATION_NONE to other values if - // ECMA402 later include option to change capitalization. |