| // Copyright 2018 The Go Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| package owners |
| |
| import ( |
| "golang.org/x/build/internal/gophers" |
| ) |
| |
| func gh(githubUsername string) Owner { |
| p := gophers.GetPerson("@" + githubUsername) |
| if p == nil { |
| panic(githubUsername + " not found") |
| } |
| if p.Gerrit == "" { |
| panic("person with GitHub username " + githubUsername + " must have at least one email") |
| } |
| return Owner{GitHubUsername: githubUsername, GerritEmail: p.Gerrit} |
| } |
| |
| var ( |
| adonovan = gh("alandonovan") |
| agl = gh("agl") |
| agnivade = gh("agnivade") |
| alexbrainman = gh("alexbrainman") |
| andybons = gh("andybons") |
| austin = gh("aclements") |
| bcmills = gh("bcmills") |
| bradfitz = gh("bradfitz") |
| cbro = gh("broady") |
| cherryyz = gh("cherrymui") |
| cnoellekb = gh("cnoellekb") |
| dmitshur = gh("dmitshur") |
| danderson = gh("danderson") |
| drchase = gh("dr2chase") |
| dvyukov = gh("dvyukov") |
| empijei = gh("empijei") |
| filippo = gh("FiloSottile") |
| gri = gh("griesemer") |
| hanwen = gh("hanwen") |
| hyangah = gh("hyangah") |
| iant = gh("ianlancetaylor") |
| iancottrell = gh("ianthehat") |
| jayconrod = gh("jayconrod") |
| jbd = gh("rakyll") |
| joetsai = gh("dsnet") |
| josharian = gh("josharian") |
| kardianos = gh("kardianos") |
| kevinburke = gh("kevinburke") |
| khr = gh("randall77") |
| martisch = gh("martisch") |
| matloob = gh("matloob") |
| mdempsky = gh("mdempsky") |
| mdlayher = gh("mdlayher") |
| mikesamuel = gh("mikesamuel") |
| mikioh = gh("mikioh") |
| minux = gh("minux") |
| mpvl = gh("mpvl") |
| mvdan = gh("mvdan") |
| mwhudson = gh("mwhudson") |
| r = gh("robpike") |
| rsc = gh("rsc") |
| rstambler = gh("stamblerre") |
| sameer = gh("Sajmani") |
| thanm = gh("thanm") |
| tklauser = gh("tklauser") |
| tombergan = gh("tombergan") |
| x1ddos = gh("x1ddos") |
| ) |
| |
| // entries is a map of <repo name>/<path> to Owner entries. |
| // It should not be modified at runtime. |
| var entries = map[string]*Entry{ |
| "arch": { |
| Primary: []Owner{cherryyz}, |
| }, |
| |
| "build": { |
| Primary: []Owner{dmitshur, bradfitz, andybons}, |
| }, |
| "build/maintner/cmd/maintserve": { |
| Primary: []Owner{dmitshur}, |
| Secondary: []Owner{andybons}, |
| }, |
| |
| "crypto": { |
| Primary: []Owner{filippo}, |
| Secondary: []Owner{agl}, |
| }, |
| "crypto/acme": { |
| Primary: []Owner{filippo, x1ddos}, |
| }, |
| "crypto/acme/autocert": { |
| Primary: []Owner{bradfitz, x1ddos}, |
| Secondary: []Owner{filippo}, |
| }, |
| "crypto/ssh": { |
| Primary: []Owner{hanwen}, |
| Secondary: []Owner{filippo}, |
| }, |
| |
| "debug": { |
| Secondary: []Owner{hyangah, khr}, |
| }, |
| |
| "gccgo": { |
| Primary: []Owner{iant}, |
| Secondary: []Owner{thanm, cherryyz}, |
| }, |
| |
| "go/src/archive/tar": { |
| Primary: []Owner{joetsai}, |
| }, |
| "go/src/archive/zip": { |
| Primary: []Owner{joetsai}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/bufio": { |
| Primary: []Owner{}, |
| Secondary: []Owner{gri, bradfitz, iant}, |
| }, |
| "go/src/bytes": { |
| Primary: []Owner{}, |
| Secondary: []Owner{bradfitz, iant}, |
| }, |
| "go/src/cmd/asm": { |
| Primary: []Owner{cherryyz}, |
| }, |
| "go/src/cmd/compile": { |
| Primary: []Owner{khr, gri}, |
| Secondary: []Owner{josharian, mdempsky, martisch}, |
| }, |
| "go/src/cmd/compile/amd64": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{josharian, rsc, drchase, cherryyz, martisch}, |
| }, |
| "go/src/cmd/compile/arm": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{josharian, rsc, drchase, cherryyz}, |
| }, |
| "go/src/cmd/compile/arm64": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{josharian, rsc, drchase, cherryyz}, |
| }, |
| "go/src/cmd/compile/mips": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{rsc, drchase, cherryyz}, |
| }, |
| "go/src/cmd/compile/mips64": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{rsc, drchase, cherryyz}, |
| }, |
| "go/src/cmd/compile/ppc64": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{rsc, drchase, cherryyz}, |
| }, |
| "go/src/cmd/compile/s390x": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{rsc, drchase, cherryyz}, |
| }, |
| "go/src/cmd/compile/x86": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{josharian, rsc, drchase, cherryyz, martisch}, |
| }, |
| "go/src/cmd/compile/internal/syntax": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{rsc, mdempsky}, |
| }, |
| "go/src/cmd/compile/internal/types": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{josharian, mdempsky, rsc}, |
| }, |
| "go/src/cmd/compile/internal/ssa": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{josharian, martisch}, |
| }, |
| "go/src/cmd/doc": { |
| Primary: []Owner{r}, |
| Secondary: []Owner{mvdan}, |
| }, |
| "go/src/cmd/go": { |
| Primary: []Owner{bcmills, jayconrod}, |
| Secondary: []Owner{rsc, iant}, |
| }, |
| "go/src/cmd/link": { |
| Primary: []Owner{cherryyz, rsc, mdempsky, iant}, |
| Secondary: []Owner{mwhudson, thanm}, |
| }, |
| "go/src/cmd/pprof": { |
| Primary: []Owner{hyangah}, |
| }, |
| "go/src/cmd/trace": { |
| Primary: []Owner{hyangah}, |
| }, |
| "go/src/cmd/vet": { |
| Primary: []Owner{adonovan}, |
| Secondary: []Owner{josharian, mvdan}, |
| }, |
| "go/src/compress/bzip2": { |
| Primary: []Owner{joetsai}, |
| Secondary: []Owner{mdempsky}, |
| }, |
| "go/src/compress/flate": { |
| Primary: []Owner{joetsai}, |
| Secondary: []Owner{mdempsky}, |
| }, |
| "go/src/compress/gzip": { |
| Primary: []Owner{joetsai}, |
| }, |
| "go/src/compress/lzw": { |
| Primary: []Owner{joetsai}, |
| Secondary: []Owner{mdempsky}, |
| }, |
| "go/src/compress/zlib": { |
| Primary: []Owner{joetsai}, |
| Secondary: []Owner{mdempsky}, |
| }, |
| "go/src/container/heap": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/container/list": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/container/ring": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/context": { |
| Primary: []Owner{sameer, bradfitz}, |
| }, |
| "go/src/crypto": { |
| Primary: []Owner{filippo}, |
| Secondary: []Owner{rsc}, |
| }, |
| "go/src/crypto/tls": { |
| Primary: []Owner{filippo}, |
| Secondary: []Owner{agl, rsc, kevinburke}, |
| }, |
| "go/src/crypto/x509": { |
| Primary: []Owner{filippo}, |
| Secondary: []Owner{agl, rsc}, |
| }, |
| "go/src/database/sql": { |
| Primary: []Owner{bradfitz, kardianos}, |
| Secondary: []Owner{kevinburke}, |
| }, |
| "go/src/debug/dwarf": { |
| Primary: []Owner{austin}, |
| Secondary: []Owner{thanm}, |
| }, |
| "go/src/debug/elf": { |
| Primary: []Owner{iant}, |
| }, |
| "go/src/debug/pe": { |
| Primary: []Owner{alexbrainman}, |
| }, |
| "go/src/encoding": { |
| Primary: []Owner{rsc}, |
| }, |
| "go/src/encoding/asn1": { |
| Primary: []Owner{filippo}, |
| Secondary: []Owner{agl}, |
| }, |
| "go/src/encoding/binary": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/encoding/csv": { |
| Primary: []Owner{}, |
| Secondary: []Owner{joetsai, bradfitz, rsc}, |
| }, |
| "go/src/encoding/gob": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/encoding/json": { |
| Primary: []Owner{rsc}, |
| Secondary: []Owner{joetsai, bradfitz, mvdan}, |
| }, |
| "go/src/encoding/xml": { |
| Primary: []Owner{rsc}, |
| }, |
| "go/src/expvar": { |
| Primary: []Owner{}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/flag": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/fmt": { |
| Primary: []Owner{r}, |
| Secondary: []Owner{martisch}, |
| }, |
| "go/src/go/ast": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{josharian}, |
| }, |
| "go/src/go/build": { |
| Primary: []Owner{rsc}, |
| }, |
| "go/src/go/constant": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/go/doc": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{agnivade}, |
| }, |
| "go/src/go/format": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/go/importer": { |
| Primary: []Owner{gri, adonovan}, |
| }, |
| "go/src/go/internal/gccgoimporter": { |
| Primary: []Owner{gri, iant}, |
| }, |
| "go/src/go/internal/gcimporter": { |
| Primary: []Owner{gri}, |
| }, |
| // go/packages doesn't exist yet, but x/tools/go/packages has been proposed to |
| // move there and many issues already refer to the new path. |
| "go/src/go/packages": { |
| Primary: []Owner{matloob}, |
| }, |
| "go/src/go/parser": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/go/printer": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/go/scanner": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/go/token": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/go/types": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{adonovan}, |
| }, |
| "go/src/html/template": { |
| Primary: []Owner{mikesamuel}, |
| Secondary: []Owner{empijei}, |
| }, |
| "go/src/image": { |
| Primary: []Owner{}, |
| Secondary: []Owner{r}, |
| }, |
| "go/src/index/suffixarray": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/internal/bytealg": { |
| Primary: []Owner{khr}, |
| Secondary: []Owner{josharian}, |
| }, |
| "go/src/internal/cpu": { |
| Primary: []Owner{khr, martisch}, |
| }, |
| "go/src/internal/singleflight": { |
| Primary: []Owner{bradfitz, iant}, |
| }, |
| "go/src/internal/syscall/unix": { |
| Primary: []Owner{iant, bradfitz}, |
| Secondary: []Owner{tklauser}, |
| }, |
| "go/src/internal/syscall/windows": { |
| Primary: []Owner{alexbrainman}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/internal/syscall/windows/registry": { |
| Primary: []Owner{alexbrainman}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/internal/syscall/windows/sysdll": { |
| Primary: []Owner{alexbrainman}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/internal/testenv": { |
| Primary: []Owner{bradfitz, iant}, |
| Secondary: []Owner{josharian}, |
| }, |
| "go/src/io": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{iant, bradfitz}, |
| }, |
| "go/src/log": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/math": { |
| Primary: []Owner{gri, rsc}, |
| }, |
| "go/src/math/big": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/math/bits": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{khr, josharian}, |
| }, |
| "go/src/math/rand": { |
| Primary: []Owner{gri, rsc}, |
| Secondary: []Owner{josharian}, |
| }, |
| "go/src/mime": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "go/src/mime/multipart": { |
| Primary: []Owner{bradfitz, minux}, |
| }, |
| "go/src/mime/quotedprintable": { |
| Primary: []Owner{bradfitz, minux}, |
| }, |
| "go/src/net": { |
| Primary: []Owner{mikioh}, |
| Secondary: []Owner{bradfitz, iant}, |
| }, |
| "go/src/net/http": { |
| Primary: []Owner{bradfitz}, |
| Secondary: []Owner{rsc}, |
| }, |
| "go/src/net/http/cgi": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "go/src/net/http/cookiejar": { |
| Primary: []Owner{}, |
| }, |
| "go/src/net/http/httptest": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "go/src/net/http/httptrace": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "go/src/net/http/httputil": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "go/src/net/http/internal": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "go/src/net/http/pprof": { |
| Primary: []Owner{rsc}, |
| }, |
| "go/src/net/internal/socktest": { |
| Primary: []Owner{mikioh}, |
| }, |
| "go/src/net/mail": { |
| Primary: []Owner{}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/net/rpc": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/net/rpc/jsonrpc": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/net/smtp": { |
| Primary: []Owner{}, |
| Secondary: []Owner{bradfitz}, |
| }, |
| "go/src/net/textproto": { |
| Primary: []Owner{bradfitz, rsc}, |
| }, |
| "go/src/net/url": { |
| Primary: []Owner{rsc, bradfitz}, |
| }, |
| "go/src/os": { |
| Primary: []Owner{rsc, r, iant, bradfitz, gri}, |
| }, |
| "go/src/os/exec": { |
| Primary: []Owner{bradfitz, iant}, |
| }, |
| "go/src/os/signal": { |
| Primary: []Owner{iant}, |
| }, |
| "go/src/os/user": { |
| Primary: []Owner{bradfitz}, |
| Secondary: []Owner{kevinburke}, |
| }, |
| "go/src/path": { |
| Primary: []Owner{r, rsc}, |
| }, |
| "go/src/path/filepath": { |
| Primary: []Owner{r, rsc}, |
| }, |
| "go/src/plugin": { |
| Primary: []Owner{iant}, |
| Secondary: []Owner{cherryyz}, |
| }, |
| "go/src/reflect": { |
| Primary: []Owner{rsc, iant}, |
| }, |
| "go/src/regexp": { |
| Primary: []Owner{rsc}, |
| Secondary: []Owner{matloob}, |
| }, |
| "go/src/regexp/syntax": { |
| Primary: []Owner{rsc}, |
| }, |
| "go/src/runtime": { |
| Primary: []Owner{austin, rsc, khr}, |
| Secondary: []Owner{iant, dvyukov, martisch}, |
| }, |
| "go/src/runtime/cgo": { |
| Primary: []Owner{iant}, |
| }, |
| "go/src/runtime/internal/atomic": { |
| Primary: []Owner{austin, khr}, |
| }, |
| "go/src/runtime/internal/sys": { |
| Primary: []Owner{austin, khr}, |
| }, |
| "go/src/runtime/pprof": { |
| Primary: []Owner{hyangah}, |
| }, |
| "go/src/runtime/pprof/internal/protopprof": { |
| Primary: []Owner{}, |
| Secondary: []Owner{matloob}, |
| }, |
| "go/src/runtime/race": { |
| Primary: []Owner{dvyukov}, |
| }, |
| "go/src/runtime/trace": { |
| Primary: []Owner{hyangah, dvyukov}, |
| }, |
| "go/src/sort": { |
| Primary: []Owner{rsc, gri, iant, bradfitz}, |
| }, |
| "go/src/strconv": { |
| Primary: []Owner{rsc, gri, iant, bradfitz}, |
| }, |
| "go/src/strings": { |
| Primary: []Owner{gri}, |
| Secondary: []Owner{iant, bradfitz}, |
| }, |
| "go/src/sync": { |
| Primary: []Owner{rsc, iant, dvyukov, austin}, |
| }, |
| "go/src/sync/atomic": { |
| Primary: []Owner{rsc, iant, dvyukov, austin}, |
| }, |
| "go/src/syscall": { |
| Primary: []Owner{iant, bradfitz}, |
| Secondary: []Owner{tklauser}, |
| }, |
| "go/src/testing": { |
| Primary: []Owner{}, |
| Secondary: []Owner{mpvl, josharian}, |
| }, |
| "go/src/testing/quick": { |
| Primary: []Owner{}, |
| Secondary: []Owner{agl}, |
| }, |
| "go/src/text/scanner": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/text/tabwriter": { |
| Primary: []Owner{gri}, |
| }, |
| "go/src/text/template": { |
| Primary: []Owner{r}, |
| Secondary: []Owner{mvdan}, |
| }, |
| "go/src/text/template/parse": { |
| Primary: []Owner{r}, |
| Secondary: []Owner{mvdan}, |
| }, |
| "go/src/time": { |
| Primary: []Owner{rsc}, |
| }, |
| "go/src/unicode": { |
| Primary: []Owner{r}, |
| Secondary: []Owner{mpvl}, |
| }, |
| "go/src/unicode/utf16": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/unicode/utf8": { |
| Primary: []Owner{r}, |
| }, |
| "go/src/unsafe": { |
| Primary: []Owner{gri}, |
| }, |
| |
| "gofrontend": { |
| Primary: []Owner{iant}, |
| Secondary: []Owner{thanm}, |
| }, |
| |
| "gollvm": { |
| Primary: []Owner{thanm}, |
| Secondary: []Owner{cherryyz}, |
| }, |
| |
| "mobile": { |
| Primary: []Owner{hyangah}, |
| }, |
| |
| "net": { |
| Primary: []Owner{mikioh}, |
| Secondary: []Owner{bradfitz, iant}, |
| }, |
| "net/bpf": { |
| Primary: []Owner{danderson, mdlayher}, |
| }, |
| "net/http": { |
| Primary: []Owner{bradfitz}, |
| }, |
| "net/http2": { |
| Primary: []Owner{bradfitz, tombergan}, |
| }, |
| "net/icmp": { |
| Primary: []Owner{mikioh}, |
| }, |
| "net/ipv4": { |
| Primary: []Owner{mikioh, iant}, |
| }, |
| "net/ipv6": { |
| Primary: []Owner{mikioh, iant}, |
| }, |
| |
| "review": { |
| Secondary: []Owner{josharian, kevinburke}, |
| }, |
| |
| "sync": { |
| Primary: []Owner{bcmills}, |
| }, |
| |
| "sys/unix": { |
| Primary: []Owner{iant, bradfitz, tklauser}, |
| }, |
| "sys/windows": { |
| Primary: []Owner{alexbrainman, bradfitz}, |
| }, |
| |
| "text": { |
| Primary: []Owner{mpvl}, |
| }, |
| |
| "tools/cmd/compilebench": { |
| Secondary: []Owner{josharian}, |
| }, |
| "tools/cmd/bundle": { |
| Primary: []Owner{adonovan}, |
| }, |
| "tools/cmd/godoc": { |
| Primary: []Owner{andybons}, |
| Secondary: []Owner{agnivade, bradfitz, gri, kevinburke}, |
| }, |
| "tools/cmd/goimports": { |
| Primary: []Owner{bradfitz}, |
| Secondary: []Owner{josharian}, |
| }, |
| "tools/cmd/gopls": { |
| Primary: []Owner{rstambler, iancottrell}, |
| }, |
| "tools/cmd/stringer": { |
| Secondary: []Owner{mvdan}, |
| }, |
| "tools/cmd/toolstash": { |
| Secondary: []Owner{josharian}, |
| }, |
| "tools/go/packages": { |
| Primary: []Owner{matloob}, |
| }, |
| "tools/internal/lsp": { |
| Primary: []Owner{rstambler, iancottrell}, |
| }, |
| "tools": { |
| Primary: []Owner{iancottrell}, |
| Secondary: []Owner{matloob}, |
| }, |
| "playground": { |
| Secondary: []Owner{}, |
| }, |
| "website": { |
| Primary: []Owner{dmitshur}, |
| Secondary: []Owner{cnoellekb, andybons}, |
| }, |
| } |