@@ -253,21 +253,66 @@ circumstance.
253
253
254
254
### Targets
255
255
256
+ See the [ Target Tier Policy] [ tier_policy ] for detailed requirements for different Target Tiers.
257
+
258
+ #### Promoting targets
259
+
260
+ Quick overview for target promotions:
261
+
262
+ | Current target tier | Goal target tier | Proposal | Required approvals |
263
+ | ------------------------------| ------------------| ----------| ---------------------|
264
+ | N/A (proposing a new target) | 3 | PR | r+ (compiler leads) |
265
+ | 3 | 2 | MCP | FCP |
266
+ | 2 | 1 | RFC | FCP |
267
+
256
268
- Proposing a new target
257
269
- ** Propose using:** PR
258
270
- ** Approve using:** r+ (compiler leads)
259
271
- You can ` r? compiler_leads ` on the PR to roll one of the compiler leads as the reviewer.
260
272
- Open a PR with the new target (w/ relevant documentation updates) and document adherence to the
261
- [ target tier policy] [ tier_policy ] in the description. New targets must start as tier 3
262
- - New targets should be assigned to the compiler team co-leads to check for any licensing
263
- concerns
264
- - Promoting a target
273
+ [ target tier policy] [ tier_policy ] in the description.
274
+ - ** New targets must start as Tier 3** .
275
+ - New targets should be assigned to the compiler team co-leads to check for any licensing concerns
276
+ and to ensure that any demands on the project infrastructure are considered and checked with
277
+ relevant teams.
278
+ - Promoting a target from Tier 3 to Tier 2
279
+ - ** Propose using:** MCP
280
+ - ** Approve using:** FCP
281
+ - Open a MCP with the target and document adherence to the [ Tier 2 target policy] [ tier_policy ] in
282
+ the description.
283
+ - Promoting a target from Tier 2 to Tier 1
284
+ - ** Propose using:** RFC
285
+ - ** Approve using:** FCP
286
+ - Open a RFC with the target and document adherence to the [ Tier 1 target policy] [ tier_policy ] in
287
+ the RFC text.
288
+
289
+ #### Demoting or removing targets
290
+
291
+ Quick overview for target demotions and removals:
292
+
293
+ | Current target tier | Goal target tier | Proposal | Required approvals |
294
+ | ---------------------| --------------------------------| ----------| ---------------------|
295
+ | 1 | 2 (or removal) | RFC | FCP |
296
+ | 2 | 3 (or removal) | MCP | FCP |
297
+ | 3 | N/A (removing a tier 3 target) | PR | r+ (compiler leads) |
298
+
299
+ - Demoting a target from Tier 1 to Tier 2, or removing a Tier 1 target
300
+ - ** Propose using:** RFC
301
+ - ** Approve using:** FCP
302
+ - Open a RFC with the target and rationale.
303
+ - Example: [ RFC: Demote i686-pc-windows-gnu to Tier 2
304
+ #3771 ] ( https://github.com/rust-lang/rfcs/pull/3771 )
305
+ - Demoting a target from Tier 2 to Tier 3, or removing a Tier 2 target
306
+ - ** Propose using:** MCP
307
+ - ** Approve using:** FCP
308
+ - Open a MCP with the target and rationale.
309
+ - Removing a Tier 3 target
265
310
- ** Propose using:** PR
266
311
- ** Approve using:** r+ (compiler leads)
267
- - Open a PR with the new target and document adherence to the [ target tier policy ] [ tier_policy ]
268
- in the description
269
- - New targets should be assigned to the compiler team co-leads to ensure that any demands on
270
- the project infrastructure are considered and checked with relevant teams
312
+ - Open a PR with the target and rationale for removing the Tier 3 target.
313
+
314
+ #### Other kind of target changes
315
+
271
316
- Renaming a target or making a breaking change to a tier 3 target
272
317
- ** Propose using:** PR
273
318
- ** Approve using:** r+
@@ -285,14 +330,6 @@ circumstance.
285
330
- Open an RFC describing the motivation for the change and start an FCP to approve, start an FCP.
286
331
- If approved, the change should be accompanied by a blog post announcing the change with a
287
332
notice period of at least one release before the change applies.
288
- - Demoting/removing a target
289
- - ** Propose using:** MCP
290
- - ** Approve using:** FCP
291
- - Write an MCP describing why the target should be demoted/removed and once discussion has
292
- concluded, an FCP can be started to approve the demotion/removal.
293
- - If approved and affecting a tier 2 or tier 1 target, the change should be accompanied by a
294
- blog post announcing the change with a notice period of at least one release before the change
295
- applies.
296
333
- Changing target baseline (e.g. minimum Darwin or Windows version bump)
297
334
- ** Propose using:** MCP
298
335
- ** Approve using:** FCP
@@ -376,3 +413,4 @@ See [*Adding ecosystem/integration test jobs/components to rust-lang/rust CI*](.
376
413
[ compiler_lint_eg ] : https://doc.rust-lang.org/rustc/lints/listing/deny-by-default.html#explicit-builtin-cfgs-in-flags
377
414
[ ecosystem_testing ] : https://rustc-dev-guide.rust-lang.org/tests/ecosystem.html
378
415
[ compiler-fcp ] : https://github.com/rust-lang/team/blob/master/teams/compiler-fcp.toml
416
+ [ tier-1-target-policy ] : https://doc.rust-lang.org/rustc/target-tier-policy.html#tier-1-target-policy
0 commit comments