Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: d2c3a31e2fa91362a235908729705fa3e50f7f51
https://github.com/WebKit/WebKit/commit/d2c3a31e2fa91362a235908729705fa3e50f7f51
Author: Cole Carley <[email protected]>
Date: 2026-10-08 (Thu, 08 Oct 2026)
Changed paths:
M Source/WebCore/page/QuirkBehaviors.yaml
A Source/WebCore/page/QuirkTable.json
M Tools/Scripts/webkitpy/style/checker.py
M Tools/Scripts/webkitpy/style/checkers/jsonchecker.py
M Tools/Scripts/webkitpy/style/checkers/jsonchecker_unittest.py
Log Message:
-----------
[Quirks] Add QuirkTable.json and a style checker for it
https://bugs.webkit.org/show_bug.cgi?id=326739
rdar://100799656
Reviewed by Brent Fulgham.
This patch introduces QuirkTable.json, a data copy of the compiled quirk table
in
QuirkTable.cpp, as the first step toward a quirk table that can be served at
runtime.
Nothing reads it yet.
check-webkit-style now checks that each behavior in the table exists in
QuirkBehaviors.yaml and supplies the parameters and conditions it declares, and
that "available" and "environment" use valid BuildCondition and URLEnvironment
names.
Follow up patches will introduce parsing logic, replace the compiled quirk
table with
QuirkTable.json, and remove unused code after the migration.
* Source/WebCore/page/QuirkBehaviors.yaml:
* Source/WebCore/page/QuirkTable.json: Added.
* Tools/Scripts/webkitpy/style/checker.py:
(CheckerDispatcher._create_checker):
* Tools/Scripts/webkitpy/style/checkers/jsonchecker.py:
(JSONImportExpectationsChecker.check):
(JSONQuirkTableChecker):
(JSONQuirkTableChecker.URLEnvironment):
(JSONQuirkTableChecker.check):
(JSONQuirkTableChecker._error):
(JSONQuirkTableChecker._read_file):
(JSONQuirkTableChecker._read_behaviors):
(JSONQuirkTableChecker._read_build_conditions):
(JSONQuirkTableChecker._read_environments):
(JSONQuirkTableChecker._is_non_empty_string):
(JSONQuirkTableChecker._is_non_empty_string_list):
(JSONQuirkTableChecker._describe):
(JSONQuirkTableChecker._check_notes):
(JSONQuirkTableChecker._check_row):
(JSONQuirkTableChecker._check_behavior):
* Tools/Scripts/webkitpy/style/checkers/jsonchecker_unittest.py:
Canonical link: https://commits.webkit.org/323129@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications