Date: Thursday, April 30, 2020 @ 13:55:08 Author: foutrelis Revision: 381978
archrelease: copy kde-unstable to kde-unstable-x86_64 Added: qt5-webengine/repos/kde-unstable-x86_64/PKGBUILD (from rev 381977, qt5-webengine/kde-unstable/PKGBUILD) qt5-webengine/repos/kde-unstable-x86_64/icu67.patch (from rev 381977, qt5-webengine/kde-unstable/icu67.patch) Deleted: qt5-webengine/repos/kde-unstable-x86_64/PKGBUILD -------------+ PKGBUILD | 93 ++++++++++++++++--------------- icu67.patch | 169 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 217 insertions(+), 45 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2020-04-30 13:55:01 UTC (rev 381977) +++ PKGBUILD 2020-04-30 13:55:08 UTC (rev 381978) @@ -1,45 +0,0 @@ -# Maintainer: Felix Yan <felixonm...@archlinux.org> -# Contributor: Andrea Scarpino <and...@archlinux.org> - -pkgname=qt5-webengine -_qtver=5.15.0-beta4 -pkgver=${_qtver/-/} -pkgrel=1 -arch=('x86_64') -url='https://www.qt.io' -license=('LGPL3' 'LGPL2.1' 'BSD') -pkgdesc='Provides support for web applications using the Chromium browser project' -depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' - 'libevent' 'snappy' 'nss' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx' 'krb5' 'ttf-font') -makedepends=('python2' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools' 'poppler') -groups=('qt' 'qt5') -_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}" -source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") -sha256sums=('96da8e77eaf78d89a3f1874b4033cfcff45f84d178a21584d351b587b2fa87aa') - -prepare() { - mkdir -p build -} - -build() { - cd build - qmake ../${_pkgfqn} -- \ - -proprietary-codecs \ - -system-ffmpeg \ - -webp \ - -spellchecker \ - -webengine-icu \ - -webengine-kerberos - make -} - -package() { - cd build - make INSTALL_ROOT="$pkgdir" install - - # Drop QMAKE_PRL_BUILD_DIR because reference the build dir - find "$pkgdir/usr/lib" -type f -name '*.prl' \ - -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; - - install -Dm644 "$srcdir"/${_pkgfqn}/src/3rdparty/chromium/LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE.chromium -} Copied: qt5-webengine/repos/kde-unstable-x86_64/PKGBUILD (from rev 381977, qt5-webengine/kde-unstable/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2020-04-30 13:55:08 UTC (rev 381978) @@ -0,0 +1,48 @@ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Contributor: Andrea Scarpino <and...@archlinux.org> + +pkgname=qt5-webengine +_qtver=5.15.0-beta4 +pkgver=${_qtver/-/} +pkgrel=2 +arch=('x86_64') +url='https://www.qt.io' +license=('LGPL3' 'LGPL2.1' 'BSD') +pkgdesc='Provides support for web applications using the Chromium browser project' +depends=('qt5-webchannel' 'qt5-location' 'libxcomposite' 'libxrandr' 'pciutils' 'libxss' + 'libevent' 'snappy' 'nss' 'libxslt' 'minizip' 'ffmpeg' 're2' 'libvpx' 'krb5' 'ttf-font') +makedepends=('python2' 'gperf' 'jsoncpp' 'ninja' 'qt5-tools' 'poppler') +groups=('qt' 'qt5') +_pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}" +source=("https://download.qt.io/development_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" + icu67.patch) +sha256sums=('96da8e77eaf78d89a3f1874b4033cfcff45f84d178a21584d351b587b2fa87aa' + '5315977307e69d20b3e856d3f8724835b08e02085a4444a5c5cefea83fd7d006') + +prepare() { + mkdir -p build + patch -Np3 -d $_pkgfqn/src/3rdparty/chromium/v8 <icu67.patch +} + +build() { + cd build + qmake ../${_pkgfqn} -- \ + -proprietary-codecs \ + -system-ffmpeg \ + -webp \ + -spellchecker \ + -webengine-icu \ + -webengine-kerberos + make +} + +package() { + cd build + make INSTALL_ROOT="$pkgdir" install + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/usr/lib" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + install -Dm644 "$srcdir"/${_pkgfqn}/src/3rdparty/chromium/LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE.chromium +} Copied: qt5-webengine/repos/kde-unstable-x86_64/icu67.patch (from rev 381977, qt5-webengine/kde-unstable/icu67.patch) =================================================================== --- icu67.patch (rev 0) +++ icu67.patch 2020-04-30 13:55:08 UTC (rev 381978) @@ -0,0 +1,169 @@ +From 2b107e7670ffb43719a66ee4a55ab408a5dcf2a5 Mon Sep 17 00:00:00 2001 +From: Ujjwal Sharma <ryzoku...@disroot.org> +Date: Wed, 22 Apr 2020 12:20:17 +0530 +Subject: [PATCH] deps: V8: backport 3f8dc4b2e5ba + +Original commit message: + + [intl] Remove soon-to-be removed getAllFieldPositions + + Needed to land ICU67.1 soon. + + Bug: v8:10393 + Change-Id: I3c7737ca600d6ccfdc46ffaddfb318ce60bc7618 + Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2136489 + Reviewed-by: Jakob Kummerow <jkumme...@chromium.org> + Commit-Queue: Frank Tang <ft...@chromium.org> + Cr-Commit-Position: refs/heads/master@{#67027} + +Refs: https://github.com/v8/v8/commit/3f8dc4b2e5baf77b463334c769af85b79d8c1463 +--- + common.gypi | 2 +- + deps/v8/src/objects/js-number-format.cc | 72 +++++++++++++------------ + 2 files changed, 38 insertions(+), 36 deletions(-) + +diff --git a/deps/v8/src/objects/js-number-format.cc b/deps/v8/src/objects/js-number-format.cc +index 92d3e2fb82e..ced408aa173 100644 +--- a/deps/v8/src/objects/js-number-format.cc ++++ b/deps/v8/src/objects/js-number-format.cc +@@ -1197,42 +1197,31 @@ MaybeHandle<JSNumberFormat> JSNumberFormat::New(Isolate* isolate, + } + + namespace { +-Maybe<icu::UnicodeString> IcuFormatNumber( ++Maybe<bool> IcuFormatNumber( + Isolate* isolate, + const icu::number::LocalizedNumberFormatter& number_format, +- Handle<Object> numeric_obj, icu::FieldPositionIterator* fp_iter) { ++ Handle<Object> numeric_obj, icu::number::FormattedNumber* formatted) { + // If it is BigInt, handle it differently. + UErrorCode status = U_ZERO_ERROR; +- icu::number::FormattedNumber formatted; + if (numeric_obj->IsBigInt()) { + Handle<BigInt> big_int = Handle<BigInt>::cast(numeric_obj); + Handle<String> big_int_string; + ASSIGN_RETURN_ON_EXCEPTION_VALUE(isolate, big_int_string, + BigInt::ToString(isolate, big_int), +- Nothing<icu::UnicodeString>()); +- formatted = number_format.formatDecimal( ++ Nothing<bool>()); ++ *formatted = number_format.formatDecimal( + {big_int_string->ToCString().get(), big_int_string->length()}, status); + } else { + double number = numeric_obj->Number(); +- formatted = number_format.formatDouble(number, status); ++ *formatted = number_format.formatDouble(number, status); + } + if (U_FAILURE(status)) { + // This happen because of icu data trimming trim out "unit". + // See https://bugs.chromium.org/p/v8/issues/detail?id=8641 +- THROW_NEW_ERROR_RETURN_VALUE(isolate, +- NewTypeError(MessageTemplate::kIcuError), +- Nothing<icu::UnicodeString>()); +- } +- if (fp_iter) { +- formatted.getAllFieldPositions(*fp_iter, status); ++ THROW_NEW_ERROR_RETURN_VALUE( ++ isolate, NewTypeError(MessageTemplate::kIcuError), Nothing<bool>()); + } +- icu::UnicodeString result = formatted.toString(status); +- if (U_FAILURE(status)) { +- THROW_NEW_ERROR_RETURN_VALUE(isolate, +- NewTypeError(MessageTemplate::kIcuError), +- Nothing<icu::UnicodeString>()); +- } +- return Just(result); ++ return Just(true); + } + + } // namespace +@@ -1243,10 +1232,16 @@ MaybeHandle<String> JSNumberFormat::FormatNumeric( + Handle<Object> numeric_obj) { + DCHECK(numeric_obj->IsNumeric()); + +- Maybe<icu::UnicodeString> maybe_format = +- IcuFormatNumber(isolate, number_format, numeric_obj, nullptr); ++ icu::number::FormattedNumber formatted; ++ Maybe<bool> maybe_format = ++ IcuFormatNumber(isolate, number_format, numeric_obj, &formatted); + MAYBE_RETURN(maybe_format, Handle<String>()); +- return Intl::ToString(isolate, maybe_format.FromJust()); ++ UErrorCode status = U_ZERO_ERROR; ++ icu::UnicodeString result = formatted.toString(status); ++ if (U_FAILURE(status)) { ++ THROW_NEW_ERROR(isolate, NewTypeError(MessageTemplate::kIcuError), String); ++ } ++ return Intl::ToString(isolate, result); + } + + namespace { +@@ -1359,12 +1354,18 @@ std::vector<NumberFormatSpan> FlattenRegionsToParts( + } + + namespace { +-Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, +- icu::FieldPositionIterator* fp_iter, ++Maybe<int> ConstructParts(Isolate* isolate, ++ icu::number::FormattedNumber* formatted, + Handle<JSArray> result, int start_index, + Handle<Object> numeric_obj, bool style_is_unit) { ++ UErrorCode status = U_ZERO_ERROR; ++ icu::UnicodeString formatted_text = formatted->toString(status); ++ if (U_FAILURE(status)) { ++ THROW_NEW_ERROR_RETURN_VALUE( ++ isolate, NewTypeError(MessageTemplate::kIcuError), Nothing<int>()); ++ } + DCHECK(numeric_obj->IsNumeric()); +- int32_t length = formatted.length(); ++ int32_t length = formatted_text.length(); + int index = start_index; + if (length == 0) return Just(index); + +@@ -1373,13 +1374,14 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, + // other region covers some part of the formatted string. It's possible + // there's another field with exactly the same begin and end as this backdrop, + // in which case the backdrop's field_id of -1 will give it lower priority. +- regions.push_back(NumberFormatSpan(-1, 0, formatted.length())); ++ regions.push_back(NumberFormatSpan(-1, 0, formatted_text.length())); + + { +- icu::FieldPosition fp; +- while (fp_iter->next(fp)) { +- regions.push_back(NumberFormatSpan(fp.getField(), fp.getBeginIndex(), +- fp.getEndIndex())); ++ icu::ConstrainedFieldPosition cfp; ++ cfp.constrainCategory(UFIELD_CATEGORY_NUMBER); ++ while (formatted->nextPosition(cfp, status)) { ++ regions.push_back( ++ NumberFormatSpan(cfp.getField(), cfp.getStart(), cfp.getLimit())); + } + } + +@@ -1401,7 +1403,7 @@ Maybe<int> ConstructParts(Isolate* isolate, const icu::UnicodeString& formatted, + Handle<String> substring; + ASSIGN_RETURN_ON_EXCEPTION_VALUE( + isolate, substring, +- Intl::ToString(isolate, formatted, part.begin_pos, part.end_pos), ++ Intl::ToString(isolate, formatted_text, part.begin_pos, part.end_pos), + Nothing<int>()); + Intl::AddElement(isolate, result, index, field_type_string, substring); + ++index; +@@ -1421,14 +1423,14 @@ MaybeHandle<JSArray> JSNumberFormat::FormatToParts( + number_format->icu_number_formatter().raw(); + CHECK_NOT_NULL(fmt); + +- icu::FieldPositionIterator fp_iter; +- Maybe<icu::UnicodeString> maybe_format = +- IcuFormatNumber(isolate, *fmt, numeric_obj, &fp_iter); ++ icu::number::FormattedNumber formatted; ++ Maybe<bool> maybe_format = ++ IcuFormatNumber(isolate, *fmt, numeric_obj, &formatted); + MAYBE_RETURN(maybe_format, Handle<JSArray>()); + + Handle<JSArray> result = factory->NewJSArray(0); + Maybe<int> maybe_format_to_parts = ConstructParts( +- isolate, maybe_format.FromJust(), &fp_iter, result, 0, numeric_obj, ++ isolate, &formatted, result, 0, numeric_obj, + number_format->style() == JSNumberFormat::Style::UNIT); + MAYBE_RETURN(maybe_format_to_parts, Handle<JSArray>()); +