must_use
attributes tosplit
,split_off
, andsplit_to
methods (#337).
- Potential freeing of a null pointer in
Bytes
when constructed with an emptyVec<u8>
(#341, #342). - Calling
Bytes::truncate
with a size large than the length will no longer clear theBytes
(#333).
Limit
methodsinto_inner
,get_ref
,get_mut
,limit
, andset_limit
(#325).
- Growth documentation for
BytesMut
(#321)
- Potential overflow in
copy_to_slice
- Increased minimum supported Rust version to 1.39.
Bytes
is now a "trait object", allowing for custom allocation strategies (#298)BytesMut
implicitly grows internal storage.remaining_mut()
returnsusize::MAX
(#316).BufMut::bytes_mut
returns&mut [MaybeUninit<u8>]
to reflect the unknown initialization state (#305).Buf
/BufMut
implementations for&[u8]
and&mut [u8]
respectively (#261).- Move
Buf
/BufMut
"extra" functions to an extension trait (#306). BufMutExt::limit
(#309).Bytes::slice
takes aRangeBounds
argument (#265).Bytes::from_static
is now aconst fn
(#311).- A multitude of smaller performance optimizations.
no_std
support (#281).get_*
,put_*
,get_*_le
, andput_*le
accessors for handling byte order.BorrowMut
implementation forBytesMut
(#185).
IntoBuf
(#288).Buf
implementation for&str
(#301).byteorder
dependency (#280).iovec
dependency, usestd::IoSlice
instead (#263).- optional
either
dependency (#315). - optional
i128
feature -- now available on stable. (#276).
- Implement
FromIterator<&'a u8>
forBytesMut
/Bytes
(#244). - Implement
Buf
forVecDeque
(#249).
- Use raw pointers for potentially racy loads (#233).
- Implement
BufRead
forbuf::Reader
(#232). - Documentation tweaks (#234).
- impl
Buf
andBufMut
forEither
(#225). - Add
Bytes::slice_ref
(#208).
- Add 128 bit number support behind a feature flag (#209).
- Implement
IntoBuf
for&mut [u8]
- Fix panic in
BytesMut
FromIterator
implementation. - Bytes: Recycle space when reserving space in vec mode (#197).
- Bytes: Add resize fn (#203).
- Make
Buf
andBufMut
usable as trait objects (#186). - impl BorrowMut for BytesMut (#185).
- Improve accessor performance (#195).
- Implement FromIterator for Bytes/BytesMut (#148).
- Add
advance
fn to Bytes/BytesMut (#166). - Add
unsplit
fn toBytesMut
(#162, #173). - Improvements to Bytes split fns (#92).
- Fix range bug in
Take::bytes
- Misc performance improvements
- Add extra
PartialEq
implementations. - Add
Bytes::with_capacity
- Implement
AsMut[u8]
forBytesMut
- Add serde support behind feature flag
- Add
extend_from_slice
onBytes
andBytesMut
- Add
truncate
andclear
onBytes
- Misc additional std trait implementations
- Misc performance improvements
- Fix Vec::advance_mut bug
- Bump minimum Rust version to 1.15
- Misc performance tweaks
- Misc performance tweaks
- Improved
Debug
implementation forBytes
- Avoid some incorrect assert panics
- Expose
buf
module and have most types available from there vs. root. - Implement
IntoBuf
forT: Buf
. - Add
FromBuf
andBuf::collect
. - Add iterator adapter for
Buf
. - Add scatter/gather support to
Buf
andBufMut
. - Add
Buf::chain
. - Reduce allocations on repeated calls to
BytesMut::reserve
. - Implement
Debug
for more types. - Remove
Source
in favor ofIntoBuf
. - Implement
Extend
forBytesMut
.
- Initial release