-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Presubmit checks
Chromium has a system of presubmit checks which contains a lot of Chromium-specific validators we can use. The system is greatly explained here: https://www.chromium.org/developers/how-tos/depottools/presubmit-scripts/
To run presubmits in Brave: npm run presubmit
, the result will be printed to the console.
There're few options you may find useful:
--base <base branch> set the destination branch for the PR
--all run presubmit on all files
--files <file list> semicolon-separated list of files to run presubmit on
--verbose [arg] pass --verbose 2 for more debugging info
If you need to configure some upstream checks, i.e. disable or add a file filter, please use: chromium_presubmit_config.json5.
Currently upstream checks are modified in such way:
- Make it compatible with our directory structure.
- Disable Gerrit-specific checks.
- Disable
OWNERS
/AUTHORS
checks. - Add ability to fully disable a check or filter some files.
- Force some checks to trigger errors instead of warnings.
Under the hood we run git cl presubmit
in src/brave
directory, which runs all checks from src/brave/**/PRESUBMIT.py
and upstream checks from src/PRESUBMIT.py
.
src/PRESUBMIT.py
is modified using chromium_presubmit_overrides.py to support chromium_presubmit_config.json5
.