@@ -44,12 +44,8 @@ prevents breaking dependencies by leveraging Cargo's lint capping.
44
44
[ rustc bug ] : https://github.com/rust-lang/rust/issues/15702
45
45
46
46
## stable
47
-
48
47
The ` #[stable(feature = "foo", "since = "1.420.69")] ` attribute explicitly
49
- marks an item as stabilized. To do this, follow the instructions in
50
- [ Stabilizing Features] ( ./stabilization_guide.md ) .
51
-
52
- Note that stable functions may use unstable things in their body.
48
+ marks an item as stabilized. Note that stable functions may use unstable things in their body.
53
49
54
50
## rustc_const_unstable
55
51
@@ -72,6 +68,22 @@ even on an `unstable` function, if that function is called from another
72
68
Furthermore this attribute is needed to mark an intrinsic as callable from
73
69
` rustc_const_stable ` functions.
74
70
71
+ ## Stabilizing a library feature
72
+
73
+ To stabilize a feature, follow these steps:
74
+
75
+ 1 . Change ` #[unstable] ` to ` #[stable(since = "version")] ` .
76
+ ` version ` should be the * currently nightly* , i.e. stable+2. You can see which version is
77
+ currently nightly [ on Forge] ( https://forge.rust-lang.org/#current-release-versions ) .
78
+ 2 . Remove ` #![feature] ` from any test or doc-test for this API. If the feature is used in the
79
+ compiler or tools, remove it from there as well.
80
+ 3 . If applicable, change ` #[rustc_const_unstable] ` to ` #[rustc_const_stable(since = "version")] ` .
81
+ 4 . Open a PR against ` rust-lang/rust `
82
+ - Add the appropriate labels: ` @rustbot modify labels: +T-libs +needs-fcp ` .
83
+ - Include a description of the feature and why it should be stabilized.
84
+ - Link to the tracking issue and say "Closes #XXXXX".
85
+
86
+ You can see an example of stabilizing a feature at [ #75132 ] ( https://github.com/rust-lang/rust/pull/75132 ) .
75
87
76
88
## allow_internal_unstable
77
89
0 commit comments