Fix wasm32 build (#208)

* wasm32 CI step

* disable pieces currently not working on wasm32

* changelog updated
This commit is contained in:
Piotr Podusowski 2025-01-23 21:36:56 +01:00 committed by GitHub
parent f310cb8604
commit 2ab1ad15f5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 16 additions and 0 deletions

View file

@ -31,6 +31,18 @@ jobs:
uses: taiki-e/install-action@cargo-hack
- name: test
run: cargo hack test --feature-powerset -p reqwest-middleware
check-wasm32-reqwest-middleware:
name: Run `cargo check` for `reqwest-middleware` on `wasm32-unknown-unknown`
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- uses: actions-rs/cargo@v1
with:
command: build
args: --target wasm32-unknown-unknown -p reqwest-middleware --all-features
test-features-retry:
name: Run test suite for `reqwest-retry` with every feature combination
runs-on: ubuntu-latest

View file

@ -5,6 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
- Fixed wasm32 by disabling incompatible parts. On that target, `ClientWithMiddleware` is no longer
a Tower service and has no `ClientWithMiddleware::timeout` function.
## [0.4.0] - 2024-11-08

View file

@ -247,6 +247,7 @@ impl fmt::Debug for ClientWithMiddleware {
}
}
#[cfg(not(target_arch = "wasm32"))]
mod service {
use std::{
future::Future,
@ -422,6 +423,7 @@ impl RequestBuilder {
/// The timeout is applied from when the request starts connecting until the
/// response body has finished. It affects only this request and overrides
/// the timeout configured using `ClientBuilder::timeout()`.
#[cfg(not(target_arch = "wasm32"))]
pub fn timeout(self, timeout: std::time::Duration) -> Self {
RequestBuilder {
inner: self.inner.timeout(timeout),