1# Copyright (c) 2012 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# Watchlist Rules
6# Refer: http://dev.chromium.org/developers/contributing-code/watchlists
7
8# IMPORTANT: The regular expression filepath is tested against each path using
9# re.search, so it is not usually necessary to add .*.
10
11{
12  'WATCHLIST_DEFINITIONS': {
13    'accelerator_table': {
14      'filepath': 'ash/accelerators/accelerator_table\.cc' \
15                  '|chrome/browser/ui/views/accelerator_table\.cc',
16    },
17    'accessibility': {
18      'filepath': 'braille' \
19                  '|chrome/browser/accessibility/' \
20                  '|chromevox' \
21                  '|content/browser/accessibility/' \
22                  '|content/browser/resources/accessibility/' \
23                  '|content/renderer/accessibility/' \
24                  '|content/test/data/accessibility/' \
25                  '|content/public/android/.*accessib' \
26                  '|chrome/.*accessib' \
27                  '|liblouis' \
28                  '|ui/base/accessibility/' \
29                  '|ui/views/accessibility/'
30    },
31    'activity_log': {
32      'filepath': 'chrome/browser/extensions/activity_log/' \
33                  '|chrome/browser/extensions/api/activity_log_private/'
34    },
35    'android_infra': {
36      'filepath': 'build/android/' \
37                  '|testing/android/' \
38                  '|tools/android/'
39    },
40    'android_media': {
41      'filepath': 'content/browser/media/android' \
42                  '|content/renderer/media/android' \
43                  '|media/audio/android' \
44                  '|media/base/android' \
45                  '|media/midi/*_android.*' \
46                  '|media/video/capture/android'
47    },
48    'android_tab': {
49      'filepath': 'chrome/android/java/src/org/chromium/chrome/browser/Tab'
50    },
51    'android_webview': {
52      'filepath': 'android_webview/',
53    },
54    'app_list': {
55      'filepath': 'chrome/browser/ui/app_list'\
56                  '|chrome/browser/ui/ash/app_list'\
57                  '|chrome/browser/ui/views/app_list'\
58                  '|ui/app_list/'
59    },
60    'app_shortcuts': {
61      'filepath': 'apps/app_shim/'\
62                  '|chrome/browser/web_applications/'\
63                  '|chrome/browser/ui/web_applications/'\
64                  '|chrome/common/mac/'
65    },
66    'appcache': {
67      'filepath': 'appcache/',
68    },
69    'apps': {
70      'filepath': '^apps/',
71    },
72    'ash': {
73      'filepath': 'ash/',
74    },
75    'aura': {
76      'filepath': 'ui/aura/',
77    },
78    'aura_compositor': {
79      'filepath':
80        'ui/compositor/' \
81        '|content/browser/compositor/' \
82        '|content/browser/renderer_host/compositor_resize_lock_aura' \
83        '|content/browser/renderer_host/render_widget_host_view_aura' \
84        '|content/browser/renderer_host/render_widget_host_view_browsertest' \
85        '|content/browser/renderer_host/delegated' \
86        '|content/browser/renderer_host/software' \
87        '|content/common/gpu/client/' \
88        '|webkit/common/gpu/'
89    },
90    'autofill': {
91      'filepath': 'chrome/browser/autofill/|'\
92                  'chrome/browser/resources/options/autofill_|'\
93                  'chrome/browser/sync/glue/autofill_|'\
94                  'chrome/browser/ui/android/autofill/|'\
95                  'chrome/browser/ui/autofill/|'\
96                  'chrome/browser/ui/cocoa/autofill/|'\
97                  'chrome/browser/ui/gtk/autofill/|'\
98                  'chrome/browser/ui/views/autofill/|'\
99                  'chrome/browser/ui/webui/options/autofill_|'\
100                  'chrome/renderer/autofill/|'\
101                  'chrome/test/data/autofill/|'\
102                  'components/autofill/|'\
103                  'components/autofill/browser/webdata/|'\
104                  'components/webdata/|'\
105                  'content/public/common/password_|'\
106                  'content/public/renderer/password_|'\
107                  'content/renderer/password_',
108    },
109    'automation': {
110      'filepath': 'chrome/browser/automation/|chrome/test/automation/',
111    },
112    'base': {
113      'filepath': '^base/',
114    },
115    'base_allocator': {
116      'filepath': '^base/allocator',
117    },
118    'base_memory': {
119      'filepath': '^base/memory',
120    },
121    'base_win': {
122      'filepath': '^base/win',
123    },
124    'battery_status': {
125      'filepath': 'content/browser/battery_status/|'\
126                  'content/common/battery_status_messages.h|'\
127                  'content/public/android/java/src/org/chromium/content/browser/BatteryStatusManager.java|'\
128                  'content/public/android/javatests/src/org/chromium/content/browser/BatteryStatusManagerTest.java|'\
129                  'content/renderer/battery_status/',
130    },
131    'bookmarks': {
132      'filepath': 'chrome/browser/bookmarks/' \
133                  '|chrome/browser/extensions/api/bookmark_manager_private/' \
134                  '|chrome/browser/extensions/api/bookmarks/' \
135                  '|chrome/browser/resources/bookmark_manager/' \
136                  '|chrome/browser/ui/bookmarks/' \
137                  '|chrome/browser/ui/cocoa/bookmarks/' \
138                  '|chrome/browser/ui/views/bookmarks/' \
139                  '|components/bookmarks'
140    },
141    'breakpad_app': {
142      'filepath': 'components/crash/app/',
143    },
144    'browser': {
145      'filepath': 'chrome/browser/',
146    },
147    'browser_chromeos': {
148      'filepath': 'chrome/browser/chromeos/',
149    },
150    'browser_components': {
151      'filepath': 'chrome/browser/autofill/' \
152                  '|chrome/browser/bookmarks/' \
153                  '|chrome/browser/favicon/' \
154                  '|chrome/browser/history/' \
155                  '|chrome/browser/webdata/' \
156                  '|components/autofill/'
157    },
158    'browser_compositor': {
159      'filepath': 'ui/compositor/'
160    },
161    'browser_resources': {
162      'filepath': 'chrome/browser/resources/',
163    },
164    'browsing_data': {
165      'filepath': 'chrome/browser/browsing_data/',
166    },
167    'bubble': {
168      'filepath': 'ui/views/bubble/|'\
169                  'chrome/browser/ui/views/bubble/',
170    },
171    'cast': {
172      'filepath': 'media/cast/'\
173                  '|chrome/browser/extensions/api/cast_streaming/'\
174                  '|chrome/browser/media/cast'\
175                  '|chrome/renderer/media/cast'\
176                  '|chrome/test/data/extensions/api_test/cast_'\
177                  '|content/public/renderer/media_stream_',
178    },
179    'chromecast': {
180      'filepath': 'chromecast/',
181    },
182    'cc': {
183      'filepath': 'cc/|'\
184                  'webkit/renderer/compositor_bindings/|'\
185                  'content/common/cc_messages'
186    },
187    'chrome_elf': {
188      'filepath': 'chrome_elf',
189    },
190    'chrome_views': {
191      'filepath': 'chrome/browser/ui/views',
192    },
193    'chromedriver': {
194      'filepath': 'chrome/test/chromedriver'
195    },
196    'chromeos': {
197      'filepath': 'chromeos/',
198    },
199    'chromeos_attestation': {
200      'filepath': 'chromeos/attestation/|'\
201                  'chrome/browser/chromeos/attestation/|'\
202                  'chrome/browser/extensions/api/enterprise_platform_keys_private/',
203    },
204    'chromeos_calculator': {
205      'filepath': 'chrome/common/extensions/docs/examples/apps/calculator/',
206    },
207    'chromeos_dbus': {
208      'filepath': 'chromeos/dbus/',
209    },
210    'chromeos_login': {
211      'filepath': 'chrome/browser/chromeos/login/|'\
212                  'chrome/browser/ui/webui/chromeos/login/|'\
213                  'chrome/browser/resources/chromeos/login/',
214    },
215    'chromeos_net': {
216      'filepath': 'chromeos/network/|'\
217                  'chrome/browser/chromeos/cros/|'\
218                  'chrome/browser/chromeos/net/',
219    },
220    'chromeos_power': {
221      'filepath': 'ash/system/chromeos/power/|'\
222                  'chromeos/dbus/power_.*|'\
223                  'chrome/browser/chromeos/power/',
224    },
225    'chromeos_webui': {
226      'filepath': 'chrome/browser/ui/webui/chromeos/|'\
227                  'chrome/browser/resources/chromeos/',
228    },
229    'clang_update': {
230      'filepath': 'tools/clang/scripts/update.sh'
231    },
232    'clipboard': {
233      'filepath': 'clipboard|dnd|drag|drop',
234    },
235    'closure': {
236      'filepath': 'third_party/closure_(compiler|linter)/|'
237                  'compiled_resources.gyp',
238    },
239    'content': {
240      'filepath': 'content/',
241    },
242    'content_input': {
243      'filepath': 'content/browser/renderer_host/input/|'\
244                  'content/common/input/|'\
245                  'content/renderer/input/',
246    },
247    'content_renderer': {
248      'filepath': 'content/renderer/',
249    },
250    'content_shell': {
251      'filepath': 'content/shell/',
252    },
253    'cookie_monster': {
254      'filepath': 'net/cookies/|'\
255                  'chrome/browser/net/sqlite_persistent_cookie_store',
256    },
257    'deep_memory_profiler': {
258      'filepath': 'tools/(deep_memory_profiler|find_runtime_symbols)',
259    },
260    'device_sensors': {
261      'filepath': 'content/browser/device_sensors/|'\
262                  'content/common/device_sensors/|'\
263                  'content/public/android/java/src/org/chromium/content/browser/DeviceSensors.java|'\
264                  'content/public/android/javatests/src/org/chromium/content/browser/DeviceSensorsTest.java|'\
265                  'content/renderer/device_sensors/',
266    },
267    'devtools': {
268      'filepath': 'devtools',
269    },
270    'disk_cache': {
271      'filepath': 'net/disk_cache/|http_cache',
272    },
273    'dns': {
274      'filepath': 'net/base/host_resolver|' \
275                  'net/base/host_cache|' \
276                  'net/dns/'
277    },
278    'domui_options': {
279      'filepath': 'chrome/browser/resources/options/|'\
280                  'chrome/browser/resources/options.html|'\
281                  'chrome/browser/ui/webui/options/',
282    },
283    'download': {
284      'filepath': 'chrome/browser/download/|'\
285                  'content/browser/download/',
286    },
287    'download_database': {
288      'filepath': 'chrome/browser/history/download_database',
289    },
290    'downloads_ext': {
291      'filepath': 'chrome/browser/extensions/api/downloads/|'\
292                  'chrome/common/extensions/api/downloads.*.idl',
293    },
294    'downloads_ui': {
295      'filepath': 'chrome/browser/resources/downloads/|' \
296                  'chrome/browser/ui/webui/.*downloads|' \
297                  'chrome/browser/ui/views/download/|' \
298                  'chrome/browser/ui/cocoa/download/|' \
299                  'chrome/browser/ui/gtk/download/'
300    },
301    'drive': {
302      'filepath': 'chrome/browser/chromeos/drive/|' \
303                  'chrome/browser/google_apis/'
304    },
305    'drive_resource_metadata': {
306      'filepath': 'chrome/browser/chromeos/drive/resource_metadata'
307    },
308    'eme': {
309      'filepath': 'components/cdm/|' \
310                  'content/browser/media/cdm/|' \
311                  'content/renderer/media/crypto/|' \
312                  'media/base/android/*drm*|' \
313                  'media/cdm/|' \
314                  'third_party/widevine/cdm/'
315    },
316    'events': {
317      'filepath': 'ui/events/',
318    },
319    'extension': {
320      'filepath': 'extension',
321    },
322    'fileapi': {
323      'filepath': 'file_system/|' \
324                  'fileapi/'
325    },
326    'filebrowse': {
327      'filepath': 'file_browser|' \
328                  'file_manager|' \
329                  'filebrowse'
330    },
331    'filesapp': {
332      'filepath': 'ui/file_manager'
333    },
334    'ftp': {
335      'filepath': 'ftp',
336    },
337    'gcm': {
338      'filepath': 'chrome/browser/services/gcm/|'\
339                  'components/gcm_driver/|'\
340                  'google_apis/gcm/',
341    },
342    'geolocation': {
343      'filepath': 'chrome/browser/geolocation/|'\
344                  'content/browser/geolocation|'\
345                  'content/public/common/geoposition.*|'\
346                  'content/public/browser/geolocation.*|'\
347                  'content/renderer/geolocation.*|'\
348                  'content/shell/geolocation/',
349    },
350    'gfx_image': {
351      'filepath': 'ui/gfx/image/',
352    },
353    'gfx_geometry': {
354      'filepath': 'ui/gfx/rect|'\
355                  'ui/gfx/quad|'\
356                  'ui/gfx/point|'\
357                  'ui/gfx/size|'\
358                  'ui/gfx/transform|'\
359                  'ui/gfx/vector2d',
360    },
361    'gn': {
362      'filepath': 'tools/gn',
363    },
364    'gpu': {
365      'filepath': 'gpu/',
366    },
367    'history_ui': {
368      'filepath': 'chrome/browser/resources/history',
369    },
370    'hotword': {
371      'filepath': 'chrome/browser/extensions/api/hotword_private/'\
372                  '|chrome/browser/resources/hotword_helper/'\
373                  '|chrome/browser/resources/hotword/'\
374                  '|chrome/browser/search/hotword*'\
375                  '|chrome/test/data/extensions/api_test/hotword_private/',
376    },
377    'i18n': {
378      'filepath': 'base/i18n/|base/string|l10n|icu|'\
379        'locale_settings|encoding',
380    },
381    'imageburner': {
382      'filepath': 'imageburner'
383    },
384    'importer': {
385      'filepath': 'import',
386    },
387    'indexed_db': {
388      'filepath': 'content/browser/indexed_db|'\
389                  'content/child/indexed_db|'\
390                  'content/common/indexed_db|'\
391                  'content/public/browser/indexed_db|'\
392                  'content/test/data/indexeddb',
393    },
394    'installer': {
395      'filepath': 'chrome/installer/',
396    },
397    'instant': {
398      'filepath': 'instant|searchbox|'\
399                  'chrome/browser/search/|'\
400                  'chrome/browser/ui/search/|'\
401                  'chrome/browser/resources/local_ntp/|'\
402                  'chrome/common/search_types.*',
403    },
404    'ipc': {
405      'filepath': 'ipc/ipc',
406    },
407    'libwebp': {
408      'filepath': 'third_party/libwebp'
409    },
410    'linux_fonts': {
411      'filepath': 'ui/gfx/font_render_params_.*|'\
412                  'ui/gfx/platform_font_pango.*|'\
413                  'ui/gfx/render_text_linux.*',
414    },
415    'linux_sandboxing': {
416      'filepath': 'sandbox/linux/',
417    },
418    'linux_seccomp_bpf': {
419      'filepath': 'content/common/sandbox.*linux.cc',
420    },
421    'media': {
422      'filepath': 'media/|third_party/(ffmpeg|openmax)/|webmediaplayer|'\
423        'audio_message_filter|video_layer|media_internals',
424    },
425    'media_galleries': {
426      'filepath': 'chrome/browser/extensions/api/media_galleries/'\
427                  '|chrome/browser/extensions/api/media_galleries_private/'\
428                  '|chrome/browser/media_galleries/'\
429                  '|chrome/browser/storage_monitor/'\
430                  '|chrome/common/media_galleries/'\
431                  '|chrome/test/data/extensions/api_test/media_galleries/'\
432                  '|chrome/utility/itunes*'\
433                  '|chrome/utility/picasa*',
434    },
435    'message_loop': {
436      'filepath': 'base/message_'
437    },
438    'metrics': {
439      'filepath': 'base/metrics/'\
440                  '|chrome/browser/metrics/'\
441                  '|chrome/common/metrics/'\
442                  '|chrome/browser/chromeos/external_metrics'\
443                  '|chrome/browser/extensions/api/metrics_private/'\
444                  '|chrome/browser/ui/webui/metrics_handler'\
445                  '|content/browser/user_metrics.cc'\
446                  '|components/rappor/'\
447                  '|content/public/browser/user_metrics.h'\
448                  # Exclude XML files; in particular, histograms.xml.
449                  '|tools/metrics/[^.]*([.](?!xml$).*)?$',
450    },
451    'metrics_xml_files': {
452      # Subscribe to this to watch for changes to histograms.xml.
453      'filepath': 'tools/metrics/.*\.xml$'
454    },
455    'mojo': {
456      'filepath': 'mojo',
457    },
458    'mouse_lock': {
459      'filepath': 'mouse_lock',
460    },
461    'music_manager_private': {
462      'filepath' :'chrome/browser/extensions/api/music_manager_private/',
463    },
464    'nacl': {
465      'filepath': 'chrome/nacl/|chrome/test/nacl/|'\
466        'chrome/browser/nacl_host/|chrome/common/nacl|'\
467        'native_client_sdk/src/doc/',
468    },
469    'native_client_sdk': {
470      'filepath': '^native_client_sdk/',
471    },
472    'navigation': {
473      'filepath': 'content/browser/frame_host|'\
474                  'content/browser/renderer_host/render_process_host.*|'\
475                  'content/browser/renderer_host/render_view_host.*|'\
476                  'content/browser/web_contents/web_contents_impl.*|'\
477                  'content/renderer/render_frame.*|'\
478                  'content/renderer/render_view.*'
479    },
480    'net': {
481      'filepath': 'net/',
482    },
483    'net_error_list': {
484      'filepath': 'net/base/net_error_list.h',
485    },
486    'net_log': {
487      'filepath': 'net/base/net_log|' \
488        'chrome/browser/net/.*net_log|' \
489        'chrome/browser/net/passive_log_collector|' \
490        'chrome/browser/resources/net_internals/|' \
491        'chrome/browser/ui/webui/net_internals/'
492    },
493    'notifications': {
494      'filepath': 'chrome/browser/extensions/api/notifications/|' \
495        'chrome/browser/notifications/|' \
496        'ui/message_center/'
497    },
498    'npapi_headers': {
499      'filepath': 'third_party/npapi/bindings/',
500    },
501    'ntp': {
502      'filepath': 'chrome/browser/resources/ntp4/|'\
503        'chrome/browser/resources/ntp_android/|'\
504        'chrome/browser/ui/webui/ntp/',
505    },
506    'omnibox': {
507      'filepath': 'chrome/browser/autocomplete/'\
508                  '|chrome/browser/ui/.*/omnibox/'
509    },
510    'options': {
511      'filepath': 'chrome/browser/resources/options/|'\
512          'chrome/browser/ui/webui/options/',
513    },
514    'overview_mode': {
515      'filepath': 'ash/wm/overview/',
516    },
517    'ozone': {
518      'filepath': 'ui/ozone/|'\
519        'ui/events/ozone/|'\
520        'ui/gfx/ozone/|'\
521        'ui/gl/gl_.*egl.*|'\
522        'ui/gl/gl_.*ozone.*'
523    },
524    'panels': {
525      'filepath': 'chrome/browser/ui/panels'\
526                  '|chrome/browser/ui/cocoa/panels'\
527                  '|chrome/browser/ui/gtk/panels'\
528                  '|chrome/browser/ui/views/panels'
529    },
530    'password_manager': {
531      'filepath': 'chrome/.*/password_'\
532                  '|chrome/browser/ui/passwords'\
533                  '|chrome/browser/ui/views/passwords'\
534                  '|chrome/test/data/password'\
535                  '|components/autofill.*password'
536                  '|components/password_'\
537    },
538    'pepper_api': {
539      'filepath': 'ppapi/api'\
540                  '|ppapi/c',
541    },
542    'plugin': {
543      'filepath': 'chrome/browser/plugin|chrome/plugin/|'\
544        'chrome/common/plugin|webkit/glue/webplugin|webkit/glue/plugins/',
545    },
546    'policy_templates': {
547      'filepath': 'components/policy/resources/policy_templates.json',
548    },
549    'predictors': {
550      'filepath': 'predictors',
551    },
552    'prepopulated_engines': {
553      'filepath': 'components/search_engines/prepopulated_engines.json',
554    },
555    'prerender': {
556      'filepath': 'prerender'
557    },
558    'pyauto': {
559      'filepath': 'chrome/test/pyautolib' \
560                  '|chrome/test/functional' \
561                  '|chrome/browser/automation/automation_provider_json'
562    },
563    'remoting': {
564      'filepath': 'remoting/',
565    },
566    'search': {
567      'filepath': 'chrome/browser/ui/search/',
568    },
569    'sessions': {
570      'filepath': 'chrome/browser/sessions/',
571    },
572    'service_worker': {
573      'filepath': 'content/(browser|renderer|child|common)/service_worker/',
574    },
575    'site_instance': {
576      'filepath': 'content/browser/site_instance|'\
577        'content/browser/browsing_instance',
578    },
579    'speech': {
580      'filepath': 'chrome/browser/speech/'\
581                  '|content/browser/speech/'\
582                  '|content/common/.*speech'\
583                  '|content/public/.*speech'
584    },
585    'spellcheck': {
586      'filepath': 'chrome/browser/spellchecker/'\
587                   '|chrome/browser/tab_contents/spellchecker'\
588                   '|chrome/browser/tab_contents/spelling_menu'\
589                   '|chrome/common/spellcheck_'\
590                   '|chrome/renderer/spellchecker/'\
591                   '|third_party/hunspell/'\
592                   '|third_party/hunspell_dictionaries/'\
593                   '|webkit/tools/test_shell/mock_spellcheck'
594    },
595    'streams': {
596      'filepath': 'content/browser/streams/',
597    },
598    'supervised_users': {
599      'filepath': 'chrome/browser/.*managed_mode'\
600                  '|chrome/browser/.*managed_user'\
601                  '|chrome/browser/.*supervised_user',
602    },
603    'sync': {
604      'filepath': 'chrome/browser/sync/|sync/|components/sync_driver/',
605    },
606    'syncfs': {
607      'filepath': 'sync_file_system',
608    },
609    'sync_proto': {
610      'filepath': 'sync/protocol/',
611    },
612    'tab_capture': {
613      'filepath': 'cc/output/copy_output_request'\
614        '|chrome/browser/extensions/api/tab_capture/'\
615        '|chrome/test/data/extensions/api_test/tab_capture/'\
616        '|content/browser/compositor/delegated_frame_host'\
617        '|content/browser/media/capture/'\
618        '|content/browser/renderer_host/compositing_iosurface'\
619        '|content/browser/renderer_host/media/(audio_'\
620            '|media_stream_manager|video_)'\
621        '|media/audio/(audio_output_controller|fake_audio_|virtual_audio_)'\
622        '|media/base/video_frame\.h'\
623        '|media/video/capture/video_capture_',
624    },
625    'tab_contents': {
626      'filepath': 'chrome/browser/tab_contents/|'\
627        'content/browser/tab_contents/|'\
628        'chrome/browser/ui/tab_contents/',
629    },
630    'tab_media_indicators': {
631      'filepath': 'chrome/browser/media/audio_stream_monitor'\
632        '|chrome/browser/ui/cocoa/tabs/tab_controller\.mm'\
633        '|chrome/browser/ui/tabs/tab_utils'\
634        '|chrome/browser/ui/views/tabs/tab\.cc'\
635        '|chrome/browser/ui/views/tabs/tab_renderer_data'\
636        '|media/audio/audio_(output_controller|power_monitor)',
637    },
638    'task_manager': {
639      'filepath': 'task_manager'
640    },
641    'tcmalloc': {
642      'filepath': 'third_party/tcmalloc'
643    },
644    'telemetry': {
645      'filepath': 'tools/perf/|'\
646                  'tools/telemetry/'
647    },
648    'tests': {
649      'filepath': 'apitest|unittest|browsertest|uitest|chrome/test/',
650    },
651    'textinput': {
652      'filepath': 'content/browser/renderer_host/gtk_im'\
653                  '|content/browser/renderer_host/gtk_key'\
654                  '|content/browser/renderer_host/render_widget_host_view'\
655                  '|content/browser/renderer_host/text_input'\
656                  '|ui/base/ime/'\
657                  '|ui/base/gtk/event'\
658                  '|ui/base/gtk/gtk_im'\
659                  '|ui/base/keycodes/'\
660                  '|ui/base/win/ime'\
661                  '|ui/views/controls/textfield/'\
662                  '|ui/views/ime/'
663    },
664    'textinput_chromeos': {
665      'filepath': 'chrome/browser/chromeos/input_method/'\
666                  '|chrome/browser/chromeos/extensions/input_method'\
667                  '|chrome/browser/chromeos/status/input_method'\
668                  '|chrome/browser/extensions/extension_input_'\
669                  '|chrome/browser/resources/keyboard'\
670                  '|chrome/browser/resources/options/language'\
671                  '|chrome/browser/ui/webui/options/'\
672                  'chromeos/.*(language|keyboard)'\
673                  '|chrome/browser/ui/webui/options/language'\
674                  '|chromeos/ime/*'
675    },
676    'tools': {
677      'filepath': 'tools/',
678    },
679    'tools_emacs': {
680      'filepath': 'tools/emacs/',
681    },
682    'tracing': {
683      'filepath': 'base/debug/trace_event.*'\
684                  '|content/browser/tracing/'\
685                  '|components/tracing/'
686    },
687    'ui_compositor': {
688      'filepath': 'ui/compositor/layer\.|'\
689                  'ui/compositor/layer_unittest|'\
690                  'ui/compositor/compositor',
691    },
692    'ui_resources': {
693      'filepath': 'ui/resources/'\
694                  '|ui/base/native_theme/resources/'\
695                  '|chrome/app/theme/'
696    },
697    'valgrind': {
698      'filepath': 'valgrind',
699    },
700    'version_assembly': {
701      'filepath': 'chrome/app/version_assembly',
702    },
703    'views': {
704      # Applies to all files and subdirs within this directory.
705      'filepath': '^ui/views/',
706    },
707    'views_core': {
708      'filepath': 'ui/views/view.h|'\
709                  'ui/views/view.cc|'\
710                  'ui/views/widget/',
711    },
712    'views_corewm': {
713      'filepath': 'ui/views/corewm/',
714    },
715    'virtual_keyboard': {
716      'filepath': 'ui/keyboard/'\
717                  'chrome/test/data/chromeos/virtual_keyboard/'\
718                  'chrome/common/extensions/api/virtual_keyboard',
719    },
720    'webkit': {
721      'filepath': 'webkit/',
722    },
723    'webrtc_media': {
724      'filepath': 'chrome/browser/media/|'\
725                  'content/browser/renderer_host/media/|'\
726                  'content/common/gpu/media/|'\
727                  'content/renderer/media/|'\
728                  'media/video/|'\
729                  'video.*_accelerat',
730    },
731    'website_settings': {
732      'filepath': 'chrome/browser/content_settings/'\
733                  '|chrome/browser/ui/views/website_settings/'\
734                  '|chrome/browser/ui/website_settings/'\
735                  '|chrome/common/content_settings'\
736                  '|components/content_settings/',
737    },
738    'windows_sandboxing': {
739      'filepath': 'sandbox/win/',
740    },
741    'worker': {
742      'filepath': 'chrome/browser/worker_host/|chrome/worker/|'\
743        'chrome/common/worker_messages|webkit/glue/webworker',
744    },
745    'x11': {
746      'filepath': 'content/browser/renderer_host/backing_store_x\.' \
747                  '|chrome/browser/chromeos/input_method/xkeyboard\.' \
748                  '|chrome/browser/chromeos/system_key_event_listener\.' \
749                  '|chrome/browser/chromeos/'\
750                  'xinput_hierarchy_changed_event_listener\.' \
751                  '|chrome/browser/chromeos/wm_' \
752                  '|ui/base/x/'
753    },
754  },
755
756  'WATCHLISTS': {
757    'accelerator_table': ['mazda+watch@chromium.org',
758                          'derat+watch@chromium.org',
759                          'yusukes+watch@chromium.org'],
760    'accessibility': ['dmazzoni+watch@chromium.org',
761                      'dtseng+watch@chromium.org',
762                      'plundblad+watch@chromium.org',
763                      'aboxhall+watch@chromium.org',
764                      'yuzo+watch@chromium.org'],
765    'activity_log': ['felt@chromium.org'],
766    'android_infra': ['yfriedman+watch@chromium.org',
767                      'klundberg+watch@chromium.org'],
768    'android_media': ['avayvod+watch@chromium.org'],
769    'android_tab': ['avayvod+watch@chromium.org', 'dtrainor@chromium.org'],
770    'android_webview': ['android-webview-reviews@chromium.org'],
771    'app_list': ['tfarina@chromium.org', 'chrome-apps-syd-reviews@chromium.org'],
772    'app_shortcuts': ['chrome-apps-syd-reviews@chromium.org'],
773    'appcache': ['michaeln@chromium.org'],
774    'apps': ['tfarina@chromium.org', 'chromium-apps-reviews@chromium.org'],
775    'ash': ['ben+ash@chromium.org',
776             'sadrul@chromium.org',
777             'kalyan.kondapally@intel.com'],
778    'aura': ['ben+aura@chromium.org',
779             'sadrul@chromium.org',
780             'kalyan.kondapally@intel.com'],
781    'aura_compositor': ['danakj+watch@chromium.org',
782                        'jbauman+watch@chromium.org',
783                        'piman+watch@chromium.org',
784                        'sievers+watch@chromium.org',
785                        'kalyan.kondapally@intel.com'],
786    'autofill': ['benquan@chromium.org',
787                 'dgwallinga@chromium.org',
788                 'dyu@chromium.org',
789                 'estade+watch@chromium.org',
790                 'isherman@chromium.org',
791                 'rouslan+autofillwatch@chromium.org'],
792    'automation': ['robertshield@chromium.org'],
793    'base': ['erikwright+watch@chromium.org'],
794    'base_allocator': ['dmikurube+memory@chromium.org',
795                       'wfh+watch@chromium.org'],
796    'base_memory': ['gavinp+memory@chromium.org'],
797    'base_win': ['wfh+watch@chromium.org'],
798    'battery_status': ['timvolodine@chromium.org'],
799    'bookmarks': ['tfarina@chromium.org'],
800    'browser_chromeos': ['davemoore+watch@chromium.org',
801                         'stevenjb+watch@chromium.org',
802                         'nkostylev+watch@chromium.org'],
803    'browser_components': ['browser-components-watch@chromium.org'],
804    'browser_compositor': ['vollick@chromium.org',
805                           'piman+watch@chromium.org'],
806    'browser_resources': ['arv+watch@chromium.org'],
807    'browsing_data': ['markusheintz@chromium.org'],
808    'bubble': ['alicet@chromium.org', 'msw+watch@chromium.org'],
809    'cast': ['avayvod+watch@chromium.org',
810             'hclam+watch@chromium.org',
811             'hguihot+watch@chromium.org',
812             'hubbe+watch@chromium.org',
813             'imcheng+watch@chromium.org',
814             'jasonroberts+watch@google.com',
815             'mikhal+watch@chromium.org',
816             'miu+watch@chromium.org',
817             'pwestin+watch@google.com'],
818    'cc': ['cc-bugs@chromium.org'],
819    'chrome_elf': ['caitkp+watch@chromium.org',],
820    'chrome_views': ['tfarina@chromium.org'],
821    'chromecast': ['lcwu+watch@chromium.org'],
822    'chromedriver': ['stgao@chromium.org'],
823    'chromeos' : ['oshima+watch@chromium.org',
824                  'stevenjb+watch@chromium.org'],
825    'chromeos_attestation' : ['dkrahn+watch@chromium.org'],
826    'chromeos_calculator' : ['dharcourt@chromium.org'],
827    'chromeos_dbus': ['hashimoto+watch@chromium.org'],
828    'chromeos_net' : ['stevenjb+watch@chromium.org'],
829    'chromeos_power' : ['derat+watch@chromium.org'],
830    'chromeos_webui': ['nkostylev+watch@chromium.org'],
831    'clang_update': ['ukai+watch@chromium.org',
832                     'dmikurube+clang@chromium.org',
833                     'eugenis+clang@chromium.org',
834                     'glider+clang@chromium.org'],
835    'clipboard': ['dcheng@chromium.org'],
836    'closure': ['dbeam+watch-closure@chromium.org',
837                'vitalyp+closure@chromium.org'],
838    'content': ['jam@chromium.org',
839                'darin-cc@chromium.org' ],
840    'content_input': ['jdduke+watch@chromium.org'],
841    'content_renderer': [ 'mkwst+moarreviews-renderer@chromium.org' ],
842    'content_shell': ['jochen+watch@chromium.org',
843                      'mkwst+moarreviews-shell@chromium.org'],
844    'cookie_monster': ['erikwright@chromium.org'],
845    'deep_memory_profiler': ['dmikurube+memory@chromium.org'],
846    'device_sensors': ['timvolodine@chromium.org', 'mvanouwerkerk@chromium.org', 'rijubrata.bhaumik@intel.com'],
847    'devtools': ['pfeldman@chromium.org', 'yurys@chromium.org',
848                 'vsevik@chromium.org', 'aandrey+blink@chromium.org',
849                 'paulirish+reviews@chromium.org',
850                 'devtools-reviews@chromium.org'],
851    'disk_cache': ['gavinp+disk@chromium.org'],
852    'dns': ['mmenke@chromium.org'],
853    'download_database': ['benjhayden+dwatch@chromium.org'],
854    'download': ['benjhayden+dwatch@chromium.org', 'asanka@chromium.org'],
855    'downloads_ext': ['benjhayden+dwatch@chromium.org'],
856    'downloads_ui': ['asanka@chromium.org', 'benjhayden+dwatch@chromium.org'],
857    'drive': ['tfarina@chromium.org'],
858    'drive_resource_metadata': ['hashimoto+watch@chromium.org'],
859    'eme': ['eme-reviews@chromium.org'],
860    'events': ['tdresser+watch@chromium.org'],
861    'extension': ['chromium-apps-reviews@chromium.org',
862                  'extensions-reviews@chromium.org'],
863    'fileapi': ['kinuko+fileapi@chromium.org',
864                'nhiroki@chromium.org',
865                'tzik@chromium.org'],
866    'filebrowse': ['rginda+watch@chromium.org',
867                   'yoshiki+watch@chromium.org'],
868    'filesapp': ['mtomasz+watch@chromium.org'],
869    'ftp': ['phajdan.jr@chromium.org'],
870    'gcm': ['zea+watch@chromium.org'],
871    'geolocation': ['mvanouwerkerk@chromium.org'],
872    'gfx_geometry': ['cc-bugs@chromium.org'],
873    'gfx_image': ['rsesek+watch@chromium.org'],
874    'gn': ['tfarina@chromium.org'],
875    'gpu': ['piman+watch@chromium.org'],
876    'history_ui': ['dubroy@chromium.org', 'pam+watch@chromium.org'],
877    'hotword': ['rlp+watch@chromium.org'],
878    'i18n': ['jshin+watch@chromium.org'],
879    'imageburner': ['tbarzic+watch@chromium.org'],
880    'importer': ['tfarina@chromium.org'],
881    'indexed_db': ['cmumford@chromium.org',
882                   'dgrogan@chromium.org', 'jsbell+idb@chromium.org'],
883    'installer': ['grt+watch@chromium.org', 'wfh+watch@chromium.org'],
884    'instant': ['dcblack@chromium.org', 'jered@chromium.org',
885                'samarth+watch@chromium.org', 'donnd+watch@chromium.org',
886                'melevin+watch@chromium.org', 'dougw+watch@chromium.org',
887                'kmadhusu+watch@chromium.org', 'dhollowa+watch@chromium.org',
888                'jfweitz+watch@chromium.org', 'skanuj+watch@chromium.org'],
889    'ipc': ['jam@chromium.org', 'darin-cc@chromium.org'],
890    'libwebp': ['urvang@google.com', 'jzern@chromium.org',
891                'skal@google.com', 'vikasa@google.com'],
892    'linux_fonts': ['derat+watch@chromium.org'],
893    'linux_sandboxing': ['jln+watch@chromium.org'],
894    'linux_seccomp_bpf': ['jln+watch@chromium.org'],
895    'supervised_users': ['pam+watch@chromium.org'],
896    'media': ['feature-media-reviews@chromium.org'],
897    'media_galleries': ['gbillock@chromium.org', 'thestig@chromium.org',
898                        'tommycli@chromium.org', 'vandebo@chromium.org'],
899    'message_loop': ['sadrul@chromium.org'],
900    'metrics': ['isherman@chromium.org',
901                'asvitkine+watch@chromium.org'],
902    'metrics_xml_files': ['asvitkine+watch@chromium.org'],
903    'mojo': ['aa@chromium.org',
904             'abarth@chromium.org',
905             'ben+mojo@chromium.org',
906             'darin@chromium.org',
907             'qsr+mojo@chromium.org',
908             'viettrungluu+watch@chromium.org',
909             'yzshen+watch@chromium.org'],
910    'mouse_lock': ['scheib+watch@chromium.org'],
911    'music_manager_private': ['gab+watch@chromium.org',
912                              'erikwright+watch@chromium.org',
913                              'robertshield+watch@chromium.org'],
914    'nacl': ['native-client-reviews@googlegroups.com'],
915    'native_client_sdk': ['sbc@chromium.org', 'binji+watch@chromium.org'],
916    'navigation': ['creis+watch@chromium.org', 'nasko+codewatch@chromium.org'],
917    'net': ['cbentzel+watch@chromium.org'],
918    'net_error_list': ['mmenke@chromium.org'],
919    'net_log': ['mmenke@chromium.org', 'eroman@chromium.org'],
920    'notifications': ['peter+watch@chromium.org'],
921    'npapi_headers': ['stuartmorgan@chromium.org'],
922    'ntp': ['estade+watch@chromium.org', 'dbeam+watch-ntp@chromium.org',
923            'pedrosimonetti+watch@chromium.org'],
924    'omnibox': ['suzhe@chromium.org'],
925    'options': ['dbeam+watch-options@chromium.org'],
926    'overview_mode': ['tdanderson+overview@chromium.org'],
927    'ozone': ['kalyan.kondapally@intel.com', 'ozone-reviews@chromium.org'],
928    'panels': ['dimich@chromium.org', 'jennb@chromium.org',
929               'dcheng@chromium.org', 'jianli@chromium.org'],
930    'password_manager': ['mkwst+watchlist@chromium.org',
931                         'gcasto+watchlist@chromium.org'],
932    'pepper_api': ['piman+watch@chromium.org', 'ihf+watch@chromium.org',
933                   'yusukes+watch@chromium.org', 'raymes+watch@chromium.org',
934                   'noelallen@chromium.org', 'binji+watch@chromium.org',
935                   'nfullagar@chromium.org', 'teravest+watch@chromium.org',
936                   'tzik@chromium.org'],
937    'plugin': ['jam@chromium.org',
938               'stuartmorgan+watch@chromium.org'],
939    'policy_templates': ['joaodasilva+watch@chromium.org'],
940    'predictors': ['shishir+watch@chromium.org'],
941    'prepopulated_engines': ['vasilii+watch@chromium.org'],
942    'prerender': ['cbentzel+watch@chromium.org', 'tburkard+watch@chromium.org',
943                  'jkarlin+watch@chromium.org', 'gavinp+prer@chromium.org',
944                  'davidben+watch@chromium.org'],
945    'pyauto': ['anantha@chromium.org',
946               'dyu@chromium.org',
947               'dennisjeffrey@chromium.org'],
948    'remoting': ['chromoting-reviews@chromium.org'],
949    'sessions': ['marja+watch@chromium.org'],
950    'service_worker': ['tzik@chromium.org',
951                       'kinuko+serviceworker@chromium.org',
952                       'nhiroki@chromium.org',
953                       'horo+watch@chromium.org',
954                       'jsbell+serviceworker@chromium.org',
955                       'michaeln@chromium.org',
956                       'serviceworker-reviews@chromium.org'],
957    'site_instance': ['creis+watch@chromium.org', 'ajwong+watch@chromium.org',
958                      'nasko+codewatch@chromium.org'],
959    'spellcheck': ['groby+spellwatch@chromium.org',
960                   'rlp+watch@chromium.org',
961                   'rouslan+spellwatch@chromium.org'],
962    'streams': ['zork+watch@chromium.org'],
963    'sync': ['haitaol+watch@chromium.org',
964             'tim+watch@chromium.org',
965             'maniscalco+watch@chromium.org',
966             'pvalenzuela+watch@chromium.org',
967             'zea+watch@chromium.org'],
968    'syncfs': ['kinuko+fileapi@chromium.org',
969               'nhiroki@chromium.org',
970               'tzik@chromium.org'],
971    'sync_proto': ['albertb+watch@chromium.org'],
972    'tab_capture': ['miu+watch@chromium.org'],
973    'tab_contents': ['avi@chromium.org',
974                     'creis+watch@chromium.org', 'ajwong+watch@chromium.org'],
975    'tab_media_indicators': ['miu+watch@chromium.org'],
976    'tcmalloc': ['dmikurube+memory@chromium.org'],
977    'telemetry': ['telemetry+watch@chromium.org'],
978    'tests': [],
979    'textinput': ['penghuang+watch@chromium.org',
980                  'suzhe@chromium.org',
981                  'yusukes+watch@chromium.org',
982                  'nona+watch@chromium.org',
983                  'yukishiino+watch@chromium.org'],
984    'textinput_chromeos': ['yusukes+watch@chromium.org',
985                           'nona+watch@chromium.org',
986                           'yukishiino+watch@chromium.org'],
987    'tools_emacs': ['dhollowa+watch@chromium.org'],
988    'tracing': ['dsinclair+watch@chromium.org', 'wfh+watch@chromium.org'],
989    'ui_compositor': ['cc-bugs@chromium.org'],
990    'ui_resources': ['oshima+watch@chromium.org'],
991    'valgrind': ['bruening+watch@chromium.org',
992                 'glider+watch@chromium.org',
993                 'timurrrr+watch@chromium.org'],
994    'version_assembly': ['caitkp+watch@chromium.org',
995                         'gab+watch@chromium.org'],
996    'views': ['tfarina@chromium.org'],
997    'views_core': ['ben+views@chromium.org',
998                   'tdanderson+views@chromium.org'],
999    'views_corewm': ['ben+corewm@chromium.org'],
1000    'virtual_keyboard': ['dfaden+virtualkb@google.com',
1001                         'groby+virtualkb@chromium.org'],
1002    'webkit': ['darin-cc@chromium.org'],
1003    'webrtc_media': ['wjia+watch@chromium.org',
1004                     'mcasas+watch@chromium.org',
1005                     'posciak+watch@chromium.org'],
1006    'website_settings': ['markusheintz@chromium.org'],
1007    'windows_sandboxing': ['wfh+watch@chromium.org'],
1008    'worker': ['jam@chromium.org'],
1009    'x11': ['derat+watch@chromium.org',
1010            'sadrul@chromium.org',
1011            'yusukes+watch@chromium.org'],
1012  },
1013}
1014