rust/triagebot.toml
Matthias Krüger cf25110def
Rollup merge of #114157 - pitaj:triagebot_no-merges, r=ehuss
Enable triagebot no-merges check

Follow-up on https://github.com/rust-lang/triagebot/pull/1704

### Motivation

Occasionally, a merge commit like cb5c011670 makes it past manual review and gets merged into master.

At one point, we tried adding a check to CI to prevent this from happening (https://github.com/rust-lang/rust/pull/105058), but that ended up [problematic](https://github.com/rust-lang/rust/pull/106319#issuecomment-1368144076) and was [reverted](https://github.com/rust-lang/rust/pull/106320). This kind of check is simply too fragile for CI, and there must be a way for a human to override the bot's decision.

The capability to detect and warn about merge commits has been present in triagebot for quite some time, but was never enabled at rust-lang/rust, possibly due to concerns about false positives on rollup and subtree sync PRs. This PR intends to alleviate those concerns.

### Configuration

This configuration will exclude rollup PRs and subtree sync PRs from merge commit detection, and it will post the default warning message and add the `has-merge-commits` and `S-waiting-on-author` labels when merge commits are detected on other PRs.

The eventual vision is to have bors refuse to merge if the `has-merge-commits` label is present. A reviewer can still force the merge by removing that label if they so wish.

### Note for contributors

The rollup tool should add that label automatically, but anyone performing subtree updates should begin including "subtree update" in the titles of those PRs, to avoid false positives.

r? infra

## Open Questions

1. This configuration uses the default message that's built into triagebot:

> There are merge commits (commits with multiple parents) in your changes. We have a [no merge policy](https://rustc-dev-guide.rust-lang.org/git.html#no-merge-policy) so these commits will need to be removed for this pull request to be merged.
>
> You can start a rebase with the following commands:
> ```shell-session
> $ # rebase
> $ git rebase -i master
> $ # delete any merge commits in the editor that appears
> $ git push --force-with-lease
> ```

Any changes to this are easy, I'll just have to add a `message` option. Should we mention the excluded titles in the message?
2023-10-16 19:10:48 +02:00

778 lines
21 KiB
TOML

[relabel]
allow-unauthenticated = [
"A-*",
"C-*",
"D-*",
"E-*",
"F-*",
"I-*",
"NLL-*",
"O-*",
"S-*",
"T-*",
"WG-*",
"beta-nominated",
"const-hack",
"llvm-*",
"needs-fcp",
"relnotes",
"requires-*",
"regression-*",
"perf-*",
"AsyncAwait-OnDeck",
"needs-triage",
]
[review-submitted]
# This label is added when a "request changes" review is submitted.
reviewed_label = "S-waiting-on-author"
# These labels are removed when a "request changes" review is submitted.
review_labels = ["S-waiting-on-review"]
[review-requested]
# Those labels are removed when PR author requests a review from an assignee
remove_labels = ["S-waiting-on-author"]
# Those labels are added when PR author requests a review from an assignee
add_labels = ["S-waiting-on-review"]
[glacier]
[ping.icebreakers-llvm]
alias = ["llvm", "llvms"]
message = """\
Hey LLVM ICE-breakers! This bug has been identified as a good
"LLVM ICE-breaking candidate". In case it's useful, here are some
[instructions] for tackling these sorts of bugs. Maybe take a look?
Thanks! <3
[instructions]: https://rustc-dev-guide.rust-lang.org/notification-groups/llvm.html
"""
label = "ICEBreaker-LLVM"
[ping.icebreakers-cleanup-crew]
alias = ["cleanup", "cleanups", "cleanup-crew", "shrink", "reduce", "bisect"]
message = """\
Hey Cleanup Crew ICE-breakers! This bug has been identified as a good
"Cleanup ICE-breaking candidate". In case it's useful, here are some
[instructions] for tackling these sorts of bugs. Maybe take a look?
Thanks! <3
[instructions]: https://rustc-dev-guide.rust-lang.org/notification-groups/cleanup-crew.html
"""
label = "ICEBreaker-Cleanup-Crew"
[ping.windows]
message = """\
Hey Windows Group! This bug has been identified as a good "Windows candidate".
In case it's useful, here are some [instructions] for tackling these sorts of
bugs. Maybe take a look?
Thanks! <3
[instructions]: https://rustc-dev-guide.rust-lang.org/notification-groups/windows.html
"""
label = "O-windows"
[ping.arm]
message = """\
Hey ARM Group! This bug has been identified as a good "ARM candidate".
In case it's useful, here are some [instructions] for tackling these sorts of
bugs. Maybe take a look?
Thanks! <3
[instructions]: https://rustc-dev-guide.rust-lang.org/notification-groups/arm.html
"""
label = "O-ARM"
[ping.risc-v]
message = """\
Hey RISC-V Group! This bug has been identified as a good "RISC-V candidate".
In case it's useful, here are some [instructions] for tackling these sorts of
bugs. Maybe take a look?
Thanks! <3
[instructions]: https://rustc-dev-guide.rust-lang.org/notification-groups/risc-v.html
"""
label = "O-riscv"
[ping.fuchsia]
message = """\
Hey friends of Fuchsia! This issue could use some guidance on how this should be
resolved/implemented on Fuchsia. Could one of you weigh in?
"""
label = "O-fuchsia"
[ping.macos]
message = """\
Hey MacOS Group! This issue or PR could use some MacOS-specific guidance. Could one
of you weigh in? Thanks <3
"""
label = "O-macos"
[prioritize]
label = "I-prioritize"
[autolabel."I-prioritize"]
trigger_labels = [
"regression-untriaged",
"regression-from-stable-to-stable",
"regression-from-stable-to-beta",
"regression-from-stable-to-nightly",
"I-unsound",
]
exclude_labels = [
"P-*",
"T-infra",
"T-release",
"requires-nightly",
]
[autolabel."T-rustdoc"]
trigger_files = [
# Source code
"src/librustdoc",
"src/tools/rustdoc",
"src/rustdoc-json-types",
# Tests
"tests/rustdoc",
"tests/rustdoc-ui",
"tests/rustdoc-gui",
"tests/rustdoc-js",
"tests/rustdoc-js-std",
"tests/rustdoc-json",
# Internal tooling
"src/etc/htmldocck.py",
"src/tools/jsondocck",
"src/tools/jsondoclint",
"src/tools/rustdoc-gui",
"src/tools/rustdoc-js",
"src/tools/rustdoc-themes",
]
exclude_labels = [
"T-*",
]
[autolabel."A-rustdoc-json"]
trigger_files = [
"src/librustdoc/json/",
"src/rustdoc-json-types",
"tests/rustdoc-json",
"src/tools/jsondocck",
"src/tools/jsondoclint",
]
[autolabel."T-compiler"]
trigger_files = [
# Source code
"compiler",
# Tests
"tests/ui",
]
exclude_labels = [
"T-*",
]
[autolabel."T-libs"]
trigger_files = [
"library/alloc",
"library/core",
"library/panic_abort",
"library/panic_unwind",
"library/std",
"library/stdarch",
"library/term",
"library/test",
]
exclude_labels = [
"T-*",
]
[autolabel."O-android"]
trigger_files = [
"library/std/src/os/android"
]
[autolabel."O-fuchsia"]
trigger_files = [
"library/std/src/os/fuchsia"
]
[autolabel."O-hermit"]
trigger_files = [
"library/std/src/sys/hermit",
"library/std/src/os/hermit"
]
[autolabel."O-ios"]
trigger_files = [
"library/std/src/os/ios"
]
[autolabel."O-itron"]
trigger_files = [
"library/std/src/sys/itron"
]
[autolabel."O-linux"]
trigger_files = [
"library/std/src/os/linux"
]
[autolabel."O-macos"]
trigger_files = [
"library/std/src/os/macos"
]
[autolabel."O-netbsd"]
trigger_files = [
"library/std/src/os/netbsd"
]
[autolabel."O-redox"]
trigger_files = [
"library/std/src/os/redox"
]
[autolabel."O-SGX"]
trigger_files = [
"library/std/src/sys/sgx",
"library/std/src/os/fortanix_sgx"
]
[autolabel."O-solaris"]
trigger_files = [
"library/std/src/os/solaris"
]
[autolabel."O-solid"]
trigger_files = [
"library/std/src/sys/solid",
"library/std/src/os/solid"
]
[autolabel."O-unix"]
trigger_files = [
"library/std/src/sys/unix",
"library/std/src/os/unix"
]
[autolabel."O-wasi"]
trigger_files = [
"library/std/src/sys/wasi",
"library/std/src/os/wasi"
]
[autolabel."O-wasm"]
trigger_files = [
"library/std/src/sys/wasm",
"library/std/src/os/wasm"
]
[autolabel."O-watchos"]
trigger_files = [
"library/std/src/os/watchos"
]
[autolabel."O-windows"]
trigger_files = [
"library/std/src/sys/windows",
"library/std/src/os/windows"
]
[autolabel."T-bootstrap"]
trigger_files = [
"x.py",
"x",
"x.ps1",
"src/bootstrap",
"src/tools/rust-installer",
"src/tools/x",
"configure",
"Cargo.toml",
"config.example.toml",
"src/stage0.json",
"src/tools/compiletest",
"src/tools/tidy",
"src/tools/rustdoc-gui-test",
]
[autolabel."T-infra"]
trigger_files = [
"src/ci",
"src/tools/bump-stage0",
"src/tools/cargotest",
"src/tools/tier-check",
]
[autolabel."T-style"]
trigger_files = [
"src/doc/style-guide",
]
[autolabel."A-translation"]
trigger_files = [
"compiler/rustc_error_messages",
"compiler/rustc_errors/src/translation.rs",
"compiler/rustc_macros/src/diagnostics"
]
[autolabel."A-query-system"]
trigger_files = [
"compiler/rustc_query_system",
"compiler/rustc_query_impl",
"compiler/rustc_macros/src/query.rs"
]
[autolabel."A-testsuite"]
trigger_files = [
"src/ci",
"src/tools/compiletest",
"src/tools/cargotest",
"src/tools/tidy",
"src/tools/remote-test-server",
"src/tools/remote-test-client",
"src/tools/tier-check"
]
[autolabel."A-meta"]
trigger_files = [
"triagebot.toml",
"rustfmt.toml",
"LICENSES",
"README.md",
"CONTRIBUTING.md",
".reuse",
".mailmap",
".git-blame-ignore-revs",
".editorconfig"
]
[autolabel."T-release"]
trigger_files = [
"RELEASES.md",
"src/stage0.json",
"src/version"
]
[autolabel."S-waiting-on-review"]
new_pr = true
[autolabel."needs-triage"]
new_issue = true
exclude_labels = [
"C-tracking-issue"
]
[autolabel."WG-trait-system-refactor"]
trigger_files = [
"compiler/rustc_trait_selection/src/solve",
"compiler/rustc_middle/src/traits/solve"
]
[notify-zulip."I-prioritize"]
zulip_stream = 245100 # #t-compiler/wg-prioritization/alerts
topic = "#{number} {title}"
message_on_add = """\
@*WG-prioritization/alerts* issue #{number} has been requested for prioritization.
# [Procedure](https://forge.rust-lang.org/compiler/prioritization/procedure.html#assign-priority-to-unprioritized-issues-with-i-prioritize-label)
- Priority?
- Regression?
- Notify people/groups?
- Needs `I-nominated`?
"""
message_on_remove = "Issue #{number}'s prioritization request has been removed."
message_on_close = "Issue #{number} has been closed while requested for prioritization."
message_on_reopen = "Issue #{number} has been reopened."
[notify-zulip."T-rustdoc"]
required_labels = ["I-nominated"]
zulip_stream = 266220 # #rustdoc
topic = "nominated: #{number}"
message_on_add = """\
@*T-rustdoc* issue #{number} "{title}" has been nominated for `T-rustdoc` discussion.
"""
message_on_remove = "Issue #{number}'s nomination request has been removed."
[notify-zulip."I-types-nominated"]
zulip_stream = 326866 # #T-types/nominated
topic = "#{number}: {title}"
message_on_add = """\
@*T-types* issue #{number} "{title}" has been nominated for team discussion.
"""
message_on_remove = "Issue #{number}'s nomination has been removed. Thanks all for participating!"
message_on_close = "Issue #{number} has been closed. Thanks for participating!"
message_on_reopen = "Issue #{number} has been reopened. Pinging @*T-types*."
[notify-zulip."A-edition-2021"]
required_labels = ["C-bug"]
zulip_stream = 268952 # #edition 2021
topic = "Edition Bugs"
message_on_add = """\
Issue #{number} "{title}" has been added.
"""
[no-merges]
exclude_titles = ["Rollup of", "subtree update"]
labels = ["has-merge-commits", "S-waiting-on-author"]
[github-releases]
format = "rustc"
project-name = "Rust"
changelog-path = "RELEASES.md"
changelog-branch = "master"
[shortcut]
[mentions."compiler/rustc_codegen_cranelift"]
cc = ["@bjorn3"]
[mentions."compiler/rustc_codegen_gcc"]
cc = ["@antoyo"]
[mentions."compiler/rustc_const_eval/src/interpret"]
message = "Some changes occurred to the CTFE / Miri engine"
cc = ["@rust-lang/miri"]
[mentions."compiler/rustc_infer/src/infer/error_reporting/need_type_info.rs"]
message = "Some changes occurred in need_type_info.rs"
cc = ["@lcnr"]
[mentions."compiler/rustc_middle/src/mir/interpret"]
message = "Some changes occurred to the CTFE / Miri engine"
cc = ["@rust-lang/miri"]
[mentions."compiler/rustc_mir_transform/src/"]
message = "Some changes occurred to MIR optimizations"
cc = ["@rust-lang/wg-mir-opt"]
[mentions."compiler/rustc_trait_selection/src/traits/const_evaluatable.rs"]
message = "Some changes occurred in `const_evaluatable.rs`"
cc = ["@BoxyUwU"]
[mentions."compiler/rustc_middle/src/ty/abstract_const.rs"]
message = "Some changes occurred in `abstract_const.rs`"
cc = ["@BoxyUwU"]
[mentions."compiler/rustc_ty_utils/src/consts.rs"]
message = "Some changes occurred in `rustc_ty_utils::consts.rs`"
cc = ["@BoxyUwU"]
[mentions."compiler/rustc_trait_selection/src/solve/"]
message = "Some changes occurred to the core trait solver"
cc = ["@rust-lang/initiative-trait-system-refactor"]
[mentions."compiler/rustc_trait_selection/src/traits/engine.rs"]
message = """
Some changes occurred in engine.rs, potentially modifying the public API \
of `ObligationCtxt`.
"""
cc = ["@lcnr", "@compiler-errors"]
[mentions."compiler/rustc_error_codes/src/error_codes.rs"]
message = "Some changes occurred in diagnostic error codes"
cc = ["@GuillaumeGomez"]
[mentions."compiler/rustc_mir_build/src/thir/pattern"]
message = "Some changes might have occurred in exhaustiveness checking"
cc = ["@Nadrieril"]
[mentions."library/portable-simd"]
message = """
Portable SIMD is developed in its own repository. If possible, consider \
making this change to [rust-lang/portable-simd](https://github.com/rust-lang/portable-simd) \
instead.
"""
cc = ["@calebzulawski", "@programmerjake"]
[mentions."src/librustdoc/clean/types.rs"]
cc = ["@camelid"]
[mentions."src/librustdoc/html/static"]
message = "Some changes occurred in HTML/CSS/JS."
cc = [
"@GuillaumeGomez",
"@jsha",
]
[mentions."src/librustdoc/html/static/css/themes"]
message = "Some changes occurred in HTML/CSS themes."
cc = ["@GuillaumeGomez"]
[mentions."tests/rustdoc-gui/"]
message = "Some changes occurred in GUI tests."
cc = ["@GuillaumeGomez"]
[mentions."src/librustdoc/html/static/css/themes/ayu.css"]
message = "A change occurred in the Ayu theme."
cc = ["@Cldfire"]
[mentions."src/rustdoc-json-types"]
message = """
rustdoc-json-types is a **public** (although nightly-only) API. \
If possible, consider changing `src/librustdoc/json/conversions.rs`; \
otherwise, make sure you bump the `FORMAT_VERSION` constant.
"""
cc = [
"@CraftSpider",
"@aDotInTheVoid",
"@Enselic",
"@obi1kenobi",
]
[mentions."src/tools/cargo"]
cc = ["@ehuss"]
[mentions."src/tools/clippy"]
cc = ["@rust-lang/clippy"]
[mentions."src/tools/miri"]
message = "The Miri subtree was changed"
cc = ["@rust-lang/miri"]
[mentions."src/tools/rust-analyzer"]
cc = ["@rust-lang/rust-analyzer"]
[mentions."src/tools/rustfmt"]
cc = ["@rust-lang/rustfmt"]
[mentions."compiler/rustc_middle/src/mir/syntax.rs"]
message = "This PR changes MIR"
cc = ["@oli-obk", "@RalfJung", "@JakobDegen", "@davidtwco", "@celinval", "@vakaras"]
[mentions."compiler/rustc_error_messages"]
message = "`rustc_error_messages` was changed"
cc = ["@davidtwco", "@compiler-errors", "@JohnTitor", "@TaKO8Ki"]
[mentions."compiler/rustc_errors/src/translation.rs"]
message = "`rustc_errors::translation` was changed"
cc = ["@davidtwco", "@compiler-errors", "@JohnTitor", "@TaKO8Ki"]
[mentions."compiler/rustc_macros/src/diagnostics"]
message = "`rustc_macros::diagnostics` was changed"
cc = ["@davidtwco", "@compiler-errors", "@JohnTitor", "@TaKO8Ki"]
[mentions."compiler/rustc_smir"]
message = "This PR changes Stable MIR"
cc = ["@oli-obk", "@celinval", "@spastorino"]
[mentions."compiler/stable_mir"]
message = "This PR changes Stable MIR"
cc = ["@oli-obk", "@celinval", "@spastorino"]
[mentions."compiler/rustc_target/src/spec"]
message = """
These commits modify **compiler targets**.
(See the [Target Tier Policy](https://doc.rust-lang.org/nightly/rustc/target-tier-policy.html).)
"""
[mentions."src/doc/style-guide"]
cc = ["@rust-lang/style"]
[mentions."Cargo.lock"]
message = """
These commits modify the `Cargo.lock` file. Unintentional changes to `Cargo.lock` can be introduced when switching branches and rebasing PRs.
If this was unintentional then you should revert the changes before this PR is merged.
Otherwise, you can ignore this comment.
"""
[mentions."src/tools/x"]
message = "`src/tools/x` was changed. Bump version of Cargo.toml in `src/tools/x` so tidy will suggest installing the new version."
[mentions."src/tools/tidy/src/deps.rs"]
message = "Third-party dependency whitelist may have been modified! You must ensure that any new dependencies have compatible licenses before merging."
cc = ["@davidtwco", "@wesleywiser"]
[mentions."src/bootstrap/config.rs"]
message = "This PR changes `src/bootstrap/config.rs`. If appropriate, please also update `CONFIG_CHANGE_HISTORY` in `src/bootstrap/lib.rs` and `change-id` in `config.example.toml`."
[mentions."config.example.toml"]
message = "This PR changes `config.example.toml`. If appropriate, please also update `CONFIG_CHANGE_HISTORY` in `src/bootstrap/lib.rs` and `change-id` in `config.example.toml`."
[mentions."src/bootstrap/defaults/config.compiler.toml"]
message = "This PR changes src/bootstrap/defaults/config.compiler.toml. If appropriate, please also update `config.codegen.toml` so the defaults are in sync."
[mentions."src/bootstrap/defaults/config.codegen.toml"]
message = "This PR changes src/bootstrap/defaults/config.codegen.toml. If appropriate, please also update `config.compiler.toml` so the defaults are in sync."
[mentions."src/bootstrap/llvm.rs"]
message = "This PR changes how LLVM is built. Consider updating src/bootstrap/download-ci-llvm-stamp."
[mentions."tests/ui/deriving/deriving-all-codegen.stdout"]
message = "Changes to the code generated for builtin derived traits."
cc = ["@nnethercote"]
[mentions."tests/ui/stats/hir-stats.stderr"]
message = "Changes to the size of AST and/or HIR nodes."
cc = ["@nnethercote"]
[assign]
warn_non_default_branch = true
contributing_url = "https://rustc-dev-guide.rust-lang.org/getting-started.html"
users_on_vacation = ["jyn514", "jackh726", "WaffleLapkin"]
[assign.adhoc_groups]
compiler-team = [
"@cjgillot",
"@petrochenkov",
"@davidtwco",
"@oli-obk",
"@wesleywiser",
]
compiler-team-contributors = [
"@compiler-errors",
"@jackh726",
"@WaffleLapkin",
"@b-naber",
]
compiler = [
"compiler-team",
"compiler-team-contributors",
]
libs = [
"@cuviper",
"@joshtriplett",
"@Mark-Simulacrum",
"@m-ou-se",
"@thomcc",
]
bootstrap = [
"@Mark-Simulacrum",
"@albertlarsan68",
"@onur-ozkan",
"@clubby789",
]
infra-ci = [
"@Mark-Simulacrum",
"@Kobzol",
]
rustdoc = [
"@jsha",
"@GuillaumeGomez",
"@notriddle",
"@fmease",
]
docs = [
"@ehuss",
"@GuillaumeGomez",
"@JohnTitor",
]
query-system = [
"@cjgillot",
]
incremental = [
"@michaelwoerister",
"@wesleywiser",
]
diagnostics = [
"@compiler-errors",
"@davidtwco",
"@oli-obk",
]
parser = [
"@compiler-errors",
"@davidtwco",
"@nnethercote",
"@petrochenkov",
]
lexer = [
"@nnethercote",
"@petrochenkov",
]
mir = [
"@davidtwco",
"@oli-obk",
]
mir-opt = [
"@oli-obk",
"@wesleywiser",
]
types = [
"@compiler-errors",
"@jackh726",
"@lcnr",
"@oli-obk",
"@spastorino",
"@BoxyUwU",
]
borrowck = [
"@davidtwco",
"@pnkfelix",
]
ast_lowering = [
"@compiler-errors",
"@spastorino",
]
fallback = [
"@Mark-Simulacrum"
]
style-team = [
"@calebcartwright",
"@compiler-errors",
"@joshtriplett",
"@yaahc",
]
[assign.owners]
"/.github/workflows" = ["infra-ci"]
"/Cargo.lock" = ["@Mark-Simulacrum"]
"/Cargo.toml" = ["@Mark-Simulacrum"]
"/compiler" = ["compiler"]
"/compiler/rustc_ast" = ["compiler", "parser"]
"/compiler/rustc_ast_lowering" = ["compiler", "ast_lowering"]
"/compiler/rustc_hir_analysis" = ["compiler", "types"]
"/compiler/rustc_lexer" = ["compiler", "lexer"]
"/compiler/rustc_llvm" = ["@cuviper"]
"/compiler/rustc_middle/src/mir" = ["compiler", "mir"]
"/compiler/rustc_middle/src/traits" = ["compiler", "types"]
"/compiler/rustc_middle/src/ty" = ["compiler", "types"]
"/compiler/rustc_const_eval/src/interpret" = ["compiler", "mir"]
"/compiler/rustc_const_eval/src/transform" = ["compiler", "mir-opt"]
"/compiler/rustc_mir_build/src/build" = ["compiler", "mir"]
"/compiler/rustc_parse" = ["compiler", "parser"]
"/compiler/rustc_parse/src/lexer" = ["compiler", "lexer"]
"/compiler/rustc_query_impl" = ["compiler", "query-system"]
"/compiler/rustc_query_system" = ["compiler", "query-system"]
"/compiler/rustc_trait_selection" = ["compiler", "types"]
"/compiler/rustc_traits" = ["compiler", "types"]
"/compiler/rustc_type_ir" = ["compiler", "types"]
"/library/alloc" = ["libs"]
"/library/core" = ["libs"]
"/library/panic_abort" = ["libs"]
"/library/panic_unwind" = ["libs"]
"/library/proc_macro" = ["@petrochenkov"]
"/library/std" = ["libs"]
"/library/std/src/sys/windows" = ["@ChrisDenton", "@thomcc"]
"/library/stdarch" = ["libs"]
"/library/test" = ["libs"]
"/src/bootstrap" = ["bootstrap"]
"/src/ci" = ["infra-ci"]
"/src/doc" = ["docs"]
"/src/doc/book" = ["@ehuss"]
"/src/doc/edition-guide" = ["@ehuss"]
"/src/doc/embedded-book" = ["@ehuss"]
"/src/doc/nomicon" = ["@ehuss"]
"/src/doc/reference" = ["@ehuss"]
"/src/doc/rust-by-example" = ["@ehuss"]
"/src/doc/rustc-dev-guide" = ["@ehuss"]
"/src/doc/rustdoc" = ["rustdoc"]
"/src/doc/style-guide" = ["style-team"]
"/src/etc" = ["@Mark-Simulacrum"]
"/src/librustdoc" = ["rustdoc"]
"/src/llvm-project" = ["@cuviper"]
"/src/rustdoc-json-types" = ["rustdoc"]
"/src/stage0.json" = ["bootstrap"]
"/tests/ui" = ["compiler"]
"/src/tools/cargo" = ["@ehuss", "@joshtriplett"]
"/src/tools/compiletest" = ["bootstrap", "@wesleywiser", "@oli-obk", "@compiler-errors"]
"/src/tools/linkchecker" = ["@ehuss"]
"/src/tools/rust-installer" = ["bootstrap"]
"/src/tools/rustbook" = ["@ehuss"]
"/src/tools/rustdoc" = ["rustdoc"]
"/src/tools/rustdoc-js" = ["rustdoc"]
"/src/tools/rustdoc-themes" = ["rustdoc"]
"/src/tools/tidy" = ["bootstrap"]
"/src/tools/x" = ["bootstrap"]
"/src/tools/rustdoc-gui-test" = ["bootstrap", "@onur-ozkan"]