Skip to content

Commit ca80ca9

Browse files
authored
Merge pull request #338 from async-rs/draft-0.99.10
init 0.99.10 release
2 parents 9ff0750 + 802d4df commit ca80ca9

File tree

2 files changed

+101
-2
lines changed

2 files changed

+101
-2
lines changed

CHANGELOG.md

+100-1
Original file line numberDiff line numberDiff line change
@@ -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

12110
This 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

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "async-std"
3-
version = "0.99.9"
3+
version = "0.99.10"
44
authors = [
55
"Stjepan Glavina <[email protected]>",
66
"Yoshua Wuyts <[email protected]>",

0 commit comments

Comments
 (0)