Skip to content

Releases: tokio-rs/bytes

Bytes 1.7.1

01 Aug 20:56
dc4fb3e
Compare
Choose a tag to compare

1.7.1 (August 1, 2024)

This release reverts the following change due to a regression:

  • Reuse capacity when possible in <BytesMut as Buf>::advance impl (#698)

The revert can be found at #726.

Bytes 1.7.0

31 Jul 11:35
03fdde9
Compare
Choose a tag to compare

1.7.0 (July 31, 2024)

Added

  • Add conversion from Bytes to BytesMut (#695, #710)
  • Add reclaim method without additional allocation (#686)

Documented

  • Clarify how BytesMut::zeroed works (#714)
  • Clarify the behavior of Buf::chunk (#717)

Changed

  • Change length condition of BytesMut::truncate
  • Reuse capacity when possible in <BytesMut as Buf>::advance impl (#698)
  • Improve must_use suggestion of BytesMut::split (#699)

Internal changes

  • Use ManuallyDrop instead of mem::forget (#678)
  • Don't set len in BytesMut::reserve (#682)
  • Optimize Bytes::copy_to_bytes (#688)
  • Refactor BytesMut::truncate (#694)
  • Refactor BytesMut::resize (#696)
  • Reorder assertion in Bytes::split_to, Bytes::split_off (#689, #693)
  • Use offset_from in more places (#705)
  • Correct the wrong usage of IntoIter (#707)

Bytes 1.6.1

13 Jul 10:09
fd13c7d
Compare
Choose a tag to compare

This release fixes a bug where Bytes::is_unique returns incorrect values when the Bytes originates from a shared BytesMut. (#718)

Bytes 1.6.0 (March 22, 2024)

22 Mar 19:57
ce8d8a0
Compare
Choose a tag to compare

Added

  • Add Bytes::is_unique (#643)

Documented

  • Fix changelog typo (#628)
  • Fix some spelling mistakes (#633)
  • Typo fix (#637)
  • Fix broken links (#639)
  • Add security policy (#649)

Internal changes

  • Move comment to correct constant (#629)
  • Various cleanup (#635)
  • Simplify UninitSlice::as_uninit_slice_mut() logic (#644)
  • Use self. instead of Self:: (#642)
  • BytesMut: Assert alignment of Shared (#652)
  • Remove unnecessary namespace qualifier (#660)
  • Remove an unnecessary else branch (#662)
  • Remove unreachable else branch (#661)
  • make parameter mut in From<Vec> (#667)
  • Restore commented tests (#665)
  • Use sub instead of offset (#668)
  • Calculate original capacity only if necessary (#666)
  • set_vec_pos does not need a second parameter (#672)
  • get_vec_pos: use &self instead of &mut self (#670)
  • Refactor split_at/split_to (#663)
  • Use Iterator from the prelude (#673)
  • copy_to_bytes: Add panic section to docs (#676)
  • Remove redundant reserve call (#674)
  • Use ManuallyDrop instead of mem::forget (#675)

Bytes v1.5.0

07 Sep 08:54
74e6e20
Compare
Choose a tag to compare

1.5.0 (September 7, 2023)

Added

  • Add UninitSlice::{new,uninit} (#598, #599)
  • Implement BufMut for &mut [MaybeUninit<u8>] (#597)

Changed

  • Mark BytesMut::extend_from_slice as inline (#595)

Bytes v1.4.0

31 Jan 19:41
21ed332
Compare
Choose a tag to compare

1.4.0 (January 31, 2023)

Added

  • Make IntoIter constructor public (#581)

Fixed

  • Avoid large reallocations when freezing BytesMut (#592)

Documented

  • Document which functions require std (#591)
  • Fix duplicate "the the" typos (#585)

Bytes v1.3.0

31 Jan 19:41
9b22722
Compare
Choose a tag to compare

1.3.0 (November 20, 2022)

Added

  • Rename and expose BytesMut::spare_capacity_mut (#572)
  • Implement native-endian get and put functions for Buf and BufMut (#576)

Fixed

  • Don't have important data in unused capacity when calling reserve (#563)

Documented

  • Bytes::new etc should return Self not Bytes (#568)

Bytes v1.2.1

03 Aug 08:10
b724914
Compare
Choose a tag to compare

1.2.1 (July 30, 2022)

Fixed

  • Fix unbounded memory growth when using reserve (#560)

Bytes v1.2.0

19 Jul 11:41
38fd42a
Compare
Choose a tag to compare

1.2.0 (July 19, 2022)

Added

  • Add BytesMut::zeroed (#517)
  • Implement Extend<Bytes> for BytesMut (#527)
  • Add conversion from BytesMut to Vec<u8> (#543, #554)
  • Add conversion from Bytes to Vec<u8> (#547)
  • Add UninitSlice::as_uninit_slice_mut() (#548)
  • Add const to Bytes::{len,is_empty} (#514)

Changed

  • Reuse vector in BytesMut::reserve (#539, #544)

Fixed

Documented

  • Redraw layout diagram with box drawing characters (#539)
  • Clarify BytesMut::unsplit docs (#535)

Bytes v1.1.0

25 Aug 15:50
ebc61e5
Compare
Choose a tag to compare

1.1.0 (August 25, 2021)

Added

  • BufMut::put_bytes(self, val, cnt) (#487)
  • Implement From<Box<[u8]>> for Bytes (#504)

Changed

  • Override put_slice for &mut [u8] (#483)
  • Panic on integer overflow in Chain::remaining (#482)
  • Add inline tags to UninitSlice methods (#443)
  • Override copy_to_bytes for Chain and Take (#481)
  • Keep capacity when unsplit on empty other buf (#502)

Documented

  • Clarify BufMut allocation guarantees (#501)
  • Clarify BufMut::put_int behavior (#486)
  • Clarify actions of clear and truncate. (#508)