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

Issue 182313002: Include sync.pb.h in sync_data.h. (Closed)

Created:
6 years, 10 months ago by maniscalco
Modified:
6 years, 9 months ago
CC:
chromium-reviews, tim+watch_chromium.org, chromium-apps-reviews_chromium.org, maniscalco+watch_chromium.org, haitaol+watch_chromium.org, extensions-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

Include sync.pb.h in sync_data.h. This change has two parts, including sync.pb.h in sync_data.h, and fixing gyp dependencies and header includes so that everything still builds. Include sync.pb.h in sync_data.h in preparation for using AttachmentId (a protobuf in sync.pb.h) in sync_data.h. A forward declaration is insufficient because sync_data.h will be getting a typedef for vector<> of AttachmentId. Several targets (transitively) depend on sync, however, their dependence is not properly modeled in gyp. Update dependencies and header includes so they can "see" sync.pb.h (a generated header) and any headers it includes. Without these changes, four targets fail to build: 1. extensions_browser - See extensions/extensions.gyp for the fix. Here's the compiler error: In file included from ../../extensions/browser/extension_function.cc:10: In file included from ../../chrome/browser/extensions/extension_service.h:23: In file included from ../../chrome/browser/extensions/extension_sync_service.h:12: In file included from ../../chrome/browser/extensions/app_sync_bundle.h:15: In file included from ../../chrome/browser/extensions/app_sync_data.h:8: In file included from ../../chrome/browser/extensions/extension_sync_data.h:11: In file included from ../../sync/api/sync_change.h:13: ../../sync/api/sync_data.h:17:10: fatal error: 'sync/protocol/sync.pb.h' file not found 2. debugger - See chrome/chrome.gyp for the fix. Here's the compiler error: In file included from ../../chrome/browser/devtools/browser_list_tabcontents_provider.cc:10: In file included from ../../chrome/browser/history/top_sites.h:13: In file included from ../../chrome/browser/history/history_service.h:26: In file included from ../../chrome/browser/history/delete_directive_handler.h:12: In file included from ../../sync/api/sync_change_processor.h:10: ../../sync/api/sync_data.h:17:10: fatal error: 'sync/protocol/sync.pb.h' file not found 3. apps - See chrome/chrome_browser_extensions.gypi for the fix. Here's the compiler error: In file included from ../../apps/app_load_service.cc:12: In file included from ../../chrome/browser/extensions/extension_service.h:23: In file included from ../../chrome/browser/extensions/extension_sync_service.h:12: In file included from ../../chrome/browser/extensions/app_sync_bundle.h:15: In file included from ../../chrome/browser/extensions/app_sync_data.h:8: In file included from ../../chrome/browser/extensions/extension_sync_data.h:11: In file included from ../../sync/api/sync_change.h:13: ../../sync/api/sync_data.h:17:10: fatal error: 'sync/protocol/sync.pb.h' file not found 4. performance_ui_tests - See chrome/chrome_tests.gypi for the fix. Here's the compiler error: In file included from ../../chrome/test/perf/generate_profile.cc:19: In file included from ../../chrome/browser/history/history_service.h:26: In file included from ../../chrome/browser/history/delete_directive_handler.h:12: In file included from ../../sync/api/sync_change_processor.h:10: In file included from ../../sync/api/sync_data.h:17: gen/protoc_out/sync/protocol/sync.pb.h:9:10: fatal error: 'google/protobuf/stubs/common.h' file not found BUG= Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=257666

Patch Set 1 #

Total comments: 9

Patch Set 2 : Apply CR feedback. #

Total comments: 8

Patch Set 3 : Don't depend on browser_real. #

Patch Set 4 : extension_disabled_ui.cc needs its own #include for std::bitset. #

Patch Set 5 : Rebase with master. #

Patch Set 6 : Fix android_aosp by making export_dependent_settings conditional. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+18 lines, -4 lines) Patch
M chrome/browser/devtools/adb/android_rsa.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/devtools/devtools_window.cc View 1 2 3 4 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/extensions/extension_disabled_ui.cc View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/extensions/extension_service.h View 1 2 3 4 2 chunks +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_service_unittest.cc View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/extensions/launch_util.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/history/top_sites.h View 1 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/sync/test/integration/two_client_apps_sync_test.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/ui/webui/ntp/suggestions_source_top_sites.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M chrome/chrome.gyp View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M chrome/chrome_browser_extensions.gypi View 1 2 3 4 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/chrome_tests_unit.gypi View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M components/password_manager.gypi View 1 2 3 4 5 2 chunks +4 lines, -0 lines 0 comments Download
M sync/api/sync_data.h View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 37 (0 generated)
maniscalco
tim@chromium.org: Please review changes in sync/ asargent@chromium.org: Please review changes in extensions/ thakis@chromium.org: Please review ...
6 years, 9 months ago (2014-02-27 17:44:12 UTC) #1
asargent_no_longer_on_chrome
extensions/ rubber stamp lgtm with the caveat that I am definitely not a gyp expert
6 years, 9 months ago (2014-02-27 19:13:56 UTC) #2
tim (not reviewing)
sync/ LGTM, same caveat as Antony. https://codereview.chromium.org/182313002/diff/1/sync/api/sync_data.h File sync/api/sync_data.h (right): https://codereview.chromium.org/182313002/diff/1/sync/api/sync_data.h#newcode17 sync/api/sync_data.h:17: #include "sync/protocol/sync.pb.h" one ...
6 years, 9 months ago (2014-02-27 22:45:15 UTC) #3
Nico
Does this work reliably in incremental builds, given that sync isn't marked 'hard_dependency': 1?
6 years, 9 months ago (2014-03-03 21:20:48 UTC) #4
maniscalco
On 2014/03/03 21:20:48, Nico wrote: > Does this work reliably in incremental builds, given that ...
6 years, 9 months ago (2014-03-04 00:26:57 UTC) #5
Nico
Good point about protoc.gypi already setting hard_dependency. That's likely why all these explicit dependencies on ...
6 years, 9 months ago (2014-03-07 19:12:59 UTC) #6
Ryan Sleevi
The way to model this is: The actual target that runs the protoc step sets ...
6 years, 9 months ago (2014-03-07 19:23:00 UTC) #7
maniscalco
Nico, Ryan, thanks for the helpful feedback! I've eliminated most of the new dependencies on ...
6 years, 9 months ago (2014-03-07 23:44:36 UTC) #8
Nico
https://codereview.chromium.org/182313002/diff/70001/chrome/chrome_tests_unit.gypi File chrome/chrome_tests_unit.gypi (right): https://codereview.chromium.org/182313002/diff/70001/chrome/chrome_tests_unit.gypi#newcode15 chrome/chrome_tests_unit.gypi:15: 'browser_real', I think browser_real is supposed to be an ...
6 years, 9 months ago (2014-03-08 00:45:56 UTC) #9
maniscalco
https://codereview.chromium.org/182313002/diff/70001/chrome/chrome_tests_unit.gypi File chrome/chrome_tests_unit.gypi (right): https://codereview.chromium.org/182313002/diff/70001/chrome/chrome_tests_unit.gypi#newcode15 chrome/chrome_tests_unit.gypi:15: 'browser_real', On 2014/03/08 00:45:57, Nico wrote: > I think ...
6 years, 9 months ago (2014-03-08 01:26:59 UTC) #10
Nico
Patch set 3 lgtm.
6 years, 9 months ago (2014-03-08 01:39:41 UTC) #11
maniscalco
On 2014/03/08 01:39:41, Nico wrote: > Patch set 3 lgtm. Nico, thanks for the review. ...
6 years, 9 months ago (2014-03-10 23:43:08 UTC) #12
Ryan Sleevi
lgtm
6 years, 9 months ago (2014-03-10 23:45:18 UTC) #13
maniscalco
The CQ bit was checked by maniscalco@chromium.org
6 years, 9 months ago (2014-03-11 16:17:29 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/maniscalco@chromium.org/182313002/110001
6 years, 9 months ago (2014-03-11 16:20:13 UTC) #15
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-11 16:41:13 UTC) #16
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_clang_dbg
6 years, 9 months ago (2014-03-11 16:41:14 UTC) #17
maniscalco
The CQ bit was checked by maniscalco@chromium.org
6 years, 9 months ago (2014-03-11 17:57:44 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/maniscalco@chromium.org/182313002/110001
6 years, 9 months ago (2014-03-11 18:06:49 UTC) #19
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-11 20:45:35 UTC) #20
commit-bot: I haz the power
Retried try job too often on android_aosp for step(s) compile http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=android_aosp&number=54473
6 years, 9 months ago (2014-03-11 20:45:37 UTC) #21
maniscalco
The CQ bit was checked by maniscalco@chromium.org
6 years, 9 months ago (2014-03-11 21:10:05 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/maniscalco@chromium.org/182313002/110001
6 years, 9 months ago (2014-03-11 21:58:36 UTC) #23
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-11 23:25:49 UTC) #24
commit-bot: I haz the power
Retried try job too often on android_aosp for step(s) compile http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=android_aosp&number=54581
6 years, 9 months ago (2014-03-11 23:25:50 UTC) #25
maniscalco
The CQ bit was checked by maniscalco@chromium.org
6 years, 9 months ago (2014-03-17 18:42:25 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/maniscalco@chromium.org/182313002/130001
6 years, 9 months ago (2014-03-17 18:43:04 UTC) #27
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-17 19:59:23 UTC) #28
commit-bot: I haz the power
Retried try job too often on android_aosp for step(s) compile http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=android_aosp&number=55836
6 years, 9 months ago (2014-03-17 19:59:24 UTC) #29
maniscalco
The CQ bit was checked by maniscalco@chromium.org
6 years, 9 months ago (2014-03-17 23:34:43 UTC) #30
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/maniscalco@chromium.org/182313002/140001
6 years, 9 months ago (2014-03-17 23:35:57 UTC) #31
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-18 00:52:19 UTC) #32
commit-bot: I haz the power
Retried try job too often on win_rel for step(s) interactive_ui_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win_rel&number=283189
6 years, 9 months ago (2014-03-18 00:52:21 UTC) #33
maniscalco
The CQ bit was checked by maniscalco@chromium.org
6 years, 9 months ago (2014-03-18 16:13:07 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/maniscalco@chromium.org/182313002/140001
6 years, 9 months ago (2014-03-18 16:13:52 UTC) #35
commit-bot: I haz the power
Change committed as 257666
6 years, 9 months ago (2014-03-18 17:08:52 UTC) #36
maniscalco
6 years, 9 months ago (2014-03-19 00:28:16 UTC) #37
Message was sent while issue was closed.
A revert of this CL has been created in
https://chromiumcodereview.appspot.com/196423023/ by maniscalco@chromium.org.

The reason for reverting is: Broke win_x86_rel trybots about two thirds of the
time (can't find sync.pb.h).  Appears that the build is non-deterministic, gonna
need more testing..

Powered by Google App Engine
This is Rietveld 408576698