bors d+ as an alias to
bors delegate+ and
bors d=someone as an alias to
Based on @tommilligan's pull request and @matklad's issue, a lot of people are annoyed by how long the delegate command's name is.
In addition to adding reviewers who can approve any PR in the repo, you can “delegate” permission to approve a single PR to anyone else. It works like this:
@some-user: bors r+ @bors[bot]: Permission denied @some-reviewer: bors d=some-user @bors[bot]: some-user now has permission to review this pull request. @some-user: bors r+ @bors[bot]: Added to queue
If some-user happens to be the pull request author, you can also use the shorthand
||Allow the pull request author to r+ their changes.|
||Allow the listed users to r+ this pull request’s changes.|
||Allow the pull request author to r+ their changes (same as
||Allow the listed users to r+ this pull request’s changes (same as
It adds another command that we need to maintain.
It's also less readable, though, since bors responds with a message with what you're doing, that should be fine. Also, we already allow the super-short and kind of opaque
r+, so it doesn't make much sense to be picky about self-documenting commands.
Rationale and alternatives
Why is this design the best in the space of possible designs?
It fits with the way
What other designs have been considered and what is the rationale for not choosing them?
About the only one that's really been considered is leaving it with
What is the impact of not doing this?
It's kind of annoying for people who regularly use delegation.
No known prior art for this specifically. As an interesting note, the reason why the command keyword is
bors instead of
bors-ng, or the older name of this codebase,
aelita2, is for this same reason, so there's lots of precedent for using short command names in bors.
The "design" is pretty much already nailed down.
ping is extremely rare, and pretty short anyway, so there's no real point in abbreviating it. We also couldn't use
p anyway, since that's already taken for priority adjustment.
The only other multi-letter commands are
retry. Try is pretty short, at three letters, and retry ought to be pretty rare, even if not as rare as ping.