Index: chrome/browser/webdata/DEPS |
diff --git a/chrome/browser/webdata/DEPS b/chrome/browser/webdata/DEPS |
index b52f686d2d3eb571e4d811f98179b6331b759e9b..2e8638f07ea5acae6190232d11beed867309b3a7 100644 |
--- a/chrome/browser/webdata/DEPS |
+++ b/chrome/browser/webdata/DEPS |
@@ -8,27 +8,49 @@ include_rules = [ |
"+chrome/browser/api/webdata", |
"+chrome/browser/webdata", |
- # TODO(caitkp, kaiwang): Bring this list to zero. |
- # Do not add to the list of temporarily-allowed dependencies below, |
- # and please do not introduce more #includes of these files. |
- "!chrome/browser/history/history_database.h", |
+ # Ensure the files that are going to be componentized don't depend |
+ # on the ones that aren't. |
+ "-chrome/browser/webdata/autocomplete_syncable_service.h", |
+ "-chrome/browser/webdata/autofill_profile_syncable_service.h", |
+ "-chrome/browser/webdata/web_data_service_factory.h", |
+ "-chrome/browser/webdata/web_data_service.h", |
+ |
+ # TODO(caitkp): Bring this list to zero. |
"!chrome/browser/password_manager/encryptor.h", |
"!chrome/browser/password_manager/ie7_password.h", |
"!chrome/browser/profiles/profile.h", |
- "!chrome/browser/profiles/profile_dependency_manager.h", |
- "!chrome/browser/profiles/profile_keyed_service.h", |
- "!chrome/browser/profiles/profile_keyed_service_factory.h", |
- "!chrome/browser/profiles/profile_manager.h", |
- "!chrome/browser/profiles/refcounted_profile_keyed_service.h", |
- "!chrome/browser/profiles/refcounted_profile_keyed_service_factory.h", |
- "!chrome/browser/search_engines/search_terms_data.h", |
- "!chrome/browser/search_engines/template_url.h", |
- "!chrome/browser/search_engines/template_url_id.h", |
- "!chrome/browser/search_engines/template_url_service.h", |
- "!chrome/browser/ui/profile_error_dialog.h", |
"!chrome/common/chrome_constants.h", |
- "!chrome/common/chrome_notification_types.h", |
"!chrome/common/chrome_paths.h", |
- # Do not add to the list of temporarily-allowed dependencies above, |
- # and please do not introduce more #includes of these files. |
+ |
+ # TODO(caitkp): Remove this, at slightly lower priority - this is |
+ # just a set of header-only enums, so we can live with it |
+ # temporarily even after we componentize. |
+ "!chrome/common/chrome_notification_types.h", |
] |
+ |
+specific_include_rules = { |
+ # These files are staying in //chrome, so no need to restrict. |
+ |
+r'((autocomplete|autofill_profile)_syncable_service|web_data_service(_win)?(_factory)?)(_unittest)?\.(cc|h)': |
+[ |
+ '+chrome/browser', |
+ '+chrome/common', |
+ ], |
+ |
+ # TODO(caitkp): Componentize all the different tables. For now, we |
+ # write these rules so they don't add bad dependencies. |
+ r'^(?!autofill)[a-z_]+_table(_unittest)?\.(cc|h)': [ |
+ "!chrome/browser/history/history_database.h", |
+ "!chrome/browser/search_engines/search_terms_data.h", |
+ "!chrome/browser/search_engines/template_url.h", |
+ "!chrome/browser/search_engines/template_url_id.h", |
+ "!chrome/browser/search_engines/template_url_service.h", |
+ ], |
+ |
+ # TODO(caitkp): Extract unit tests from //chrome, at lower priority |
+ # than production code. |
+ r'(.*_unittest|.*_test_util)\.(cc|h)': [ |
+ "+chrome/browser/webdata/web_data_service.h", |
+ "+chrome/browser/webdata/web_data_service_factory.h", |
+ ], |
+} |