Repository navigation
v0.2.7
Maintenance release: a Hex resolution fix, an HTTP/1.1 WebSocket header fix, and a push-streaming mode for the HTTP client.
Added
livery_clientpush streaming. Passstream_to => Pid(withstream => true) and the response is delivered toPidas ordered messages ({livery_response, Ref, {status, Status, Headers}},{chunk, Binary},done,{error, Reason}), so one process can interleave body chunks with its own control messages in a selective receive instead of dedicating a process to a blocking read loop.flow => manualsends one chunk perstream_next/1for backpressure;stop_stream/1cancels and drops the connection. Thelivery_client_adapterbehaviour gains optionalstream/3,stream_next/1, andstop_stream/1callbacks. The pull-based{stream, Reader}+read/2API is unchanged.
Fixed
- The package now resolves on Hex (#49). The published dependency pins conflicted:
barrel_mcp2.2.0 requiredhackney4.0.3 /h20.6.1 /erlang_h1~>0.2.3, andhackney4.2.2 requiredh20.8.0, neither of which agrees with Livery's own pins. The dependency bumps below put the whole graph onh20.9.0. - HTTP/1.1 WebSocket upgrade: the
101 Switching Protocolsresponse no longer carries duplicateConnection/Upgradeheaders, which spec-strict clients (Safari, undici) reject. Fixed upstream inerlang_h10.6.1, which now owns those framing headers and strips any caller-supplied copies.
Changed
- Bump dependencies onto a mutually compatible set:
barrel_mcp2.2.0 -> 2.2.2 (now requireshackney4.2.3 /h20.9.0 /erlang_h1~>0.6.1)erlang_h10.6.0 -> 0.6.1hackney4.2.2 -> 4.2.3 (now requiresh20.9.0)webtransport0.3.2 -> 0.3.3