Skip to content

Latest commit

 

History

History
463 lines (310 loc) · 14.1 KB

CHANGELOG.md

File metadata and controls

463 lines (310 loc) · 14.1 KB

0.7.12 (September 5th, 2024)

This release bumps the MSRV to 1.70. (#6645)

Added

  • sync: Add run_until_cancelled to tokio_util::sync::CancellationToken (#6618)
  • task: add AbortOnDropHandle type (#6786)

Changed

  • deps: no default features for hashbrown (#6541)
  • time: wake DelayQueue when removing last item (#6752)
  • deps: enable the full feature when compiled for the playground (#6818)

Documented

  • task: fix typo in TaskTracker docs (#6792)

0.7.11 (May 4th, 2024)

This release updates the MSRV to 1.63. (#6126)

Added

  • either: implement Sink for Either (#6239)
  • time: add DelayQueue::deadline (#6163)
  • time: add FutureExt::timeout (#6276)

Changed

  • codec: assert compatibility between LengthDelimitedCodec options (#6414)
  • codec: make tracing feature optional for codecs (#6434)
  • io: add T: ?Sized to tokio_util::io::poll_read_buf (#6441)
  • sync: remove 'static bound on impl Sink for PollSender (#6397)

Documented

  • codec: add examples for FramedRead and FramedWrite (#6310)
  • codec: document cancel safety of SinkExt::send and StreamExt::next (#6417)

0.7.10 (October 24th, 2023)

Added

  • task: add TaskTracker (#6033)
  • task: add JoinMap::keys (#6046)
  • io: implement Seek for SyncIoBridge (#6058)

Changed

  • deps: update hashbrown to 0.14 (#6102)

0.7.9 (September 20th, 2023)

Added

  • io: add passthrough AsyncRead/AsyncWrite to InspectWriter/InspectReader (#5739)
  • task: add spawn blocking methods to JoinMap (#5797)
  • io: pass through traits for StreamReader and SinkWriter (#5941)
  • io: add SyncIoBridge::into_inner (#5971)

Fixed

  • sync: handle possibly dangling reference safely (#5812)
  • util: fix broken intra-doc link (#5849)
  • compat: fix clippy warnings (#5891)

Documented

  • codec: Specify the line ending of LinesCodec (#5982)

0.7.8 (April 25th, 2023)

This release bumps the MSRV of tokio-util to 1.56.

Added

  • time: add DelayQueue::peek (#5569)

Changed

This release contains one performance improvement:

  • sync: try to lock the parent first in CancellationToken (#5561)

Fixed

  • time: fix panic in DelayQueue (#5630)

Documented

  • sync: improve CancellationToken doc on child tokens (#5632)

0.7.7 (February 12, 2023)

This release reverts the removal of the Encoder bound on the FramedParts constructor from #5280 since it turned out to be a breaking change. (#5450)

0.7.6 (February 10, 2023)

This release fixes a compilation failure in 0.7.5 when it is used together with Tokio version 1.21 and unstable features are enabled. (#5445)

0.7.5 (February 9, 2023)

This release fixes an accidental breaking change where UnwindSafe was accidentally removed from CancellationToken.

Added

  • codec: add Framed::backpressure_boundary (#5124)
  • io: add InspectReader and InspectWriter (#5033)
  • io: add tokio_util::io::{CopyToBytes, SinkWriter} (#5070, #5436)
  • io: impl std::io::BufRead on SyncIoBridge (#5265)
  • sync: add PollSemaphore::poll_acquire_many (#5137)
  • sync: add owned future for CancellationToken (#5153)
  • time: add DelayQueue::try_remove (#5052)

Fixed

  • codec: fix LengthDelimitedCodec buffer over-reservation (#4997)
  • sync: impl UnwindSafe on CancellationToken (#5438)
  • util: remove Encoder bound on FramedParts constructor (#5280)

Documented

  • io: add lines example for StreamReader (#5145)

0.7.4 (September 8, 2022)

Added

  • io: add SyncIoBridge::shutdown() (#4938)
  • task: improve LocalPoolHandle (#4680)

Fixed

  • util: add track_caller to public APIs (#4785)

Unstable

  • task: fix compilation errors in JoinMap with Tokio v1.21.0 (#4755)
  • task: remove the unstable, deprecated JoinMap::join_one (#4920)

0.7.3 (June 4, 2022)

Changed

  • tracing: don't require default tracing features (#4592)
  • util: simplify implementation of ReusableBoxFuture (#4675)

Added (unstable)

0.7.2 (May 14, 2022)

This release contains a rewrite of CancellationToken that fixes a memory leak. (#4652)

0.7.1 (February 21, 2022)

Added

  • codec: add length_field_type to LengthDelimitedCodec builder (#4508)
  • io: add StreamReader::into_inner_with_chunk() (#4559)

Changed

  • switch from log to tracing (#4539)

Fixed

  • sync: fix waker update condition in CancellationToken (#4497)
  • bumped tokio dependency to 1.6 to satisfy minimum requirements (#4490)

0.7.0 (February 9, 2022)

Added

  • task: add spawn_pinned (#3370)
  • time: add shrink_to_fit and compact methods to DelayQueue (#4170)
  • codec: improve Builder::max_frame_length docs (#4352)
  • codec: add mutable reference getters for codecs to pinned Framed (#4372)
  • net: add generic trait to combine UnixListener and TcpListener (#4385)
  • codec: implement Framed::map_codec (#4427)
  • codec: implement Encoder<BytesMut> for BytesCodec (#4465)

Changed

  • sync: add lifetime parameter to ReusableBoxFuture (#3762)
  • sync: refactored PollSender<T> to fix a subtly broken Sink<T> implementation (#4214)
  • time: remove error case from the infallible DelayQueue::poll_elapsed (#4241)

0.6.10 (May 14, 2021)

This is a backport for the memory leak in CancellationToken that was originally fixed in 0.7.2. (#4652)

0.6.9 (October 29, 2021)

Added

  • codec: implement Clone for LengthDelimitedCodec (#4089)
  • io: add SyncIoBridge (#4146)

Fixed

  • time: update deadline on removal in DelayQueue (#4178)
  • codec: Update stream impl for Framed to return None after Err (#4166)

0.6.8 (September 3, 2021)

Added

  • sync: add drop guard for CancellationToken (#3839)
  • compact: added AsyncSeek compat (#4078)
  • time: expose Key used in DelayQueue's Expired (#4081)
  • io: add with_capacity to ReaderStream (#4086)

Fixed

  • codec: remove unnecessary doc(cfg(...)) (#3989)

0.6.7 (May 14, 2021)

Added

  • udp: make UdpFramed take Borrow<UdpSocket> (#3451)
  • compat: implement AsRawFd/AsRawHandle for Compat<T> (#3765)

0.6.6 (April 12, 2021)

Added

  • util: makes Framed and FramedStream resumable after eof (#3272)
  • util: add PollSemaphore::{add_permits, available_permits} (#3683)

Fixed

  • chore: avoid allocation if PollSemaphore is unused (#3634)

0.6.5 (March 20, 2021)

Fixed

  • util: annotate time module as requiring time feature (#3606)

0.6.4 (March 9, 2021)

Added

  • codec: AnyDelimiter codec (#3406)
  • sync: add pollable mpsc::Sender (#3490)

Fixed

  • codec: LinesCodec should only return MaxLineLengthExceeded once per line (#3556)
  • sync: fuse PollSemaphore (#3578)

0.6.3 (January 31, 2021)

Added

  • sync: add ReusableBoxFuture utility (#3464)

Changed

  • sync: use ReusableBoxFuture for PollSemaphore (#3463)
  • deps: remove async-stream dependency (#3463)
  • deps: remove tokio-stream dependency (#3487)

0.6.2 (January 21, 2021)

Added

  • sync: add pollable Semaphore (#3444)

Fixed

  • time: fix panics on updating DelayQueue entries (#3270)

0.6.1 (January 12, 2021)

Added

  • codec: get_ref(), get_mut(), get_pin_mut() and into_inner() for Framed, FramedRead, FramedWrite and StreamReader (#3364).
  • codec: write_buffer() and write_buffer_mut() for Framed and FramedWrite (#3387).

0.6.0 (December 23, 2020)

Changed

  • depend on tokio 1.0.

Added

  • rt: add constructors to TokioContext (#3221).

0.5.1 (December 3, 2020)

Added

  • io: poll_read_buf util fn (#2972).
  • io: poll_write_buf util fn with vectored write support (#3156).

0.5.0 (October 30, 2020)

Changed

  • io: update bytes to 0.6 (#3071).

0.4.0 (October 15, 2020)

Added

  • sync: CancellationToken for coordinating task cancellation (#2747).
  • rt: TokioContext sets the Tokio runtime for the duration of a future (#2791)
  • io: StreamReader/ReaderStream map between AsyncRead values and Stream of bytes (#2788).
  • time: DelayQueue to manage many delays (#2897).

0.3.1 (March 18, 2020)

Fixed

  • Adjust minimum-supported Tokio version to v0.2.5 to account for an internal dependency on features in that version of Tokio. (#2326)

0.3.0 (March 4, 2020)

Changed

  • Breaking Change: Change Encoder trait to take a generic Item parameter, which allows codec writers to pass references into Framed and FramedWrite types. (#1746)

Added

  • Add futures-io/tokio::io compatibility layer. (#2117)
  • Add Framed::with_capacity. (#2215)

Fixed

  • Use advance over split_to when data is not needed. (#2198)

0.2.0 (November 26, 2019)

  • Initial release