Quirks of how bors-ng parses GitHub PR Comment commands


#1

How to have something not be counted as a bors command

You don’t have to treat it as “that which must not be named”. Just don’t have bors at the beginning of the line. You can do that by prefixing the line with a single space, just like you do if you want a URL in Discourse to not get counted as a onebox:

 bors try
There's a space in front of the word "bors".

Bors also won’t respond if there’s other Markdown formatting between the start-of-line and the keyword. For example, it won’t be triggered by a block quote or the inside of a table if the leading or trailing pipes are used:

This will not trigger a command:
> bors try

|   name   |              description               |
|----------|----------------------------------------|
| bors try | This will not trigger a command either |

Bors will, however, match it’s keyword case-insensitively. So this will count as a bors command:

I'm actually going to approve your code for real, now.
I'm on mobile, so the word "bors" gets auto-capitalized,
but since it's case-insensitive anyway it's fine.

Bors r+

How to run multiple commands in a comment

Bors parses commands line-by-line, checking each line for the prefix and running it if it’s there. That means that this example will delegate to the current user and run the test suite in one comment:

If it passes in `try`, go ahead and `r+` it yourself.

bors try
bors delegate+

How to type an r= or delegate= so that GitHub gives you autocomplete

Type it like this:

bors r= @

Bors will ignore both the space and the @-sign.


This post is a wiki, so you should be able to edit it if there’s some other quirk you want other people to know about.


#2

Bors responds to a capital letter now: