1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
|
Maintainers Index
=================
This document cross references Python Modules (first table) and platforms
(second table) with the Tracker user names of people who are experts
and/or resources for that module or platform. This list is intended
to be used by issue submitters, issue triage people, and other issue
participants to find people to add to the nosy list or to contact
directly by email for help and decisions on feature requests and bug
fixes. People on this list may be asked to render final judgement on a
feature or bug. If no active maintainer is listed for a given module,
then questionable changes should go to python-dev, while any other issues
can and should be decided by any committer.
The last part of this document is a third table, listing broader topic
areas in which various people have expertise. These people can also
be contacted for help, opinions, and decisions when issues involve
their areas.
If a listed maintainer does not respond to requests for comment for an
extended period (three weeks or more), they should be marked as inactive
in this list by placing the word 'inactive' in parenthesis behind their
tracker id. They are of course free to remove that inactive mark at
any time.
Committers should update this table as their areas of expertise widen.
New topics may be added to the third table at will.
The existence of this list is not meant to indicate that these people
*must* be contacted for decisions; it is, rather, a resource to be used
by non-committers to find responsible parties, and by committers who do
not feel qualified to make a decision in a particular context.
See also `PEP 291`_ and `PEP 360`_ for information about certain modules
with special rules.
.. _`PEP 291`: http://www.python.org/dev/peps/pep-0291/
.. _`PEP 360`: http://www.python.org/dev/peps/pep-0360/
================== ===========
Module Maintainers
================== ===========
__future__
__main__ gvanrossum
_dummy_thread brett.cannon
_thread
abc
aifc r.david.murray
array
ast
asynchat josiahcarlson
asyncore josiahcarlson
atexit
audioop
base64
bdb
binascii
binhex
bisect rhettinger
builtins
bz2
calendar
cgi
cgitb
chunk
cmath mark.dickinson
cmd
code
codecs lemburg, doerwalter
codeop
collections rhettinger
colorsys
compileall
configparser
contextlib
copy
copyreg
cProfile
crypt
csv
ctypes theller
curses
datetime
dbm
decimal facundobatista, rhettinger, mark.dickinson
difflib
dis
distutils tarek
doctest tim_one (inactive)
dummy_threading brett.cannon
email barry
encodings lemburg, loewis
errno
exceptions
fcntl
filecmp
fileinput
fnmatch
formatter
fpectl
fractions mark.dickinson
ftplib
functools
gc
getopt
getpass
gettext loewis
glob
grp
gzip
hashlib
heapq rhettinger
hmac
html
http
imaplib
imghdr
imp
importlib brett.cannon
inspect
io pitrou, benjamin.peterson
itertools rhettinger
json bob.ippolito (inactive)
keyword
lib2to3 benjamin.peterson
linecache
locale loewis, lemburg
logging vsajip
macpath
mailbox andrew.kuchling
mailcap
marshal
math mark.dickinson
mimetypes
mmap
modulefinder theller, jvr
msilib loewis
msvcrt
multiprocessing jnoller
netrc
nis
nntplib
numbers
operator
optparse aronacher
os loewis
ossaudiodev
parser
pdb
pickle
pickletools
pipes
pkgutil
platform lemburg
plistlib
poplib
posix
pprint fdrake
pstats
pty
pwd
py_compile
pybench lemburg
pyclbr
pydoc
queue
quopri
random rhettinger
re effbot (inactive)
readline
reprlib
resource
rlcompleter
runpy ncoghlan
sched
select
shelve
shlex
shutil
signal
site
smtpd
smtplib
sndhdr
socket
socketserver
spwd
sqlite3 ghaering
ssl janssen
stat
string
stringprep
struct mark.dickinson
subprocess astrand (inactive)
sunau
symbol
symtable
sys
syslog
tabnanny tim_one
tarfile lars.gustaebel
telnetlib
tempfile
termios
test
textwrap
threading
time
timeit
tkinter gpolo
token
tokenize
trace
traceback
tty
turtle gregorlingl
types
unicodedata loewis, lemburg
unittest michael.foord
urllib
uu
uuid
warnings
wave
weakref fdrake
webbrowser georg.brandl
winreg
winsound effbot
wsgiref pje
xdrlib
xml loewis
xml.etree effbot (inactive)
xmlrpc loewis
zipfile
zipimport
zlib
================== ===========
================== ===========
Platform Maintainer
------------------ -----------
AIX
Cygwin jlt63
FreeBSD
Linux
Mac ronaldoussoren
NetBSD1
OS2/EMX aimacintyre
Solaris
HP-UX
================== ===========
================== ===========
Interest Area Maintainers
------------------ -----------
algorithms
ast/compiler ncoghlan, benjamin.peterson
autoconf
bsd
buildbots
data formats mark.dickinson
database lemburg
documentation georg.brandl
GUI
i18n lemburg
import machinery brett.cannon, ncoghlan
io pitrou, benjamin.peterson
locale lemburg, loewis
makefiles
mathematics mark.dickinson, eric.smith, lemburg
memory management tim_one, lemburg
networking
packaging tarek, lemburg
release management tarek, lemburg
str.format eric.smith
time and dates lemburg
testing michael.foord
threads
unicode lemburg
windows
================== ===========
|