[webkit-dev] Proposal: Mandatory Commit and Merge Queue

Jonathan Bedard jbedard at apple.com
Thu Jun 2 19:31:43 PDT 2022


> On Jun 2, 2022, at 4:41 PM, Geoffrey Garen <ggaren at apple.com> wrote:
> 
> 
>> As we move to GitHub, I would like to propose we strengthen our protections on `main` by making MergeQueue and CommitQueue mandatory. 
> 
> 
> What is the goal of this proposal?

The goal is to increase the stability of the build, speed up EWS by preventing regressions from landing and reduce demands of post-commit test gardening.

> What problem are you trying to solve, and with what level of urgency?

Urgency is not high. I started this with the expectation it would be a somewhat long and contentious discussion. The motivating change is that the GitHub transition makes this proposal possible, from a technical perspective, in a way it is not while the project is still backed by Subversion.

Jonathan

> 
> Thanks,
> Geoff
> 
> 
>> On Jun 2, 2022, at 2:35 PM, Jonathan Bedard via webkit-dev <webkit-dev at lists.webkit.org> wrote:
>> 
>> As we move to GitHub, I would like to propose we strengthen our protections on `main` by making MergeQueue and CommitQueue mandatory. This would mean that with a few exceptions, all changes would need to be built and run layout tests before they are landed. To spell out what the exceptions I had in mind are:
>> 
>> - Revert commits, identified by a commit message that starts with “Unreviewed, revering…” would be exempt
>> - Changes which only modify files that do not effect building or testing WebKit would be exempt. These files specifically are:
>>          .github/
>>          JSTests/
>>          ManualTests/
>>          metadata/
>>          PerformanceTests/
>>          Tools/
>> 	         CISuport/
>> 	         EWSTools/
>> 	         WebKitBot
>>         Websites/
>> - Emergency build and infrastructure fixes, identified by a commit message that starts with “Emergency build fix” or “Emergency infrastructure fix” would be exempt
>> - A reviewer who is not the commit author can overwrite this protection by adding `unsafe-merge-queue` instead of the commit author
>> - Changes which passed an EWS layout test queue within the last 7 days would skip the layout test check
>> 
>> These exceptions are designed to provide contributors for a way to by-pass potentially slow checks if extraordinary situations, or in ones where CI has already validated the change. I think we should keep the ability for any committer to deploy an emergency fix, because our project has many contributors in different timezones and with different holiday schedules.
>> 
>> We know that this policy change would potentially slow down development, so I think these 3 improvements block making MergeQueue and CommitQueue mandatory:
>> 
>> - run-webkit-tests consulting results.webkit.org to avoid retrying known flakey or failing tests
>> - Another MergeQueue bot
>> - Xcode workspace builds to speed up incremental builds
>> 
>> Jonathan Bedard
>> WebKit Continuous Integration
>> 
>> _______________________________________________
>> webkit-dev mailing list
>> webkit-dev at lists.webkit.org
>> https://lists.webkit.org/mailman/listinfo/webkit-dev
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20220602/cedc6003/attachment.htm>


More information about the webkit-dev mailing list