chore(deps): update dependency hackney to v4 - autoclosed#864
chore(deps): update dependency hackney to v4 - autoclosed#864renovate[bot] wants to merge 1 commit into
Conversation
|
15aed93 to
f03129c
Compare
f03129c to
67dc392
Compare
67dc392 to
faa0df6
Compare
8e49308 to
b6ac5fd
Compare
9b76696 to
6b5e1b7
Compare
3ef01a5 to
aa9234b
Compare
aa9234b to
f17f6a6
Compare
f17f6a6 to
a579499
Compare
|
@copilot What is going wrong here? It appears renovate cannot install Elixir 1.20.1 for some reason, and as a result is not updaating the lock file. |
It doesn’t look like Elixir installation is the main blocker here. The branch only changed
So Renovate is trying to bump |
This PR contains the following updates:
~> 1.18→~> 4.0Release Notes
benoitc/hackney (hackney)
v4.0.0: hackney 4.0.0Compare Source
Hackney 4 trims the client down. The HTTP/2 and HTTP/3 stacks are now delegated to erlang_h2 and erlang_quic, so hackney no longer ships its own framing, HPACK / QPACK codecs, control streams or state machines. The HTTP/3 path is fully RFC 9114 compliant via
quic_h3, with ALPN negotiation, Alt-Svc discovery (RFC 7838), and the samehackney:request/5API as HTTP/1.1.The bundled metrics subsystem is gone. In its place a Go-style middleware chain runs around
hackney:request/1..5, configured per request with{middleware, [Fun, ...]}or globally viaapplication:set_env(hackney, middleware, [...]). Users plug in prometheus, telemetry or anything else without hackney owning the policy. See the Middleware Guide and the HTTP/3 Guide.Breaking
hackney_metrics,hackney_metrics_backend,hackney_metrics_prometheus,hackney_metrics_dummy. Themetrics_backendapp env is no longer read. Migration recipes for prometheus and telemetry are inguides/middleware.md. Pool state is still observable throughhackney_pool:get_stats/1.hackney:request/5API is unchanged.What's new
hackney_middleware): outermost-first composition, request rewrite, response rewrite, short-circuit, per-request or global config.quic_h3: pure Erlang QUIC stack, no NIFs. ALPN-negotiated, opt-in with{protocols, [http3, http2, http1]}orapplication:set_env(hackney, default_protocols, [http3, http2, http1]).Alt-Svcheaders are now parsed and cached on every response (HTTP/1.1, HTTP/2 and HTTP/3), so subsequent requests can upgrade to HTTP/3 transparently. Honorsclearand merges multipleAlt-Svcheaders per RFC 7230 §3.2.2.Deps
h20.4.0quic1.0.0Full changelog: https://github.com/benoitc/hackney/blob/4.0.0/NEWS.md
v3.2.1Compare Source
Bug Fixes
recv_timeoutoption being ignored for pooled connections (#832)handle_h2_frame/2for HTTP/2 window updates (#829)v3.2.0: hackney 3.2.0Compare Source
Refactor
src/libs/directory (all modules moved tosrc/)Performance
rand:bytes/1instead ofcrypto:strong_rand_bytes/1for mask keysAdded
h2spec_server.erl: Minimal HTTP/2 server for compliance testingh2spec_SUITE.erl: CT suite for running h2spec testsmake h2spec-testhackney_http3_e2e_SUITE.erl: Tests against Cloudflare, Google, quic.techmake http3-e2e-test,make all-e2e-testhackney_http2_machine_bench.erl)Bug Fixes
send_or_queue_data/4)donemessagev3.1.2Compare Source
Dependencies
quicdependency to 0.10.1v3.1.1: hackney 3.1.1Compare Source
Bug Fixes
quicdependency to 0.7.1 (fixes packet number reconstruction)Added
hackney_quic(verify, cacerts, cacertfile, SNI)hackney_h3(follow_redirect, max_redirect options)v3.1.0Compare Source
Refactor
rebar3 compile.Removed
Added
hackney_qpack.erlfor QPACK header compression (RFC 9204)Changed
hackney_quic:is_available/0now always returnstrue(pure Erlang is always available)Dependencies
quic~>0.5.1 (pure Erlang QUIC implementation)v3.0.3Compare Source
Bug Fixes
send_body/2now work correctly for iterative body streaming, supporting both statelessfun() -> {ok, Data} | eofand statefulfun(State) -> {ok, Data, NewState} | eofforms.CI
v3.0.2Compare Source
Bug Fixes
Content-Type: application/octet-streamheader when sending a body without explicit Content-Type (#823). This restores 1.x behavior and follows RFC 7231 recommendations.Dependencies
certifito 2.16.0 (#824)v3.0.1Compare Source
v3.0.0Compare Source
v2.0.1Compare Source
v2.0.0Compare Source
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.