Skip to content

Commit cb5e0a0

Browse files
wesleywiserdavidtwco
authored andcommitted
Update compiler team membership page
1 parent 071f774 commit cb5e0a0

File tree

2 files changed

+65
-73
lines changed

2 files changed

+65
-73
lines changed

src/compiler/mcp.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ If you would like to make a [major change] to the compiler, the process is as fo
4040
* Alternatively, you can submit a [design meeting proposal] to have a longer, focused discussion.
4141
* To be accepted, a major change proposal needs three things:
4242
* One or more **reviewers**, who commit to reviewing the work. This can be the person making the proposal, if they intend to mentor others.
43-
* A **second**, a member of the compiler team or a contributor who approves of the idea, but is not the one originating the proposal.
43+
* A **second**, a member of the compiler team who approves of the idea, but is not the one originating the proposal.
4444
* A **final comment period** (a 10 day wait to give people time to comment).
4545
* The FCP can be skipped if the change is easily reversed and/or further objections are considered unlikely. This often happens if there has been a lot of prior discussion, for example.
4646
* Once the FCP completes, if there are no outstanding concerns, PRs can start to land.
@@ -99,7 +99,7 @@ Note that whether something is a major change proposal is not necessarily relate
9999

100100
The MCP "seconding" process is only meant to be used to get agreement
101101
on the technical architecture we plan to use. It is not sufficient to
102-
stabilize new features or make public-facing changes like adding a -C
102+
stabilize new features or make public-facing changes like adding a `-C`
103103
flag. For that, an `rfcbot fcp` is required (or perhaps an RFC, if the
104104
change is large enough).
105105

@@ -124,7 +124,7 @@ changes that affect cargo.
124124

125125
Please direct technical conversation to the Zulip stream.
126126

127-
The compiler-team repo issues are intended to be low traffic and used for procedural purposes. Note that to "second" a design or offer to review, you should be someone who is familiar with the code, typically but not necessarily a compiler team member or contributor.
127+
The compiler-team repo issues are intended to be low traffic and used for procedural purposes. Note that to "second" a design or offer to review, you should be someone who is familiar with the code, typically but not necessarily a compiler team member.
128128

129129
* Announcing that you "second" or approve of the design.
130130
* Announcing that you would be able to review or mentor the work.

src/compiler/membership.md

+62-70
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@
22

33
This team discusses membership in the compiler team. There are currently two levels of membership:
44

5-
* [contributors]: regular contributors with r+ rights, bot privileges, and access to [infrastructure]
6-
* [full members]: full members who vote on RFCs
5+
* members: regular contributors with r+ rights, bot privileges, and access to [infrastructure]
6+
* maintainers: members who have committed themselves to invest in the quality of the compiler and health of the compiler team
77

8-
[full members]: https://www.rust-lang.org/governance/teams/compiler
9-
[contributors]: https://www.rust-lang.org/governance/teams/compiler#compiler-contributors
108
[infrastructure]: ../infra/index.html
119

1210
## The path to membership
@@ -18,16 +16,16 @@ about the compiler yet and have no particular privileges. They are
1816
assigned to issues using the triagebot and (typically) work with a
1917
mentor or mentoring instructions.
2018

21-
## Compiler team contributors
19+
## Compiler team member
2220

23-
Once a working group participant has been contributing regularly for
21+
Once an individual has been contributing regularly for
2422
some time, they can be promoted to the level of a **compiler team
25-
contributor** (see the section on [how decisions are made][hdam]
23+
member** (see the section on [how decisions are made][hdam]
2624
below). This title indicates that they are someone who contributes
2725
regularly.
2826

2927
It is hard to define the precise conditions when such a promotion is
30-
appropriate. Being promoted to contributor is not just a function of
28+
appropriate. Being promoted to member is not just a function of
3129
checking various boxes. But the general sense is that someone is ready
3230
when they have demonstrated three things:
3331

@@ -38,16 +36,16 @@ when they have demonstrated three things:
3836
independently when taking on tasks, at least within the scope of the
3937
working group. They should plausibly be able to mentor others on simple
4038
PRs.
41-
- "Cordiality" -- contributors will be members of the organization and
39+
- "Cordiality" -- compiler team members will be part of the Rust organization and
4240
are held to a higher standard with respect to the [Code of
4341
Conduct][CoC]. They should not only obey the letter of the CoC but
4442
also its spirit.
4543

4644
[CoC]: https://www.rust-lang.org/policies/code-of-conduct
4745

48-
Being promoted to contributor implies a number of privileges:
46+
Being promoted to member implies a number of privileges:
4947

50-
- Contributors have `r+` (approve a pull request) privileges and can do reviews
48+
- Members have `r+` (approve a pull request) privileges and can do reviews
5149
(they are expected to use those powers appropriately, as discussed
5250
previously). They also have access to control perf/rustc-timer and other
5351
similar bots. See the documentation for `bors` and `r+`
@@ -57,29 +55,32 @@ Being promoted to contributor implies a number of privileges:
5755
unless you have done a check for malicious code first and don't `r+` unless
5856
you are reasonably confident that you can effectively review the code in
5957
question.
60-
- Contributors are members of the organization so they can modify
58+
- Compiler team members are members of the Rust organization so they can modify
6159
labels and be assigned to issues.
62-
- Contributors are a member of the rust-lang/compiler team on GitHub,
60+
- Members become a part of the rust-lang/compiler team on GitHub,
6361
so that they receive pings when people are looking to address the
6462
team as a whole.
65-
- Contributors are listed on the rust-lang.org web page.
63+
- Members are [listed] on the rust-lang.org web page.
6664

6765
It also implies some obligations (in some cases, optional obligations):
6866

69-
- Contributors will be asked if they wish to be added to the reviewer rotation.
70-
- Contributors are held to a higher standard than ordinary folk when
67+
- Members will be asked if they wish to be added to the reviewer rotation.
68+
- Members may take part in various other [maintainer activities] to help the team.
69+
- Members are held to a higher standard than ordinary folk when
7170
it comes to the [Code of Conduct][CoC].
7271

73-
## What it means to be a compiler contributor
72+
[listed]: https://www.rust-lang.org/governance/teams/compiler
7473

75-
Once you're a member of the compiler team contributors, a number of events will
74+
## What it means to be a compiler member
75+
76+
Once you're a member of the compiler team, a number of events will
7677
happen:
7778
- You will gain access to a private Zulip stream, where internal discussions
7879
happen or ideas in very draft state are shared. Come and say hello to your new
7980
team members!
8081
- You will be subscribed and gain write access to a number of Github
8182
repositories. Check [this GitHub
82-
page](https://github.com/orgs/rust-lang/teams/compiler-contributors/repositories)
83+
page](https://github.com/orgs/rust-lang/teams/compiler/repositories)
8384
to see which repositories you have now access to. Some of them are pretty
8485
quiet or obsolete, so don't worry about all of them.
8586

@@ -93,72 +94,49 @@ check how subscriptions to mailing lists work. It's a very low-volume mailing
9394
list (maybe a few emails per year), it's a way to communicate things to all
9495
contributors. We will not send you spam from this address.
9596

96-
## Full members
97+
## Maintainers
9798

98-
As a contributor gains in experience, they may be asked to become a
99-
**compiler team member**. This implies that they are not only a
99+
After being a compiler team member for a year, members can request or be asked to become a
100+
**compiler team maintainer**. This implies that they are not only a
100101
regular contributor, but are actively helping to shape the direction
101102
of the team or some part of the compiler (or multiple parts).
102103

103-
- Compiler team members are the ones who select when people should be
104-
promoted to compiler team contributor or to the level of member.
105-
- Compiler team members are consulted on FCP decisions (which, in the
106-
compiler team, are relatively rare).
107-
- There will be a distinct GitHub team containing only the compiler
108-
team members, but the name of this team is "to be determined".
109-
- Working groups must always include at least one compiler team member
110-
as a lead (though groups may have other leads who are not yet full
111-
members).
104+
- Compiler team maintainers are expected to participate in at least one [maintenance activities].
105+
- Compiler team maintainers are identified with the "Maintainer" role on the rust-lang website.
112106

113107
## How promotion decisions are made
114108
[hdam]: #how-promotion-decisions-are-made
115109

116-
Promotion decisions (from participant to contributor, and from
117-
contributor to member) are made by having an active team member send
118-
an e-mail to the alias `[email protected]`. This e-mail
119-
should include:
120-
121-
- the name of the person to be promoted
122-
- a draft of the public announcement that will be made
110+
After an individual has been contributing to the compiler for a while,
111+
they may be nominated by an existing compiler team member or they may
112+
ask the compiler team leads if their contribution history is sufficient
113+
for team membership.
123114

124-
Compiler-team members should send e-mail giving their explicit assent,
125-
or with objections. Objections should always be resolved before the
126-
decision is made final. E-mails can also include edits or additions for the
127-
public announcement.
115+
The compiler team leads will check with the rest of the compiler team
116+
to see if there are concerns with extending a membership invitation to the
117+
individual and after a week (barring no objections), an invitation will be extended.
128118

129-
To make the final decision:
130-
131-
- All objections must be resolved.
132-
- There should be a "sufficient number" (see below) of explicit
133-
e-mails in favor of addition (including the team lead).
134-
- The nominator (or some member of the team) should reach out to the person
135-
in question and check that they wish to join.
136-
137-
We do not require all team members to send e-mail, as historically
138-
these decisions are not particularly controversial. For promotion to a
139-
contributor, the only requirement is that the compiler team lead
140-
agrees. For promotion to a full member, more explicit mails in favor
141-
are recommended.
119+
If the invitation is accepted by the individual, the compiler team leads
120+
will update the [team] repository to reflect their new role.
142121

143-
Once we have decided to promote, then the announcement can be posted
144-
to internals, and the person added to the team repository.
122+
[team]: https://github.com/rust-lang/team
145123

146124
## Not just code
147125

148-
It is worth emphasizing that becoming a contributor or member of the
126+
It is worth emphasizing that becoming a member of the
149127
compiler team does not necessarily imply writing PRs. There are a wide
150128
variety of tasks that need to be done to support the compiler and
151129
which should make one eligible for membership. Such tasks would
152130
include organizing meetings, participating in meetings, bisecting and
153131
triaging issues, writing documentation, working on the rustc-dev-guide.
154-
The most important criteria for elevation to contributor,
132+
The most important criteria for elevation to compiler team member,
155133
in particular, is **regular and consistent** participation. The most
156-
important criteria for elevation to member is **actively shaping the
134+
important criteria for elevation to maintainer is **actively shaping the
157135
direction of the team or compiler**.
158136

159137
## Alumni status
160138

161-
If at any time a current contributor or member wishes to take a break
139+
If at any time a compiler team member or maintainer wishes to take a break
162140
from participating, they can opt to put themselves into alumni status.
163141
When in alumni status, they will be removed from Github aliases and
164142
the like, so that they need not be bothered with pings and messages.
@@ -174,20 +152,34 @@ they previously attained and they may publicly indicate that, though
174152
they should indicate the time period for which they were active as
175153
well.
176154

177-
### Changing back to contributor
155+
### Entering or leaving the Maintainer role
178156

179-
If desired, a team member may also ask to move back to contributor
180-
status. This would indicate a continued desire to be involved in
181-
rustc, but that they do not wish to be involved in some of the
182-
weightier decisions, such as who to add to the team. Like full alumni,
183-
people who were once full team members but who went back to
184-
contributor status may ask to return to full team member status. This
185-
request would ordinarily be granted automatically barring
157+
After a compiler team member has committed to actively maintaining the
158+
compiler by becoming a Maintainer, they may wish to take a break from
159+
these ongoing responsibilities either temporarily or indefinitely.
160+
In either case, the Maintainer can let the compiler team leads know or
161+
open a PR themselves to the [team] repo, removing themselves from the
162+
Maintainer marker team and placing themselves in the alumni list.
163+
164+
In the future, if the former Maintainer would like to resume maintenance
165+
duties, they can request re-instatement from the compiler team leads.
166+
This request would ordinarily be granted automatically barring
186167
extraordinary circumstances.
187168

169+
### Compiler team alumni
170+
171+
Likewise, if any member of the compiler team would like to take an
172+
extended break from contribution and interaction with the team,
173+
they can let the compiler team leads know or open a PR themselves
174+
to the [team] repo, moving themselves to alumni status.
175+
176+
If an alumni member would like to resume compiler team membership
177+
in the future, they can request re-instatement from the compiler team
178+
leads and this will normally be granted.
179+
188180
### Automatic alumni status after 6 months of inactivity
189181

190-
If a contributor or a member has been inactive in the compiler for 6
182+
If a member or maintainer has been inactive in the compiler for 6
191183
months, then we will ask them if they would like to go to alumni
192184
status. If they respond yes or do not respond, they can be placed on
193185
alumni status. If they would prefer to remain active, that is also

0 commit comments

Comments
 (0)