|
1 | 1 | # unsafe-code-guidelines
|
2 | 2 |
|
3 |
| -Home for the Unsafe Code Guidelines effort. The goal of the Unsafe |
| 3 | +Home for the Unsafe Code Guidelines (UCG) effort. The goal of the Unsafe |
4 | 4 | Code Guidelines effort is to collaboratively produce a "reference
|
5 |
| -guide" to write unsafe code. This guide should ultimately be a formal |
6 |
| -specification of what kinds of things unsafe code can and cannot do. |
7 |
| -However, we are not there yet. |
8 |
| - |
9 |
| -## The reference |
10 |
| - |
11 |
| -The primary document in this repo is the "Unsafe Code Guidelines |
12 |
| -Reference". It is largely a work-in-progress right now. It serves as |
13 |
| -a kind of table of contents to the sorts of questions that are on our |
14 |
| -radar, as well as place to collect notes and summaries about those |
15 |
| -questions. |
16 |
| - |
17 |
| -Since we are not yet at the point where we can provide complete, |
18 |
| -definitive answers, the current goal for each section is to describe |
19 |
| -the "contours of the space". For example, we would try to specify what |
20 |
| -kinds of invariants **must** hold, as well as things that we expect to |
21 |
| -**never** be true. For other cases where there is disagreement, we |
22 |
| -will try to summarize the various options on the table -- you would do |
23 |
| -well in your unsafe code to steer clear of relying on those details. |
24 |
| - |
25 |
| -## How to participate |
26 |
| - |
27 |
| -The Unsafe Code Guidelines WG is in the process of being rebooted. We |
28 |
| -expect to be holding regular meetings focused on particular topics. |
29 |
| -Stay tuned for more announcements. -- @nikomatsakis |
30 |
| - |
31 |
| -We follow the [Rust code of conduct](https://www.rust-lang.org/en-US/conduct.html). |
32 |
| -Any concerns should be addressed to [the moderation team](https://www.rust-lang.org/team.html#Moderation-team) immediately. |
| 5 | +guide" for writing unsafe code that what kinds of things unsafe code |
| 6 | +can and cannot do. |
| 7 | + |
| 8 | +## Active area of discussion |
| 9 | + |
| 10 | +At any given time, the UCG working group is focused on one particular |
| 11 | +**area**. The current area is [**To Be Determined**][current_area] -- |
| 12 | +read that link for more background and information. You can find the |
| 13 | +current discussion threads here][threads]. |
| 14 | + |
| 15 | +We follow the [Rust code of |
| 16 | +conduct](https://www.rust-lang.org/en-US/conduct.html). Any concerns |
| 17 | +should be addressed to [the moderation |
| 18 | +team](https://www.rust-lang.org/team.html#Moderation-team) |
| 19 | +immediately. |
| 20 | + |
| 21 | +[current_area]: active_discussions/TEMPLATE.md |
| 22 | +[threads]: https://github.com/rust-rfcs/unsafe-code-guidelines/issues?q=is%3Aopen+is%3Aissue+label%3A%22active+discussion%22 |
| 23 | + |
| 24 | +## The "Unsafe Code Guidelines Reference" |
| 25 | + |
| 26 | +Results from past discussions are written up in the "Unsafe Code |
| 27 | +Guidelines Reference", which lives in this repository. It is largely a |
| 28 | +work-in-progress right now. Note that, unless we state otherwise, the |
| 29 | +information in there is mostly a "recommendation" and still subject to |
| 30 | +change -- once made official, the intention is to migrate this |
| 31 | +information into the Rust Reference proper. [Read the "Unsafe Code |
| 32 | +Guidelines Reference" here.][rr] |
| 33 | + |
| 34 | +[rr]: https://github.com/rust-rfcs/unsafe-code-guidelines/blob/master/reference/src/SUMMARY.md |
| 35 | + |
| 36 | +## Chat platform, discussion cadence |
| 37 | + |
| 38 | +Most of the discussion takes place here in GitHub issues. Many of us |
| 39 | +do hangout on [Zulip], however, in the `wg-unsafe-code-guidelines` |
| 40 | +stream. |
| 41 | + |
| 42 | +[Zulip]: https://rust-lang.zulipchat.com/#narrow/stream/136281-wg-unsafe-code-guidelines |
| 43 | + |
| 44 | +Every two weeks, we hold a brief, non-technical meeting to decide |
| 45 | +whether to keep the current area of discussion or to adopt a new |
| 46 | +one. Prior to this meeting, we update the "area of discussion" |
| 47 | +document with summaries of the threads. The meeting takes place on |
| 48 | +[Zulip] and all are welcome to attend. |
33 | 49 |
|
34 | 50 | ## See also
|
35 | 51 |
|
|
0 commit comments