|
|
Created:
3 years, 7 months ago by Minh X. Nguyen Modified:
3 years, 6 months ago CC:
chromium-reviews, chromium-apps-reviews_chromium.org, extensions-reviews_chromium.org, cbentzel Target Ref:
refs/heads/master Project:
chromium Visibility:
Public. |
DescriptionPrepare to abstract PersistedData by making it part of the configurator.
The next step is to make PersistedData an abstract class so that UpdateClient
can support globally persisted data and specific user profile data.
BUG=722942
Patch Set 1 #Patch Set 2 : Correct the order of initialization in TestConfigurator constructor to avoid warnings. #Patch Set 3 : Fix a compile error in iOS. #Patch Set 4 : Really fix a compile error in iOS component configurator this time. #
Total comments: 4
Patch Set 5 : Merge remote-tracking branch 'origin/master' into updater #Patch Set 6 : Reformat the code. #
Total comments: 1
Patch Set 7 : Fix a compiler error (std::move is not needed). #Patch Set 8 : Fix ios compile error. #
Total comments: 6
Patch Set 9 : Remove GetPrefService() from configurator interface as it's not used directly anymore. #Patch Set 10 : Replace MakeShared with MakeRefCounted. #
Total comments: 2
Patch Set 11 : Rename pref_ to pref_service_. #Messages
Total messages: 93 (72 generated)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
The CQ bit was unchecked by mxnguyen@google.com
The CQ bit was checked by mxnguyen@google.com
The CQ bit was unchecked by mxnguyen@google.com
The CQ bit was checked by mxnguyen@google.com to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator-xco...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Prepare to abstract PersistedData by making it part of the configurator. The next step is to make PersistedData an abstract class so that UpdateClient can support globally persisted data and specific user profile data. BUG= ========== to ========== Prepare to abstract PersistedData by making it part of the configurator. The next step is to make PersistedData an abstract class so that UpdateClient can support globally persisted data and specific user profile data. BUG= ==========
mxnguyen@chromium.org changed reviewers: + sorin@chromium.org, waffles@chromium.org - mxnguyen@google.com
This is the first step, I break it down into 2 patches so that it's easier to review. The next step is to make PersistedData an abstract class so that UpdateClient can support globally persisted data and specific user profile data.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2873533002/diff/60001/chrome/browser/extensio... File chrome/browser/extensions/updater/chrome_update_client_config.h (right): https://codereview.chromium.org/2873533002/diff/60001/chrome/browser/extensio... chrome/browser/extensions/updater/chrome_update_client_config.h:49: update_client::PersistedData* CreateMetadata() const override; Can we return a unique_ptr instead? https://codereview.chromium.org/2873533002/diff/60001/components/update_clien... File components/update_client/update_checker.cc (right): https://codereview.chromium.org/2873533002/diff/60001/components/update_clien... components/update_client/update_checker.cc:188: : config_(config), metadata_(config->CreateMetadata()) {} This will be called once per update check - I think this is OK, but it's probably important to document that PersistedData itself can't have any state that is supposed to live across updatechecks.
I will take a look after the current set of comments is addressed. Thank you!
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2873533002/diff/60001/chrome/browser/extensio... File chrome/browser/extensions/updater/chrome_update_client_config.h (right): https://codereview.chromium.org/2873533002/diff/60001/chrome/browser/extensio... chrome/browser/extensions/updater/chrome_update_client_config.h:49: update_client::PersistedData* CreateMetadata() const override; On 2017/05/12 17:33:34, waffles wrote: > Can we return a unique_ptr instead? Done. https://codereview.chromium.org/2873533002/diff/60001/components/update_clien... File components/update_client/update_checker.cc (right): https://codereview.chromium.org/2873533002/diff/60001/components/update_clien... components/update_client/update_checker.cc:188: : config_(config), metadata_(config->CreateMetadata()) {} On 2017/05/12 17:33:34, waffles wrote: > This will be called once per update check - I think this is OK, but it's > probably important to document that PersistedData itself can't have any state > that is supposed to live across updatechecks. As discussed offline, it's better to store PersistedData in UpdateEngine.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...)
lgtm https://codereview.chromium.org/2873533002/diff/100001/components/update_clie... File components/update_client/update_engine.cc (right): https://codereview.chromium.org/2873533002/diff/100001/components/update_clie... components/update_client/update_engine.cc:61: metadata_(std::move(config->CreateMetadata())), remove std::move. (moving a temporary object prevents copy elision)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device-xcode-...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
lgtm Thank you!
lgtm Thank you!
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by sorin@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from waffles@chromium.org Link to the patchset: https://codereview.chromium.org/2873533002/#ps140001 (title: "Fix ios compile error.")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...)
mxnguyen@chromium.org changed reviewers: + asargent@chromium.org, cbentzel@chromium.org
Was there a specific reason I was added as a reviewer on this CL? Not that I see a problem, just not sure if you were looking for my feedback on something in particular.
On 2017/05/16 18:13:18, cbentzel wrote: > Was there a specific reason I was added as a reviewer on this CL? Not that I see > a problem, just not sure if you were looking for my feedback on something in > particular. I made a change in ios/chrome/browser/component_updater/ios_component_updater_configurator.cc, thus someone from ios/chrome/browswer owners would have to approve my change. Your name just happens to appear first in the owner list. Can you suggest someone who can review my patch? Thanks.
Description was changed from ========== Prepare to abstract PersistedData by making it part of the configurator. The next step is to make PersistedData an abstract class so that UpdateClient can support globally persisted data and specific user profile data. BUG= ========== to ========== Prepare to abstract PersistedData by making it part of the configurator. The next step is to make PersistedData an abstract class so that UpdateClient can support globally persisted data and specific user profile data. BUG=722942 ==========
sorin@chromium.org changed reviewers: + rdcronin@google.com, sdefresne@chromium.org - asargent@chromium.org, cbentzel@chromium.org
sorin@chromium.org changed reviewers: + rdevlin.cronin@chromium.org - rdcronin@google.com
Sylvain, could you please review and approve the changes under the ios path? thank you! Devlin, could you please review and approve the changes under the chrome/browser/extensions/ path? thank you! Moving Chris to CC list. Thank you so much!
https://codereview.chromium.org/2873533002/diff/140001/chrome/browser/extensi... File chrome/browser/extensions/updater/chrome_update_client_config.cc (right): https://codereview.chromium.org/2873533002/diff/140001/chrome/browser/extensi... chrome/browser/extensions/updater/chrome_update_client_config.cc:5: #include "chrome/browser/extensions/updater/chrome_update_client_config.h" I think git cl format messed this up - please put a newline after this. https://codereview.chromium.org/2873533002/diff/140001/chrome/browser/extensi... chrome/browser/extensions/updater/chrome_update_client_config.cc:126: return base::MakeUnique<update_client::PersistedData>(GetPrefService()); nitty nit: include-what-you-use: #include "base/memory/ptr_util.h" https://codereview.chromium.org/2873533002/diff/140001/components/update_clie... File components/update_client/configurator.h (right): https://codereview.chromium.org/2873533002/diff/140001/components/update_clie... components/update_client/configurator.h:130: virtual PrefService* GetPrefService() const = 0; A quick codesearch indicates that this is only used in components/update_client/update_engine.cc where we created the persisted data. Since that's abstracted out, can we remove this? Or is this actually used elsewhere that's not showing up?
ios/ lgtm
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds...) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/bui...) ios-simulator-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator-xco...) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: CQ cannot get SignCLA result. Please try later.
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Sorry for the late response, I was OOO for the last 2 weeks. https://codereview.chromium.org/2873533002/diff/140001/chrome/browser/extensi... File chrome/browser/extensions/updater/chrome_update_client_config.cc (right): https://codereview.chromium.org/2873533002/diff/140001/chrome/browser/extensi... chrome/browser/extensions/updater/chrome_update_client_config.cc:5: #include "chrome/browser/extensions/updater/chrome_update_client_config.h" On 2017/05/16 23:03:09, Devlin wrote: > I think git cl format messed this up - please put a newline after this. Done. https://codereview.chromium.org/2873533002/diff/140001/chrome/browser/extensi... chrome/browser/extensions/updater/chrome_update_client_config.cc:126: return base::MakeUnique<update_client::PersistedData>(GetPrefService()); On 2017/05/16 23:03:09, Devlin wrote: > nitty nit: include-what-you-use: #include "base/memory/ptr_util.h" Done. https://codereview.chromium.org/2873533002/diff/140001/components/update_clie... File components/update_client/configurator.h (right): https://codereview.chromium.org/2873533002/diff/140001/components/update_clie... components/update_client/configurator.h:130: virtual PrefService* GetPrefService() const = 0; On 2017/05/16 23:03:09, Devlin wrote: > A quick codesearch indicates that this is only used in > components/update_client/update_engine.cc where we created the persisted data. > Since that's abstracted out, can we remove this? Or is this actually used > elsewhere that's not showing up? Done.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
lgtm! https://codereview.chromium.org/2873533002/diff/180001/components/update_clie... File components/update_client/test_configurator.h (right): https://codereview.chromium.org/2873533002/diff/180001/components/update_clie... components/update_client/test_configurator.h:113: PrefService* pref_; nit: maybe s/pref_/pref_service_? A pref is something returned by the pref service.
The CQ bit was checked by mxnguyen@chromium.org to run a CQ dry run
https://codereview.chromium.org/2873533002/diff/180001/components/update_clie... File components/update_client/test_configurator.h (right): https://codereview.chromium.org/2873533002/diff/180001/components/update_clie... components/update_client/test_configurator.h:113: PrefService* pref_; On 2017/06/05 16:13:38, Devlin wrote: > nit: maybe s/pref_/pref_service_? A pref is something returned by the pref > service. Done.
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by mxnguyen@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from waffles@chromium.org, sorin@chromium.org, sdefresne@chromium.org, rdevlin.cronin@chromium.org Link to the patchset: https://codereview.chromium.org/2873533002/#ps200001 (title: "Rename pref_ to pref_service_.")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by waffles@chromium.org
mxnguyen: ping? |