Skip to content

Commit 7a6060d

Browse files
committed
[WIP] Tweak T-rustdoc processes docs
1 parent 7481038 commit 7a6060d

File tree

5 files changed

+81
-21
lines changed

5 files changed

+81
-21
lines changed

src/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,7 @@
8080
- [Calendar](./rustdoc/calendar.md)
8181
- [Meetings](./rustdoc/meetings.md)
8282
- [Membership](./rustdoc/membership.md)
83+
- [Repositories](./rustdoc/repositories.md)
8384
- [Resources](./rustdoc/resources.md)
8485
- [Review Policy](./rustdoc/reviews.md)
8586
- [Proposals, Approval and Stabilization](./rustdoc/proposals-and-stabilization.md)

src/rustdoc/index.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,19 @@ you're looking for the [rustc-dev-guide](https://rustc-dev-guide.rust-lang.org/r
1212
- *What meetings do the rustdoc team run and how can I attend?*
1313
- [Membership](./membership.md)
1414
- *What is expected of rustdoc team members and how do I join?*
15+
- [Repositories we maintain](./repositories.md)
16+
- *Various code repositories the team maintains and contributes to*
1517
- [Resources](./resources.md)
1618
- *What useful resources are available for contributors and team members?*
1719
- [Review Policy](./reviews.md)
1820
- *How do I make a contribution which is easy to review? How do I start reviewing as a team member?*
1921
- [Proposals, Approval and Stabilization](./proposals-and-stabilization.md)
2022
- *How do I propose a change to the rustdoc team? What approval is necessary for my change?*
23+
24+
<!-- FIXME(fmease): Specify backport and prioritization processes! -->
25+
26+
<!-- FIXME(fmease): Somewhere I want to mention "cross-team purview"
27+
I.e., the fact that T-rustdoc members are allowed to modify T-libs*-owned `library/` if necessitated,
28+
similarly `compiler/` (but for compiler it's good to also assign a compiler team member).
29+
Similarly non-T-rustdoc may approve changes to `src/librustdoc/` if e.g. compiler modifs necessitate it
30+
-->

src/rustdoc/membership.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ is ready when they have demonstrated three things:
2828
[CoC]: https://www.rust-lang.org/policies/code-of-conduct
2929

3030
Being promoted to member implies a number of privileges:
31+
<!-- FIXME(fmease): Not only r+ but also GH approval/merge rights in certain other repos -->
3132

3233
- Members have `r+` (approve a pull request) privileges and can do reviews (they are expected to
3334
use those powers appropriately, as discussed previously). They also have access to control
@@ -98,12 +99,18 @@ extended.
9899
If the invitation is accepted by the individual, the rustdoc team leads will update the [team]
99100
repository to reflect their new role.
100101

102+
<!-- FIXME(fmease): Need to be manually added to private rustdoc team channel because it's
103+
not tracked by sync-team at the time of writing -->
104+
101105
## Alumni status
102106
If at any time a rustdoc team member wishes to take a break from participating, they can opt to put
103107
themselves into alumni status. When in alumni status, they will be removed from
104108
GitHub aliases and the like, so that they need not be bothered with pings and messages. They will
105109
also not have r+ privileges. **Alumni members will however still remain members of the GitHub
106-
org overall.**
110+
org overall.** <!-- FIXME(fmease): No longer accurate! -->
111+
112+
<!-- FIXME(fmease): Need to be manually removed from private rustdoc team channel because it's
113+
not tracked by sync-team at the time of writing -->
107114

108115
People in alumni status can ask to return to "active" status at any time. This request would
109116
ordinarily be granted automatically barring extraordinary circumstances.

src/rustdoc/proposals-and-stabilization.md

Lines changed: 43 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,42 +4,59 @@ for permission to proceed with an experiment or refactoring, or when stabilizing
44
document aims to summarise the various processes that the rustdoc team has for making approval
55
decisions and when each should be used.
66

7-
## Approvals
8-
There are two mechanisms that the team can use to approve a proposal (not all approval mechanisms
9-
are suitable for each method of making a proposal - see below):
107

11-
- r+
12-
- A proposal (an RFC or an FCP) is r+'d when it is approved to be merged.
13-
- r+ can only be used to approve a PR.
14-
- FCP
15-
- A final comment period will require sign-off from a majority (all members minus 2)
16-
of the rustdoc team to approve a proposal and then a ten day waiting period.
17-
- FCPs can be used to approve any form of proposal.
8+
[*r+*]: ../compiler/reviews.html#bors
189

1910
## Proposals
20-
There are three ways to propose a change to the rustdoc team. The appropriate choice depends on
11+
There are four ways to propose a change to the rustdoc team. The appropriate choice depends on
2112
the nature of the proposal, described below.
2213

23-
- Open a discussion on the [rustdoc zulip thread].
24-
- This is the preferred way. It allows to prevent users to lose too much time implementing
14+
- Open a discussion in the [rustdoc Zulip channel].
15+
- This is the preferred way <!-- FIXME(fmease): not always tho? Just open a PR dude -->.
16+
It allows to prevent users to lose too much time implementing
2517
something if in the end, the team will ask major changes or even refuse it. After the
2618
discussion, if accepted and depending on the change, an RFC or a PR will be the next step.
19+
- <!-- FIXME(fmease): Clarify what "approval" means. Namely the approvals are casual,
20+
"non-binding". >=1 endorsements is fine/usual -->
2721
- Request For Comments (RFC)
28-
- RFCs are pull requests to the [`rust-lang/rfcs`][rfcs] repository and are a heavy-weight
22+
- RFCs are pull requests to the [`rust-lang/rfcs`] repository and are a heavy-weight
2923
proposal mechanism, reserved for significant changes.
3024
- RFC proposals can only be approved by *FCPs*.
25+
- <!-- FIXME(fmease): Or mention the "r+ after FCP" topic from above here instead -->
3126
- Pull Request (PR)
32-
- Opening a pull request on the [`rust-lang/rust`][rust] repository is a lightweight
27+
- Opening a pull request on the [`rust-lang/rust`] repository is a lightweight
3328
mechanism suitable for most proposals. This is preferred in cases such as stabilization
3429
of a rustdoc flag or addition of a new target.
3530
- PR proposals can be approved by *FCPs* or *r+*. See *When are FCPs/RFCs required?*
3631
section below when *r+* isn't sufficient alone.
3732
- Issues
38-
- Opening an issue on the [`rust-lang/rust`][rust] repository are also a good starting
33+
- Opening an issue in the [`rust-lang/rust`] repository is also a good starting
3934
point if you don't know which of the previous ways is the best fit.
35+
- <!-- FIXME(fmease): Clarify that there's no process for approvals for
36+
GH issues; moreover mention that we usually don't FCP issue proposals but
37+
instead the corresponding PR -->
38+
39+
[rustdoc Zulip channel]: https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc
40+
[`rust-lang/rust`]: https://github.com/rust-lang/rust
41+
[`rust-lang/rfcs`]: https://github.com/rust-lang/rfcs
4042

41-
[rustdoc zulip thread]: https://rust-lang.zulipchat.com/#narrow/channel/266220-t-rustdoc
42-
[rust]: https://github.com/rust-lang/rust
43+
## Approvals
44+
There are two mechanisms that the team can use to approve a [proposal](#proposals). (not all approval mechanisms
45+
are suitable for each method of making a proposal -- [see below](#proposals)):
46+
47+
- [*r+*] <!-- or GH approval or merge -->
48+
- A proposal is *r+*'d when it is approved to be merged.
49+
- *r+* can only be used to approve a PR.
50+
- <!-- FIXME(fmease): *somewhere* I want to clarify *who* is in charge of the r+
51+
(namely any team member(s) but usually PR assignee(s)) -->
52+
- <!-- FIXME(fmease): r-l/r isn't the only repo (e.g., dev guide, forge, rustdoc-json-types, rfcs) -->
53+
- FCP
54+
- A final comment period will require sign-off from a majority (all members minus 2)
55+
of the rustdoc team to approve a proposal and then a ten day waiting period.
56+
- FCPs can be used to approve any form of proposal.
57+
- <!-- FIXME(fmease): Somewhere I want to clarify that after an FCP, in r-l/r
58+
a separate r+ is still necessary by someone / a GH approval in other repos;
59+
also I want to mention somewhere that any team is allowed to merge an FCP'ed RFC -->
4360

4461
### When are FCPs/RFCs required?
4562

@@ -48,6 +65,9 @@ the GUI web interface, new command-line arguments, new attributes, etc. However,
4865
is considered too big/important, an RFC will need to be written and approved before the change
4966
will be accepted.
5067

68+
<!-- FIXME(fmease): ^^^ Tweak phrasing. The stabilization of an already-RFC'ed feature
69+
always(?) requires an FCP (and doesn't need another RFC :P) -->
70+
5171
When starting an FCP, make sure only the relevant subteam is labeled on the issue/PR, to avoid
5272
pinging people with changes they aren't interested in.
5373

@@ -56,11 +76,15 @@ If the approval required for the contribution requires an RFC, then the contribu
5676
should be closed or marked as blocked, with a request to create an RFC first. If approval of
5777
a PR is acceptable for the specific contribution (see below), then the approval process can begin.
5878

59-
### Can I work on code experimentally before a approval is gained?
79+
<!-- FIXME: Mention S-blocked -->
80+
81+
### Can I work on code experimentally before an approval is gained?
6082
Of course! You are free to work on PRs or write code. But those PRs should be marked as
6183
experimental and they should not land, nor should anyone be expected to review them (unless
6284
folks want to).
6385

86+
<!-- FIXME: Mention S-experimental -->
87+
6488
## What makes a good proposal?
6589
A good proposal will address the following:
6690

@@ -74,7 +98,6 @@ A good proposal will address the following:
7498
* **Alternatives, concerns, and key decisions:** Were there any alternatives considered? If so, why
7599
did you pick this design?
76100

77-
[rfcs]: https://github.com/rust-lang/rfcs
78101
[Haddock]: https://haskell-haddock.readthedocs.io/latest/
79102
[Wikipedia]: https://www.wikipedia.org/
80103
[Racket]: https://docs.racket-lang.org/

src/rustdoc/repositories.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Repositories maintained by the Rustdoc Team
2+
3+
<!-- FIXME(fmease): Polish this -->
4+
5+
While the [rust-lang/rust] repository has the majority of the code for the rustdoc tool, there are a handful of additional repositories with other crates/dependencies that the rustdoc team are responsible for:
6+
7+
To ensure that the team is able to respond to urgent issues that originate in any of these repositories, all members of the rustdoc team have access to create and merge pull requests. However, each repository typically has team members who are the most familiar with the repository and act as its primary maintainers.
8+
9+
- The [`rustc` development guide][rustc-dev-guide], the entrypoint documentation for those interested in hacking the compiler. <!-- FIXME(fmease): Tweak wording (comaintained) -->
10+
- [rustdoc-types] <!-- FIXME(fmease): Description -->
11+
- Forge <!-- FIXME(fmease): Description (comaintained) -->
12+
13+
You can see the full list [here](https://github.com/orgs/rust-lang/teams/rustdoc/repositories).
14+
15+
If you want to start (or are already) contributing to the Rust project and you have expertise or interest in any of these repositories, feel free to get in touch!
16+
17+
[rust-lang/rust]: https://github.com/rust-lang/rust
18+
[rustc-dev-guide]: https://github.com/rust-lang/rustc-dev-guide
19+
[rustdoc-types]: https://github.com/rust-lang/rustdoc-types/

0 commit comments

Comments
 (0)