1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ Releases may yanked if there is a security bug, a soundness bug, or a regression.
6
+
7
+ <!--
8
+ Note: In this file, do not use the hard wrap in the middle of a sentence for compatibility with GitHub comment style markdown rendering.
9
+ -->
10
+
1
11
# 0.3.31 - 2024-10-05
2
12
3
13
* Fix use after free of task in ` FuturesUnordered ` when dropped future panics (#2886 )
13
23
14
24
# 0.3.30 - 2023-12-24
15
25
26
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
27
+
16
28
* Add ` {BiLock,SplitStream,SplitSink,ReadHalf,WriteHalf}::is_pair_of ` (#2797 )
17
29
* Fix panic in ` FuturesUnordered::clear ` (#2809 )
18
30
* Fix panic in ` AsyncBufReadExt::fill_buf ` (#2801 , #2812 )
21
33
22
34
# 0.3.29 - 2023-10-26
23
35
36
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
37
+
24
38
* Add ` TryStreamExt::try_ready_chunks ` (#2757 )
25
39
* Add ` TryStreamExt::{try_all,try_any} ` (#2783 )
26
40
* Add ` UnboundedSender::{len,is_empty} ` (#2750 )
30
44
31
45
# 0.3.28 - 2023-03-30
32
46
47
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
48
+
33
49
* Update to syn 2. This raises MSRV of utility crates to 1.56. (#2730 , #2733 )
34
50
* Fix bug in ` FlattenUnordered ` (#2726 , #2728 )
35
51
36
52
# 0.3.27 - 2023-03-11
37
53
54
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
55
+
38
56
* Add ` TryFlattenUnordered ` (#2577 , #2590 , #2606 , #2607 )
39
57
* Add ` AbortHandle::is_aborted ` (#2710 )
40
58
* Add ` AbortRegistration::handle ` (#2712 )
41
59
* Make ` BiLock ` strict-provenance compatible (#2716 )
42
60
43
61
# 0.3.26 - 2023-01-30
44
62
63
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
64
+
45
65
* Add ` Either::as_pin_mut ` and ` Either::as_pin_ref ` (#2691 )
46
66
* Add ` Shared::ptr_eq ` and ` Shared::ptr_hash ` (#2691 )
47
67
* Implement ` FusedStream ` for ` Buffered ` (#2676 )
52
72
53
73
# 0.3.25 - 2022-10-20
54
74
75
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
76
+
55
77
* Fix soundness issue in ` join! ` and ` try_join! ` macros (#2649 )
56
78
* Implement ` Clone ` for ` sink::Drain ` (#2650 )
57
79
58
80
# 0.3.24 - 2022-08-29
59
81
82
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
83
+
60
84
* Fix incorrect termination of ` select_with_strategy ` streams (#2635 )
61
85
62
86
# 0.3.23 - 2022-08-14
63
87
88
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
89
+
64
90
* Work around MSRV increase due to a cargo bug.
65
91
66
92
# 0.3.22 - 2022-08-14
67
93
94
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
95
+
68
96
* Fix ` Sync ` impl of ` BiLockGuard ` (#2570 )
69
97
* Fix partial iteration in ` FuturesUnordered ` (#2574 )
70
98
* Fix false detection of inner panics in ` Shared ` (#2576 )
82
110
83
111
# 0.3.21 - 2022-02-06
84
112
113
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
114
+
85
115
* Fix potential data race in ` FlattenUnordered ` that introduced in 0.3.20 (#2566 )
86
116
87
117
# 0.3.20 - 2022-02-06
88
118
89
- NOTE: This release has been yanked due to a bug fixed in 0.3.21.
119
+ ** Note: ** This release has been yanked due to a bug fixed in 0.3.21.
90
120
91
121
* Fix stacked borrows violations when ` -Zmiri-tag-raw-pointers ` is enabled. This raises MSRV of ` futures-task ` to 1.45. (#2548 , #2550 )
92
122
* Change ` FuturesUnordered ` to respect yielding from future (#2551 )
93
123
* Add ` StreamExt::{flatten_unordered, flat_map_unordered} ` (#2083 )
94
124
95
125
# 0.3.19 - 2021-12-18
96
126
127
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
128
+
97
129
* Remove unstable ` read-initializer ` feature (#2534 )
98
130
* Fix panic in ` FuturesUnordered ` (#2535 )
99
131
* Fix compatibility issue with ` FuturesUnordered ` and tokio's cooperative scheduling (#2527 )
100
132
* Add ` StreamExt::count ` (#2495 )
101
133
102
134
# 0.3.18 - 2021-11-23
103
135
104
- NOTE: This release has been yanked. See #2529 for details.
136
+ ** Note: ** This release has been yanked. See #2529 for details.
105
137
106
138
* Fix unusable ` Sink ` implementation on ` stream::Scan ` (#2499 )
107
139
* Make ` task::noop_waker_ref ` available without ` std ` feature (#2505 )
@@ -110,6 +142,8 @@ NOTE: This release has been yanked. See #2529 for details.
110
142
111
143
# 0.3.17 - 2021-08-30
112
144
145
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
146
+
113
147
* Use ` FuturesOrdered ` in ` join_all ` (#2412 )
114
148
* Add ` {future, stream}::poll_immediate ` (#2452 )
115
149
* Add ` stream_select! ` macro (#2262 )
@@ -119,13 +153,17 @@ NOTE: This release has been yanked. See #2529 for details.
119
153
120
154
# 0.3.16 - 2021-07-23
121
155
156
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
157
+
122
158
* Add ` TryStreamExt::try_chunks ` (#2438 )
123
159
* Add ` StreamExt::{all, any} ` (#2460 )
124
160
* Add ` stream::select_with_strategy ` (#2450 )
125
161
* Update to new ` io_slice_advance ` interface (#2454 )
126
162
127
163
# 0.3.15 - 2021-05-11
128
164
165
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
166
+
129
167
* Use ` #[proc_macro] ` at Rust 1.45+ to fix an issue where proc macros don't work with rust-analyzer (#2407 )
130
168
* Support targets that do not have atomic CAS on stable Rust (#2400 )
131
169
* futures-test: Add async ` #[test] ` function attribute (#2409 )
@@ -141,6 +179,8 @@ NOTE: This release has been yanked. See #2529 for details.
141
179
142
180
# 0.3.14 - 2021-04-10
143
181
182
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
183
+
144
184
* Add ` future::SelectAll::into_inner ` (#2363 )
145
185
* Allow calling ` UnboundedReceiver::try_next ` after ` None ` (#2369 )
146
186
* Reexport non-Ext traits from the root of ` futures_util ` (#2377 )
@@ -149,6 +189,8 @@ NOTE: This release has been yanked. See #2529 for details.
149
189
150
190
# 0.3.13 - 2021-02-23
151
191
192
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
193
+
152
194
* Mitigated starvation issues in ` FuturesUnordered ` (#2333 )
153
195
* Fixed race with dropping ` mpsc::Receiver ` (#2304 )
154
196
* Added ` Shared::{strong_count, weak_count} ` (#2346 )
@@ -157,21 +199,25 @@ NOTE: This release has been yanked. See #2529 for details.
157
199
158
200
# 0.3.12 - 2021-01-15
159
201
202
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
203
+
160
204
* Fixed ` Unpin ` impl of ` future::{MaybeDone, TryMaybeDone} ` where trait bounds were accidentally added in 0.3.9. (#2317 )
161
205
162
206
# 0.3.11 - 2021-01-14
163
207
208
+ ** Note:** This release of futures-util has been yanked due to a bug fixed in 0.3.31 and a compile failure with futures-task 0.3.31 and later.
209
+
164
210
* Fixed heap buffer overflow in ` AsyncReadExt::{read_to_end, read_to_string} ` (#2314 )
165
211
166
212
# 0.3.10 - 2021-01-13
167
213
168
- NOTE: This release has been yanked. See #2310 for details.
214
+ ** Note: ** This release has been yanked. See #2310 for details.
169
215
170
216
* Fixed type-inference in ` sink::unfold ` by specifying more of its types (breaking change -- see #2311 )
171
217
172
218
# 0.3.9 - 2021-01-08
173
219
174
- NOTE: This release has been yanked. See #2310 for details.
220
+ ** Note: ** This release has been yanked. See #2310 for details.
175
221
176
222
* Significantly improved compile time when ` async-await ` crate feature is disabled (#2273 )
177
223
* Added ` stream::repeat_with ` (#2279 )
@@ -184,7 +230,7 @@ NOTE: This release has been yanked. See #2310 for details.
184
230
185
231
# 0.3.8 - 2020-11-04
186
232
187
- NOTE: This release has been yanked. See #2310 for details.
233
+ ** Note: ** This release has been yanked. See #2310 for details.
188
234
189
235
* Switched proc-macros to use native ` #[proc_macro] ` at Rust 1.45+ (#2243 )
190
236
* Added ` WeakShared ` (#2169 )
@@ -195,15 +241,15 @@ NOTE: This release has been yanked. See #2310 for details.
195
241
196
242
# 0.3.7 - 2020-10-23
197
243
198
- NOTE: This release has been yanked. See #2310 for details.
244
+ ** Note: ** This release has been yanked. See #2310 for details.
199
245
200
246
* Fixed unsoundness in ` MappedMutexGuard ` (#2240 )
201
247
* Re-exported ` TakeUntil ` (#2235 )
202
248
* futures-test: Prevent double panic in ` panic_waker ` (#2236 )
203
249
204
250
# 0.3.6 - 2020-10-06
205
251
206
- NOTE: This release has been yanked. See #2310 for details.
252
+ ** Note: ** This release has been yanked. See #2310 for details.
207
253
208
254
* Fixed UB due to missing 'static on ` task::waker ` (#2206 )
209
255
* Added ` AsyncBufReadExt::fill_buf ` (#2225 )
@@ -219,7 +265,7 @@ NOTE: This release has been yanked. See #2310 for details.
219
265
220
266
# 0.3.5 - 2020-05-08
221
267
222
- NOTE: This release has been yanked. See #2310 for details.
268
+ ** Note: ** This release has been yanked. See #2310 for details.
223
269
224
270
* Added ` StreamExt::flat_map ` .
225
271
* Added ` StreamExt::ready_chunks ` .
@@ -239,19 +285,19 @@ NOTE: This release has been yanked. See #2310 for details.
239
285
240
286
# 0.3.4 - 2020-02-06
241
287
242
- NOTE: This release has been yanked. See #2310 for details.
288
+ ** Note: ** This release has been yanked. See #2310 for details.
243
289
244
290
* Fixed missing ` Drop ` for ` UnboundedReceiver ` (#2064 )
245
291
246
292
# 0.3.3 - 2020-02-04
247
293
248
- NOTE: This release has been yanked. See #2310 for details.
294
+ ** Note: ** This release has been yanked. See #2310 for details.
249
295
250
296
* Fixed compatibility issue with pinned facade (#2062 )
251
297
252
298
# 0.3.2 - 2020-02-03
253
299
254
- NOTE: This release has been yanked. See #2310 for details.
300
+ ** Note: ** This release has been yanked. See #2310 for details.
255
301
256
302
* Improved buffering performance of ` SplitSink ` (#1969 )
257
303
* Added ` select_biased! ` macro (#1976 )
@@ -272,13 +318,13 @@ NOTE: This release has been yanked. See #2310 for details.
272
318
273
319
# 0.3.1 - 2019-11-07
274
320
275
- NOTE: This release has been yanked. See #2310 for details.
321
+ ** Note: ** This release has been yanked. See #2310 for details.
276
322
277
323
* Fix signature of ` SpawnExt ` and ` LocalSpawnExt ` trait (breaking change -- see #1959 )
278
324
279
325
# 0.3.0 - 2019-11-05
280
326
281
- NOTE: This release has been yanked. See #2310 for details.
327
+ ** Note: ** This release has been yanked. See #2310 for details.
282
328
283
329
* Stable release along with stable async/await!
284
330
* Added async/await to default features (#1953 )
0 commit comments