generated from lucas/rust-webserver-template
fix(deps): update rust crate reqwest to 0.13 (master) #14
No reviewers
Labels
No labels
Agent
Ignore
Agent
In Progress
Agent
Planned
Agent
Planning
Agent
Ready
Agent
Triage
Compat/Breaking
Kind
Bug
Kind
Documentation
Kind
Enhancement
Kind
Feature
Kind
Security
Kind
Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
Tag/Good First Issue
Tag/Help Wanted
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
lucas/logview!14
Loading…
Reference in a new issue
No description provided.
Delete branch "renovate/master-reqwest-0.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
0.12→0.13Release Notes
seanmonstar/reqwest (reqwest)
v0.13.5Compare Source
Error::is_dns()to identify errors caused by DNS resolution failures.ClientBuilder::http1_max_headers(usize)to configure the maximum number of headers accepted in an HTTP/1 response (default 100).TlsInfoextension.Ipv6AndIpv4strategy to prefer IPv6.v0.13.4Compare Source
ClientBuilder::tls_sslkeylogfile(bool)option to allow using the related environment variable.ClientBuilder::http2_keep_alive_*options for theblockingclient.native-tlsbackend.v0.13.3Compare Source
/etc/resolv.conffails.STOP_SENDINGas not an error.v0.13.2Compare Source
RequestBuilder::json()from override previously set content-type.v0.13.1Compare Source
v0.13.0Compare Source
rustlsis now the default TLS backend, instead ofnative-tls.rustlscrypto provider defaults to aws-lc instead of ring. (rustls-no-providerexists if you want a different crypto provider)rustls-tlshas been renamed torustls.rustls-platform-verifieris used by default.tls_certs_only(your_roots).native-tlsnow includes ALPN. To disable, usenative-tls-no-alpn.queryandformare now crate features, disabled by default.trust-dns, which was renamedhickory-dnsa while ago).tls_backend_rustls()overuse_rustls_tls().v0.12.28
v0.12.27
ClientBuilder::windows_named_pipe(name)option that will force all requests over that Windows Named Piper.v0.12.26
Accept-Encodingheader only with values configured with reqwest, regardless of underlying tower-http config.v0.12.25
Error::is_upgrade()to determine if the error was from an HTTP upgrade.Proxy-Authorizationif only username is configured.Proxy-Authorizationto HTTPS proxies when the target is HTTP.v0.12.24
v0.12.23
ClientBuilder::unix_socket(path)option that will force all requests over that Unix Domain Socket.ClientBuilder::retry(policy)andreqwest::retry::Builderto configure automatic retries.ClientBuilder::dns_resolver2()with more ergonomic argument bounds, allowing more resolver implementations.http3_*options toblocking::ClientBuilder.RequestBuilder.v0.12.22
v0.12.21
socks4a://instead ofsocks4h://.Error::is_timeout()to check for hyper and IO timeouts too.Errorto again include URLs when possible.DefaultforBody.v0.12.20
ClientBuilder::tcp_user_timeout(Duration)option to setTCP_USER_TIMEOUT.Error::is_status().v0.12.19
cookiesfeature is enabled (by the way, it's a noop feature in wasm).v0.12.18
socksenabled without TLS.v0.12.17
v0.12.16
ClientBuilder::http3_congestion_bbr()to enable BBR congestion control.ClientBuilder::http3_send_grease()to configure whether to send use QUIC grease.ClientBuilder::http3_max_field_section_size()to configure the maximum response headers.ClientBuilder::tcp_keepalive_interval()to configure TCP probe interval.ClientBuilder::tcp_keepalive_retries()to configure TCP probe count.Proxy::headers()to add extra headers that should be sent to a proxy.redirect::Policy::limit()which had an off-by-1 error, allowing 1 more redirect than specified.Response::bytes_stream().v0.12.15
ProxyOverrideandNO_PROXY.v0.12.14
fetch_mode_no_cors(), marking as deprecated when not on WASM.v0.12.13
Form::into_reader()for blockingmultipartforms.Form::into_stream()for asyncmultipartforms.RequestBuilder::form()from overwriting a previously setContent-Typeheader, like the other builder methods.blocking::Request.ProxyOverrideas aNO_PROXYvalue.Error::is_timeout()to return true when from a request timeout.v0.12.12
tokio/timeon WASM.v0.12.11
v0.12.10
ClientBuilder::connector_layer()to allow customizing the connector stack.ClientBuilder::http2_max_header_list_size()option.content-length) information when wrapping bodies.v0.12.9
tls::CertificateRevocationListssupport.connection_verbose()to output read logs.multipart::Part::file()to automatically include content-length.v0.12.8
multipart::Form::file()method for adding files easily.Body::wrap()to wrap anyhttp_body::Bodytype.v0.12.7
impl Service<http::Request<_>>forClient.v0.12.6
danger_accept_invalid_hostnamesforrustls.impl Service<http::Request<Body>>forClientand&'_ Client.!Syncbodies inBody::wrap_stream().hickory-dnsis used.Proxyso thatHTTP(S)_PROXYvalues take precedence overALL_PROXY.blocking::RequestBuilder::header()from unsettingsensitiveon passed header values.v0.12.5
blocking::ClientBuilder::dns_resolver()method to change DNS resolver in blocking client.http3feature back, still requiringreqwest_unstable.rustls-tls-no-providerCargo feature to use rustls without a crypto provider.Accept-Encodingheader combinations.v0.12.4
zstdsupport, enabled withzstdCargo feature.ClientBuilder::read_timeout(Duration), which applies the duration for each read operation. The timeout resets after a successful read.v0.12.3
FromStrfordns::Name.ClientBuilder::built_in_webpki_certs(bool)to enable them separately.ClientBuilder::built_in_native_certs(bool)to enable them separately.content-length: 0for GET requests.content_length()to return value when timeout is configured.ClientBuilder::resolve()to use lowercase domain names.v0.12.2
v0.12.1
ClientBuilder::interface()when no TLS is enabled.TlsInfo::peer_certificate()being truncated with rustls.http2feature disabled but TLS negotiated h2 in ALPN.DisplayforErrorto not include its source error.Configuration
📅 Schedule: (in timezone Europe/Berlin)
🚦 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 has been generated by Mend Renovate.
⚠️ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
The artifact failure details are included below:
File name: Cargo.lock
@omp-deck What would be the correct feature flag here?
rustls-tlswas renamed torustlsin 0.13, so the direct port of our line is:Two things, not just the rename:
1.
formis now required. 0.13 movedqueryandformout of the always-on set into crate features (both off by default).src/victorialogs/client.rs:59uses.form(&[("query", …), ("limit", …)]), so without it the lockfile update succeeds and the build then fails.streamandhttp2keep their names and meaning. We don't needcharset—Response::text()still exists without it, it just decodes lossy UTF-8 instead of honouring theContent-Typecharset, which is right for VictoriaLogs' JSON-lines output.jsonis not needed either; we parse lines ourselves.2.
rustlsis not root-store-equivalent torustls-tls. In 0.12,rustls-tlsimpliedrustls-tls-webpki-roots, i.e. the Mozilla root set compiled into the binary. In 0.13 the roots features are gone andrustlspulls inrustls-platform-verifier, which on Linux verifies against the system trust store. For us that's the runtime image:cgr.dev/chainguard/staticis advertised as shippingca-certificates-bundle, so this should keep working against a publicly-signed VictoriaLogs — but the CIimagejob only smoke-tests logview's own HTTP endpoint, so nothing in CI would catch a missing trust store. [INFERENCE] If you'd rather not depend on the base image's CA bundle, keep the old behaviour explicitly: add thewebpki-rootsfeature and pass them viaClientBuilder::tls_certs_only(…)inVictoriaLogs::new.Worth knowing but probably fine:
rustlsalso defaults the crypto provider to aws-lc instead of ring.aws-lc-sysneeds no CMake/Go/bindgen onx86_64-unknown-linux-musl(pre-generated bindings, C compiler only — https://aws.github.io/aws-lc-rs/requirements/linux.html), so the Alpine builder stage should cope with justmusl-dev/gcc. If it doesn't, the escape hatch isrustls-no-providerplus installing a provider ourselves, which costs a directrustlsdependency — I'd only take that if the build actually breaks.I can't push to this branch from this session; happy to open a follow-up PR with the Cargo.toml change (and the
tls_certs_onlywiring, if you want the pinned roots) on request.84457795317eea1c27a3The push is a rebase onto master (pin/digest/monorepo updates merged in the meantime); the only change belonging to this PR is still the one-line version bump, unchanged.
renovate/artifactson7eea1c2is still failing, so Cargo.lock is still not regenerated and the branch cannot build as-is.@ -17,3 +17,3 @@jiff = "0.2"notify = "8"reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "stream", "http2"] }reqwest = { version = "0.13", default-features = false, features = ["rustls-tls", "stream", "http2"] }Still the unported feature list. 0.13 renamed
rustls-tlstorustls(hence thecargo updatefailure inrenovate/artifacts), and it movedformout of the always-on set into an opt-in feature —src/victorialogs/client.rs:59calls.form(...), so fixing only the rename trades the lockfile error for a compile error. Needed here:See #14 (comment) for the root-store and crypto-provider consequences of
rustls-tls→rustls; those are behavioural, not build-breaking.7eea1c27a36e23f6c219@omp-deck Please push a change to the feature set. Prefer the system store, if possible
omp-deck failed to handle this event: the agent's turn failed.
Details are in omp-deck under webhook delivery
6d38a91f-f89f-4860-95eb-108b6ed66720(session01a1b291-2bc2-7000-b9a2-fb7fb242affa).View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.