|
1 | | -Thank you for your interest in contributing to the Rust Reference! |
| 1 | +# Contributing to The Rust Reference |
2 | 2 |
|
3 | | -There are a few ways of helping with the reference: critiquing the reference, |
4 | | -editing the reference, fixing incorrect information, adding examples and |
5 | | -glossary entries, and documenting new or otherwise undocumented features in |
6 | | -Rust. |
7 | | - |
8 | | -For a while, the Reference was basically ignored, and Rust continued gaining new |
9 | | -features or changing old ones. It was also basically the introduction document |
10 | | -before the first edition of the Rust book, and constantly in flux from the huge |
11 | | -churn of the language design before v1.0.0. So there's a lot that's wrong, too |
12 | | -teachy for people who should have basic understanding of Rust, or is too shallow |
13 | | -for the Reference. As such, we have the warning saying there's work that needs |
14 | | -to be done. Eventually, we plan to make sure everything is well documented |
15 | | -enough that we can remove the warning. |
16 | | - |
17 | | -It is encouraged for you to read the [introduction] to familiarize yourself with |
18 | | -the kind of content the reference is expected to contain and the conventions it |
19 | | -uses. Also, the [Authoring Guide] provides more detailed guidelines for |
20 | | -formatting and content. |
21 | | - |
22 | | -## Critiquing the Reference |
23 | | - |
24 | | -This is the easiest way to contribute. Basically, as you read the reference, if |
25 | | -you find something confusing, incorrect, or missing, then you can file an issue |
26 | | -against the reference explaining your concerns. |
27 | | - |
28 | | -## Editing the Reference |
29 | | - |
30 | | -Typos and incorrect links get through from time to time. Should you find them, |
31 | | -we welcome PRs to fix them. Additionally, larger editing jobs that help remove |
32 | | -the number of parentheticals, remove comma splices, italicize term definitions |
33 | | -and other similar tasks are helpful. |
34 | | - |
35 | | -## Adding examples and glossary entries |
36 | | - |
37 | | -Examples are great. Many people will only read examples and ignore the prose. |
38 | | -Ideally, every facet of every feature will have an example. |
39 | | - |
40 | | -Likewise, the reference has a glossary. It doesn't need to explain every facet |
41 | | -of every feature nor contain every definition, but it does need to be expanded |
42 | | -upon. Ideally entries in the glossary link to the associated documentation. |
43 | | - |
44 | | -## Adding documentation |
45 | | - |
46 | | -There are a lot of features that are not documented at all or are documented |
47 | | -poorly. This is the hardest, but definitely most valuable. Pick an unassigned |
48 | | -issue from the [issue tracker], and write about it. |
49 | | - |
50 | | -While writing, you may find it handy to have a [playpen] open to test out what |
51 | | -you are documenting. |
52 | | - |
53 | | -Feel free to take information from the standard library and Rustonomicon as |
54 | | -appropriate. |
55 | | - |
56 | | -Note that we don't write documentation for purely library features such as |
57 | | -threads and IO and we don't write about Rust in the future. Documentation is |
58 | | -written as if the current stable release of Rust is the last release. The |
59 | | -`master` branch of the reference corresponds to what is **stable** on the |
60 | | -`master` branch ("nightly") of [rust-lang/rust]. If you want to write about |
61 | | -Rust in the future, you want [the Unstable book][unstable]. |
62 | | - |
63 | | -## Stabilization |
64 | | - |
65 | | -When something that alters the language is stabilized, an issue should be |
66 | | -opened on the reference [issue tracker] to track the documentation process. |
67 | | -This should include links to any relevant information, such as the |
68 | | -stabilization PR, the RFC, the tracking issue, and anything else that would be |
69 | | -helpful for writing the documentation. |
70 | | - |
71 | | -[Authoring Guide]: docs/authoring.md |
72 | | -[introduction]: src/introduction.md |
73 | | -[issue tracker]: https://github.com/rust-lang/reference/issues |
74 | | -[playpen]: https://play.rust-lang.org/ |
75 | | -[rust-lang/rust]: https://github.com/rust-lang/rust/ |
76 | | -[unstable]: https://doc.rust-lang.org/nightly/unstable-book/ |
| 3 | +See the [Reference Developer Guide](https://rust-lang.github.io/reference/dev-guide/) for information on contributing to the Reference. |
0 commit comments