Skip to content

Commit 161b9b3

Browse files
committed
Link to bug-fix-procedure.md from the contribution procedure section
1 parent 92102e0 commit 161b9b3

File tree

3 files changed

+12
-26
lines changed

3 files changed

+12
-26
lines changed

src/SUMMARY.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
- [Using Git](./git.md)
4141
- [Mastering @rustbot](./rustbot.md)
4242
- [Walkthrough: a typical contribution](./walkthrough.md)
43-
- [Bug Fix Procedure](./bug-fix-procedure.md)
43+
- [Procedures for Breaking Changes](./bug-fix-procedure.md)
4444
- [Implementing new features](./implementing_new_features.md)
4545
- [Stability attributes](./stability.md)
4646
- [Stabilizing Features](./stabilization_guide.md)

src/bug-fix-procedure.md

+8-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Rustc Bug Fix Procedure
1+
# Procedures for Breaking Changes
22

33
<!-- toc -->
44

@@ -169,6 +169,13 @@ there were no errors before.
169169

170170
#### Crater and crates.io
171171

172+
[Crater] is a bot that will compile all crates.io crates and many
173+
public github repos with the compiler with your changes. A report will then be
174+
generated with crates that ceased to compile with or began to compile with your
175+
changes. Crater runs can take a few days to complete.
176+
177+
[Crater]: https://github.com/rust-lang/crater
178+
172179
We should always do a crater run to assess impact. It is polite and considerate
173180
to at least notify the authors of affected crates the breaking change. If we can
174181
submit PRs to fix the problem, so much the better.

src/contributing.md

+3-24
Original file line numberDiff line numberDiff line change
@@ -83,30 +83,9 @@ features.](./implementing_new_features.md)
8383

8484
### Breaking Changes
8585

86-
As mentioned above, Rust has strong backwards-compatibility guarantees. To this
87-
end, we are reluctant to make breaking changes. However, sometimes they are
88-
needed to correct compiler bugs (e.g. code that compiled but should not) or
89-
make progress on some features.
90-
91-
Depending on the scale of the breakage, there are a few different actions that
92-
can be taken. If the reviewer believes the breakage is very minimal (i.e. very
93-
unlikely to be actually encountered by users), they may just merge the change.
94-
More often, they will request a Final Comment Period (FCP), which calls for
95-
rough consensus among the members of a relevant team. The team members can
96-
discuss the issue and either accept, reject, or request changes on the PR.
97-
98-
If the scale of breakage is large, a deprecation warning may be needed. This is
99-
a warning that the compiler will display to users whose code will break in the
100-
future. After some time, an FCP can be used to move forward with the actual
101-
breakage.
102-
103-
If the scale of breakage is unknown, a team member or contributor may request a
104-
[crater] run. This is a bot that will compile all crates.io crates and many
105-
public github repos with the compiler with your changes. A report will then be
106-
generated with crates that ceased to compile with or began to compile with your
107-
changes. Crater runs can take a few days to complete.
108-
109-
[crater]: https://github.com/rust-lang/crater
86+
Breaking changes have a [dedicated section][breaking-changes] in the dev-guide.
87+
88+
[breaking-changes]: ./bug-fix-procedure.md
11089

11190
### Major Changes
11291

0 commit comments

Comments
 (0)