blob: 9578eb9b2b8583ab80f6b347759011032bdaa66f [file] [log] [blame]
# When editing this file, please run the following command to make sure you
# haven't introduced any syntax errors:
#
# ./Tools/Scripts/check-webkit-style
#
# If you want to test your regular expressions, you can edit various files and
# then try following command:
#
# ./Tools/Scripts/webkit-patch apply-watchlist-local
#
{
"DEFINITIONS": {
"ChromiumGraphics": {
"filename": r"Source/WebCore/platform/graphics/chromium/",
},
"ChromiumPublicApi": {
"filename": r"Source/WebKit/chromium/public/"
r"|Source/Platform/chromium/public/"
r"|Tools/DumpRenderTree/chromium/TestRunner/public",
},
"ChromiumTestRunner": {
"filename": r"Tools/DumpRenderTree/chromium/TestRunner",
},
"AppleMacPublicApi": {
"filename": r"Source/WebCore/bindings/objc/PublicDOMInterfaces.h"
},
"Forms": {
"filename": r"Source/WebCore/html/HTML(DataList|FieldSet|Input|Keygen|Label|Legend|OptGroup|Option|Output|Select|TextArea)Element\."
r"|Source/WebCore/html/.*Form[A-Z].*\."
r"|Source/WebCore/html/\w*InputType\."
r"|Source/WebCore/html/shadow/(SliderThumbElement|TextControlInnerElements)\."
r"|Source/WebCore/rendering/Render(FileUploadControl|ListBox|MenuList|Slider|TextControl.*)\."
},
"Geolocation": {
"filename": r"Source/WebCore/Modules/geolocation/"
r"|Source/WebCore/page/GeolocationClient.h"
r"|Source/WebCore/bindings/js/JSGeolocationCustom.cpp"
r"|Source/WebCore/bindings/v8/custom/V8GeolocationCustom.cpp"
r"|Source/WebCore/platform/mock/GeolocationClientMock.(h|cpp)"
r"|Source/WebKit2/WebProcess/Geolocation/",
},
"GStreamerGraphics": {
"filename": r"Source/WebCore/platform/graphics/gstreamer/",
},
"GStreamerAudio": {
"filename": r"Source/WebCore/platform/audio/gstreamer/",
},
"WebIDL": {
"filename": r"Source/WebCore/(?!inspector)(?!testing).*\.idl"
},
"ThreadingFiles": {
"filename": r"Source/JavaScriptCore/wtf/ThreadSpecific\."
r"|Source/JavaScriptCore/wtf/ThreadSafeRefCounted\."
r"|Source/JavaScriptCore/wtf/ThreadingPrimitives\."
r"|Source/JavaScriptCore/wtf/Threading\."
r"|Source/WebCore/dom/CrossThreadTask\."
r"|Source/WebCore/platform/CrossThreadCopier\.",
},
"ThreadingUsage": {
# The intention of this regex is to detect places where people are using common threading mechanisms,
# so that one can look them over for common mistakes. This list is long and likely to get longer over time.
# Note the negative look-ahead to avoid new mentions of the files (for builds or includes).
"more": r"(AllowCrossThreadAccess|AtomicallyInitialize|CrossThreadCopier|CrossThreadRefCounted|Mutex|ReadWriteLock|ThreadCondition|ThreadSafeRefCounted|ThreadSpecific"
r"|createCallbackTask|crossThreadString|deprecatedTurnOffVerifier|threadsafeCopy)(?!\.(h|cpp))",
},
"WatchListScript": {
"filename": r"Tools/Scripts/webkitpy/common/watchlist/",
},
"webkitpy": {
"filename": r"Tools/Scripts/webkitpy/",
},
"webkitperl": {
"filename": r"Tools/Scripts/webkitperl/"
r"|Tools/Scripts/webkitdirs.pm"
r"|Tools/Scripts/VCSUtils.pm"
r"|Tools/Scripts/test-webkitperl",
},
"SVNScripts": {
"filename": r"Tools/Scripts/svn-.*",
},
"TestFailures": {
"filename": r"Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/",
},
"SecurityCritical": {
"more": r"[Ss]ecurityOrigin(?!\.(h|cpp))",
"less": r"[Ss]ecurityOrigin(?!\.(h|cpp))",
"filename": r"XSS|[Ss]ecurity",
},
"XSS": {
"filename": r".*XSS",
},
"SkiaGraphics": {
"filename": r"Source/WebCore/platform/graphics/skia/"
r"|Source/WebCore/platform/graphics/filters/skia/",
},
"V8Bindings": {
"filename": r"Source/WebCore/bindings/v8/",
},
"BindingsScripts": {
"filename": r"Source/WebCore/bindings/scripts/",
},
"FrameLoader": {
"more": r"FrameLoader\.(cpp|h)",
},
"Loader": {
"filename": r"Source/WebCore/loader/",
},
"Rendering": {
"filename": r"Source/WebCore/rendering/",
},
"RenderLayers": {
"filename": r"Source/WebCore/rendering/RenderLayer*",
},
"GraphicsLayer": {
"filename": r"Source/WebCore/platform/graphics/GraphicsLayer*",
},
"CoreAnimation": {
"filename": r"Source/WebCore/platform/graphics/ca/",
},
"Animation": {
"filename": r"Source/WebCore/page/animation/",
},
"StyleChecker": {
"filename": r"Tools/Scripts/webkitpy/style/",
},
"GtkWebKit2PublicAPI": {
"filename": r"Source/WebKit2/UIProcess/API/gtk/",
},
"QtBuildSystem": {
# Project files for each target are intentionally left out, as those
# mostly list source and header files, which would just add noise.
"filename": r"Tools/qmake/"
r"|WebKit.pro",
},
"QtWebKit2PublicAPI": {
"filename": r"Source/WebKit2/UIProcess/API/qt/"
r"|Source/WebKit2/UIProcess/API/cpp/qt/"
r"|Source/WebKit2/UIProcess/API/C/qt/",
},
"QtGraphics": {
"filename": r"Source/WebCore/platform/graphics/qt/"
},
"CoordinatedGraphics": {
"filename": r"Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/"
r"|Source/WebKit2/UIProcess/CoordinatedGraphics/"
r"|Source/WebKit2/Shared/CoordinatedGraphics/"
r"|Source/WebCore/platform/graphics/surfaces/",
},
"TextureMapper": {
"filename": r"Source/WebCore/platform/graphics/texmap/",
},
"OpenGL": {
"filename": r"Source/WebCore/platform/graphics/opengl/",
},
"QtWebKit2PlatformSpecific": {
"filename": r"Source/WebKit2/.*\.(pri|pro)"
r"|Source/WebKit2/Platform/qt/"
r"|Source/WebKit2/qt/"
r"|Source/WebKit2/PluginProcess/qt/"
r"|Source/WebKit2/Platform/qt/"
r"|Source/WebKit2/Shared/API/c/qt/"
r"|Source/WebKit2/Shared/qt/"
r"|Source/WebKit2/WebProcess/InjectedBundle/qt/"
r"|Source/WebKit2/WebProcess/FullScreen/qt/"
r"|Source/WebKit2/WebProcess/WebPage/qt/"
r"|Source/WebKit2/WebProcess/qt/"
r"|Source/WebKit2/WebProcess/Plugins/Netscape/qt/"
r"|Source/WebKit2/WebProcess/Downloads/qt/"
r"|Source/WebKit2/WebProcess/WebCoreSupport/qt/"
r"|Source/WebKit2/WebProcess/Cookies/qt/"
r"|Source/WebKit2/UIProcess/qt/"
r"|Source/WebKit2/UIProcess/Plugins/qt/"
r"|Source/WebKit2/UIProcess/Launcher/qt/",
},
"CSS": {
"filename": r"Source/WebCore/css/",
},
"DOM": {
"filename": r"Source/WebCore/dom/",
},
"HTML": {
"filename": r"Source/WebCore/html/",
},
"DOMAttributes": {
"filename": r"Source/WebCore/dom/.*Attr.*"
r"|Source/WebCore/dom/NamedNodeMap\.(cpp|h|idl)"
r"|Source/WebCore/dom/Element\.(cpp|h|idl)",
},
"EFL": {
"filename": r"Source/WebKit/efl/"
r"|Source/WebCore/platform/efl/"
r"|Source/WTF/wtf/efl/"
r"|Tools/EWebLauncher"
r"|Tools/DumpRenderTree/efl/"
r"|LayoutTests/platform/efl/",
},
"EFLWebKit2PublicAPI": {
"filename": r"Source/WebKit2/UIProcess/API/efl/"
r"|Source/WebKit2/UIProcess/API/C/efl/",
},
"EFLWebKit2PlatformSpecific": {
"filename": r"Source/WebKit2/.*\.(cmake|txt)"
r"|Source/WebKit2/Platform/efl/"
r"|Source/WebKit2/efl/"
r"|Source/WebKit2/Shared/API/c/efl/"
r"|Source/WebKit2/Shared/efl/"
r"|Source/WebKit2/WebProcess/InjectedBundle/efl/"
r"|Source/WebKit2/WebProcess/WebPage/efl/"
r"|Source/WebKit2/WebProcess/efl/"
r"|Source/WebKit2/WebProcess/Downloads/efl/"
r"|Source/WebKit2/WebProcess/WebCoreSupport/efl/"
r"|Source/WebKit2/UIProcess/efl/"
r"|Source/WebKit2/UIProcess/Launcher/efl/",
},
"CMake": {
"filename": r".*CMakeLists\w*\.txt"
r"|.*\w+\.cmake"
r"|Source/cmake/",
},
"Selectors": {
"filename": r"Source/WebCore/css/CSSSelector*"
r"|Source/WebCore/css/SelectorChecker.*"
r"|Source/WebCore/css/StyleResolver.*"
r"|Source/WebCore/dom/SelectorQuery.*",
},
"SoupNetwork": {
"filename": r"Source/WebCore/platform/network/soup/",
},
"ScrollingCoordinator": {
"filename": r"Source/WebCore/page/scrolling/",
},
"WebKitGTKTranslations": {
"filename": r"Source/WebKit/gtk/po/",
},
"Media": {
"filename": r"(Source|LayoutTests)/.*([Mm]edia|[Aa]udio|[Vv]ideo)",
},
"MathML": {
"filename": r"(Source|LayoutTests|Websites)/.*mathml",
},
"Editing": {
"filename": r"Source/WebCore/editing/",
},
"BlackBerry": {
"filename": r"Source/WebKit/blackberry/"
r"|Source/WebCore/page/blackberry"
r"|Source/WebCore/history/blackberry"
r"|Source/WebCore/plugins/blackberry"
r"|Source/WebCore/editing/blackberry"
r"|Source/WebCore/Resources/blackberry"
r"|Source/WebCore/platform/image-decoders/blackberry"
r"|Source/WebCore/platform/blackberry"
r"|Source/WebCore/platform/text/blackberry"
r"|Source/WebCore/platform/network/blackberry"
r"|Source/WebCore/platform/graphics/blackberry"
r"|Source/WTF/wtf/blackberry"
r"|ManualTests/blackberry"
r"|Tools/DumpRenderTree/blackberry"
r"|LayoutTests/platform/blackberry",
},
"NetworkInfo": {
"filename": r"Source/WebCore/Modules/networkinfo",
},
"Battery": {
"filename": r"Source/WebCore/Modules/battery",
},
"WTF": {
"filename": r"Source/WTF/wtf",
},
"WebGL": {
"filename": r"Source/WebCore/html/canvas/.*WebGL.*"
r"|Source/WebCore/bindings/js/.*WebGL.*"
r"|Source/WebCore/platform/graphics/gpu"
r"|Source/WebCore/platform/graphics/opengl"
r"|Source/WebCore/platform/graphics/ANGLE.*"
r"|Source/WebCore/platform/graphics/.*GraphicsContext3D.*"
r"|Source/ThirdParty/ANGLE",
},
"Filters": {
"filename": r"Source/WebCore/platform/graphics/filters"
r"|Source/WebCore/rendering/.*Filter.*"
r"|Source/WebCore/rendering/style/.*Filter.*"
r"|Source/WebCore/rendering/svg/.*Filter.*"
r"|Source/WebCore/svg/graphics/filters"
r"|Source/WebCore/svg/graphics/.*Filter.*",
},
"TouchAdjustment": {
"filename": r"Source/WebCore/page/TouchAdjustment.*"
r"|LayoutTests/touchadjustment"
r"|Source/WebKit/blackberry/WebKitSupport/FatFingers.*",
},
"SVG": {
"filename": r"Source/WebCore/svg"
r"|Source/WebCore/rendering/svg",
},
"WebInspectorAPI": {
"filename": r"Source/WebCore/inspector/InjectedScriptSource.js"
r"|Source/WebCore/inspector/.+\.json"
r"|Source/WebCore/inspector/.+\.idl"
r"|Source/WebCore/page/Console.idl",
},
"WebSocket": {
"filename": r"Source/WebCore/Modules/websockets"
r"|Source/WebCore/platform/network/(|.+/)SocketStream.*",
},
"MediaStream": {
"filename": r"Source/WebCore/Modules/mediastream"
r"|Source/WebCore/platform/mediastream"
r"|LayoutTests/fast/mediastream",
},
"Accessibility": {
"filename": r"Source/WebCore/accessibility"
r"|LayoutTests/.*accessibility",
},
"Cairo": {
"filename": r"Source/WebCore/platform/graphics/cairo",
},
"Harfbuzz": {
"filename": r"Source/WebCore/platform/graphics/harfbuzz",
},
"PerformanceTests": {
"filename": r"PerformanceTests"
r"|Tools/Scripts/webkitpy/performance_tests",
},
"GtkBuildSystem": {
"filename": r"configure.ac"
r"|.*GNUmakefile.(am|features.am.in)",
},
"ConsoleUsage": {
"more": r"[Aa]ddConsoleMessage|reportException|logExceptionToConsole|addMessage|printErrorMessage"
},
"ContentSecurityPolicyUsage": {
"more": r"[Cc]ontentSecurityPolicy(?!\.(h|cpp))",
},
"ContentSecurityPolicyFiles": {
"filename": r"Source/WebCore/page/(Content|DOM)SecurityPolicy\."
r"|LayoutTests/http/tests/security/contentSecurityPolicy"
},
"RegionsDevelopment": {
"filename": r"Source/WebCore/rendering/RenderRegion\.(h|cpp)"
r"|Source/WebCore/rendering/RenderFlowThread\.(h|cpp)"
r"|Source/WebCore/rendering/FlowThreadController\.(h|cpp)"
r"|Source/WebCore/rendering/RenderRegionSet\.(h|cpp)"
r"|Source/WebCore/rendering/RenderNamedFlowThread\.(h|cpp)"
r"|Source/WebCore/rendering/RenderBoxRegionInfo\.h"
r"|Source/WebCore/dom/WebKitNamedFlow\.(h|cpp|idl)"
r"|Source/WebCore/dom/(DOM)?NamedFlowCollection\.(h|cpp|idl)"
r"|Source/WebCore/css/WebKitCSSRegionRule\.(h|cpp|idl)"
r"|LayoutTests/fast/regions",
},
"RegionsExpectationsMore": {
"filename": r"LayoutTests/platform/.*TestExpectations",
"more": r"fast/regions/.*\.html",
},
"RegionsExpectationsLess": {
"filename": r"LayoutTests/platform/.*TestExpectations",
"less": r"fast/regions/.*\.html",
},
"RegionsUsage": {
"more": r"(RenderRegion|RenderFlowThread|RenderNamedFlowThread)(?!\.(h|cpp))",
},
"IndexedDB": {
"filename": r"Source/WebCore/Modules/indexeddb"
r"|Source/WebCore/bindings/.*IDB.*\.(h|cpp)"
r"|Source/WebCore/bindings/.*SerializedScriptValue.*\.(h|cpp)"
r"|Source/WebKit/chromium/.*IDB.*\.(h|cpp)"
r"|Source/WebCore/platform/leveldb"
r"|LayoutTests/storage/indexeddb"
r"|LayoutTests/platform/.*/storage/indexeddb",
},
},
"CC_RULES": {
# Note: All email addresses listed must be registered with bugzilla.
# Specifically, levin@chromium.org and levin+threading@chromium.org are
# two different accounts as far as bugzilla is concerned.
"Accessibility": [ "cfleizach@apple.com", "dmazzoni@google.com", "apinheiro@igalia.com", "jdiggs@igalia.com", "aboxhall@chromium.org" ],
"Animation" : [ "simon.fraser@apple.com", "dino@apple.com", "dstockwell@chromium.org" ],
"AppleMacPublicApi": [ "timothy@apple.com" ],
"Battery": [ "gyuyoung.kim@samsung.com" ],
"BlackBerry": [ "mifenton@rim.com", "rwlbuis@gmail.com", "tonikitoo@webkit.org" ],
"Cairo": [ "dominik.rottsches@intel.com" ],
"CMake": [ "rakuco@webkit.org", "gyuyoung.kim@samsung.com" ],
"CoordinatedGraphics" : [ "noam@webkit.org", "zeno@webkit.org", "cmarcelo@webkit.org", "luiz@webkit.org" ],
"ConsoleUsage" : [ "mkwst+watchlist@chromium.org" ],
"ContentSecurityPolicyFiles|ContentSecurityPolicyUsage" : [ "mkwst+watchlist@chromium.org" ],
"CoreAnimation" : [ "simon.fraser@apple.com" ],
"CSS": [ "alexis@webkit.org", "macpherson@chromium.org", "ojan.autocc@gmail.com", "esprehn+autocc@chromium.org"],
"ChromiumGraphics": [ "jamesr@chromium.org", "cc-bugs@chromium.org" ],
"ChromiumPublicApi": [ "abarth@webkit.org", "dglazkov@chromium.org", "fishd@chromium.org", "jamesr@chromium.org", "tkent+wkapi@chromium.org" ],
"ChromiumTestRunner": [ "jochen@chromium.org" ],
"DOM": [ "ojan.autocc@gmail.com", "esprehn+autocc@chromium.org" ],
"DOMAttributes": [ "cmarcelo@webkit.org", ],
"EFL": [ "rakuco@webkit.org", "gyuyoung.kim@samsung.com" ],
"EFLWebKit2PlatformSpecific": [ "gyuyoung.kim@samsung.com", "rakuco@webkit.org" ],
"EFLWebKit2PublicAPI": [ "gyuyoung.kim@samsung.com", "rakuco@webkit.org" ],
"Editing": [ "mifenton@rim.com" ],
"Filters": [ "dino@apple.com" ],
"Forms": [ "tkent@chromium.org", "mifenton@rim.com" ],
"FrameLoader": [ "abarth@webkit.org", "japhet@chromium.org" ],
"Geolocation": [ "benjamin@webkit.org" ],
"GraphicsLayer": [ "simon.fraser@apple.com" ],
"GStreamerGraphics": [ "alexis@webkit.org", "pnormand@igalia.com", "gns@gnome.org", "mrobinson@webkit.org" ],
"GStreamerAudio": [ "pnormand@igalia.com" ],
"GtkBuildSystem": [ "zandobersek@gmail.com" ],
"GtkWebKit2PublicAPI": [ "cgarcia@igalia.com", "gns@gnome.org", "mrobinson@webkit.org" ],
"Harfbuzz": [ "dominik.rottsches@intel.com" ],
"HTML": [ "ojan.autocc@gmail.com", "esprehn+autocc@chromium.org" ],
"IndexedDB": [ "alecflett@chromium.org", "dgrogan@chromium.org", "jsbell@chromium.org" ],
"Loader": [ "japhet@chromium.org" ],
"MathML": [ "dbarton@mathscribe.com" ],
"Media": [ "eric.carlson@apple.com", "jer.noble@apple.com" ],
"MediaStream": [ "tommyw@google.com", "hta@google.com" ],
"NetworkInfo": [ "gyuyoung.kim@samsung.com" ],
"OpenGL" : [ "noam@webkit.org", "dino@apple.com" ],
"PerformanceTests": [ "rniwa@webkit.org" ],
"QtBuildSystem" : [ "vestbo@webkit.org", "abecsi@webkit.org" ],
"QtGraphics" : [ "noam@webkit.org" ],
"QtWebKit2PlatformSpecific": [ "alexis@webkit.org", "cmarcelo@webkit.org", "abecsi@webkit.org" ],
"QtWebKit2PublicAPI": [ "alexis@webkit.org", "cmarcelo@webkit.org", "abecsi@webkit.org" ],
"RegionsDevelopment|RegionsExpectationsMore|RegionsExpectationsLess|RegionsUsage": [ "WebkitBugTracker@adobe.com" ],
"Rendering": [ "eric@webkit.org", "ojan.autocc@gmail.com", "esprehn+autocc@chromium.org" ],
"RenderLayers" : [ "simon.fraser@apple.com" ],
"SVG": ["schenney@chromium.org", "pdr@google.com", "fmalita@chromium.org", "dominik.rottsches@intel.com" ],
"SVNScripts": [ "dbates@webkit.org" ],
"ScrollingCoordinator": [ "andersca@apple.com", "jamesr@chromium.org", "tonikitoo@webkit.org", "cmarcelo@webkit.org", "luiz@webkit.org" ],
"SecurityCritical": [ "abarth@webkit.org" ],
"SkiaGraphics": [ "senorblanco@chromium.org", "junov@google.com" ],
"Selectors": [ "allan.jensen@digia.com" ],
"SoupNetwork": [ "rakuco@webkit.org", "gns@gnome.org", "mrobinson@webkit.org", "danw@gnome.org" ],
"StyleChecker": [ "levin@chromium.org", ],
"TestFailures": [ "abarth@webkit.org", "dglazkov@chromium.org", "ojan.autocc@gmail.com" ],
"TextureMapper" : [ "noam@webkit.org", "cmarcelo@webkit.org", "luiz@webkit.org" ],
"ThreadingFiles|ThreadingUsage": [ "levin+threading@chromium.org", ],
"TouchAdjustment" : [ "allan.jensen@digia.com" ],
"V8Bindings|BindingsScripts": [ "abarth@webkit.org", "japhet@chromium.org", "haraken@chromium.org" ],
"WTF": [ "benjamin@webkit.org", "ojan.autocc@gmail.com", "cmarcelo@webkit.org" ],
"WatchListScript": [ "levin+watchlist@chromium.org", ],
"WebGL": [ "dino@apple.com" ],
"WebIDL": [ "abarth@webkit.org", "ojan.autocc@gmail.com", "esprehn+autocc@chromium.org" ],
"WebInspectorAPI": [ "timothy@apple.com", "joepeck@webkit.org", "graouts@apple.com" ],
"WebKitGTKTranslations": [ "gns@gnome.org", "mrobinson@webkit.org" ],
"WebSocket": [ "yutak@chromium.org", "toyoshim+watchlist@chromium.org" ],
"XSS": [ "dbates@webkit.org", "ojan.autocc@gmail.com" ],
"webkitperl": [ "dbates@webkit.org" ],
"webkitpy": [ "abarth@webkit.org", "dpranke@chromium.org", "eric@webkit.org" ],
},
"MESSAGE_RULES": {
"ChromiumPublicApi": [ "Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, "
"fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before "
"submitting, as this patch contains changes to the Chromium public API. "
"See also https://trac.webkit.org/wiki/ChromiumWebKitAPI." ],
"AppleMacPublicApi": [ "Please wait for approval from timothy@apple.com (or another member "
"of the Apple Safari Team) before submitting "
"because this patch contains changes to the Apple Mac "
"WebKit.framework public API.", ],
"GtkWebKit2PublicAPI": [ "Thanks for the patch. If this patch contains new public API "
"please make sure it follows the guidelines for new WebKit2 GTK+ API. "
"See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API", ],
},
}