Revision history for Net-HTTP2-nghttp2
0.007 2026-02-09
- Expose NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE constant (-521);
returning this from on_header causes RST_STREAM on the
individual stream without terminating the session
0.006 2026-02-09
- Fix Session.pm to load XS bootstrap independently; using
Net::HTTP2::nghttp2::Session directly without loading the
parent module first now works correctly
0.005 2026-02-09
- Add header_table_size (SETTINGS_HEADER_TABLE_SIZE) and
max_header_list_size (SETTINGS_MAX_HEADER_LIST_SIZE) to
submit_settings(), allowing servers to advertise HPACK limits
- Add max_send_header_block_length session option to new_server(),
using nghttp2_option / nghttp2_session_server_new2 to limit
outgoing header block size
- Add HPACK settings tests to t/14-hpack-headers.t
0.004 2026-02-08
- submit_response() body parameter now accepts CODE ref (previously
only data_callback parameter was supported for streaming)
- Fix submit_data() to work correctly by reusing existing data provider
instead of creating a new one (avoids nghttp2 assertion failure)
- Add submit_data test suite (t/21-submit-data.t)
- Document all public methods and callbacks in Session.pm POD
- Fix author placeholder in POD
0.003 2026-02-08
- Support streaming body callback in submit_request() for client-side
bidirectional streams (e.g. Extended CONNECT / WebSocket over HTTP/2)
- submit_request() body parameter now accepts CODE ref in addition to
string; callback receives ($stream_id, $max_length) and returns
($data, $eof_flag) or undef to defer
- Add streaming request test suite (t/20-streaming-request.t)
0.002 2025-01-14
- Add RFC 8441 (Bootstrapping WebSockets with HTTP/2) support
- Add NGHTTP2_SETTINGS_ENABLE_CONNECT_PROTOCOL constant (0x8)
- Add enable_connect_protocol setting to send_connection_preface()
- Export new constant via :settings tag
- Add comprehensive RFC 8441 extended CONNECT protocol tests
- Add SETTINGS_ENABLE_CONNECT_PROTOCOL to Test::HTTP2::Frame helper
- Test coverage for extended CONNECT vs regular CONNECT distinction
0.001 2025-01-09
- Initial release
- XS bindings for nghttp2 HTTP/2 library
- Server and client session support
- Full HTTP/2 frame handling (DATA, HEADERS, PRIORITY, RST_STREAM,
SETTINGS, PUSH_PROMISE, PING, GOAWAY, WINDOW_UPDATE, CONTINUATION)
- HPACK header compression
- Flow control support
- Stream state management
- Streaming response support with data providers
- h2spec conformance: 137/146 tests passing (94%)
- Comprehensive test suite (110+ tests)
- TLS integration test support
- bin/h2spec-server for conformance testing
- Uses Alien::nghttp2 for automatic library installation