Releases: anmonteiro/ocaml-h2
Releases · anmonteiro/ocaml-h2
0.13.0
0.12.0
0.11.0
0.10.0
CHANGES:
- hpack: fix a case where hpack would raise an array out of bounds exception
(#183)
(@jonathanjameswatson) - h2: (client) handle multiple RST_STREAM frames
(#184)
(@jonathanjameswatson) - h2: (client) Fix a race condition with
~flush_headers_immediately:false
and
empty request bodies
(#186) - h2: Make
H2.Reqd.error_code
part of the public interface
(#188) - h2: Add
~request_method
argument toH2.Method.body_length
(#190)
(@jonathanjameswatson) - h2: Don't send any frames on a stream after an
RST_STREAM
frame
(#187,
#194) - h2: call error handler on the client if the remote peer closes the
commmunication channel
(#177,
#196) - h2: when reprioritizing a stream, respect its new priority (accounts for
inferred default priority when a dependent stream is not in the tree
(RFC7540§5.3.1))
(#200) - h2: don't remove parent streams from the scheduler if they have children
(#201) - h2: don't schedule streams as dependencies of others marked for removal
(#205) - h2: revise scheduling algorithm to avoid starvation
(#199,
#204, reported in
#162, thanks
@quernd) - h2-eio: adapt to the next gluten-eio version
(#210)
0.9.0
CHANGES:
- h2: Fix tests on 32-bit platforms
(#152) - h2-mirage: adapt to Conduit v4 and remove
H2_mirage.Server_with_conduit
(#154) - h2: fix memory leaks related to trailer headers in the server and client
implementations (#159
(thanks @quernd!),
#160) - h2: allow configuring
flush_headers_immediately
on the client and default
tofalse
. This means that h2 will wait for the first request body bytes to
be scheduled and batchHEADERS
andDATA
frames when sending requests
(#163,
#164) - h2: Split
Body.t
intoBody.Writer.t
andBody.Reader.t
(#165) - h2: OCaml 5.00 compatibility -- add
seeded_hash
toscheduler.ml
(#168) - h2: Use a tail-recursive version of
Angstrom.skip_many
. Fixes a memory leak
in long-running connections e.g. gRPC
(#172) - h2-async: Add an OCaml-TLS client to
h2-async
(#174) - h2: Fix a bug that caused different requests to share the same headers buffer
under concurrency (#182)
0.8.0
CHANGES:
- h2: scheduler: fix bug that caused zero length DATA frames not to be sent if
there were no flow-control credits
(#142) -- reported by
@blandinw - h2,h2-lwt,h2-lwt-unix,h2-async,h2-mirage Add
trailers_handler
to
Connection.request
(#146) - h2: client / server: fix a security issue that allowed a malicious peer to
make h2 allocate as much as it wanted
(#149)
0.7.0
CHANGES:
0.6.1
CHANGES:
0.6.0
CHANGES:
- h2-async: add Async adapter
(#94) - h2-lwt: Close the communication channel after shutting down the client
(#108) - h2-lwt-unix: fix premature SSL termination in the SSL / TLS runtimes
(#109) - h2-lwt-unix: TLS runtime: adapt to TLS v0.11.0
(#109) - h2-lwt-unix: feed EOF to the state machine if the socket has been closed --
this is especially important on the client because it allows connections to
terminate cleanly. (#112) - h2: Refactor the
Settings
module API
(#113) - h2-lwt, h2-lwt-unix: Use gluten to
implement the Lwt-based runtimes
(#114) - h2: set a lower bound on Angstrom 0.14.0
(#118) - h2: in the client implementation, don't report an error if the server has
sent anRST_STREAM
frame after sending a complete response
(#119). - h2-mirage: Use gluten to implement
h2-mirage (#120)
0.5.0
CHANGES: