#tor #future #tor-arti

oneshot-fused-workaround

Fused wrapper for futures::channel::oneshot

8 releases (4 breaking)

Uses new Rust 2024

0.5.0 Oct 30, 2025
0.4.0 Oct 6, 2025
0.3.0 Aug 28, 2025
0.2.3 Jul 8, 2025
0.1.0 Sep 3, 2024

#2636 in Rust patterns

Download history 2272/week @ 2025-07-17 2701/week @ 2025-07-24 3811/week @ 2025-07-31 3006/week @ 2025-08-07 2651/week @ 2025-08-14 2204/week @ 2025-08-21 2825/week @ 2025-08-28 2483/week @ 2025-09-04 2156/week @ 2025-09-11 2228/week @ 2025-09-18 2337/week @ 2025-09-25 2477/week @ 2025-10-02 3107/week @ 2025-10-09 2476/week @ 2025-10-16 2981/week @ 2025-10-23 3382/week @ 2025-10-30

12,305 downloads per month
Used in 74 crates (13 directly)

MIT/Apache

6KB
55 lines

Thin veneer over futures::channel::oneshot to fix use with select!

A bare futures::channel::oneshot::Receiver doesn't work properly with futures::select!, because it has a broken FusedFuture implementation. (See futures-rs ticket #2455.)

Wrapping it up in a future::Fuse works around this, with a minor performance penalty.

Limitations

The API of this Receiver is rather more limited. For example, it lacks .try_recv().


oneshot-fused-workaround

Thin veneer over futures::channel::oneshot to fix use with futures::select!. See futures-rs ticket #2455.

License: MIT OR Apache-2.0

Dependencies

~0.6–0.8MB
~15K SLoC