Skip to content

Commit 1e05281

Browse files
committed
Release 0.3.31
1 parent 8a8b085 commit 1e05281

File tree

16 files changed

+53
-40
lines changed

16 files changed

+53
-40
lines changed

CHANGELOG.md

+13
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
# 0.3.31 - 2024-10-05
2+
3+
* Fix use after free of task in `FuturesUnordered` when dropped future panics (#2886)
4+
* Fix soundness bug in `task::waker_ref` (#2830)
5+
This is a breaking change but allowed because it is soundness bug fix.
6+
* Fix bugs in `AsyncBufRead::read_line` and `AsyncBufReadExt::lines` (#2884)
7+
* Fix parsing issue in `select!`/`select_biased!` (#2832)
8+
This is technically a breaking change as it will now reject a very odd undocumented syntax that was previously accidentally accepted.
9+
* Work around issue due to upstream `Waker::will_wake` change (#2865)
10+
* Add `stream::Iter::{get_ref,get_mut,into_inner}` (#2875)
11+
* Add `future::AlwaysReady` (#2825)
12+
* Relax trait bound on non-constructor methods of `io::{BufReader,BufWriter}` (#2848)
13+
114
# 0.3.30 - 2023-12-24
215

316
* Add `{BiLock,SplitStream,SplitSink,ReadHalf,WriteHalf}::is_pair_of` (#2797)

examples/functional/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "futures-example-functional"
3+
version = "0.0.0"
34
edition = "2018"
4-
version = "0.1.0"
55
publish = false
66

77
[dependencies]

examples/imperative/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "futures-example-imperative"
3+
version = "0.0.0"
34
edition = "2018"
4-
version = "0.1.0"
55
publish = false
66

77
[dependencies]

futures-channel/Cargo.toml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-channel"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"
@@ -22,8 +22,8 @@ unstable = []
2222
cfg-target-has-atomic = []
2323

2424
[dependencies]
25-
futures-core = { path = "../futures-core", version = "0.3.30", default-features = false }
26-
futures-sink = { path = "../futures-sink", version = "0.3.30", default-features = false, optional = true }
25+
futures-core = { path = "../futures-core", version = "0.3.31", default-features = false }
26+
futures-sink = { path = "../futures-sink", version = "0.3.31", default-features = false, optional = true }
2727

2828
[dev-dependencies]
2929
futures = { path = "../futures", default-features = true }

futures-core/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-core"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.36"
66
license = "MIT OR Apache-2.0"

futures-executor/Cargo.toml

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-executor"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"
@@ -16,9 +16,9 @@ std = ["futures-core/std", "futures-task/std", "futures-util/std"]
1616
thread-pool = ["std", "num_cpus"]
1717

1818
[dependencies]
19-
futures-core = { path = "../futures-core", version = "0.3.30", default-features = false }
20-
futures-task = { path = "../futures-task", version = "0.3.30", default-features = false }
21-
futures-util = { path = "../futures-util", version = "0.3.30", default-features = false }
19+
futures-core = { path = "../futures-core", version = "0.3.31", default-features = false }
20+
futures-task = { path = "../futures-task", version = "0.3.31", default-features = false }
21+
futures-util = { path = "../futures-util", version = "0.3.31", default-features = false }
2222
num_cpus = { version = "1.8.0", optional = true }
2323

2424
[dev-dependencies]

futures-io/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-io"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.36"
66
license = "MIT OR Apache-2.0"

futures-macro/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-macro"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"

futures-sink/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-sink"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.36"
66
license = "MIT OR Apache-2.0"

futures-task/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-task"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"

futures-test/Cargo.toml

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-test"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"
@@ -11,13 +11,13 @@ Common utilities for testing components built off futures-rs.
1111
"""
1212

1313
[dependencies]
14-
futures-core = { version = "0.3.30", path = "../futures-core", default-features = false }
15-
futures-task = { version = "0.3.30", path = "../futures-task", default-features = false }
16-
futures-io = { version = "0.3.30", path = "../futures-io", default-features = false }
17-
futures-util = { version = "0.3.30", path = "../futures-util", default-features = false }
18-
futures-executor = { version = "0.3.30", path = "../futures-executor", default-features = false }
19-
futures-sink = { version = "0.3.30", path = "../futures-sink", default-features = false }
20-
futures-macro = { version = "=0.3.30", path = "../futures-macro", default-features = false }
14+
futures-core = { version = "0.3.31", path = "../futures-core", default-features = false }
15+
futures-task = { version = "0.3.31", path = "../futures-task", default-features = false }
16+
futures-io = { version = "0.3.31", path = "../futures-io", default-features = false }
17+
futures-util = { version = "0.3.31", path = "../futures-util", default-features = false }
18+
futures-executor = { version = "0.3.31", path = "../futures-executor", default-features = false }
19+
futures-sink = { version = "0.3.31", path = "../futures-sink", default-features = false }
20+
futures-macro = { version = "=0.3.31", path = "../futures-macro", default-features = false }
2121
pin-project = "1.0.11"
2222

2323
[dev-dependencies]

futures-util/Cargo.toml

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures-util"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"
@@ -35,12 +35,12 @@ write-all-vectored = ["io"]
3535
cfg-target-has-atomic = []
3636

3737
[dependencies]
38-
futures-core = { path = "../futures-core", version = "0.3.30", default-features = false }
39-
futures-task = { path = "../futures-task", version = "0.3.30", default-features = false }
40-
futures-channel = { path = "../futures-channel", version = "0.3.30", default-features = false, features = ["std"], optional = true }
41-
futures-io = { path = "../futures-io", version = "0.3.30", default-features = false, features = ["std"], optional = true }
42-
futures-sink = { path = "../futures-sink", version = "0.3.30", default-features = false, optional = true }
43-
futures-macro = { path = "../futures-macro", version = "=0.3.30", default-features = false, optional = true }
38+
futures-core = { path = "../futures-core", version = "0.3.31", default-features = false }
39+
futures-task = { path = "../futures-task", version = "0.3.31", default-features = false }
40+
futures-channel = { path = "../futures-channel", version = "0.3.31", default-features = false, features = ["std"], optional = true }
41+
futures-io = { path = "../futures-io", version = "0.3.31", default-features = false, features = ["std"], optional = true }
42+
futures-sink = { path = "../futures-sink", version = "0.3.31", default-features = false, optional = true }
43+
futures-macro = { path = "../futures-macro", version = "=0.3.31", default-features = false, optional = true }
4444
slab = { version = "0.4.2", optional = true }
4545
memchr = { version = "2.2", optional = true }
4646
futures_01 = { version = "0.1.25", optional = true, package = "futures" }

futures/Cargo.toml

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "futures"
3-
version = "0.3.30"
3+
version = "0.3.31"
44
edition = "2018"
55
rust-version = "1.56"
66
license = "MIT OR Apache-2.0"
@@ -15,13 +15,13 @@ composability, and iterator-like interfaces.
1515
categories = ["asynchronous"]
1616

1717
[dependencies]
18-
futures-core = { path = "../futures-core", version = "0.3.30", default-features = false }
19-
futures-task = { path = "../futures-task", version = "0.3.30", default-features = false }
20-
futures-channel = { path = "../futures-channel", version = "0.3.30", default-features = false, features = ["sink"] }
21-
futures-executor = { path = "../futures-executor", version = "0.3.30", default-features = false, optional = true }
22-
futures-io = { path = "../futures-io", version = "0.3.30", default-features = false }
23-
futures-sink = { path = "../futures-sink", version = "0.3.30", default-features = false }
24-
futures-util = { path = "../futures-util", version = "0.3.30", default-features = false, features = ["sink"] }
18+
futures-core = { path = "../futures-core", version = "0.3.31", default-features = false }
19+
futures-task = { path = "../futures-task", version = "0.3.31", default-features = false }
20+
futures-channel = { path = "../futures-channel", version = "0.3.31", default-features = false, features = ["sink"] }
21+
futures-executor = { path = "../futures-executor", version = "0.3.31", default-features = false, optional = true }
22+
futures-io = { path = "../futures-io", version = "0.3.31", default-features = false }
23+
futures-sink = { path = "../futures-sink", version = "0.3.31", default-features = false }
24+
futures-util = { path = "../futures-util", version = "0.3.31", default-features = false, features = ["sink"] }
2525

2626
[dev-dependencies]
2727
futures-executor = { path = "../futures-executor", features = ["thread-pool"] }

futures/tests/macro-reexport/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "macro-reexport"
3-
version = "0.1.0"
3+
version = "0.0.0"
44
edition = "2018"
55
publish = false
66

futures/tests/macro-tests/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "macro-tests"
3-
version = "0.1.0"
3+
version = "0.0.0"
44
edition = "2018"
55
publish = false
66

futures/tests/no-std/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "no-std"
3-
version = "0.1.0"
3+
version = "0.0.0"
44
edition = "2018"
55
publish = false
66

0 commit comments

Comments
 (0)