blob: ba91eea9ddd8dbafa8fe7425a0fe998be5503a7a [file] [log] [blame]
# File that lists regular expressions of paths that should be ignored when
# running the rewrite_raw_ptr_fields tool on Chromium sources.
#
# If a source file path contains any of the lines in the filter file below,
# then such source file will not be rewritten.
#
# Lines prefixed with "!" can be used to force include files that matched a file
# path to be ignored.
#
# Note that the rewriter has a hardcoded logic for a handful of path-based
# exclusions that cannot be expressed as substring matches:
# - Excluding paths containing "third_party/", but still covering
# "third_party/blink/"
# (see the isInThirdPartyLocation AST matcher in RewriteRawPtrFields.cpp).
# - Excluding paths _starting_ with "gen/" or containing "/gen/"
# (i.e. hopefully just the paths under out/.../gen/... directory)
# via the isInGeneratedLocation AST matcher in RewriteRawPtrFields.cpp.
# Exclude to prevent PartitionAlloc<->CheckedPtr cyclical dependency.
base/allocator/
# Exclude dependences of checked_ptr.h
base/logging.h
base/synchronization/lock_impl.h
# Exclude - deprecated and contains legacy C++ and pre-C++11 code.
ppapi/
# Exclude tools that do not ship in the Chrome binary. Can't depend on //base.
base/android/linker/
chrome/chrome_cleaner/
tools/
net/tools/
chrome/chrome_elf/
chrome/installer/mini_installer/
# DEPS prohibits includes from base/
chrome/install_static
# Exclude pocdll.dll as it doesn't depend on //base and only used for testing.
sandbox/win/sandbox_poc/pocdll
# Exclude directories that don't depend on //base, because nothing there uses
# anything from /base.
sandbox/linux/system_headers/
components/history_clusters/core/
# The folder holds headers that are duplicated in the Android source and need to
# provide a stable C ABI. Can't depend on //base.
android_webview/public/
# Performance related exclusion based on sampling profiler data
base/bind_internal.h
base/message_loop/
base/task/
base/threading/
base/timer/
cc/
content/browser/scheduler/responsiveness/
# Performance related exclusion based on tab_search:top100:2020 profiler data
base/observer_list.h
base/containers/linked_list.h
base/containers/circular_deque.h
# Performance related exclusion based on speedometer2 benchmark
third_party/blink/renderer/core/
third_party/blink/renderer/platform/bindings/
third_party/blink/renderer/platform/heap/
third_party/blink/renderer/platform/wtf/
# Exclude paths in separate repositories - i.e. in directories that
# 1. Contain a ".git" subdirectory
# 2. And hasn't been excluded via "third_party/" substring in their path
# (see the isInThirdPartyLocation AST matcher in RewriteRawPtrFields.cpp).
#
# The list below has been generated with:
#
# $ find . -type d -name .git | \
# sed -e 's/\.git$//g' | \
# sed -e 's/\.\///g' | \
# grep -v third_party | \
# grep -v '^$' | \
# sort | uniq > ~/scratch/git-paths
buildtools/clang_format/script/
chrome/app/theme/default_100_percent/google_chrome/
chrome/app/theme/default_200_percent/google_chrome/
chrome/app/theme/google_chrome/
chrome/app/vector_icons/google_chrome/
chrome/browser/google/linkdoctor_internal/
chrome/browser/internal/
chrome/browser/media/engagement_internal/
chrome/browser/resources/chromeos/quickoffice/
chrome/browser/resources/media_router/extension/src/
chrome/browser/resources/media_router_internal/
chrome/browser/resources/settings_internal/
chrome/browser/spellchecker/internal/
chrome/browser/ui/media_router/internal/
chrome/installer/mac/internal/
chrome/services/soda/internal/
chrome/test/data/firefox3_profile/searchplugins/
chrome/test/data/firefox3_searchplugins/
chrome/test/data/gpu/vt/
chrome/test/data/pdf_private/
chrome/test/data/perf/canvas_bench/
chrome/test/data/perf/frame_rate/content/
chrome/test/data/perf/frame_rate/private/
chrome/test/data/perf/private/
chrome/test/data/xr/webvr_info/
chrome/test/media_router/internal/
chrome/test/python_tests/
chrome/tools/memory/
clank/
components/ntp_tiles/resources/internal/
components/resources/default_100_percent/google_chrome/
components/resources/default_200_percent/google_chrome/
components/resources/default_300_percent/google_chrome/
components/site_isolation/internal/
content/test/data/plugin/
data/autodiscovery/
data/dom_perf/
data/mach_ports/
data/memory_test/
data/mozilla_js_tests/
data/page_cycler/
data/selenium_core/
data/tab_switching/
google_apis/internal/
media/cdm/api/
mojo/internal/
native_client/
remoting/android/internal/
remoting/host/installer/linux/internal/
remoting/internal/
remoting/test/internal/
remoting/tools/internal/
remoting/webapp/app_remoting/internal/
skia/tools/clusterfuzz-data/
tools/page_cycler/acid3/
tools/perf/data/
tools/swarming_client/
ui/file_manager/internal/
v8/
webkit/data/bmp_decoder/
webkit/data/ico_decoder/
webkit/data/test_shell/plugins/