summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPietro Albini <pietro@pietroalbini.org>2018-11-30 12:31:39 +0100
committerPietro Albini <pietro@pietroalbini.org>2018-11-30 12:31:39 +0100
commit895daaf5e1759973c641f448e076d47d44d156d5 (patch)
tree575a16c09a10676737fa8460fc4c4b2784c2732f
parent584b4616ebecd82fb8b3fbb17730f21bbf96bf3b (diff)
import data from the new website
-rw-r--r--people/aatch.toml1
-rw-r--r--people/adityac8.toml3
-rw-r--r--people/avadacatavra.toml3
-rw-r--r--people/bkoropoff.toml1
-rw-r--r--people/emilio.toml3
-rw-r--r--people/frewsxcv.toml4
-rw-r--r--people/jturner.toml3
-rw-r--r--people/marioidival.toml2
-rw-r--r--people/nox.toml3
-rw-r--r--people/parrywinkle.toml3
-rw-r--r--people/projektir.toml3
-rw-r--r--people/qmx.toml3
-rw-r--r--people/topecongiro.toml3
-rw-r--r--people/tromey.toml3
-rw-r--r--src/schema.rs5
-rw-r--r--src/validate.rs13
-rw-r--r--teams/all.toml1
-rw-r--r--teams/alumni.toml16
-rw-r--r--teams/cargo.toml2
-rw-r--r--teams/community-content.toml17
-rw-r--r--teams/community-events.toml20
-rw-r--r--teams/community-rustbridge.toml19
-rw-r--r--teams/community-survey.toml13
-rw-r--r--teams/community.toml14
-rw-r--r--teams/core.toml1
-rw-r--r--teams/crates-io.toml4
-rw-r--r--teams/devtools.toml3
-rw-r--r--teams/docs-peers.toml15
-rw-r--r--teams/docs.toml5
-rw-r--r--teams/infra.toml14
-rw-r--r--teams/lang.toml10
-rw-r--r--teams/libs.toml1
-rw-r--r--teams/mods.toml3
-rw-r--r--teams/reference.toml13
-rw-r--r--teams/release.toml2
-rw-r--r--teams/rustdoc.toml2
-rw-r--r--teams/wg-bindgen.toml16
-rw-r--r--teams/wg-clippy.toml17
-rw-r--r--teams/wg-codegen.toml10
-rw-r--r--teams/wg-compiler-nll.toml10
-rw-r--r--teams/wg-debugging.toml16
-rw-r--r--teams/wg-grammar.toml10
-rw-r--r--teams/wg-leads.toml1
-rw-r--r--teams/wg-rustfmt.toml15
-rw-r--r--teams/wg-traits.toml10
-rw-r--r--teams/wg-unsafe-code-guidelines.toml10
46 files changed, 281 insertions, 65 deletions
diff --git a/people/aatch.toml b/people/aatch.toml
index e96bb71..c47b455 100644
--- a/people/aatch.toml
+++ b/people/aatch.toml
@@ -1,2 +1,3 @@
name = "James Miller"
github = "aatch"
+email = "james@aatch.net"
diff --git a/people/adityac8.toml b/people/adityac8.toml
new file mode 100644
index 0000000..b6ee850
--- /dev/null
+++ b/people/adityac8.toml
@@ -0,0 +1,3 @@
+name = "Aditya Arora"
+github = "adityac8"
+email = "adityadvlp@gmail.com"
diff --git a/people/avadacatavra.toml b/people/avadacatavra.toml
new file mode 100644
index 0000000..c8fc9e9
--- /dev/null
+++ b/people/avadacatavra.toml
@@ -0,0 +1,3 @@
+name = "Diane Hosfelt"
+github = "avadacatavra"
+email = "dianehosfelt@gmail.com"
diff --git a/people/bkoropoff.toml b/people/bkoropoff.toml
index 1f0f479..a99307d 100644
--- a/people/bkoropoff.toml
+++ b/people/bkoropoff.toml
@@ -1,2 +1,3 @@
name = "Brian Koropoff"
github = "bkoropoff"
+email = "bkoropoff@gmail.com"
diff --git a/people/emilio.toml b/people/emilio.toml
new file mode 100644
index 0000000..7f2a8fd
--- /dev/null
+++ b/people/emilio.toml
@@ -0,0 +1,3 @@
+name = "Emilio Cobos Álvarez"
+github = "emilio"
+email = "emilio@crisal.io"
diff --git a/people/frewsxcv.toml b/people/frewsxcv.toml
deleted file mode 100644
index 575a62a..0000000
--- a/people/frewsxcv.toml
+++ /dev/null
@@ -1,4 +0,0 @@
-name = "Corey Farwell"
-github = "frewsxcv"
-irc = "frewsxcv"
-email = "coreyf@rwell.org"
diff --git a/people/jturner.toml b/people/jturner.toml
new file mode 100644
index 0000000..29fc137
--- /dev/null
+++ b/people/jturner.toml
@@ -0,0 +1,3 @@
+name = "James Turner"
+github = "jturner"
+email = "james@calminferno.net"
diff --git a/people/marioidival.toml b/people/marioidival.toml
deleted file mode 100644
index 3aaaf3c..0000000
--- a/people/marioidival.toml
+++ /dev/null
@@ -1,2 +0,0 @@
-name = "Mario Idival"
-github = "marioidival"
diff --git a/people/nox.toml b/people/nox.toml
new file mode 100644
index 0000000..28e6f8e
--- /dev/null
+++ b/people/nox.toml
@@ -0,0 +1,3 @@
+name = "Anthony Ramine"
+github = "nox"
+email = "n.oxyde@gmail.com"
diff --git a/people/parrywinkle.toml b/people/parrywinkle.toml
deleted file mode 100644
index e4f4393..0000000
--- a/people/parrywinkle.toml
+++ /dev/null
@@ -1,3 +0,0 @@
-name = "Parry Wilcox"
-github = "parrywinkle"
-email = "parry.wilcox@gmail.com"
diff --git a/people/projektir.toml b/people/projektir.toml
deleted file mode 100644
index 5b50935..0000000
--- a/people/projektir.toml
+++ /dev/null
@@ -1,3 +0,0 @@
-name = "projektir"
-github = "projektir"
-email = "oprojektir@gmail.com"
diff --git a/people/qmx.toml b/people/qmx.toml
new file mode 100644
index 0000000..04f8a59
--- /dev/null
+++ b/people/qmx.toml
@@ -0,0 +1,3 @@
+name = "Douglas Campos"
+github = "qmx"
+email = "qmx@qmx.me"
diff --git a/people/topecongiro.toml b/people/topecongiro.toml
new file mode 100644
index 0000000..6664788
--- /dev/null
+++ b/people/topecongiro.toml
@@ -0,0 +1,3 @@
+name = "Seiichi Uchida"
+github = "topecongiro"
+email = "seuchida@gmail.com"
diff --git a/people/tromey.toml b/people/tromey.toml
new file mode 100644
index 0000000..2d80a2b
--- /dev/null
+++ b/people/tromey.toml
@@ -0,0 +1,3 @@
+name = "Tom Tromey"
+github = "tromey"
+email = "tom@tromey.com"
diff --git a/src/schema.rs b/src/schema.rs
index 87663cd..de30b08 100644
--- a/src/schema.rs
+++ b/src/schema.rs
@@ -162,11 +162,14 @@ struct TeamPeople {
}
#[derive(serde_derive::Deserialize, Debug)]
-#[serde(deny_unknown_fields)]
+#[serde(rename_all = "kebab-case", deny_unknown_fields)]
pub(crate) struct WebsiteData {
name: String,
description: String,
email: Option<String>,
+ repo: Option<String>,
+ discord_invite: Option<String>,
+ discord_name: Option<String>,
}
#[derive(serde_derive::Deserialize, Debug)]
diff --git a/src/validate.rs b/src/validate.rs
index 6c6830d..3c2d6c7 100644
--- a/src/validate.rs
+++ b/src/validate.rs
@@ -6,6 +6,7 @@ use std::collections::HashSet;
pub(crate) fn validate(data: &Data) -> Result<(), Error> {
let mut errors = Vec::new();
+ validate_wg_names(data, &mut errors);
validate_team_leads(data, &mut errors);
validate_team_members(data, &mut errors);
validate_inactive_members(data, &mut errors);
@@ -30,6 +31,18 @@ pub(crate) fn validate(data: &Data) -> Result<(), Error> {
Ok(())
}
+/// Ensure working group names start with `wg-`
+fn validate_wg_names(data: &Data, errors: &mut Vec<String>) {
+ wrapper(data.teams(), errors, |team, _| {
+ match (team.is_wg() == team.name().starts_with("wg-"), team.is_wg()) {
+ (false, true) => bail!("working group `{}`'s name doesn't start with wg-", team.name()),
+ (false, false) => bail!("team `{}` seems like a working group but has `wg = false`", team.name()),
+ (true, _) => {}
+ }
+ Ok(())
+ });
+}
+
/// Ensure team leaders are part of the teams they lead
fn validate_team_leads(data: &Data, errors: &mut Vec<String>) {
wrapper(data.teams(), errors, |team, errors| {
diff --git a/teams/all.toml b/teams/all.toml
index d2379bb..322b410 100644
--- a/teams/all.toml
+++ b/teams/all.toml
@@ -8,7 +8,6 @@ children = [
"crates-io",
"devtools",
"docs",
- "docs-peers",
"ides",
"infra",
"lang",
diff --git a/teams/alumni.toml b/teams/alumni.toml
index 628fcc1..aa53c22 100644
--- a/teams/alumni.toml
+++ b/teams/alumni.toml
@@ -3,18 +3,20 @@ name = "alumni"
[people]
leads = []
members = [
- "aatch",
"Gankro",
- "pcwalton",
- "huonw",
- "peschkaj",
- "dotdash",
+ "aatch",
+ "arielb1",
"bkoropoff",
+ "booyaa",
"brson",
+ "bstrie",
+ "dotdash",
+ "edunham",
"erickt",
- "arielb1",
+ "huonw",
"jseyfried",
- "edunham",
+ "pcwalton",
+ "peschkaj",
"tomprince",
]
diff --git a/teams/cargo.toml b/teams/cargo.toml
index 1839bd2..c852b6d 100644
--- a/teams/cargo.toml
+++ b/teams/cargo.toml
@@ -16,6 +16,8 @@ members = [
[website]
name = "Cargo team"
description = "design and implementation of Cargo"
+discord-invite = "https://discord.gg/aEbd4eT"
+discord-name = "#cargo"
[[lists]]
address = "cargo@rust-lang.org"
diff --git a/teams/community-content.toml b/teams/community-content.toml
new file mode 100644
index 0000000..215ab46
--- /dev/null
+++ b/teams/community-content.toml
@@ -0,0 +1,17 @@
+name = "community-content"
+
+[people]
+leads = []
+members = [
+ "adityac8",
+ "nasa42",
+ "skade",
+ "wezm",
+]
+
+[website]
+name = "Content team"
+description = "Helping support community content collection and development."
+repo = "https://github.com/rust-community/content-team"
+discord-invite = "https://discord.gg/b7a22kw"
+discord-name = "#content"
diff --git a/teams/community-events.toml b/teams/community-events.toml
new file mode 100644
index 0000000..5a5afe5
--- /dev/null
+++ b/teams/community-events.toml
@@ -0,0 +1,20 @@
+name = "community-events"
+
+[people]
+leads = ["skade"]
+members = [
+ "skade",
+ "mattgathu",
+ "celaus",
+ "flaki",
+ "badboy",
+ "manishearth",
+ "mgattozzi",
+]
+
+[website]
+name = "Events team"
+description = "Supporting community events with knowledge and resources."
+repo = "https://github.com/rust-community/events-team"
+discord-invite = "https://discord.gg/cj5HMXA"
+discord-name = "#events"
diff --git a/teams/community-rustbridge.toml b/teams/community-rustbridge.toml
new file mode 100644
index 0000000..2612119
--- /dev/null
+++ b/teams/community-rustbridge.toml
@@ -0,0 +1,19 @@
+name = "community-rustbridge"
+
+[people]
+leads = ["oe"]
+members = [
+ "oe",
+ "ashleygwilliams",
+ "technetos",
+ "arshiamufti",
+ "spacekookie",
+ "sebasmagri",
+]
+
+[website]
+name = "RustBridge team"
+description = "An inclusive educational initiative focused on bringing underrepresented groups into Rust."
+repo = "https://github.com/rustbridge/team"
+discord-invite = "https://discord.gg/cj5HMXA"
+discord-name = "#rustbridge"
diff --git a/teams/community-survey.toml b/teams/community-survey.toml
new file mode 100644
index 0000000..f0fd2fe
--- /dev/null
+++ b/teams/community-survey.toml
@@ -0,0 +1,13 @@
+name = "community-survey"
+
+[people]
+leads = ["jturner"]
+members = [
+ "jturner",
+ "manishearth",
+ "mgattozzi",
+]
+
+[website]
+name = "Survey team"
+description = "Running, analysing, and presenting the community survey."
diff --git a/teams/community.toml b/teams/community.toml
index c20872a..92c95ae 100644
--- a/teams/community.toml
+++ b/teams/community.toml
@@ -7,25 +7,19 @@ members = [
"manishearth",
"sebasmagri",
"badboy",
- "booyaa",
"ashleygwilliams",
"oe",
"technetos",
- "arshiamufti",
- "parrywinkle",
- "spacekookie",
- "flaki",
- "mattgathu",
- "celaus",
- "wezm",
- "bstrie",
"jonathandturner",
]
[website]
name = "Community team"
-description = "coordinating events, outreach, commercial users, teaching materials, and exposure"
+description = "coordination and supporting events, content creation, the RustBridge program, and the survey"
email = "community@rust-lang.org"
+repo = "https://github.com/rust-community/team"
+discord-invite = "https://discord.gg/KskHZGT"
+discord-name = "#general"
[[lists]]
address = "community@rust-lang.org"
diff --git a/teams/core.toml b/teams/core.toml
index f422493..9ad0d8b 100644
--- a/teams/core.toml
+++ b/teams/core.toml
@@ -18,6 +18,7 @@ members = [
[website]
name = "Core team"
description = "overall direction of the project, subteam leadership, cross-cutting concerns"
+email = "core@rust-lang.org"
[[lists]]
address = "core@rust-lang.org"
diff --git a/teams/crates-io.toml b/teams/crates-io.toml
index 7bbdc21..4ca56c7 100644
--- a/teams/crates-io.toml
+++ b/teams/crates-io.toml
@@ -11,13 +11,13 @@ members = [
"joshtriplett",
"ishitatsuyuki",
"steveklabnik",
- "wycats",
]
[website]
name = "Crates.io team"
description = "management of operations, development, and policies for crates.io"
-email = "help@crates.io"
+discord-invite = "https://discord.gg/Rbq8W5K"
+discord-name = "#crates-io"
[[lists]]
address = "help@crates.io"
diff --git a/teams/devtools.toml b/teams/devtools.toml
index f60edff..ab5806d 100644
--- a/teams/devtools.toml
+++ b/teams/devtools.toml
@@ -15,6 +15,9 @@ members = [
[website]
name = "Dev tools team"
description = "Rust developer tools"
+repo = "https://github.com/rust-dev-tools/dev-tools-team"
+discord-invite = "https://discord.gg/sG23nSS"
+discord-name = "#dev-tools"
[[lists]]
address = "dev-tools@rust-lang.org"
diff --git a/teams/docs-peers.toml b/teams/docs-peers.toml
deleted file mode 100644
index 42ce024..0000000
--- a/teams/docs-peers.toml
+++ /dev/null
@@ -1,15 +0,0 @@
-name = "docs-peers"
-
-[people]
-leads = []
-members = [
- "Havvy",
- "matthewjasper",
- "alercah",
- "marioidival",
- "projektir",
-]
-
-[website]
-name = "Documentation peers"
-description = "oversight of specific documentation, and coordination with the docs team"
diff --git a/teams/docs.toml b/teams/docs.toml
index 9af72ce..e095f82 100644
--- a/teams/docs.toml
+++ b/teams/docs.toml
@@ -5,7 +5,6 @@ leads = ["steveklabnik"]
members = [
"steveklabnik",
"GuillaumeGomez",
- "frewsxcv",
"QuietMisdreavus",
]
@@ -16,9 +15,9 @@ description = "ensuring Rust has fantastic documentation"
[[lists]]
address = "docs@rust-lang.org"
access-level = "everyone"
-extra-teams = ["docs-peers"]
+extra-teams = ["reference"]
[[lists]]
address = "doc-team@rust-lang.org"
access-level = "everyone"
-extra-teams = ["docs-peers"]
+extra-teams = ["reference"]
diff --git a/teams/infra.toml b/teams/infra.toml
index 9eaae0e..57e67ba 100644
--- a/teams/infra.toml
+++ b/teams/infra.toml
@@ -3,22 +3,24 @@ name = "infra"
[people]
leads = ["aidanhs"]
members = [
- "alexcrichton",
- "shepmaster",
- "aidanhs",
- "TimNN",
"Mark-Simulacrum",
+ "TimNN",
+ "aidanhs",
+ "alexcrichton",
+ "ashleygwilliams",
"erickt",
"kennytm",
- "ashleygwilliams",
- "sgrif",
"pietroalbini",
+ "sgrif",
+ "shepmaster",
]
[website]
name = "Infrastructure team"
description = "infrastructure supporting the Rust project itself: CI, releases, bots, metrics"
email = "infra@rust-lang.org"
+discord-invite = "https://discord.gg/AxXmxzN"
+discord-name = "#infra"
[[lists]]
address = "infra@rust-lang.org"
diff --git a/teams/lang.toml b/teams/lang.toml
index 43d6fee..9bc08e6 100644
--- a/teams/lang.toml
+++ b/teams/lang.toml
@@ -3,16 +3,16 @@ name = "lang"
[people]
leads = ["nikomatsakis"]
members = [
+ "Centril",
+ "aturon",
"cramertj",
- "withoutboats",
"eddyb",
+ "joshtriplett",
+ "nikomatsakis",
"nrc",
"pnkfelix",
- "nikomatsakis",
- "aturon",
- "joshtriplett",
"scottmcm",
- "Centril",
+ "withoutboats",
]
[website]
diff --git a/teams/libs.toml b/teams/libs.toml
index 6265e0a..af39ed3 100644
--- a/teams/libs.toml
+++ b/teams/libs.toml
@@ -21,7 +21,6 @@ description = "the Rust standard library, rust-lang crates, conventions, and eco
[[lists]]
address = "libs-private@rust-lang.org"
access-level = "everyone"
-# TODO: without KodrAus and withoutboats
[[lists]]
address = "libs@rust-lang.org"
diff --git a/teams/mods.toml b/teams/mods.toml
index 07e8ded..f006316 100644
--- a/teams/mods.toml
+++ b/teams/mods.toml
@@ -6,7 +6,6 @@ members = [
"mbrubeck",
"BurntSushi",
"manishearth",
- "pnkfelix",
"niconii",
"llogiq",
"matthieu-m",
@@ -14,7 +13,7 @@ members = [
[website]
name = "Moderation team"
-description = "helping uphold the <a href='https://www.rust-lang.org/conduct.html'>code of conduct</a>"
+description = "helping uphold the code of conduct"
email = "rust-mods@rust-lang.org"
[[lists]]
diff --git a/teams/reference.toml b/teams/reference.toml
new file mode 100644
index 0000000..2731a7b
--- /dev/null
+++ b/teams/reference.toml
@@ -0,0 +1,13 @@
+name = "reference"
+
+[people]
+leads = ["Havvy"]
+members = [
+ "Havvy",
+ "matthewjasper",
+ "alercah",
+]
+
+[website]
+name = "Reference team"
+description = "working on the rust reference"
diff --git a/teams/release.toml b/teams/release.toml
index 17b5312..88e4d77 100644
--- a/teams/release.toml
+++ b/teams/release.toml
@@ -25,6 +25,8 @@ members = [
name = "Release team"
description = "tracking regressions, stabilizations, and producing Rust releases"
email = "release@rust-lang.org"
+discord-invite = "https://discord.gg/pVTkgpv"
+discord-name = "#release"
[[lists]]
address = "release@rust-lang.org"
diff --git a/teams/rustdoc.toml b/teams/rustdoc.toml
index 8b396dc..73728b3 100644
--- a/teams/rustdoc.toml
+++ b/teams/rustdoc.toml
@@ -13,6 +13,8 @@ members = [
[website]
name = "Rustdoc team"
description = "Documentation tools including Rustdoc and docs.rs"
+discord-invite = "https://discord.gg/4yEYPuT"
+discord-name = "#rustdoc"
[[lists]]
address = "rustdoc@rust-lang.org"
diff --git a/teams/wg-bindgen.toml b/teams/wg-bindgen.toml
new file mode 100644
index 0000000..7502059
--- /dev/null
+++ b/teams/wg-bindgen.toml
@@ -0,0 +1,16 @@
+name = "wg-bindgen"
+wg = true
+
+[people]
+leads = ["emilio", "fitzgen"]
+members = [
+ "emilio",
+ "fitzgen",
+]
+
+[website]
+name = "Bindgen working group"
+description = "tools for generating FFI bindings"
+repo = "https://github.com/rust-lang-nursery/rust-bindgen"
+discord-invite = "https://discord.gg/kgujzMR"
+discord-name = "#wg-bindgen"
diff --git a/teams/wg-clippy.toml b/teams/wg-clippy.toml
new file mode 100644
index 0000000..1d8dfe6
--- /dev/null
+++ b/teams/wg-clippy.toml
@@ -0,0 +1,17 @@
+name = "wg-clippy"
+wg = true
+
+[people]
+leads = ["llogiq", "killercup", "manishearth", "oli-obk"]
+members = [
+ "llogiq",
+ "killercup",
+ "manishearth",
+ "oli-obk",
+]
+
+[website]
+name = "Clippy working group"
+description = "design and implementation of the Clippy linter"
+discord-invite = "https://discord.gg/vNNtpyD"
+discord-name = "#wg-clippy"
diff --git a/teams/wg-codegen.toml b/teams/wg-codegen.toml
new file mode 100644
index 0000000..456b9b6
--- /dev/null
+++ b/teams/wg-codegen.toml
@@ -0,0 +1,10 @@
+name = "wg-codegen"
+wg = true
+
+[people]
+leads = ["nox"]
+members = ["nox"]
+
+[website]
+name = "Codegen"
+description = "Improving code generated by rustc."
diff --git a/teams/wg-compiler-nll.toml b/teams/wg-compiler-nll.toml
new file mode 100644
index 0000000..26acd41
--- /dev/null
+++ b/teams/wg-compiler-nll.toml
@@ -0,0 +1,10 @@
+name = "wg-compiler-nll"
+wg = true
+
+[people]
+leads = ["nikomatsakis", "pnkfelix"]
+members = ["nikomatsakis", "pnkfelix"]
+
+[website]
+name = "Non-Lexical Lifetimes (NLL)"
+description = "Implementing the new MIR-based borrow check and non-lexical lifetimes"
diff --git a/teams/wg-debugging.toml b/teams/wg-debugging.toml
new file mode 100644
index 0000000..bbcaa99
--- /dev/null
+++ b/teams/wg-debugging.toml
@@ -0,0 +1,16 @@
+name = "wg-debugging"
+wg = true
+
+[people]
+leads = ["manishearth", "michaelwoerister", "tromey"]
+members = [
+ "manishearth",
+ "michaelwoerister",
+ "tromey",
+]
+
+[website]
+name = "Debugging working group"
+description = "debugging tools and foundations"
+discord-invite = "https://discord.gg/UW3rnhd"
+discord-name = "#wg-debugging"
diff --git a/teams/wg-grammar.toml b/teams/wg-grammar.toml
new file mode 100644
index 0000000..2ea1d64
--- /dev/null
+++ b/teams/wg-grammar.toml
@@ -0,0 +1,10 @@
+name = "wg-grammar"
+wg = true
+
+[people]
+leads = ["Centril", "qmx"]
+members = ["Centril", "qmx"]
+
+[website]
+name = "Grammar"
+description = "Working out a the official, formal grammar for Rust and validating it against existing implementations."
diff --git a/teams/wg-leads.toml b/teams/wg-leads.toml
index 6c100e0..c2cc104 100644
--- a/teams/wg-leads.toml
+++ b/teams/wg-leads.toml
@@ -1,4 +1,5 @@
name = "wg-leads"
+wg = true
[people]
leads = []
diff --git a/teams/wg-rustfmt.toml b/teams/wg-rustfmt.toml
new file mode 100644
index 0000000..b717606
--- /dev/null
+++ b/teams/wg-rustfmt.toml
@@ -0,0 +1,15 @@
+name = "wg-rustfmt"
+wg = true
+
+[people]
+leads = ["nrc", "topecongiro"]
+members = [
+ "nrc",
+ "topecongiro",
+]
+
+[website]
+name = "Rustfmt working group"
+description = "design and implementation of Rustfmt"
+discord-invite = "https://discord.gg/e6Q3cvu"
+discord-name = "#wg-rustfmt"
diff --git a/teams/wg-traits.toml b/teams/wg-traits.toml
new file mode 100644
index 0000000..f608fe1
--- /dev/null
+++ b/teams/wg-traits.toml
@@ -0,0 +1,10 @@
+name = "wg-traits"
+wg = true
+
+[people]
+leads = ["nikomatsakis"]
+members = ["nikomatsakis"]
+
+[website]
+name = "Traits"
+description = "Revamping the rustc trait implementation to follow the Chalk approach."
diff --git a/teams/wg-unsafe-code-guidelines.toml b/teams/wg-unsafe-code-guidelines.toml
new file mode 100644
index 0000000..0a89068
--- /dev/null
+++ b/teams/wg-unsafe-code-guidelines.toml
@@ -0,0 +1,10 @@
+name = "wg-unsafe-code-guidelines"
+wg = true
+
+[people]
+leads = ["nikomatsakis", "avadacatavra"]
+members = ["nikomatsakis", "avadacatavra"]
+
+[website]
+name = "Unsafe Code Guidelines (UCG)"
+description = "Working out the \"Unsafe Code Guidelines\", which define what kind of behavior unsafe code can and cannot do."