Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(104)

Issue 465543004: Factor Chrome details out of update manifest fetching. (Closed)

Created:
6 years, 4 months ago by Ken Rockot(use gerrit already)
Modified:
6 years, 4 months ago
CC:
chromium-reviews, chromium-apps-reviews_chromium.org, Ilya Sherman, asvitkine+watch_chromium.org, extensions-reviews_chromium.org
Project:
chromium
Visibility:
Public.

Description

Factor Chrome details out of update manifest fetching. This establishes a ManifestFetchDataDelegate for use by ExtensionDownloader and ManifestFetchData, and moves ManifestFetchData into //extensions/browser/updater. The delegate provides implementation details for update manifest fetching, including brand code, boilerplate query parameters, and ping data. Chrome's implementation has knowledge of the Google brand, the metrics service, and Omaha-specific query parameters necessary for CRX item queries. BUG=398671 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=289800

Patch Set 1 : #

Total comments: 2

Patch Set 2 : #

Total comments: 4

Patch Set 3 : #

Patch Set 4 : #

Total comments: 1

Patch Set 5 : clean up forward decls in CMSA #

Unified diffs Side-by-side diffs Delta from patch set Stats (+278 lines, -395 lines) Patch
M chrome/browser/chromeos/extensions/external_cache.cc View 1 2 3 2 chunks +3 lines, -2 lines 0 comments Download
M chrome/browser/extensions/extension_service.cc View 1 2 6 chunks +4 lines, -32 lines 0 comments Download
M chrome/browser/extensions/extension_system_impl.cc View 2 chunks +1 line, -1 line 0 comments Download
A chrome/browser/extensions/updater/chrome_extension_downloader_factory.h View 1 2 1 chunk +39 lines, -0 lines 0 comments Download
A chrome/browser/extensions/updater/chrome_extension_downloader_factory.cc View 1 2 1 chunk +54 lines, -0 lines 0 comments Download
M chrome/browser/extensions/updater/extension_downloader.h View 1 2 4 chunks +34 lines, -1 line 0 comments Download
M chrome/browser/extensions/updater/extension_downloader.cc View 1 2 5 chunks +22 lines, -7 lines 0 comments Download
M chrome/browser/extensions/updater/extension_downloader_delegate.h View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/updater/extension_updater.h View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/updater/extension_updater_unittest.cc View 1 2 21 chunks +64 lines, -48 lines 0 comments Download
D chrome/browser/extensions/updater/manifest_fetch_data.h View 1 chunk +0 lines, -104 lines 0 comments Download
D chrome/browser/extensions/updater/manifest_fetch_data.cc View 1 chunk +0 lines, -166 lines 0 comments Download
M chrome/browser/extensions/updater/safe_manifest_parser.h View 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/metrics/chrome_metrics_service_accessor.h View 1 2 3 4 3 chunks +2 lines, -4 lines 0 comments Download
M chrome/chrome_browser_extensions.gypi View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
A + extensions/browser/updater/manifest_fetch_data.h View 1 4 chunks +28 lines, -4 lines 0 comments Download
A + extensions/browser/updater/manifest_fetch_data.cc View 1 2 6 chunks +20 lines, -21 lines 0 comments Download
M extensions/extensions.gyp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (0 generated)
Ken Rockot(use gerrit already)
Ben, could you please take a look? I'm not so hot on the delegate interface ...
6 years, 4 months ago (2014-08-12 01:07:38 UTC) #1
not at google - send to devlin
https://codereview.chromium.org/465543004/diff/60001/extensions/browser/updater/default_manifest_fetch_data_delegate.h File extensions/browser/updater/default_manifest_fetch_data_delegate.h (right): https://codereview.chromium.org/465543004/diff/60001/extensions/browser/updater/default_manifest_fetch_data_delegate.h#newcode21 extensions/browser/updater/default_manifest_fetch_data_delegate.h:21: virtual std::string GetBrandCode() OVERRIDE; I guess that it's "nice", ...
6 years, 4 months ago (2014-08-12 16:33:03 UTC) #2
Ken Rockot(use gerrit already)
On 2014/08/12 16:33:03, kalman wrote: > https://codereview.chromium.org/465543004/diff/60001/extensions/browser/updater/default_manifest_fetch_data_delegate.h > File extensions/browser/updater/default_manifest_fetch_data_delegate.h (right): > > https://codereview.chromium.org/465543004/diff/60001/extensions/browser/updater/default_manifest_fetch_data_delegate.h#newcode21 > ...
6 years, 4 months ago (2014-08-12 16:42:58 UTC) #3
Ken Rockot(use gerrit already)
OK, how about this? No changes to ExtensionDownloader constructor. All manifest fetch configuration is optional ...
6 years, 4 months ago (2014-08-12 21:47:30 UTC) #4
not at google - send to devlin
lgtm https://codereview.chromium.org/465543004/diff/80001/chrome/browser/extensions/extension_service.cc File chrome/browser/extensions/extension_service.cc (right): https://codereview.chromium.org/465543004/diff/80001/chrome/browser/extensions/extension_service.cc#newcode605 chrome/browser/extensions/extension_service.cc:605: if (!brand.empty() && !google_brand::IsOrganic(brand)) I read this as ...
6 years, 4 months ago (2014-08-13 01:30:02 UTC) #5
Ken Rockot(use gerrit already)
Many graciases On 2014/08/13 01:30:02, kalman wrote: > lgtm > > https://codereview.chromium.org/465543004/diff/80001/chrome/browser/extensions/extension_service.cc > File chrome/browser/extensions/extension_service.cc ...
6 years, 4 months ago (2014-08-13 02:36:32 UTC) #6
Ken Rockot(use gerrit already)
Hi Jim, could you please take a look for ChromeMetricsServiceAccessor?
6 years, 4 months ago (2014-08-13 06:30:53 UTC) #7
Ilya Sherman
LGTM % the nit below, but I wonder whether the extensions code still needs to ...
6 years, 4 months ago (2014-08-13 08:20:52 UTC) #8
Ken Rockot(use gerrit already)
Thanks. On 2014/08/13 08:20:52, Ilya Sherman wrote: > LGTM % the nit below, but I ...
6 years, 4 months ago (2014-08-13 13:38:56 UTC) #9
Ken Rockot(use gerrit already)
On 2014/08/13 13:38:56, Ken Rockot wrote: > Thanks. > > On 2014/08/13 08:20:52, Ilya Sherman ...
6 years, 4 months ago (2014-08-13 15:05:41 UTC) #10
Ken Rockot(use gerrit already)
Alright, I spoke with erikkay@ off-thread; we do still want these metrics. Thanks again.
6 years, 4 months ago (2014-08-13 15:54:19 UTC) #11
Ken Rockot(use gerrit already)
The CQ bit was checked by rockot@chromium.org
6 years, 4 months ago (2014-08-13 17:57:58 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rockot@chromium.org/465543004/160001
6 years, 4 months ago (2014-08-13 17:58:46 UTC) #13
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: android_aosp on tryserver.chromium.linux ...
6 years, 4 months ago (2014-08-13 21:52:38 UTC) #14
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 4 months ago (2014-08-14 09:58:32 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: android_aosp on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_aosp/builds/5582)
6 years, 4 months ago (2014-08-14 09:58:34 UTC) #16
Ken Rockot(use gerrit already)
The CQ bit was checked by rockot@chromium.org
6 years, 4 months ago (2014-08-14 16:02:33 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/rockot@chromium.org/465543004/160001
6 years, 4 months ago (2014-08-14 16:05:56 UTC) #18
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: android_aosp on tryserver.chromium.linux ...
6 years, 4 months ago (2014-08-15 04:33:45 UTC) #19
commit-bot: I haz the power
Committed patchset #5 (160001) as 289800
6 years, 4 months ago (2014-08-15 05:21:21 UTC) #20
gunsch
A revert of this CL (patchset #5) has been created in https://codereview.chromium.org/470653007/ by gunsch@chromium.org. The ...
6 years, 4 months ago (2014-08-15 06:30:24 UTC) #21
Nikita (slow)
A revert of this CL (patchset #5) has been created in https://codereview.chromium.org/476073002/ by nkostylev@chromium.org. The ...
6 years, 4 months ago (2014-08-15 08:33:20 UTC) #22
Nikita (slow)
On 2014/08/15 08:33:20, Nikita Kostylev wrote: > A revert of this CL (patchset #5) has ...
6 years, 4 months ago (2014-08-15 08:35:49 UTC) #23
Nikita (slow)
On 2014/08/15 08:35:49, Nikita Kostylev wrote: > On 2014/08/15 08:33:20, Nikita Kostylev wrote: > > ...
6 years, 4 months ago (2014-08-15 08:36:35 UTC) #24
Nikita (slow)
6 years, 4 months ago (2014-08-15 08:38:15 UTC) #25
Message was sent while issue was closed.
On 2014/08/15 08:36:35, Nikita Kostylev wrote:
> On 2014/08/15 08:35:49, Nikita Kostylev wrote:
> > On 2014/08/15 08:33:20, Nikita Kostylev wrote:
> > > A revert of this CL (patchset #5) has been created in
> > > https://codereview.chromium.org/476073002/ by
mailto:nkostylev@chromium.org.
> > > 
> > > The reason for reverting is: Doesn't compile on all chromium.chrome
> buildbots
> > > (official)..
> > 
> > http://goo.gl/Hqf2BE
> > http://goo.gl/CyHVt9
> > http://goo.gl/0QGGSu
> > http://goo.gl/tJuF45
> > http://goo.gl/WLylCf
> 
> FAILED: /b/build/goma/gomacc
> ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF
>
obj/chrome/browser/extensions/updater/browser_extensions.chrome_extension_downloader_factory.o.d
> -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 -DGOOGLE_CHROME_BUILD
> -DCR_CLANG_REVISION=214024 -DENABLE_RLZ -DTOOLKIT_VIEWS=1
> -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_ASH=1 -DUSE_PANGO=1
> -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_X11=1
> -DUSE_XI2_MT=2 -DIMAGE_LOADER_EXTENSION=1 -DENABLE_REMOTING=1
-DENABLE_WEBRTC=1
> -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY
> -DENABLE_NOTIFICATIONS -DENABLE_HIDPI=1 -DUSE_UDEV -DENABLE_EGLIMAGE=1
> -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGINS=1
> -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1
> -DENABLE_PROD_WALLET_SERVICE=1 -DENABLE_BACKGROUND=1 -DENABLE_GOOGLE_NOW=1
> -DCLD_VERSION=2 -DCLD2_DATA_SOURCE=static -DENABLE_FULL_PRINTING=1
> -DENABLE_PRINTING=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1
> -DENABLE_APP_LIST=1 -DENABLE_MANAGED_USERS=1 -DENABLE_MDNS=1
> -DENABLE_SERVICE_DISCOVERY=1 -DFULL_SAFE_BROWSING -DUSE_BRLAPI
> -DGL_GLEXT_PROTOTYPES -DMOJO_USE_SYSTEM_IMPL -DLIBPEERCONNECTION_LIB=1
> -DSK_ENABLE_INST_COUNT=0 -DSK_SUPPORT_GPU=1
> '-DGR_GL_CUSTOM_SETUP_HEADER="GrGLConfig_chrome.h"'
> -DSK_ENABLE_LEGACY_API_ALIASING=1 -DSK_ATTR_DEPRECATED=SK_NOTHING_ARG1
> -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_WILL_NEVER_DRAW_PERSPECTIVE_TEXT
> -DSK_SUPPORT_LEGACY_PICTURE_CLONE -DSK_SUPPORT_LEGACY_GETDEVICE
> -DSK_IGNORE_ETC1_SUPPORT -DSK_IGNORE_GPU_DITHER -DSK_USE_POSIX_THREADS
> -DSK_DEFERRED_CANVAS_USES_FACTORIES=1 -DU_USING_ICU_NAMESPACE=0
> -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DWEBRTC_CHROMIUM_BUILD
> -DWEBRTC_LINUX -DWEBRTC_POSIX -DPROTOBUF_USE_DLLS -DGOOGLE_PROTOBUF_NO_RTTI
> -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DUSE_NSS=1 -DOS_CHROMEOS=1
> -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DOFFICIAL_BUILD
> -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -Igen -I../..
> -Iobj/chrome/browser_extensions.gen -Iobj/chrome/browser_extensions.gen/chrome
> -I../../third_party/khronos -I../../gpu -I../../skia/config
> -I../../third_party/WebKit/Source -Igen/chrome -Igen/protoc_out
> -Igen/components/strings -I../../third_party/WebKit
> -I../../net/third_party/nss/ssl -Igen/extensions/strings
> -I../../third_party/skia/src/core -I../../third_party/skia/include/core
> -I../../third_party/skia/include/effects -I../../third_party/skia/include/pdf
> -I../../third_party/skia/include/gpu -I../../third_party/skia/include/lazy
> -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pipe
> -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils
> -I../../skia/ext -I../../third_party/cacheinvalidation/overrides
> -I../../third_party/cacheinvalidation/src -I../../third_party/icu/source/i18n
> -I../../third_party/icu/source/common
> -I../../third_party/leveldatabase/src/include
> -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase
> -I../../third_party/re2 -I../../third_party/webrtc/overrides
-I../../third_party
> -Igen/ui/resources -Igen/ui/strings -Igen/webkit -Igen/ui/keyboard
-Igen/policy
> -I../../third_party/protobuf -I../../third_party/protobuf/src -Werror -pthread
> -fno-exceptions -fno-strict-aliasing -Wall -Wno-unused-parameter
> -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC
> -Wno-reserved-user-defined-literal -Xclang -load -Xclang
>
/b/build/slave/google-chrome-rel-chromeos/build/src/tools/clang/scripts/../../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so
> -Xclang -add-plugin -Xclang find-bad-constructs -fcolor-diagnostics -g
>
-B/b/build/slave/google-chrome-rel-chromeos/build/src/third_party/binutils/Linux_x64/Release/bin
> -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration
> -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing
> -Wno-deprecated-register -Wexit-time-destructors -pthread
> -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
> -I/usr/include/nss -I/usr/include/nspr -Wno-header-guard
-I/usr/include/dbus-1.0
> -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -m64 -march=x86-64 -O2
> -fdata-sections -ffunction-sections -fno-slp-vectorize -fno-unwind-tables
> -fno-asynchronous-unwind-tables -fno-rtti -fno-threadsafe-statics
> -fvisibility-inlines-hidden -Wsign-compare -std=gnu++11  -c
> ../../chrome/browser/extensions/updater/chrome_extension_downloader_factory.cc
> -o
>
obj/chrome/browser/extensions/updater/browser_extensions.chrome_extension_downloader_factory.o
>
../../chrome/browser/extensions/updater/chrome_extension_downloader_factory.cc:30:3:
> error: use of undeclared identifier 'google_brand'
>   google_brand::GetBrand(&brand);
>   ^
>
../../chrome/browser/extensions/updater/chrome_extension_downloader_factory.cc:30:27:
> error: declaration of reference variable 'brand' requires an initializer
>   google_brand::GetBrand(&brand);
>                           ^~~~~
>
../../chrome/browser/extensions/updater/chrome_extension_downloader_factory.cc:31:26:
> error: use of undeclared identifier 'google_brand'
>   if (!brand.empty() && !google_brand::IsOrganic(brand))

It seems that just header was missing: chrome/browser/google/google_brand.h

Please build an official build locally though since none of CQ trybots will do
that.

Powered by Google App Engine
This is Rietveld 408576698