Skip to content

Commit 857ff68

Browse files
jasnellcodebytere
authored andcommitted
meta: introduce codeowners again
The [Contributor's Survey results](nodejs/TSC#882) highlight the fact that it is often not easy for contributors to know who the right people are to talk to about a proposed change or who to ask for reviews of a given subsystem. We briefly toyed around with codeowners before when GitHub introduced it but just as quickly disabled it because the structure of our repository made it exceedingly difficult to get right. Rather than start with a codeowners for the entire project, I propose that we start with a small experiment focused on specific subsystems. Specifically, codeowners for modules, streams, net/tls, http/http2, and quic (once that lands). We can expand out from there as we see how things go with the minimal starter set. Initially this just enables codeowners for the `quic` subsystem. A couple of points: 1. A codeowner should always be a team, never an individual person 2. Each codeowner team should contain at least one TSC member (to provide coverage for signing off on semver-major changes) 3. PRs touching any code with a codeowner must be signed off by at least one person on the codeowner team PR-URL: #33895 Reviewed-By: Matheus Marchini <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Gus Caplan <[email protected]> Reviewed-By: Trivikram Kamat <[email protected]>
1 parent 410b233 commit 857ff68

File tree

1 file changed

+76
-0
lines changed

1 file changed

+76
-0
lines changed

.github/CODEOWNERS

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# Node.js Project Codeowners
2+
3+
# 1. Codeowners must always be teams, never individuals
4+
# 2. Each codeowner team should contain at least one TSC member
5+
# 3. PRs touching any code with a codeowner must be signed off by at least one
6+
# person on the code owner team.
7+
8+
./.github/CODEOWNERS @nodejs/tsc
9+
10+
# net
11+
12+
# ./deps/cares @nodejs/net
13+
# ./doc/api/dns.md @nodejs/net
14+
# ./doc/api/dgram.md @nodejs/net
15+
# ./doc/api/net.md @nodejs/net
16+
# ./lib/dgram.js @nodejs/net
17+
# ./lib/dns.js @nodejs/net
18+
# ./lib/net.js @nodejs/net @nodejs/quic
19+
# ./lib/internal/dgram.js @nodejs/net
20+
# ./lib/internal/dns/* @nodejs/net
21+
# ./lib/internal/net.js @nodejs/net
22+
# ./lib/internal/socket_list.js @nodejs/net
23+
# ./lib/internal/js_stream_socket.js @nodejs/net
24+
# ./src/cares_wrap.h @nodejs/net
25+
# ./src/connect_wrap.* @nodejs/net
26+
# ./src/connection_wrap.* @nodejs/net
27+
# ./src/node_sockaddr* @nodejs/net
28+
# ./src/tcp_wrap.* @nodejs/net
29+
# ./src/udp_wrap.* @nodejs/net
30+
31+
# tls/crypto
32+
33+
# ./lib/internal/crypto/* @nodejs/crypto
34+
# ./lib/internal/tls.js @nodejs/crypto @nodejs/net
35+
# ./lib/crypto.js @nodejs/crypto
36+
# ./lib/tls.js @nodejs/crypto @nodejs/net
37+
# ./src/node_crypto* @nodejs/crypto
38+
# ./src/node_crypto_common* @nodejs/crypto @nodejs/quic
39+
40+
# http
41+
42+
# ./deps/llhttp/* @nodejs/http @nodejs/net
43+
# ./doc/api/http.md @nodejs/http @nodejs/net
44+
# ./doc/api/http2.md @nodejs/http @nodejs/net
45+
# ./lib/_http_* @nodejs/http @nodejs/net
46+
# ./lib/http.js @nodejs/http @nodejs/net
47+
# ./lib/https.js @nodejs/crypto @nodejs/net @nodejs/http
48+
# ./src/node_http_common* @nodejs/http @nodejs/http2 @nodejs/quic @nodejs/net
49+
# ./src/node_http_parser.cc @nodejs/http @nodejs/net
50+
51+
# http2
52+
53+
# ./deps/nghttp2/* @nodejs/http2 @nodejs/net
54+
# ./doc/api/http2.md @nodejs/http2 @nodejs/net
55+
# ./lib/http2.js @nodejs/http2 @nodejs/net
56+
# ./lib/internal/http2/* @nodejs/http2 @nodejs/net
57+
# ./src/node_http2* @nodejs/http2 @nodejs/net
58+
# ./src/node_mem* @nodejs/http2
59+
60+
# quic
61+
62+
./deps/ngtcp2/* @nodejs/quic
63+
./deps/nghttp3/* @nodejs/quic
64+
./doc/api/quic.md @nodejs/quic
65+
./lib/internal/quic/* @nodejs/quic
66+
./src/node_bob* @nodejs/quic
67+
./src/quic/* @nodejs/quic
68+
69+
# modules
70+
71+
# ./doc/api/modules.md @nodejs/modules
72+
# ./doc/api/esm.md @nodejs/modules
73+
# ./lib/module.js @nodejs/modules
74+
# ./lib/internal/modules/* @nodejs/modules
75+
# ./lib/internal/bootstrap/loaders.js @nodejs/modules
76+
# ./src/module_wrap* @nodejs/modules @nodejs/vm

0 commit comments

Comments
 (0)