Changes for version 0.01 - 2026-10-04

  • Initial release of a standalone, event-loop and operating-system neutral HTTP/2 protocol engine.
  • Use Uniform::HTTP 0.04 Request and Response objects directly.
  • Provide byte-in/byte-out Client and Server engines with multiplexed Stream objects and no socket, TLS, or event-loop ownership.
  • Use a small private XS binding to libnghttp2 through Alien::nghttp2.
  • Support buffered and streaming request and response bodies, cooperative backpressure, trailers, informational responses, and half-close state.
  • Support ordinary CONNECT and generic Extended CONNECT.
  • Support SETTINGS inspection and updates, PING, GOAWAY, graceful draining, stream resets, standard HTTP/2 error codes, and preserved reset details.
  • Support application-controlled receive flow control while keeping connection-level credit independent from slow streams.
  • Support RFC 9218 extensible priorities and deliberately omit the deprecated RFC 7540 dependency-tree priority API.
  • Advertise SETTINGS_ENABLE_PUSH = 0; Server Push is not exposed.
  • Preserve fatal session errors, invalid-frame observations, unknown extension-frame safety, and GOAWAY details for higher-layer policy.
  • Add in-memory protocol tests, packaged-distribution distcheck/disttest, and bidirectional interoperability tests against stock nghttp2 tools.
  • Test Perl 5.16 on Linux, current Perl on Linux and macOS, and Strawberry Perl on Windows.

Documentation

Modules

non-blocking HTTP/2 protocol engine for Perl
one HTTP/2 client connection
one HTTP/2 server connection
one HTTP/2 stream