Skip to content

Commit 329b1aa

Browse files
committed
Finish out-of-tree crates policy.
1 parent fd32ea2 commit 329b1aa

File tree

1 file changed

+35
-21
lines changed

1 file changed

+35
-21
lines changed

procedures/crates.md

Lines changed: 35 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -103,28 +103,41 @@ In summary, the process for establishing an out-of-tree crate is as follows:
103103

104104
1. Where appropriate, discuss and confirm the need within the working group for the out-of-tree
105105
crate.
106-
2. Create a PR modifying this document to include the crate in the list below. Use
106+
1. Create a PR modifying this document to include the crate in the list below. Use
107107
[`@rfcbot merge`](https://github.com/anp/rfcbot-rs#usage) to gain agreement from compiler
108108
team members.
109-
3. Create a new repository in the `rust-lang` organization (permissions should be available for all
110-
compiler team members).
111-
4. Add a README describing the intended purpose of the crate, which team and working group are
112-
responsible (link to their page in this repository) and the intended level of maintenance and
113-
stability.
114-
115-
> This crate is developed and maintained by the [Rust compiler team](..) for use within
116-
> `rustc`, in particular, it is the responsibility of the
117-
> [`.template`](../working-groups/.template) working group. This crate [will have regular
118-
> breaking changes and provides no stability guarantees|is intended to remain stable and have
119-
> limited breaking changes].
120-
5. Include the [LICENSE-APACHE][apache] and [LICENSE-MIT][mit] files from `rust-lang/rust`.
121-
6. Include or link the [CODE_OF_CONDUCT][coc] file from `rust-lang/rust`.
122-
7. Consult with the infrastructure team to set up `@bors` and `@rust-highfive` and a process for
109+
1. Create a new repository in the `rust-lang` organization.
110+
1. Navigate to `Settings > Collaborators & Teams` and add the `Core` and `Compiler` teams with
111+
admin privileges and `Assignees` with `read`.
112+
1. Add a README describing the intended purpose of the crate, which team and working group are
113+
responsible (link to their page in this repository) and the intended level of maintenance and
114+
stability.
115+
116+
> This crate is developed and maintained by the [Rust compiler team](..) for use within
117+
> `rustc`, in particular, it is the responsibility of the
118+
> [`.template`](../working-groups/.template) working group. This crate [will have regular
119+
> breaking changes and provides no stability guarantees|is intended to remain stable and have
120+
> limited breaking changes].
121+
1. Include the [LICENSE-APACHE][apache] and [LICENSE-MIT][mit] files from `rust-lang/rust`.
122+
1. Include or link the [CODE_OF_CONDUCT][coc] file from `rust-lang/rust`.
123+
1. Create a relevant `.gitignore` ([here's a sane default][gitignore]).
124+
1. Create `P-high`, `P-med`, `P-low`, `I-nominated` and `T-compiler` labels.
125+
1. Consult with the infrastructure team to set up `@bors` and `@rust-highfive` and a process for
123126
publishing under the "The Rust Project Developers" crates.io account.
124-
8. Perform any initial development required before integration with rustc.
125-
9. Publish initial version, following semantic versioning.
126-
10. Add the crate as a dependency to the appropriate in-tree crate and start using.
127-
127+
1. Create a `triagebot.toml` that mirrors [rust-lang/rust's `triagebot.yaml`][triagebot].
128+
1. Add a basic `.travis.yml`:
129+
130+
```yaml
131+
language: rust
132+
rust:
133+
- stable
134+
```
135+
1. Perform any initial development required before integration with rustc.
136+
1. Publish initial version, following semantic versioning.
137+
1. Add the crate as a dependency to the appropriate in-tree crate and start using.
138+
139+
[gitignore]: https://gitignore.io/api/vim,rust,emacs,clion,visualstudio,visualstudiocode
140+
[triagebot]: https://github.com/rust-lang/rust/blob/master/triagebot.toml
128141
[apache]: https://github.com/rust-lang/rust/blob/master/LICENSE-APACHE
129142
[coc]: https://github.com/rust-lang/rust/blob/master/CODE_OF_CONDUCT.md
130143
[mit]: https://github.com/rust-lang/rust/blob/master/LICENSE-MIT
@@ -143,5 +156,6 @@ The same policies apply to all compiler-team-maintained crates used in the compi
143156
## List of out-of-tree crates
144157
This section contains the list of existing out-of-tree, compiler team-maintained crates:
145158
146-
- [`rust-lang-nursery/chalk`](https://github.com/rust-lang-nursery/chalk/)
147-
- [`rust-lang-nursery/polonius`](https://github.com/rust-lang-nursery/polonius/)
159+
- [`rust-lang/chalk`](https://github.com/rust-lang/chalk/)
160+
- [`rust-lang/polonius`](https://github.com/rust-lang/polonius/)
161+
- [`rust-lang/measureme`](https://github.com/rust-lang/measureme/)

0 commit comments

Comments
 (0)