blob: d4b7980ca44137b336d202ac6032a316dd423629 [file] [log] [blame]
Willy Tarreau14a923c2015-09-21 15:21:09 +02001This file contains a list of people who are responsible for certain parts of
2the HAProxy project and who have authority on them. This means that these
3people have to be consulted before doing any change in the parts they maintain,
4including when fixing bugs. These persons are allowed to reject any change on
5the parts they maintain, and in parallel they try their best to ensure these
6parts work well. Similarly, any change to these parts not being validated by
7them will be rejected.
8
9The best way to deal with such subsystems when sending patches is to send the
10patches to the mailing list and to CC these people. When no maintainer is
11listed for a subsystem, you can simply send your changes the usual way, and it
12is also a sign that if you want to strengthen your skills on certain parts you
13can become yourself a maintainer of the parts you care a lot about.
14
Ilya Shipitsin6f86eaa2022-11-30 16:22:42 +050015Please do not ask them to troubleshoot your bugs, it's not their job even though
Willy Tarreau14a923c2015-09-21 15:21:09 +020016they may occasionally help as time permits.
17
18List of maintainers
19-------------------
20
Christopher Faulet2a821682021-02-23 17:51:02 +01002151Degrees device identification
22Maintainer: Ben Shillito <ben@51degrees.com>
Willy Tarreau977209d2021-04-02 16:12:32 +020023Files: addons/51degrees, doc/51Degrees-device-detection.txt
Willy Tarreaua9937f92015-09-22 01:07:00 +020024
Christopher Faulet2a821682021-02-23 17:51:02 +010025Cache
26Maintainer: William Lallemand <wlallemand@haproxy.com>
27Files: src/cache.c, include/haproxy/cache*.h
Willy Tarreau14a923c2015-09-21 15:21:09 +020028
Christopher Faulet2a821682021-02-23 17:51:02 +010029DeviceAtlas device identification
30Maintainer: David Carlier <dcarlier@deviceatlas.com>
Willy Tarreauf8d9ec52021-04-02 16:19:39 +020031Files: addons/deviceatlas, doc/DeviceAtlas-device-detection.txt
Willy Tarreau14a923c2015-09-21 15:21:09 +020032
Christopher Faulet2a821682021-02-23 17:51:02 +010033DNS and Resolvers
Willy Tarreau14a923c2015-09-21 15:21:09 +020034Maintainer: Emeric Brun <ebrun@haproxy.com>
Christopher Faulet2a821682021-02-23 17:51:02 +010035Maintainer: Baptiste Assmann <bedis9@gmail.com>
36Files: src/dns.c, include/haproxy/dns*.h
37Files: src/resolvers.c, include/haproxy/resolvers*.h
Willy Tarreau14a923c2015-09-21 15:21:09 +020038
Willy Tarreaued176552015-09-23 07:41:56 +020039Doc to HTML converter (dconv)
Willy Tarreaua9937f92015-09-22 01:07:00 +020040Maintainer: Cyril Bonté <cyril.bonte@free.fr>
41Files: doc/*.txt
42Note: ask Cyril before changing any doc's format or structure.
43
Christopher Faulet2a821682021-02-23 17:51:02 +010044EBTree
45Maintainer: Willy Tarreau <w@1wt.eu>
46Files: src/eb*.c, include/import/eb*.h
47
48FCGI:
49Maintainer: Christopher Faulet <cfaulet@haproxy.com>
50Files: src/mux_fcgi.c, src/fcgi*.c, include/haproxy/fcgi*.h
51
52Filters:
53Maintainer: Christopher Faulet <cfaulet@haproxy.com>
54Files: src/filters.c, src/flt_*.c, include/haproxy/filters*.h
55Files: doc/internals/filters.txt
56
57H1 and HTX
58Maintainer: Christopher Faulet <cfaulet@haproxy.com>
59Files: src/mux_h1.c src/h1_htx.c, include/haproxy/h1_htx.h
60
61H2 and HPACK
62Maintainer: Willy Tarreau <w@1wt.eu>
63Files: src/mux_h2.c src/h2.c src/hpack*.c
64Files: include/haproxy/h2.h, include/haproxy/hpack*.h
65
Willy Tarreaued176552015-09-23 07:41:56 +020066Health checks
Christopher Faulet2a821682021-02-23 17:51:02 +010067Maintainer: Christopher Faulet <cfaulet@haproxy.com>
68Files: src/checks.c, include/haproxy/check*.h
69Files: src/tcpcheck.c, include/haproxy/tcpcheck*.h
Willy Tarreaued176552015-09-23 07:41:56 +020070Note: health checks are fragile and have been broken many times, so please
71 consult the relevant maintainers if you want to change these specific
72 parts.
73
Christopher Faulet2a821682021-02-23 17:51:02 +010074HTTP
75Maintainer: Willy Tarreau <w@1wt.eu>
76Maintainer: Christopher Faulet <cfaulet@haproxy.com>
77Files: src/http*.h, include/haproxy/http*.h
Willy Tarreaued176552015-09-23 07:41:56 +020078
Christopher Faulet2a821682021-02-23 17:51:02 +010079HTX
80Maintainer: Christopher Faulet <cfaulet@haproxy.com>
81Files: src/htx.c, include/haproxy/htx*.c, doc/internals/htx-api.txt
Willy Tarreaue4b31272015-09-28 13:37:30 +020082
Christopher Faulet2a821682021-02-23 17:51:02 +010083Lua
84Maintainer: Thierry Fournier <tfournier@arpalert.org>
85Files: src/hlua.c, include/haproxy/hlua*.h
Willy Tarreau55612d42017-11-24 18:23:03 +010086
Christopher Faulet2a821682021-02-23 17:51:02 +010087Mailers
88Maintainer: Simon Horman <horms@verge.net.au>
89Files: src/mailers.c, include/haproxy/mailers*.h
90
91Maps and pattern matching
92Maintainer: Thierry Fournier <tfournier@arpalert.org>
93Files: src/map.c, include/haproxy/map*.h
94Files: src/pattern.c, include/haproxy/pattern*.h
Willy Tarreau55612d42017-11-24 18:23:03 +010095
96Master-worker
97Maintainer: William Lallemand <wlallemand@haproxy.com>
Willy Tarreau233e8682021-04-02 14:36:15 +020098Note: Please CC William when touching src/haproxy.c and admin/systemd
Willy Tarreau17536e42017-11-24 18:50:13 +010099
Willy Tarreau17536e42017-11-24 18:50:13 +0100100Multi-threading
101Maintainer: Christopher Faulet <cfaulet@haproxy.com>
102Maintainer: Emeric Brun <ebrun@haproxy.com>
Christopher Faulet2a821682021-02-23 17:51:02 +0100103Files: src/thread.c, include/haproxy/thread*.h
Willy Tarreau17536e42017-11-24 18:50:13 +0100104Note: every change around the locking or synchronization point will require
105 approval from one of these maintainers. Problems which only appear when
106 nbthread is greater than 1 and which disappear otherwise are also
107 relevant.
paulborilec81b9bf2019-04-18 12:17:47 +0200108
Christopher Faulet2a821682021-02-23 17:51:02 +0100109Multi-threaded task scheduler
110Maintainer: Willy Tarreau <w@1wt.eu>
111Maintainer: Olivier Houchard <cognet@ci0.org>
112Files: include/haproxy/task*.h src/task.c
113
114Peers
115Maintainer: Emeric Brun <ebrun@haproxy.com>
116Frédéric Lécaille <flecaille@haproxy.com>
117Files: src/peers.c, include/haproxy/peers*.h
Christopher Faulet84c88a52021-01-08 14:39:04 +0100118
119Prometheus Exporter
120Maintainer: Christopher Faulet <cfaulet@haproxy.com>
121Maintainer: William Dauchy <wdauchy@gmail.com>
Willy Tarreau3dfadc72021-04-02 15:35:19 +0200122Files: addons/promex
Christopher Faulet84c88a52021-01-08 14:39:04 +0100123Note: William is the referent regarding Prometheus. He should be consulted for
124 all additions and modifications of features. Christopher is the referent
125 for the code itself. He should be consulted for questions regarding the
126 exporter integration into HAProxy, as well as for the bugs.
Christopher Faulet2a821682021-02-23 17:51:02 +0100127
Amaury Denoyelle6d98dbc2022-05-30 17:32:21 +0200128QUIC and HTTP/3
129Maintainer: Frédéric Lécaille <flecaille@haproxy.com>
130Maintainer: Amaury Denoyelle <adenoyelle@haproxy.com>
131Files: src/quic*.c, src/cfgparse-quic.c, include/haproxy/quic*.h
132Files: src/mux_quic.c, include/haproxy/mux_quic.h,
133Files: src/proto_quic.c, include/haproxy/proto_quic.h
134Files: src/xprt_quic.c, include/haproxy/xprt_quic.h
135Files: src/h3*.c, include/haproxy/h3*.h
136
Christopher Faulet2a821682021-02-23 17:51:02 +0100137ScientiaMobile WURFL Device Detection
138Maintainer: Paul Borile, Massimiliano Bellomi <wurfl-haproxy-support@scientiamobile.com>
Willy Tarreau57610c62021-04-02 16:39:44 +0200139Files: addons/wurfl, doc/WURFL-device-detection.txt
Christopher Faulet2a821682021-02-23 17:51:02 +0100140
141SPOE
142Maintainer: Christopher Faulet <cfaulet@haproxy.com>
Willy Tarreau86951992021-04-21 09:39:06 +0200143Files: src/flt_spoe.c, include/haproxy/spoe*.h, doc/SPOE.txt
Christopher Faulet2a821682021-02-23 17:51:02 +0100144
145SSL
146Maintainer: Emeric Brun <ebrun@haproxy.com>
147Maintainer: William Lallemand <wlallemand@haproxy.com>
148Files: src/cfgparse-ssl.c, src/ssl_*.c, include/haproxy/ssl_*.h
149
150Thread-safe lists
151Maintainer: Olivier Houchard <cognet@ci0.org>
152Files: include/haproxy/list*.h