• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 0.7.10 (October 24th, 2023)
2
3### Added
4
5- task: add `TaskTracker` ([#6033])
6- task: add `JoinMap::keys` ([#6046])
7- io: implement `Seek` for `SyncIoBridge` ([#6058])
8
9### Changed
10
11- deps: update hashbrown to 0.14 ([#6102])
12
13[#6033]: https://github.com/tokio-rs/tokio/pull/6033
14[#6046]: https://github.com/tokio-rs/tokio/pull/6046
15[#6058]: https://github.com/tokio-rs/tokio/pull/6058
16[#6102]: https://github.com/tokio-rs/tokio/pull/6102
17
18# 0.7.9 (September 20th, 2023)
19
20### Added
21
22- io: add passthrough `AsyncRead`/`AsyncWrite` to `InspectWriter`/`InspectReader` ([#5739])
23- task: add spawn blocking methods to `JoinMap` ([#5797])
24- io: pass through traits for `StreamReader` and `SinkWriter` ([#5941])
25- io: add `SyncIoBridge::into_inner` ([#5971])
26
27### Fixed
28
29- sync: handle possibly dangling reference safely ([#5812])
30- util: fix broken intra-doc link ([#5849])
31- compat: fix clippy warnings ([#5891])
32
33### Documented
34
35- codec: Specify the line ending of `LinesCodec` ([#5982])
36
37[#5739]: https://github.com/tokio-rs/tokio/pull/5739
38[#5797]: https://github.com/tokio-rs/tokio/pull/5797
39[#5941]: https://github.com/tokio-rs/tokio/pull/5941
40[#5971]: https://github.com/tokio-rs/tokio/pull/5971
41[#5812]: https://github.com/tokio-rs/tokio/pull/5812
42[#5849]: https://github.com/tokio-rs/tokio/pull/5849
43[#5891]: https://github.com/tokio-rs/tokio/pull/5891
44[#5982]: https://github.com/tokio-rs/tokio/pull/5982
45
46# 0.7.8 (April 25th, 2023)
47
48This release bumps the MSRV of tokio-util to 1.56.
49
50### Added
51
52- time: add `DelayQueue::peek` ([#5569])
53
54### Changed
55
56This release contains one performance improvement:
57
58- sync: try to lock the parent first in `CancellationToken` ([#5561])
59
60### Fixed
61
62- time: fix panic in `DelayQueue` ([#5630])
63
64### Documented
65
66- sync: improve `CancellationToken` doc on child tokens ([#5632])
67
68[#5561]: https://github.com/tokio-rs/tokio/pull/5561
69[#5569]: https://github.com/tokio-rs/tokio/pull/5569
70[#5630]: https://github.com/tokio-rs/tokio/pull/5630
71[#5632]: https://github.com/tokio-rs/tokio/pull/5632
72
73# 0.7.7 (February 12, 2023)
74
75This release reverts the removal of the `Encoder` bound on the `FramedParts`
76constructor from [#5280] since it turned out to be a breaking change. ([#5450])
77
78[#5450]: https://github.com/tokio-rs/tokio/pull/5450
79
80# 0.7.6 (February 10, 2023)
81
82This release fixes a compilation failure in 0.7.5 when it is used together with
83Tokio version 1.21 and unstable features are enabled. ([#5445])
84
85[#5445]: https://github.com/tokio-rs/tokio/pull/5445
86
87# 0.7.5 (February 9, 2023)
88
89This release fixes an accidental breaking change where `UnwindSafe` was
90accidentally removed from `CancellationToken`.
91
92### Added
93- codec: add `Framed::backpressure_boundary` ([#5124])
94- io: add `InspectReader` and `InspectWriter` ([#5033])
95- io: add `tokio_util::io::{CopyToBytes, SinkWriter}` ([#5070], [#5436])
96- io: impl `std::io::BufRead` on `SyncIoBridge` ([#5265])
97- sync: add `PollSemaphore::poll_acquire_many` ([#5137])
98- sync: add owned future for `CancellationToken` ([#5153])
99- time: add `DelayQueue::try_remove` ([#5052])
100
101### Fixed
102- codec: fix `LengthDelimitedCodec` buffer over-reservation ([#4997])
103- sync: impl `UnwindSafe` on `CancellationToken` ([#5438])
104- util: remove `Encoder` bound on `FramedParts` constructor ([#5280])
105
106### Documented
107- io: add lines example for `StreamReader` ([#5145])
108
109[#4997]: https://github.com/tokio-rs/tokio/pull/4997
110[#5033]: https://github.com/tokio-rs/tokio/pull/5033
111[#5052]: https://github.com/tokio-rs/tokio/pull/5052
112[#5070]: https://github.com/tokio-rs/tokio/pull/5070
113[#5124]: https://github.com/tokio-rs/tokio/pull/5124
114[#5137]: https://github.com/tokio-rs/tokio/pull/5137
115[#5145]: https://github.com/tokio-rs/tokio/pull/5145
116[#5153]: https://github.com/tokio-rs/tokio/pull/5153
117[#5265]: https://github.com/tokio-rs/tokio/pull/5265
118[#5280]: https://github.com/tokio-rs/tokio/pull/5280
119[#5436]: https://github.com/tokio-rs/tokio/pull/5436
120[#5438]: https://github.com/tokio-rs/tokio/pull/5438
121
122# 0.7.4 (September 8, 2022)
123
124### Added
125
126- io: add `SyncIoBridge::shutdown()` ([#4938])
127- task: improve `LocalPoolHandle` ([#4680])
128
129### Fixed
130
131- util: add `track_caller` to public APIs ([#4785])
132
133### Unstable
134
135- task: fix compilation errors in `JoinMap` with Tokio v1.21.0 ([#4755])
136- task: remove the unstable, deprecated `JoinMap::join_one` ([#4920])
137
138[#4680]: https://github.com/tokio-rs/tokio/pull/4680
139[#4755]: https://github.com/tokio-rs/tokio/pull/4755
140[#4785]: https://github.com/tokio-rs/tokio/pull/4785
141[#4920]: https://github.com/tokio-rs/tokio/pull/4920
142[#4938]: https://github.com/tokio-rs/tokio/pull/4938
143
144# 0.7.3 (June 4, 2022)
145
146### Changed
147
148- tracing: don't require default tracing features ([#4592])
149- util: simplify implementation of `ReusableBoxFuture` ([#4675])
150
151### Added (unstable)
152
153- task: add `JoinMap` ([#4640], [#4697])
154
155[#4592]: https://github.com/tokio-rs/tokio/pull/4592
156[#4640]: https://github.com/tokio-rs/tokio/pull/4640
157[#4675]: https://github.com/tokio-rs/tokio/pull/4675
158[#4697]: https://github.com/tokio-rs/tokio/pull/4697
159
160# 0.7.2 (May 14, 2022)
161
162This release contains a rewrite of `CancellationToken` that fixes a memory leak. ([#4652])
163
164[#4652]: https://github.com/tokio-rs/tokio/pull/4652
165
166# 0.7.1 (February 21, 2022)
167
168### Added
169
170- codec: add `length_field_type` to `LengthDelimitedCodec` builder ([#4508])
171- io: add `StreamReader::into_inner_with_chunk()` ([#4559])
172
173### Changed
174
175- switch from log to tracing ([#4539])
176
177### Fixed
178
179- sync: fix waker update condition in `CancellationToken` ([#4497])
180- bumped tokio dependency to 1.6 to satisfy minimum requirements ([#4490])
181
182[#4490]: https://github.com/tokio-rs/tokio/pull/4490
183[#4497]: https://github.com/tokio-rs/tokio/pull/4497
184[#4508]: https://github.com/tokio-rs/tokio/pull/4508
185[#4539]: https://github.com/tokio-rs/tokio/pull/4539
186[#4559]: https://github.com/tokio-rs/tokio/pull/4559
187
188# 0.7.0 (February 9, 2022)
189
190### Added
191
192- task: add `spawn_pinned` ([#3370])
193- time: add `shrink_to_fit` and `compact` methods to `DelayQueue` ([#4170])
194- codec: improve `Builder::max_frame_length` docs ([#4352])
195- codec: add mutable reference getters for codecs to pinned `Framed` ([#4372])
196- net: add generic trait to combine `UnixListener` and `TcpListener` ([#4385])
197- codec: implement `Framed::map_codec` ([#4427])
198- codec: implement `Encoder<BytesMut>` for `BytesCodec` ([#4465])
199
200### Changed
201
202- sync: add lifetime parameter to `ReusableBoxFuture` ([#3762])
203- sync: refactored `PollSender<T>` to fix a subtly broken `Sink<T>` implementation ([#4214])
204- time: remove error case from the infallible `DelayQueue::poll_elapsed` ([#4241])
205
206[#3370]: https://github.com/tokio-rs/tokio/pull/3370
207[#4170]: https://github.com/tokio-rs/tokio/pull/4170
208[#4352]: https://github.com/tokio-rs/tokio/pull/4352
209[#4372]: https://github.com/tokio-rs/tokio/pull/4372
210[#4385]: https://github.com/tokio-rs/tokio/pull/4385
211[#4427]: https://github.com/tokio-rs/tokio/pull/4427
212[#4465]: https://github.com/tokio-rs/tokio/pull/4465
213[#3762]: https://github.com/tokio-rs/tokio/pull/3762
214[#4214]: https://github.com/tokio-rs/tokio/pull/4214
215[#4241]: https://github.com/tokio-rs/tokio/pull/4241
216
217# 0.6.10 (May 14, 2021)
218
219This is a backport for the memory leak in `CancellationToken` that was originally fixed in 0.7.2. ([#4652])
220
221[#4652]: https://github.com/tokio-rs/tokio/pull/4652
222
223# 0.6.9 (October 29, 2021)
224
225### Added
226
227- codec: implement `Clone` for `LengthDelimitedCodec` ([#4089])
228- io: add `SyncIoBridge`  ([#4146])
229
230### Fixed
231
232- time: update deadline on removal in `DelayQueue` ([#4178])
233- codec: Update stream impl for Framed to return None after Err ([#4166])
234
235[#4089]: https://github.com/tokio-rs/tokio/pull/4089
236[#4146]: https://github.com/tokio-rs/tokio/pull/4146
237[#4166]: https://github.com/tokio-rs/tokio/pull/4166
238[#4178]: https://github.com/tokio-rs/tokio/pull/4178
239
240# 0.6.8 (September 3, 2021)
241
242### Added
243
244- sync: add drop guard for `CancellationToken` ([#3839])
245- compact: added `AsyncSeek` compat ([#4078])
246- time: expose `Key` used in `DelayQueue`'s `Expired` ([#4081])
247- io: add `with_capacity` to `ReaderStream` ([#4086])
248
249### Fixed
250
251- codec: remove unnecessary `doc(cfg(...))` ([#3989])
252
253[#3839]: https://github.com/tokio-rs/tokio/pull/3839
254[#4078]: https://github.com/tokio-rs/tokio/pull/4078
255[#4081]: https://github.com/tokio-rs/tokio/pull/4081
256[#4086]: https://github.com/tokio-rs/tokio/pull/4086
257[#3989]: https://github.com/tokio-rs/tokio/pull/3989
258
259# 0.6.7 (May 14, 2021)
260
261### Added
262
263- udp: make `UdpFramed` take `Borrow<UdpSocket>` ([#3451])
264- compat: implement `AsRawFd`/`AsRawHandle` for `Compat<T>` ([#3765])
265
266[#3451]: https://github.com/tokio-rs/tokio/pull/3451
267[#3765]: https://github.com/tokio-rs/tokio/pull/3765
268
269# 0.6.6 (April 12, 2021)
270
271### Added
272
273- util: makes `Framed` and `FramedStream` resumable after eof ([#3272])
274- util: add `PollSemaphore::{add_permits, available_permits}` ([#3683])
275
276### Fixed
277
278- chore: avoid allocation if `PollSemaphore` is unused ([#3634])
279
280[#3272]: https://github.com/tokio-rs/tokio/pull/3272
281[#3634]: https://github.com/tokio-rs/tokio/pull/3634
282[#3683]: https://github.com/tokio-rs/tokio/pull/3683
283
284# 0.6.5 (March 20, 2021)
285
286### Fixed
287
288- util: annotate time module as requiring `time` feature ([#3606])
289
290[#3606]: https://github.com/tokio-rs/tokio/pull/3606
291
292# 0.6.4 (March 9, 2021)
293
294### Added
295
296- codec: `AnyDelimiter` codec ([#3406])
297- sync: add pollable `mpsc::Sender` ([#3490])
298
299### Fixed
300
301- codec: `LinesCodec` should only return `MaxLineLengthExceeded` once per line ([#3556])
302- sync: fuse PollSemaphore ([#3578])
303
304[#3406]: https://github.com/tokio-rs/tokio/pull/3406
305[#3490]: https://github.com/tokio-rs/tokio/pull/3490
306[#3556]: https://github.com/tokio-rs/tokio/pull/3556
307[#3578]: https://github.com/tokio-rs/tokio/pull/3578
308
309# 0.6.3 (January 31, 2021)
310
311### Added
312
313- sync: add `ReusableBoxFuture` utility ([#3464])
314
315### Changed
316
317- sync: use `ReusableBoxFuture` for `PollSemaphore` ([#3463])
318- deps: remove `async-stream` dependency ([#3463])
319- deps: remove `tokio-stream` dependency ([#3487])
320
321# 0.6.2 (January 21, 2021)
322
323### Added
324
325- sync: add pollable `Semaphore` ([#3444])
326
327### Fixed
328
329- time: fix panics on updating `DelayQueue` entries ([#3270])
330
331# 0.6.1 (January 12, 2021)
332
333### Added
334
335- codec: `get_ref()`, `get_mut()`, `get_pin_mut()` and `into_inner()` for
336  `Framed`, `FramedRead`, `FramedWrite` and `StreamReader` ([#3364]).
337- codec: `write_buffer()` and `write_buffer_mut()` for `Framed` and
338  `FramedWrite` ([#3387]).
339
340# 0.6.0 (December 23, 2020)
341
342### Changed
343- depend on `tokio` 1.0.
344
345### Added
346- rt: add constructors to `TokioContext` (#3221).
347
348# 0.5.1 (December 3, 2020)
349
350### Added
351- io: `poll_read_buf` util fn (#2972).
352- io: `poll_write_buf` util fn with vectored write support (#3156).
353
354# 0.5.0 (October 30, 2020)
355
356### Changed
357- io: update `bytes` to 0.6 (#3071).
358
359# 0.4.0 (October 15, 2020)
360
361### Added
362- sync: `CancellationToken` for coordinating task cancellation (#2747).
363- rt: `TokioContext` sets the Tokio runtime for the duration of a future (#2791)
364- io: `StreamReader`/`ReaderStream` map between `AsyncRead` values and `Stream`
365  of bytes (#2788).
366- time: `DelayQueue` to manage many delays (#2897).
367
368# 0.3.1 (March 18, 2020)
369
370### Fixed
371
372- Adjust minimum-supported Tokio version to v0.2.5 to account for an internal
373  dependency on features in that version of Tokio. ([#2326])
374
375# 0.3.0 (March 4, 2020)
376
377### Changed
378
379- **Breaking Change**: Change `Encoder` trait to take a generic `Item` parameter, which allows
380  codec writers to pass references into `Framed` and `FramedWrite` types. ([#1746])
381
382### Added
383
384- Add futures-io/tokio::io compatibility layer. ([#2117])
385- Add `Framed::with_capacity`. ([#2215])
386
387### Fixed
388
389- Use advance over split_to when data is not needed. ([#2198])
390
391# 0.2.0 (November 26, 2019)
392
393- Initial release
394
395[#3487]: https://github.com/tokio-rs/tokio/pull/3487
396[#3464]: https://github.com/tokio-rs/tokio/pull/3464
397[#3463]: https://github.com/tokio-rs/tokio/pull/3463
398[#3444]: https://github.com/tokio-rs/tokio/pull/3444
399[#3387]: https://github.com/tokio-rs/tokio/pull/3387
400[#3364]: https://github.com/tokio-rs/tokio/pull/3364
401[#3270]: https://github.com/tokio-rs/tokio/pull/3270
402[#2326]: https://github.com/tokio-rs/tokio/pull/2326
403[#2215]: https://github.com/tokio-rs/tokio/pull/2215
404[#2198]: https://github.com/tokio-rs/tokio/pull/2198
405[#2117]: https://github.com/tokio-rs/tokio/pull/2117
406[#1746]: https://github.com/tokio-rs/tokio/pull/1746
407