futures-rs v0.3.0-alpha.2 Release Notes
Release Date: 2018-07-30 // over 5 years ago-
- The changelog is back!
- โ Compatiblity with futures API in latest nightly
- Code examples and doc improvements
- IO: Methods of traits
AsyncReadExt
,AsyncWriteExt
- Future:
- Methods of trait
TryFutureExt
- Free functions
empty
,lazy
,maybe_done
,poll_fn
andready
- Type
FutureOption
- Macros
join!
,select!
andpending!
- Stream: Methods of trait
TryStreamExt
- IO: Methods of traits
- Added
TryStreamExt
combinatorsmap_ok
,map_err
,err_into
,try_next
andtry_for_each
- โ Added
Drain
, a sink that will discard all items given to it. Can be created using thedrain
function - ๐ Bugfix for the
write_all
combinator AsyncWrite
impl forCursor<T: AsMut<[u8]>>
FuturesUnordered
optimization: Since the context stores a&LocalWaker
reference, it was possible to avoid cloning theArc
of the waker- Futures-rs now uses Clippy
- We now use in-band lifetimes
- The
join!
andselect!
macros are now exposed by thefutures-preview
crate - The project logo was added to the
README.md
- ๐
sink::MapErr::get_pinned_mut
is now calledget_pin_mut
- We now use the unstable
use_extern_macros
feature for macro reexports - ๐ CI improvements: Named CI jobs, tests are now run on macOS and Linux, the docs are generated and Clippy needs to pass
- ๐
#[deny(warnings)]
was removed from all crates and is now only enforced in the CI - We now have a naming convention for type paramters:
Fut
future,F
function,St
stream,Si
sink,S
sink & stream,R
reader,W
writer,T
value,E
error - ๐จ "Task" is now defined as our term for "lightweight thread". The code of the executors and
FuturesUnordered
was refactored to align with this definition.