wiki:CommitQueue

Version 6 (modified by eric@webkit.org, 11 years ago) (diff)

--

Commit Queue FAQ

WebKit's commit-queue is a small shell-script wrapper around bugzilla-tool?. It wakes up every 10 minutes and tries to land all patches in the commit-queue using bugzilla-tool land-patches.

Q: What do the commit-queue states mean?

  • commit-queue=+ Patch is 100% ready for commit, queue should land it. (Moral equivalent of committing yourself.)
  • commit-queue=- Patch needs manual landing (set this when you don't want any chance of auto-commit)
  • commit-queue=? Set by non-committers to ask someone to approve their patch for auto-commit.

Q: Who can set commit-queue+ or review+?

bugzilla-tool validates that the flag setters are committers/reviewers using: http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/modules/committers.py

Q: How long until a patch lands after I set commit-queue+?

Generally about 15 minutes. Depends on if commit-queue is running or not. The commit-queue still has lots of bugs, so we don't tend to run it un-attended (during non-work hours, PDT).

commit-queue bugs: https://bugs.webkit.org/buglist.cgi?quicksearch=commit-queue

bugzilla-tool bugs: https://bugs.webkit.org/buglist.cgi?quicksearch=bugzilla-tool

Q: My patch was rejected by the commit queue, what should I do!?

First, read the comment the commit queue added to the bug.

Eventually the commit-queue will know how to attach its failure logs to the bug: https://bugs.webkit.org/show_bug.cgi?id=28286

The commit-queue is still buggy. Sometimes it rejects patches it shouldn't. Don't worry, whoever is running the commit queue should add your patch back to the queue if it was wrongly rejected.

Q: What checks does commit-queue do before landing?

Everything "bugzilla-tool land-patches" does. Which is build (on Mac) and then run-webkit-tests. If you would like it to do more, please file bugs and post patches to bugzilla-tool! :)

Q: When I review a patch, should I set commit-queue+?

Yes. Unless the patch-poster is a committer or you want to commit it yourself.

Q: When I don't want my patch to be auto-landed, what should I do?

You don't need to do anything. Only commit-queue+ patches are auto-landed. Setting commit-queue- will make extra-sure.

Q: If I want my patch landed, and I'm not a committer, what do I do?

Set "commit-queue=?". A committer can set it to commit-queue+

Q: What does cq+ mean?

Some of us have been shortening commit-queue to "cq" when typing, so cq+ is "commit-queue=+". Similar to how r+ is "review=+".

Q: Can I run the commit-queue myself?

Yes. Any committer could run the commit queue. The wrapper process which Adam Barth and Eric Seidel have been using will soon be in SVN: https://bugs.webkit.org/show_bug.cgi?id=28040.