This file contains a list of people who are responsible for certain parts of the HAProxy project and who have authority on them. This means that these people have to be consulted before doing any change in the parts they maintain, including when fixing bugs. These persons are allowed to reject any change on the parts they maintain, and in parallel they try their best to ensure these parts work well. Similarly, any change to these parts not being validated by them will be rejected. The best way to deal with such subsystems when sending patches is to send the patches to the mailing list and to CC these people. When no maintainer is listed for a subsystem, you can simply send your changes the usual way, and it is also a sign that if you want to strengthen your skills on certain parts you can become yourself a maintainer of the parts you care a lot about. Please do not ask them to troubleshoot your bugs, it's not their job even though they may occasionally help as time permits. List of maintainers ------------------- 51Degrees device identification Maintainer: Ben Shillito Files: addons/51degrees, doc/51Degrees-device-detection.txt Cache Maintainer: William Lallemand Files: src/cache.c, include/haproxy/cache*.h DeviceAtlas device identification Maintainer: David Carlier Files: addons/deviceatlas, doc/DeviceAtlas-device-detection.txt DNS and Resolvers Maintainer: Emeric Brun Maintainer: Baptiste Assmann Files: src/dns.c, include/haproxy/dns*.h Files: src/resolvers.c, include/haproxy/resolvers*.h Doc to HTML converter (dconv) Maintainer: Cyril Bonté Files: doc/*.txt Note: ask Cyril before changing any doc's format or structure. EBTree Maintainer: Willy Tarreau Files: src/eb*.c, include/import/eb*.h FCGI: Maintainer: Christopher Faulet Files: src/mux_fcgi.c, src/fcgi*.c, include/haproxy/fcgi*.h Filters: Maintainer: Christopher Faulet Files: src/filters.c, src/flt_*.c, include/haproxy/filters*.h Files: doc/internals/filters.txt H1 and HTX Maintainer: Christopher Faulet Files: src/mux_h1.c src/h1_htx.c, include/haproxy/h1_htx.h H2 and HPACK Maintainer: Willy Tarreau Files: src/mux_h2.c src/h2.c src/hpack*.c Files: include/haproxy/h2.h, include/haproxy/hpack*.h Health checks Maintainer: Christopher Faulet Files: src/checks.c, include/haproxy/check*.h Files: src/tcpcheck.c, include/haproxy/tcpcheck*.h Note: health checks are fragile and have been broken many times, so please consult the relevant maintainers if you want to change these specific parts. HTTP Maintainer: Willy Tarreau Maintainer: Christopher Faulet Files: src/http*.h, include/haproxy/http*.h HTX Maintainer: Christopher Faulet Files: src/htx.c, include/haproxy/htx*.c, doc/internals/htx-api.txt Lua Maintainer: Thierry Fournier Files: src/hlua.c, include/haproxy/hlua*.h Mailers Maintainer: Simon Horman Files: src/mailers.c, include/haproxy/mailers*.h Maps and pattern matching Maintainer: Thierry Fournier Files: src/map.c, include/haproxy/map*.h Files: src/pattern.c, include/haproxy/pattern*.h Master-worker Maintainer: William Lallemand Note: Please CC William when touching src/haproxy.c and admin/systemd Multi-threading Maintainer: Christopher Faulet Maintainer: Emeric Brun Files: src/thread.c, include/haproxy/thread*.h Note: every change around the locking or synchronization point will require approval from one of these maintainers. Problems which only appear when nbthread is greater than 1 and which disappear otherwise are also relevant. Multi-threaded task scheduler Maintainer: Willy Tarreau Maintainer: Olivier Houchard Files: include/haproxy/task*.h src/task.c Peers Maintainer: Emeric Brun Frédéric Lécaille Files: src/peers.c, include/haproxy/peers*.h Prometheus Exporter Maintainer: Christopher Faulet Maintainer: William Dauchy Files: addons/promex Note: William is the referent regarding Prometheus. He should be consulted for all additions and modifications of features. Christopher is the referent for the code itself. He should be consulted for questions regarding the exporter integration into HAProxy, as well as for the bugs. QUIC and HTTP/3 Maintainer: Frédéric Lécaille Maintainer: Amaury Denoyelle Files: src/quic*.c, src/cfgparse-quic.c, include/haproxy/quic*.h Files: src/mux_quic.c, include/haproxy/mux_quic.h, Files: src/proto_quic.c, include/haproxy/proto_quic.h Files: src/xprt_quic.c, include/haproxy/xprt_quic.h Files: src/h3*.c, include/haproxy/h3*.h ScientiaMobile WURFL Device Detection Maintainer: Paul Borile, Massimiliano Bellomi Files: addons/wurfl, doc/WURFL-device-detection.txt SPOE Maintainer: Christopher Faulet Files: src/flt_spoe.c, include/haproxy/spoe*.h, doc/SPOE.txt SSL Maintainer: Emeric Brun Maintainer: William Lallemand Files: src/cfgparse-ssl.c, src/ssl_*.c, include/haproxy/ssl_*.h Thread-safe lists Maintainer: Olivier Houchard Files: include/haproxy/list*.h