v0.99.12
This patch upgrades us to futures
0.3, support for async/await
on Rust
Stable, performance improvements, and brand new module-level documentation.
Added
- Added
Future::flatten
as "unstable". - Added
Future::race
as "unstable" (replacesfuture::select!
). - Added
Future::try_race
as "unstable" (replacesfuture::try_select!
). - Added
Stderr::lock
as "unstable". - Added
Stdin::lock
as "unstable". - Added
Stdout::lock
as "unstable". - Added
Stream::copied
as "unstable". - Added
Stream::eq
as "unstable". - Added
Stream::max_by_key
as "unstable". - Added
Stream::min
as "unstable". - Added
Stream::ne
as "unstable". - Added
Stream::position
as "unstable". - Added
StreamExt
andFutureExt
as enumerable in theprelude
. - Added
TcpListener
andTcpStream
integration tests. - Added
stream::from_iter
. - Added
sync::WakerSet
for internal use. - Added an example to handle both
IP v4
andIP v6
connections. - Added the
default
Cargo feature. - Added the
attributes
Cargo feature. - Added the
std
Cargo feature.
Changed
- Fixed a bug in the blocking threadpool where it didn't spawn more than one thread.
- Fixed a bug with
Stream::merge
where sometimes it ended too soon. - Fixed a bug with our GitHub actions setup.
- Fixed an issue where our channels could spuriously deadlock.
- Refactored the
task
module. - Removed a deprecated GitHub action.
- Replaced
futures-preview
withfutures
. - Replaced
lazy_static
withonce_cell
. - Replaced all uses of
VecDequeue
in the examples withstream::from_iter
. - Simplified
sync::RwLock
using the internalsync::WakerSet
type. - Updated the
path
submodule documentation to match std. - Updated the mod-level documentation to match std.
Removed
- Removed
future::select!
(replaced byFuture::race
). - Removed
future::try_select!
(replaced byFuture::try_race
).