From d3bb1099824228213d19b67a561b685467bc384c Mon Sep 17 00:00:00 2001 From: Christian Duerr Date: Sun, 1 Jul 2018 18:10:04 +0000 Subject: [PATCH 01/12] Improve infrastructure documentation This adds some further documentation about the rust infrastructure based on the description of the different projects in their respective documentation. Additionally it also removes the dead links to the outdated buildbot (buildbot.rust-lang.org) and the crater overview which does not exist in this form (crater.rust-lang.org). Responsible maintainers to the different projects has not been added or altered to prevent mistakes, since I'm not familiar with the internal responsibilities of the involved parties. The `https://rusty-dash.com/fcp` link also seems to point to a dead link, but it has been kept because it might be a page which is only accessible through an internal network (since it's reserved for team members). --- infrastructure.md | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/infrastructure.md b/infrastructure.md index 9add83333..b8e40f7cb 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -18,9 +18,9 @@ your own work, please let the infrastructure team know. ## Highfive -[Highfive](https://github.com/nrc/highfive) is a bot +[Highfive](https://github.com/rust-lang/highfive) is a bot ([bot user account](https://github.com/rust-highfive)) which welcomes newcomers -and assigns reviewers. It is run by [Nick Cameron](https://github.com/nrc). +and assigns reviewers. ## Homu @@ -46,6 +46,8 @@ pending requests for review on [the FCP dashboard](http://rusty-dash.com/fcp). Documentation on rfcbot commands can be found [in the dashboard repository](https://github.com/dikaiosune/rust-dashboard/blob/master/RFCBOT.md). +An overview of the current RFCs can be found [here](https://rfcbot.rs). + Please contact [Adam Perry](https://github.com/dikaiosune) ("dikaiosune" on IRC) if something goes wrong with the bot, or open an issue on [the dashboard repository](https://github.com/dikaiosune/rust-dashboard/). @@ -64,22 +66,22 @@ wrong with the bot, or open an issue on for Rust, allowing the Rust source tree to be navigated and searched with ease. It is generated by [rust-dxr](https://github.com/nrc/rust-dxr) -## Others - -TODO: Describe these better. - -- [perf.rust-lang.org](http://perf.rust-lang.org/). Maintained by nrc. - [Source](https://github.com/nrc/rustc-perf). -- [Rust Release Explorer](http://ashleygwilliams.github.io/rust-release-explorer/) -- [rusty-dash.com](http://rusty-dash.com/). - [Source](https://github.com/dikaiosune/rust-dashboard). -- [buildbot.rust-lang.org](http://buildbot.rust-lang.org/). - [Source](https://github.com/rust-lang/rust-buildbot). Maintained by acrichto. -- [crater.rust-lang.org](https://crater.rust-lang.org/). - [Source](https://github.com/rust-lang-nursery/crater). Maintained by - tomprince. -- [play.rust-lang.org](http://play.rust-lang.org/) - [Source](https://github.com/integer32llc/rust-playground). Maintained by - shepmaster. +## perf + +[perf](https://github.com/rust-lang-nursery/rustc-perf) offers information about the performance of `rustc` over time. + +It is split into a data [collector](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector) and a [web frontend](https://github.com/rust-lang-nursery/rustc-perf/tree/master/site). The raw performance data is available [here](https://github.com/rust-lang-nursery/rustc-timing) and can be browsed on the [perf website](https://perf.rust-lang.org). + +## rust release explorer + +[rust release explorer](https://github.com/ashleygwilliams/rust-release-explorer/) is a way to explore rust release features based on milestone labels. The website can be found [here](https://ashleygwilliams.github.io/rust-release-explorer). + +## Rust Playground + +[Rust Playground](https://github.com/integer32llc/rust-playground) allows you to experiment with Rust before you install it locally, or in any other case where you might not have the compiler available. The Rust playground can be accessed [here](https://play.rust-lang.org). + +## Crater + +[Crater](https://github.com/rust-lang-nursery/crater) is a tool to run experiments across the whole Rust ecosystem. Its primary purpose is to detect regressions in the Rust compiler, and it does this by building large number of crates, running their test suites and comparing the results between two versions of the Rust compiler. [rust-central-station]: https://github.com/alexcrichton/rust-central-station From 9af0986ac28c5677a2ad34270263f3a688b65c46 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 13:33:32 -0700 Subject: [PATCH 02/12] Remove release-explorer. It does not appear to be used or maintained. --- infrastructure.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/infrastructure.md b/infrastructure.md index b8e40f7cb..8c062de43 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -72,10 +72,6 @@ It is generated by [rust-dxr](https://github.com/nrc/rust-dxr) It is split into a data [collector](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector) and a [web frontend](https://github.com/rust-lang-nursery/rustc-perf/tree/master/site). The raw performance data is available [here](https://github.com/rust-lang-nursery/rustc-timing) and can be browsed on the [perf website](https://perf.rust-lang.org). -## rust release explorer - -[rust release explorer](https://github.com/ashleygwilliams/rust-release-explorer/) is a way to explore rust release features based on milestone labels. The website can be found [here](https://ashleygwilliams.github.io/rust-release-explorer). - ## Rust Playground [Rust Playground](https://github.com/integer32llc/rust-playground) allows you to experiment with Rust before you install it locally, or in any other case where you might not have the compiler available. The Rust playground can be accessed [here](https://play.rust-lang.org). From 846313d3f529430fc65ad71ebd6ff3ec1a92f6a8 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 13:46:31 -0700 Subject: [PATCH 03/12] Word-wrap infrastructure. --- infrastructure.md | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/infrastructure.md b/infrastructure.md index 8c062de43..0142a03b4 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -68,16 +68,29 @@ It is generated by [rust-dxr](https://github.com/nrc/rust-dxr) ## perf -[perf](https://github.com/rust-lang-nursery/rustc-perf) offers information about the performance of `rustc` over time. +[perf](https://github.com/rust-lang-nursery/rustc-perf) offers information +about the performance of `rustc` over time. -It is split into a data [collector](https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector) and a [web frontend](https://github.com/rust-lang-nursery/rustc-perf/tree/master/site). The raw performance data is available [here](https://github.com/rust-lang-nursery/rustc-timing) and can be browsed on the [perf website](https://perf.rust-lang.org). +It is split into a data [collector] and a [web frontend]. The raw performance +data is available [here](https://github.com/rust-lang-nursery/rustc-timing) +and can be browsed on the [perf website](https://perf.rust-lang.org). + +[collector]: https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector +[web frontend]: https://github.com/rust-lang-nursery/rustc-perf/tree/master/site ## Rust Playground -[Rust Playground](https://github.com/integer32llc/rust-playground) allows you to experiment with Rust before you install it locally, or in any other case where you might not have the compiler available. The Rust playground can be accessed [here](https://play.rust-lang.org). +[Rust Playground](https://github.com/integer32llc/rust-playground) allows you +to experiment with Rust before you install it locally, or in any other case +where you might not have the compiler available. The Rust playground can be +accessed [here](https://play.rust-lang.org). ## Crater -[Crater](https://github.com/rust-lang-nursery/crater) is a tool to run experiments across the whole Rust ecosystem. Its primary purpose is to detect regressions in the Rust compiler, and it does this by building large number of crates, running their test suites and comparing the results between two versions of the Rust compiler. +[Crater](https://github.com/rust-lang-nursery/crater) is a tool to run +experiments across the whole Rust ecosystem. Its primary purpose is to detect +regressions in the Rust compiler, and it does this by building large number of +crates, running their test suites and comparing the results between two +versions of the Rust compiler. [rust-central-station]: https://github.com/alexcrichton/rust-central-station From bcd4f2500d313d1ffc378cc7b07365568ce39b89 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 13:56:57 -0700 Subject: [PATCH 04/12] Update some links and information on infrastructure. --- index.md | 2 +- infrastructure.md | 24 +++++++++--------------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/index.md b/index.md index 7b435e4c7..93c2414b2 100644 --- a/index.md +++ b/index.md @@ -47,7 +47,7 @@ This site contains supplementary documentation useful to the members of - [How the channels look on `static.rust-lang.org`](channel-layout.html). - [Beta backporting](beta-backporting.html). The mystery of the oft-misinterpreted `beta-nominated` / `beta-accepted` tags finally revealed. -- [Bots, websites and infrastructure](infrastructure.html). A catalog of the IRC +- [Bots, websites and infrastructure](infrastructure.html). A catalog of the bots, websites and other infrastructure used by the project, what they do, and who maintains them (i.e. who to contact when they malfunction and go on a bot rampage). diff --git a/infrastructure.md b/infrastructure.md index 0142a03b4..57f51bf70 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -6,8 +6,8 @@ title: Rust Infrastructure · The Rust Programming Language # Rust Infrastructure Most services in the Rust Infrastructure are deployed via -[rust-central-station][]. Questions about infrastructure, including current -status, should go to the #rust-infra IRC channel. +[rust-central-station]. Questions about infrastructure, including current +status, should go to the [#infra Discord channel](https://discord.gg/rust-lang). **Our stability guarantees**: many of our services rely on publicly-accessible storage and APIs, but not all of these are intended for public consumption. At @@ -16,6 +16,8 @@ stable**, meaning that those resources will not change without (at least) prior notice. If you are relying on other parts of the Rust project infrastructure for your own work, please let the infrastructure team know. +[rust-central-station]: https://github.com/rust-lang/rust-central-station + ## Highfive [Highfive](https://github.com/rust-lang/highfive) is a bot @@ -24,7 +26,7 @@ and assigns reviewers. ## Homu -[Homu](http://github.com/barosl/homu/) is a bot +[Homu](https://github.com/rust-lang/homu/) is a bot ([bot user account](https://github.com/bors)) which manages pull requests. Approved pull requests are placed in [a queue](http://buildbot2.rust-lang.org/homu/queue/rust) from which tests are @@ -38,19 +40,13 @@ goes wrong with the bot. ## rfcbot -[rfcbot](https://github.com/dikaiosune/rust-dashboard) is a bot +[rfcbot](https://github.com/rust-lang/rfcbot-rs) is a bot ([bot user account](https://github.com/rfcbot)) which helps manage async decision making on issues and PRs (typically RFCs). Team members can view any -pending requests for review on [the FCP dashboard](http://rusty-dash.com/fcp). +pending requests for review on [the FCP dashboard](https://rfcbot.rs/). Documentation on rfcbot commands can be found -[in the dashboard repository](https://github.com/dikaiosune/rust-dashboard/blob/master/RFCBOT.md). - -An overview of the current RFCs can be found [here](https://rfcbot.rs). - -Please contact [Adam Perry](https://github.com/dikaiosune) ("dikaiosune" on IRC) -if something goes wrong with the bot, or open an issue on -[the dashboard repository](https://github.com/dikaiosune/rust-dashboard/). +[in the rfcbot repository](https://github.com/rust-lang/rfcbot-rs). ## nagbot @@ -87,10 +83,8 @@ accessed [here](https://play.rust-lang.org). ## Crater -[Crater](https://github.com/rust-lang-nursery/crater) is a tool to run +[Crater](https://github.com/rust-lang/crater) is a tool to run experiments across the whole Rust ecosystem. Its primary purpose is to detect regressions in the Rust compiler, and it does this by building large number of crates, running their test suites and comparing the results between two versions of the Rust compiler. - -[rust-central-station]: https://github.com/alexcrichton/rust-central-station From 687606e78e7328e8d2a87e03a77042cb56371ddc Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 13:57:18 -0700 Subject: [PATCH 05/12] Remove nagbot, I'm pretty sure it is not used. --- infrastructure.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/infrastructure.md b/infrastructure.md index 57f51bf70..9f22e2519 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -48,14 +48,6 @@ pending requests for review on [the FCP dashboard](https://rfcbot.rs/). Documentation on rfcbot commands can be found [in the rfcbot repository](https://github.com/rust-lang/rfcbot-rs). -## nagbot - -[nagbot](https://github.com/aturon/nag-rs) is a bot that emails Rust team -members to nag them for reviews. Please contact -[Aaron Turon](https://github.com/aturon) ("aturon" on IRC) if something goes -wrong with the bot, or open an issue on -[its repo](https://github.com/aturon/nag-rs). - ## DXR [DXR](https://dxr.mozilla.org/rust/source/) is a cross-referenced source index From 555949324ad52c246b8fa0bb8fcffd6f577d19e2 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 14:02:36 -0700 Subject: [PATCH 06/12] Add docs.rs to infrastructure. --- infrastructure.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index 9f22e2519..0e280832a 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -80,3 +80,12 @@ experiments across the whole Rust ecosystem. Its primary purpose is to detect regressions in the Rust compiler, and it does this by building large number of crates, running their test suites and comparing the results between two versions of the Rust compiler. + +## docs.rs + +[docs.rs](https://docs.rs/) builds and serves the rustdoc documentation for +all crates on [crates.io]. Issues may be filed on the [docs.rs +repository](https://github.com/rust-lang/docs.rs). See the #docs-rs channel on +Discord for discussion or urgent issues. + +[crates.io]: https://crates.io/ From 8ce550fe7783791eb862b13f316c776bc6cfeed1 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 14:06:55 -0700 Subject: [PATCH 07/12] Add rustbot. --- infrastructure.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index 0e280832a..29013d7ed 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -48,6 +48,13 @@ pending requests for review on [the FCP dashboard](https://rfcbot.rs/). Documentation on rfcbot commands can be found [in the rfcbot repository](https://github.com/rust-lang/rfcbot-rs). +## rustbot + +[rustbot](https://github.com/rust-lang/triagebot) is a bot ([bot user +account](https://github.com/rustbot)) to assist with managing issues and PRs +to allow users to label and assign without GitHub permissions. See [the +wiki](https://github.com/rust-lang/triagebot/wiki) for more information. + ## DXR [DXR](https://dxr.mozilla.org/rust/source/) is a cross-referenced source index From f5a405f7e4ac6915beb47f15846b694f3cc5bce8 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 14:12:51 -0700 Subject: [PATCH 08/12] Add rust log analyzer to infrastructure list. --- infrastructure.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index 29013d7ed..6d878a719 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -24,6 +24,12 @@ your own work, please let the infrastructure team know. ([bot user account](https://github.com/rust-highfive)) which welcomes newcomers and assigns reviewers. +## Rust Log Analyzer + +The [Rust Log Analyzer](https://github.com/rust-lang/rust-log-analyzer) +analyzes CI build logs to extract error messages and posts them to the pull +request. It is run by [TimNN](https://github.com/TimNN). + ## Homu [Homu](https://github.com/rust-lang/homu/) is a bot From 4d1b0e1561ef70b66bb4439150a5a28701eb25fa Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 14:17:36 -0700 Subject: [PATCH 09/12] Add toolstate to infrastructure list. --- infrastructure.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index 6d878a719..9b4d2cb1d 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -101,4 +101,11 @@ all crates on [crates.io]. Issues may be filed on the [docs.rs repository](https://github.com/rust-lang/docs.rs). See the #docs-rs channel on Discord for discussion or urgent issues. +## Toolstate + +The state of tools included with Rust are tracked on the [toolstate +page](https://rust-lang-nursery.github.io/rust-toolstate/). When each PR is +merged via CI, the status of each tool is recorded in a JSON file and stored +in the [toolstate repo](https://github.com/rust-lang-nursery/rust-toolstate). + [crates.io]: https://crates.io/ From e3015cb0880fb02004c0b1f63286105d82b84ec1 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 14:21:15 -0700 Subject: [PATCH 10/12] Add rustup components history to infrastructure list. --- infrastructure.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index 9b4d2cb1d..cc1707ae4 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -108,4 +108,12 @@ page](https://rust-lang-nursery.github.io/rust-toolstate/). When each PR is merged via CI, the status of each tool is recorded in a JSON file and stored in the [toolstate repo](https://github.com/rust-lang-nursery/rust-toolstate). +## Rustup components history + +The [rustup components +history](https://rust-lang.github.io/rustup-components-history/) tracks the +status of every rustup component for every platform over time. See [the +repository](https://github.com/rust-lang/rustup-components-history) for more +information. + [crates.io]: https://crates.io/ From fc17cda6d68405fff4880fb3b641f209ada9fec7 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 14:25:26 -0700 Subject: [PATCH 11/12] Add CI Timing Tracker to infrastructure list. --- infrastructure.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index cc1707ae4..ce475d0ab 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -116,4 +116,11 @@ status of every rustup component for every platform over time. See [the repository](https://github.com/rust-lang/rustup-components-history) for more information. +## CI Timing Tracker + +The [CI Timing +Tracker](https://alexcrichton.github.io/rust-ci-timing-tracker/) tracks and +compares how long CI jobs take over time. It is run by [Alex +Crichton](https://github.com/alexcrichton/rust-ci-timing-tracker). + [crates.io]: https://crates.io/ From e7ddba411ef09def5eaf339665e99c6d9c0c0e14 Mon Sep 17 00:00:00 2001 From: Eric Huss Date: Mon, 5 Aug 2019 19:24:10 -0700 Subject: [PATCH 12/12] Add rust-timer bot. --- infrastructure.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/infrastructure.md b/infrastructure.md index ce475d0ab..c28018a27 100644 --- a/infrastructure.md +++ b/infrastructure.md @@ -76,6 +76,12 @@ It is split into a data [collector] and a [web frontend]. The raw performance data is available [here](https://github.com/rust-lang-nursery/rustc-timing) and can be browsed on the [perf website](https://perf.rust-lang.org). +One-off performance runs can done by addressing the [rust-timer +bot](https://github.com/rust-timer). On a PR, do a "try" build (`@bors try`), +wait for it finish, then leave a comment with the merge commit hash like this: + + @rust-timer build ac89e0324b48993d6d148f598ea0e7357e229c79 + [collector]: https://github.com/rust-lang-nursery/rustc-perf/tree/master/collector [web frontend]: https://github.com/rust-lang-nursery/rustc-perf/tree/master/site