]> git.proxmox.com Git - rustc.git/blame - src/doc/rustc-dev-guide/src/rustbot.md
bump version to 1.80.1+dfsg1-1~bpo12+pve1
[rustc.git] / src / doc / rustc-dev-guide / src / rustbot.md
CommitLineData
6a06907d
XL
1# Mastering @rustbot
2
3`@rustbot` (also known as `triagebot`) is a utility robot that is mostly used to
4allow any contributor to achieve certain tasks that would normally require GitHub
5membership to the `rust-lang` organization. Its most interesting features for
6contributors to `rustc` are issue claiming and relabeling.
7
8## Issue claiming
9
10`@rustbot` exposes a command that allows anyone to assign an issue to themselves.
11If you see an issue you want to work on, you can send the following message as a
12comment on the issue at hand:
13
14 @rustbot claim
15
16This will tell `@rustbot` to assign the issue to you if it has no assignee yet.
17Note that because of some GitHub restrictions, you may be assigned indirectly,
18i.e. `@rustbot` will assign itself as a placeholder and edit the top comment to
19reflect the fact that the issue is now assigned to you.
20
21If you want to unassign from an issue, `@rustbot` has a different command:
22
23 @rustbot release-assignment
24
25## Issue relabeling
26
27Changing labels for an issue or PR is also normally reserved for members of the
28organization. However, `@rustbot` allows you to relabel an issue yourself, only
29with a few restrictions. This is mostly useful in two cases:
30
31**Helping with issue triage**: Rust's issue tracker has more than 5,000 open
32issues at the time of this writing, so labels are the most powerful tool that we
33have to keep it as tidy as possible. You don't need to spend hours in the issue tracker
34to triage issues, but if you open an issue, you should feel free to label it if
35you are comfortable with doing it yourself.
36
37**Updating the status of a PR**: We use "status labels" to reflect the status of
38PRs. For example, if your PR has merge conflicts, it will automatically be assigned
39the `S-waiting-on-author`, and reviewers might not review it until you rebase your
40PR. Once you do rebase your branch, you should change the labels yourself to remove
41the `S-waiting-on-author` label and add back `S-waiting-on-review`. In this case,
42the `@rustbot` command will look like this:
43
44 @rustbot label -S-waiting-on-author +S-waiting-on-review
45
46The syntax for this command is pretty loose, so there are other variants of this
c0240ec0
FG
47command invocation. There are also some shortcuts to update labels,
48for instance `@rustbot ready` will do the same thing with above command.
49For more details, see [the docs page about labeling][labeling] and [shortcuts][shortcuts].
6a06907d 50
fe692bf9 51[labeling]: https://forge.rust-lang.org/triagebot/labeling.html
c0240ec0 52[shortcuts]: https://forge.rust-lang.org/triagebot/shortcuts.html
6a06907d
XL
53
54## Other commands
55
fe692bf9 56If you are interested in seeing what `@rustbot` is capable of, check out its [documentation],
6a06907d
XL
57which is meant as a reference for the bot and should be kept up to date every time the
58bot gets an upgrade.
59
60`@rustbot` is maintained by the Release team. If you have any feedback regarding
61existing commands or suggestions for new commands, feel free to reach out
62[on Zulip][zulip] or file an issue in [the triagebot repository][repo]
63
fe692bf9 64[documentation]: https://forge.rust-lang.org/triagebot/index.html
6a06907d
XL
65[zulip]: https://rust-lang.zulipchat.com/#narrow/stream/224082-t-release.2Ftriagebot
66[repo]: https://github.com/rust-lang/triagebot/