Skip to content

Releases: rust-lang/futures-rs

0.3.20

06 Feb 08:43
Compare
Choose a tag to compare
  • Fix stacked borrows violations when -Zmiri-tag-raw-pointers is enabled. This raises MSRV of futures-task to 1.45. (#2548, #2550)
  • Change FuturesUnordered to respect yielding from future (#2551)
  • Add StreamExt::{flatten_unordered, flat_map_unordered} (#2083)

0.3.19

18 Dec 16:12
Compare
Choose a tag to compare
  • Remove unstable read-initializer feature (#2534)
  • Fix panic in FuturesUnordered (#2535)
  • Fix compatibility issue with FuturesUnordered and tokio's cooperative scheduling (#2527)
  • Add StreamExt::count (#2495)

0.3.18

23 Nov 02:23
Compare
Choose a tag to compare
  • Fix unusable Sink implementation on stream::Scan (#2499)
  • Make task::noop_waker_ref available without std feature (#2505)
  • Add async LineWriter (#2477)
  • Remove dependency on proc-macro-hack. This raises MSRV of utility crates to 1.45. (#2520)

0.3.17

30 Aug 10:44
Compare
Choose a tag to compare
  • Use FuturesOrdered in join_all (#2412)
  • Add {future, stream}::poll_immediate (#2452)
  • Add stream_select! macro (#2262)
  • Implement Default for OptionFuture (#2471)
  • Add Peekable::{peek_mut, poll_peek_mut} (#2488)
  • Add BufReader::seek_relative (#2489)

0.3.16

23 Jul 19:10
Compare
Choose a tag to compare
  • Add TryStreamExt::try_chunks (#2438)
  • Add StreamExt::{all, any} (#2460)
  • Add stream::select_with_strategy (#2450)
  • Update to new io_slice_advance interface (#2454)

0.3.15

11 May 12:22
fc080d1
Compare
Choose a tag to compare
  • Use #[proc_macro] at Rust 1.45+ to fix an issue where proc macros don't work with rust-analyzer (#2407)
  • Support targets that do not have atomic CAS on stable Rust (#2400)
  • futures-test: Add async #[test] function attribute (#2409)
  • Add stream::abortable (#2410)
  • Add FuturesUnordered::clear (#2415)
  • Implement IntoIterator for FuturesUnordered (#2423)
  • Implement Send and Sync for FuturesUnordered iterators (#2416)
  • Make FuturesUnordered::iter_pin_ref public (#2423)
  • Add SelectAll::clear (#2430)
  • Add SelectAll::{iter, iter_mut} (#2428)
  • Implement IntoIterator for SelectAll (#2428)
  • Implement Clone for WeakShared (#2396)

0.3.14

10 Apr 07:18
Compare
Choose a tag to compare
  • Add future::SelectAll::into_inner (#2363)
  • Allow calling UnboundedReceiver::try_next after None (#2369)
  • Reexport non-Ext traits from the root of futures_util (#2377)
  • Add AsyncSeekExt::stream_position (#2380)
  • Add stream::Peekable::{next_if, next_if_eq} (#2379)

0.3.13

23 Feb 04:06
c91f869
Compare
Choose a tag to compare
  • Mitigated starvation issues in FuturesUnordered (#2333)
  • Fixed race with dropping mpsc::Receiver (#2304)
  • Added Shared::{strong_count, weak_count} (#2346)
  • Added no_std support for task::noop_waker_ref (#2332)
  • Implemented Stream::size_hint for Either (#2325)

0.3.12

15 Jan 12:03
1d53a29
Compare
Choose a tag to compare
  • Fixed Unpin impl of future::{MaybeDone, TryMaybeDone} where trait bounds were accidentally added in 0.3.9. (#2317)

0.3.11

14 Jan 18:40
7f509b5
Compare
Choose a tag to compare
  • Fixed heap buffer overflow in AsyncReadExt::{read_to_end, read_to_string} (#2314)