HTTP/2 C library and tools

Nghttp2 v1.47.0

We have released nghttp2 v1.47.0.


This release fixes the incorrect HPACK decoder table size update, which lead to incorrectly require Dynamic Table Size Update from an encoder when it is not needed.


cmake build now disables libbpf by default.


Now maximum allowed maximum frame size is configurable with --max-frame-size.


--require-http-scheme option is added. It requires http or https scheme in HTTP request. It also requires that https scheme must be used for an encrypted connection. Otherwise, http scheme must be used. This option is recommended for a server deployment which directly faces clients and the services it provides only require http or https scheme.

BBR2 congestion control algorithm is added to QUIC connection.

libbpf is now bumped to v0.7.0 and turn on all strict features.

The qlog file extension is changed to .sqlog.

The bug that causes h3 stream ends prematurely has been fixed.

The issue that a forwarded h3 GET request to HTTP/1.1 hop always has chunked transfer-encoding: chunked has been fixed.

QUIC connection now sends and receives ECN bits.

HTTP/3 trailer fields support has been added.