docs/merge-patch.md
If you have a patch to the main branch (e.g. an important bug fix) that needs to be merged into one of the release V8 branches (refs/branch-heads/12.5), read on.
The following examples use a branched 12.3 version of V8. Substitute 12.3 with your version number. Read the documentation on V8’s version numbering for more information.
An associated issue on V8’s issue tracker is mandatory if a patch is merged. This helps with keeping track of merges.
More information can be found on the relevant Chromium page. When in doubt, send an email to [email protected].
The merge process in the V8 tracker is driven by Attributes. Therefore please set the 'Merge-Request' on to the relevant Chrome Milestone. In case the merge is only affecting a V8 port please set the HW attribute accordingliy. E.g:
Merge-Request: 123
HW: MIPS,LoongArch64
once reviewed, this will be adjusted during the review to:
Merge: Approved-123
or
Merge: Rejected-123
After the CL landed, this will be adjusted one more time to:
Merge: Merged-123, Merged-12.3
Use chromiumdash to verify if the relevant CL has Canary coverage.
On top the Releases section should show a Canary.
Let’s assume you’re merging revision af3cf11 to branch 12.2 (please specify full git hashes - abbreviations are used here for simplicity).
https://crsrc.org/c/v8/tools/release/merge_to_branch_gerrit.py --branch 12.3 -r af3cf11
If one of the builders is not green after handling your patch, revert the merge immediately. A bot (AutoTagBot) takes care of the correct versioning after a 10-minute wait.
In case you need to patch a Canary/Dev version (which should not happen often), cc vahl@ or machenbach@ on the issue. Googlers: please check out the internal site before creating the CL.