From 7ba2e3913395b212c7789569e1d683e7766cc348 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Sun, 9 Feb 2025 21:05:42 +0100 Subject: Update `sipper` and relax `Send` requirements --- Cargo.lock | 5 +++-- Cargo.toml | 2 +- runtime/src/task.rs | 13 +++++-------- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 2b4efc1c..db1a397a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5230,11 +5230,12 @@ checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" [[package]] name = "sipper" -version = "0.0.4" +version = "0.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d936de9741a68cb9452b683ffcc1fce44be7a79446ac5918319a42738da2d165" +checksum = "273c7573677e3835339763d44dd6ee0683b92108d04b311108809e9819f4bc13" dependencies = [ "futures", + "pin-project-lite", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 021ac4d4..e8772772 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -172,7 +172,7 @@ raw-window-handle = "0.6" resvg = "0.42" rustc-hash = "2.0" sha2 = "0.10" -sipper = "0.0.4" +sipper = "0.0.5" smol = "1.0" smol_str = "0.2" softbuffer = "0.4" diff --git a/runtime/src/task.rs b/runtime/src/task.rs index fb46ca45..989f0ed5 100644 --- a/runtime/src/task.rs +++ b/runtime/src/task.rs @@ -63,18 +63,15 @@ impl Task { /// progress with the first closure and the output with the second one. pub fn sip( sipper: S, - on_progress: impl Fn(Progress) -> T + Send + 'static, - on_output: impl FnOnce(Output) -> T + Send + 'static, + on_progress: impl Fn(Progress) -> T + MaybeSend + 'static, + on_output: impl FnOnce(Output) -> T + MaybeSend + 'static, ) -> Self where - S: Sipper + Send + 'static, - S::Future: Send + 'static, - Output: Send, - Progress: Send, - T: Send + 'static, + S: Sipper + MaybeSend + 'static, + T: MaybeSend + 'static, { Self::stream(stream(sipper::sipper(move |sender| async move { - on_output(sipper.map(on_progress).run(sender).await) + on_output(sipper.with(on_progress).run(sender).await) }))) } -- cgit