11# See https://help.github.com/articles/about-codeowners/
2- # for more info about CODEOWNERS file
2+ # for further details about the .github/ CODEOWNERS file.
33
44# It uses the same pattern rule for gitignore file
55# https://git-scm.com/docs/gitignore#_pattern_format
99# To exclude a file from ownership, add a line with only the file.
1010# See the exclusions section at the end of the file for examples.
1111
12+ # =======
13+ # Purpose
14+ # =======
15+ #
16+ # An entry in this file does not imply 'ownership', despite the name of the
17+ # file, but instead that those listed take an interest in that part of the
18+ # project, and would like to be notified of any proposed changes to it.
19+ # See also the Experts Index in the Python Developer's Guide:
20+ # https://devguide.python.org/core-developers/experts/
21+ #
1222# =========
1323# Structure
1424# =========
1525#
1626# The CODEOWNERS file is organised by topic area.
1727# Please add new entries in alphabetical order within the relevant section.
28+ # Where possible, keep related files together. For example, documentation,
29+ # code, and tests for a given item should all be listed in the same place.
30+ #
1831# Top-level sections are:
1932#
2033# * Buildbots, Continuous Integration, and Testing
34+ # e.g. project-wide configuration files, internal tools for use in CI,
35+ # linting.
2136# * Build System
22- # * Interpreter Core
37+ # e.g. the Makefile, autoconf.
2338# * Documentation
39+ # broader sections of documentation, documentation tools
2440# * Other / Misc (Tools, Programs, Integration, etc)
41+ # internal tools, integration with external systems,
42+ # entries that don't fit elsewhere
2543# * Platform Support
44+ # relating to support for specific platforms
45+ # * Interpreter Core
46+ # the grammar, parser, compiler, interpreter, etc
2647# * Standard Library
48+ # standard library modules & related files
2749
2850# ----------------------------------------------------------------------------
2951# Buildbots, Continuous Integration, and Testing
@@ -44,6 +66,7 @@ Tools/build/verify_ensurepip_wheels.py @AA-Turner @pfmoore @pradyunsg
4466# Patchcheck
4567Tools /patchcheck / @ AA-Turner
4668
69+
4770# ----------------------------------------------------------------------------
4871# Build System
4972# ----------------------------------------------------------------------------
@@ -54,6 +77,106 @@ Makefile.pre.in @erlend-aasland @AA-Turner
5477Modules /Setup * @ erlend-aasland @ AA-Turner
5578Tools /build /regen-configure.sh @ AA-Turner
5679
80+
81+ # ----------------------------------------------------------------------------
82+ # Documentation
83+ # ----------------------------------------------------------------------------
84+
85+ # Internal Docs
86+ InternalDocs / @ AA-Turner
87+
88+ # Tools, Configuration, etc
89+ Doc /Makefile @ AA-Turner @ hugovk
90+ Doc /_static / @ AA-Turner @ hugovk
91+ Doc /conf.py @ AA-Turner @ hugovk
92+ Doc /make.bat @ AA-Turner @ hugovk
93+ Doc /requirements.txt @ AA-Turner @ hugovk
94+ Doc /tools / @ AA-Turner @ hugovk
95+
96+ # PR Previews
97+ .readthedocs.yml @ AA-Turner
98+
99+ # Sections
100+ Doc /reference / @ willingc @ AA-Turner
101+ Doc /whatsnew / @ AA-Turner
102+
103+
104+ # ----------------------------------------------------------------------------
105+ # Other / Misc (Tools, Programs, Integration, etc)
106+ # ----------------------------------------------------------------------------
107+
108+ # Argument Clinic
109+ Tools /clinic / @ erlend-aasland @ AA-Turner
110+ Lib /test /test_clinic.py @ erlend-aasland @ AA-Turner
111+ Doc /howto /clinic.rst @ erlend-aasland @ AA-Turner
112+
113+ # C Analyser
114+ Tools /c-analyzer / @ ericsnowcurrently
115+
116+ # Fuzzing
117+ Modules /_xxtestfuzz / @ ammaraskar
118+
119+ # IDLE
120+ Doc /library /idle.rst @ terryjreedy
121+ Lib /idlelib / @ terryjreedy
122+ Lib /turtledemo / @ terryjreedy
123+
124+ # Limited C API & stable ABI
125+ Doc /c-api /stable.rst @ encukou
126+ Doc /data /* .abi @ encukou
127+ Misc /stable_abi.toml @ encukou
128+ Tools /build /stable_abi.py @ encukou
129+
130+ # SBOM
131+ Misc /externals.spdx.json @ sethmlarson
132+ Misc /sbom.spdx.json @ sethmlarson
133+ Tools /build /generate_sbom.py @ sethmlarson
134+
135+
136+ # ----------------------------------------------------------------------------
137+ # Platform Support
138+ # ----------------------------------------------------------------------------
139+
140+ # Android
141+ Android / @ mhsmith @ freakboy3742
142+ Doc /using /android.rst @ mhsmith @ freakboy3742
143+ Lib /_android_support.py @ mhsmith @ freakboy3742
144+ Lib /test /test_android.py @ mhsmith @ freakboy3742
145+
146+ # iOS
147+ Doc /using /ios.rst @ freakboy3742
148+ Lib /_ios_support.py @ freakboy3742
149+ iOS / @ freakboy3742
150+
151+ # macOS
152+ Mac / @ python/macos-team
153+ Lib /_osx_support.py @ python/macos-team
154+ Lib /test /test__osx_support.py @ python/macos-team
155+
156+ # Windows
157+ PC / @ python/windows-team
158+ PCbuild / @ python/windows-team
159+
160+ # Windows Launcher
161+ PC /launcher.c @ python/windows-team @ vsajip
162+
163+ # Windows installer packages
164+ Tools /msi / @ python/windows-team
165+ Tools /nuget / @ python/windows-team
166+
167+ # WebAssembly
168+ Tools /wasm /README.md @ brettcannon @ freakboy3742
169+
170+ # WebAssembly (Emscripten)
171+ Tools /wasm /config.site-wasm32-emscripten @ freakboy3742
172+ Tools /wasm /emscripten @ freakboy3742
173+
174+ # WebAssembly (WASI)
175+ Tools /wasm /wasi-env @ brettcannon
176+ Tools /wasm /wasi.py @ brettcannon
177+ Tools /wasm /wasi @ brettcannon
178+
179+
57180# ----------------------------------------------------------------------------
58181# Interpreter Core
59182# ----------------------------------------------------------------------------
@@ -112,6 +235,12 @@ Objects/exceptions.c @iritkatriel
112235Lib /test /test_getpath.py @ FFY00
113236Modules /getpath * @ FFY00
114237
238+ # Hashing / ``hash()`` and related
239+ Include /cpython /pyhash.h @ gpshead @ picnixz @ tiran
240+ Include /internal /pycore_pyhash.h @ gpshead @ picnixz @ tiran
241+ Include /pyhash.h @ gpshead @ picnixz @ tiran
242+ Python /pyhash.c @ gpshead @ picnixz @ tiran
243+
115244# The import system (including importlib)
116245** /* import * @ brettcannon @ ericsnowcurrently @ ncoghlan @ warsaw
117246Python /import.c @ brettcannon @ ericsnowcurrently @ ncoghlan @ warsaw @ kumaraditya303
@@ -145,6 +274,7 @@ Programs/python.c @ericsnowcurrently
145274Include /internal /pycore_jit.h @ brandtbucher @ savannahostrowski @ diegorusso
146275Python /jit.c @ brandtbucher @ savannahostrowski @ diegorusso
147276Tools /jit / @ brandtbucher @ savannahostrowski @ diegorusso
277+ InternalDocs /jit.md @ brandtbucher @ savannahostrowski @ diegorusso @ AA-Turner
148278
149279# Micro-op / μop / Tier 2 Optimiser
150280Python /optimizer.c @ markshannon
@@ -185,8 +315,8 @@ Modules/_remote_debugging_module.c @pablogsal @ambv @1st1
185315# Sub-Interpreters
186316** /* crossinterp * @ ericsnowcurrently
187317** /* interpreteridobject. * @ ericsnowcurrently
188- Doc /library /concurrent.interpreters.rst @ ericsnowcurrently
189- Lib /concurrent /futures /interpreter.py @ ericsnowcurrently
318+ Doc /library /concurrent.interpreters.rst @ ericsnowcurrently
319+ Lib /concurrent /futures /interpreter.py @ ericsnowcurrently
190320Lib /concurrent /interpreters / @ ericsnowcurrently
191321Lib /test /support /channels.py @ ericsnowcurrently
192322Lib /test /test__interp * .py @ ericsnowcurrently
@@ -201,121 +331,7 @@ Objects/templateobject.c @lysnikolaou
201331# Tests
202332Lib /test /test_patma.py @ brandtbucher
203333Lib /test /test_type_ * .py @ JelleZijlstra
204- Lib /test /test_capi /test_misc.py @ markshannon
205-
206-
207- # ----------------------------------------------------------------------------
208- # Documentation
209- # ----------------------------------------------------------------------------
210-
211- # Internal Docs
212- InternalDocs / @ AA-Turner
213- InternalDocs /asyncio.md @ 1st1 @ asvetlov @ kumaraditya303 @ willingc @ AA-Turner
214- InternalDocs /jit.md @ brandtbucher @ savannahostrowski @ diegorusso @ AA-Turner
215-
216- # Tools, Configuration, etc
217- Doc /Makefile @ AA-Turner @ hugovk
218- Doc /_static / @ AA-Turner @ hugovk
219- Doc /conf.py @ AA-Turner @ hugovk
220- Doc /make.bat @ AA-Turner @ hugovk
221- Doc /requirements.txt @ AA-Turner @ hugovk
222- Doc /tools / @ AA-Turner @ hugovk
223-
224- # PR Previews
225- .readthedocs.yml @ AA-Turner
226-
227- # Sections
228- Doc /reference / @ willingc @ AA-Turner
229- Doc /whatsnew / @ AA-Turner
230-
231-
232- # ----------------------------------------------------------------------------
233- # Other / Misc (Tools, Programs, Integration, etc)
234- # ----------------------------------------------------------------------------
235-
236- # Argument Clinic
237- Tools /clinic / @ erlend-aasland @ AA-Turner
238- Lib /test /test_clinic.py @ erlend-aasland @ AA-Turner
239- Doc /howto /clinic.rst @ erlend-aasland @ AA-Turner
240-
241- # C Analyser
242- Tools /c-analyzer / @ ericsnowcurrently
243-
244- # Fuzzing
245- Modules /_xxtestfuzz / @ ammaraskar
246-
247- # Hashing & Cryptographic Primitives
248- ** /* hashlib * @ gpshead @ tiran @ picnixz
249- ** /* hashopenssl * @ gpshead @ tiran @ picnixz
250- ** /* hmac * @ gpshead @ picnixz
251- ** /* pyhash * @ gpshead @ tiran @ picnixz
252- Modules /_hacl / @ gpshead @ picnixz
253- Modules /* blake * @ gpshead @ tiran @ picnixz
254- Modules /* md5 * @ gpshead @ tiran @ picnixz
255- Modules /* sha * @ gpshead @ tiran @ picnixz
256-
257- # IDLE
258- Doc /library /idle.rst @ terryjreedy
259- Lib /idlelib / @ terryjreedy
260- Lib /turtledemo / @ terryjreedy
261-
262- # Limited C API & stable ABI
263- Doc /c-api /stable.rst @ encukou
264- Doc /data /* .abi @ encukou
265- Misc /stable_abi.toml @ encukou
266- Tools /build /stable_abi.py @ encukou
267-
268- # SBOM
269- Misc /externals.spdx.json @ sethmlarson
270- Misc /sbom.spdx.json @ sethmlarson
271- Tools /build /generate_sbom.py @ sethmlarson
272-
273- # Libssl / TLS
274- ** /* ssl * @ gpshead @ picnixz
275-
276-
277- # ----------------------------------------------------------------------------
278- # Platform Support
279- # ----------------------------------------------------------------------------
280-
281- # Android
282- Android / @ mhsmith @ freakboy3742
283- Doc /using /android.rst @ mhsmith @ freakboy3742
284- Lib /_android_support.py @ mhsmith @ freakboy3742
285- Lib /test /test_android.py @ mhsmith @ freakboy3742
286-
287- # iOS
288- Doc /using /ios.rst @ freakboy3742
289- Lib /_ios_support.py @ freakboy3742
290- iOS / @ freakboy3742
291-
292- # macOS
293- Mac / @ python/macos-team
294- Lib /_osx_support.py @ python/macos-team
295- Lib /test /test__osx_support.py @ python/macos-team
296-
297- # Windows
298- PC / @ python/windows-team
299- PCbuild / @ python/windows-team
300-
301- # Windows Launcher
302- PC /launcher.c @ python/windows-team @ vsajip
303-
304- # Windows installer packages
305- Tools /msi / @ python/windows-team
306- Tools /nuget / @ python/windows-team
307-
308- # WebAssembly
309- Tools /wasm /README.md @ brettcannon @ freakboy3742
310-
311- # WebAssembly (Emscripten)
312- Tools /wasm /config.site-wasm32-emscripten @ freakboy3742
313- Tools /wasm /emscripten @ freakboy3742
314-
315- # WebAssembly (WASI)
316- Tools /wasm /wasi-env @ brettcannon
317- Tools /wasm /wasi.py @ brettcannon
318- Tools /wasm /wasi @ brettcannon
334+ Lib /test /test_capi /test_misc.py @ markshannon
319335
320336
321337# ----------------------------------------------------------------------------
@@ -334,6 +350,7 @@ Lib/test/test_argparse.py @savannahostrowski
334350
335351# Asyncio
336352Doc /library /asyncio * .rst @ 1st1 @ asvetlov @ kumaraditya303 @ willingc
353+ InternalDocs /asyncio.md @ 1st1 @ asvetlov @ kumaraditya303 @ willingc @ AA-Turner
337354Lib /asyncio / @ 1st1 @ asvetlov @ kumaraditya303 @ willingc
338355Lib /test /test_asyncio / @ 1st1 @ asvetlov @ kumaraditya303 @ willingc
339356Modules /_asynciomodule.c @ 1st1 @ asvetlov @ kumaraditya303 @ willingc
@@ -348,6 +365,16 @@ Modules/_bisectmodule.c @rhettinger
348365Lib /calendar.py @ AA-Turner
349366Lib /test /test_calendar.py @ AA-Turner
350367
368+ # Cryptographic Primitives and Applications
369+ ** /* hashlib * @ gpshead @ picnixz @ tiran
370+ ** /* hashopenssl * @ gpshead @ picnixz @ tiran
371+ ** /* hmac * @ gpshead @ picnixz
372+ ** /* ssl * @ gpshead @ picnixz
373+ Modules /_hacl / @ gpshead @ picnixz
374+ Modules /* blake * @ gpshead @ picnixz @ tiran
375+ Modules /* md5 * @ gpshead @ picnixz @ tiran
376+ Modules /* sha * @ gpshead @ picnixz @ tiran
377+
351378# Codecs
352379Modules /cjkcodecs / @ corona10
353380Tools /unicode /gencjkcodecs.py @ corona10
@@ -440,7 +467,7 @@ Doc/library/html* @ezio-melotti
440467Lib /html / @ ezio-melotti
441468Lib /_markupbase.py @ ezio-melotti
442469Lib /test /test_html * .py @ ezio-melotti
443- Tools /build /parse_html5_entities.py @ ezio-melotti
470+ Tools /build /parse_html5_entities.py @ ezio-melotti
444471
445472# importlib.metadata
446473Doc /library /importlib.metadata.rst @ jaraco @ warsaw
@@ -476,12 +503,12 @@ Lib/pathlib/ @barneygale
476503Lib /test /test_pathlib / @ barneygale
477504
478505# pdb & bdb
479- Doc /library /bdb.rst @ gaogaotiantian
480- Doc /library /pdb.rst @ gaogaotiantian
481- Lib /bdb.py @ gaogaotiantian
482- Lib /pdb.py @ gaogaotiantian
483- Lib /test /test_bdb.py @ gaogaotiantian
484- Lib /test /test_pdb.py @ gaogaotiantian
506+ Doc /library /bdb.rst @ gaogaotiantian
507+ Doc /library /pdb.rst @ gaogaotiantian
508+ Lib /bdb.py @ gaogaotiantian
509+ Lib /pdb.py @ gaogaotiantian
510+ Lib /test /test_bdb.py @ gaogaotiantian
511+ Lib /test /test_pdb.py @ gaogaotiantian
485512Lib /test /test_remote_pdb.py @ gaogaotiantian
486513
487514# Pydoc
@@ -552,7 +579,7 @@ Modules/_typesmodule.c @AA-Turner
552579
553580# Unittest
554581Lib /unittest /mock.py @ cjw296
555- Lib /test /test_unittest /testmock / @ cjw296
582+ Lib /test /test_unittest /testmock / @ cjw296
556583
557584# Urllib
558585** /* robotparser * @ berkerpeksag
@@ -582,8 +609,6 @@ Modules/_zstd/ @AA-Turner
582609
583610# Exclude Argument Clinic directories
584611Modules /** /clinic /
585- Modules /clinic /
586- Objects /clinic /
587- Objects /stringlib /clinic /
588- PC /clinic /
589- Python /clinic /
612+ Objects /** /clinic /
613+ PC /** /clinic /
614+ Python /** /clinic /
0 commit comments