@@ -7,6 +7,104 @@ and this project adheres to [Semantic Versioning](https://book.async.rs/overview
77
88## [ Unreleased]
99
10+ # [ 0.99.10] - 2019-10-16
11+
12+ This patch stabilizes several core concurrency macros, introduces async versions
13+ of ` Path ` and ` PathBuf ` , and adds almost 100 other commits.
14+
15+ ## Examples
16+
17+ __ Asynchronously read directories from the filesystem__
18+ ``` rust
19+ use async_std :: fs;
20+ use async_std :: path :: Path ;
21+ use async_std :: prelude :: * ;
22+
23+ let path = Path :: new (" /laputa" );
24+ let mut dir = fs :: read_dir (& path ). await . unwrap ();
25+ while let Some (entry ) = dir . next (). await {
26+ if let Ok (entry ) = entry {
27+ println! (" {:?}" , entry . path ());
28+ }
29+ }
30+ ```
31+
32+ __ Cooperatively reschedule the current task on the executor__
33+ ``` rust
34+ use async_std :: prelude :: * ;
35+ use async_std :: task;
36+
37+ task :: spawn (async {
38+ let x = fibonnacci (1000 ); // Do expensive work
39+ task :: yield_now (). await ; // Allow other tasks to run
40+ x + fibonnacci (100 ) // Do more work
41+ })
42+ ```
43+
44+ __ Create an interval stream__
45+ ``` rust
46+ use async_std :: prelude :: * ;
47+ use async_std :: stream;
48+ use std :: time :: Duration ;
49+
50+ let mut interval = stream :: interval (Duration :: from_secs (4 ));
51+ while let Some (_ ) = interval . next (). await {
52+ println! (" prints every four seconds" );
53+ }
54+ ```
55+
56+ ## Added
57+
58+ - Added ` FutureExt ` to the ` prelude ` , allowing us to extend ` Future `
59+ - Added ` Stream::cmp `
60+ - Added ` Stream::ge `
61+ - Added ` Stream::last `
62+ - Added ` Stream::le `
63+ - Added ` Stream::lt `
64+ - Added ` Stream::merge ` as "unstable", replacing ` stream::join! `
65+ - Added ` Stream::partial_cmp `
66+ - Added ` Stream::take_while `
67+ - Added ` Stream::try_fold `
68+ - Added ` future::IntoFuture ` as "unstable"
69+ - Added ` io::BufRead::split `
70+ - Added ` io::Write::write_fmt `
71+ - Added ` print! ` , ` println! ` , ` eprint! ` , ` eprintln! ` macros as "unstable"
72+ - Added ` process ` as "unstable", re-exporting std types only for now
73+ - Added ` std::net ` re-exports to the ` net ` submodule
74+ - Added ` std::path::PathBuf ` with all associated methods
75+ - Added ` std::path::Path ` with all associated methods
76+ - Added ` stream::ExactSizeStream ` as "unstable"
77+ - Added ` stream::FusedStream ` as "unstable"
78+ - Added ` stream::Product `
79+ - Added ` stream::Sum `
80+ - Added ` stream::from_fn `
81+ - Added ` stream::interval ` as "unstable"
82+ - Added ` stream::repeat_with `
83+ - Added ` task::spawn_blocking ` as "unstable", replacing ` task::blocking `
84+ - Added ` task::yield_now `
85+ - Added ` write! ` and ` writeln! ` macros as "unstable"
86+ - Stabilized ` future::join! ` and ` future::try_join! `
87+ - Stabilized ` future::timeout `
88+ - Stabilized ` path `
89+ - Stabilized ` task::ready! `
90+
91+ ## Changed
92+
93+ - Fixed ` BufWriter::into_inner ` so it calls ` flush ` before yielding
94+ - Refactored ` io::BufWriter ` internals
95+ - Refactored ` net::ToSocketAddrs ` internals
96+ - Removed Travis CI entirely
97+ - Rewrote the README.md
98+ - Stabilized ` io::Cursor `
99+ - Switched bors over to use GitHub actions
100+ - Updated the ` io ` documentation to match std's ` io ` docs
101+ - Updated the ` task ` documentation to match std's ` thread ` docs
102+
103+ ## Removed
104+
105+ - Removed the "unstable" ` stream::join! ` in favor of ` Stream::merge `
106+ - Removed the "unstable" ` task::blocking ` in favor of ` task::spawn_blocking `
107+
10108# [ 0.99.9] - 2019-10-08
11109
12110This patch upgrades our ` futures-rs ` version, allowing us to build on the 1.39
@@ -183,7 +281,8 @@ task::blocking(async {
183281
184282- Initial beta release
185283
186- [ Unreleased ] : https://github.com/async-rs/async-std/compare/v0.99.9...HEAD
284+ [ Unreleased ] : https://github.com/async-rs/async-std/compare/v0.99.10...HEAD
285+ [ 0.99.10 ] : https://github.com/async-rs/async-std/compare/v0.99.9...v0.99.10
187286[ 0.99.9 ] : https://github.com/async-rs/async-std/compare/v0.99.8...v0.99.9
188287[ 0.99.8 ] : https://github.com/async-rs/async-std/compare/v0.99.7...v0.99.8
189288[ 0.99.7 ] : https://github.com/async-rs/async-std/compare/v0.99.6...v0.99.7
0 commit comments