mirror of
https://github.com/Lokathor/bytemuck.git
synced 2024-11-22 06:42:25 +00:00
4.4 KiB
4.4 KiB
bytemuck
changelog
1.6.2
- Small goof with an errant
;
, so PR 69 actually got things working on SPIR-V.
1.6.1
1.6
- The
TransparentWrapper
trait now has more methods. More ways to wrap, and now you can "peel" too! Note that we don't call it "unwrap" because that name is too strongly associated with the Option/Result methods. Thanks to LU15W1R7H for doing PR 58 - Min Const Generics! Now there's Pod and Zeroable for arrays of any size when
you turn on the
min_const_generics
crate feature. zakarumych got the work started in PR 59, and chorman0773 finished off the task in PR 63
1.5.1
- Fix
bytes_of
failing on zero sized types. PR 53
1.5
- Added
pod_collect_to_vec
, which will gather a slice into a vec, allowing you to change the pod type while also safely ignoring alignment. PR 50
1.4.2
- Kimundi fixed an issue that could make
try_zeroed_box
stack overflow for large values at low optimization levels. PR 43
1.4.1
1.4
- icewind1991 has contributed the proc-macros
for deriving impls of
Pod
,TransparentWrapper
,Zeroable
!! Everyone has been waiting for this one folks! It's a big deal. Just enable thederive
cargo feature and then you'll be able to derive the traits on your types. It generates all the appropriate tests for you. - The
zeroable_maybe_uninit
feature now adds aZeroable
impl to theMaybeUninit
type. This is only behind a feature flag becauseMaybeUninit
didn't exist back in1.34.0
(the minimum rust version ofbytemuck
).
1.3.1
- The entire crate is now available under the
Apache-2.0 OR MIT
license as well as the previousZlib
license #24. - HeroicKatora added the
try_zeroed_slice_box
function #10.zeroed_slice_box
is also available. - The
offset_of!
macro now supports a 2-arg version. For types that impl Default, it'll just make an instance usingdefault
and then call over to the 3-arg version. - The
PodCastError
type now supportsHash
andDisplay
. Also if you enable theextern_crate_std
feature then it will supportstd::error::Error
. - We now provide a
TransparentWrapper<T>
impl forcore::num::Wrapper<T>
. - The error type of
try_from_bytes
andtry_from_bytes_mut
when the input isn't aligned has been corrected from beingAlignmentMismatch
(intended for allocation casting only) toTargetAlignmentGreaterAndInputNotAligned
.
1.3.0
- Had a bug because the CI was messed up! It wasn't soundness related, because
it prevented the crate from building entirely if the
extern_crate_alloc
feature was used. Still, this is yanked, sorry.
1.2.0
- thomcc added many things:
- A fully sound
offset_of!
macro #10 - A
Contiguous
trait for when you've got enums with declared values all in a row #12 - A
TransparentWrapper
marker trait for when you want to more clearly enable adding and removing a wrapper struct to its inner value #15 - Now MIRI is run on CI in every single push! #16
- A fully sound
1.1.0
- SimonSapin added
from_bytes
,from_bytes_mut
,try_from_bytes
, andtry_from_bytes_mut
(PR Link)
1.0.1
- Changed to the zlib license.
- Added much more proper documentation.
- Reduced the minimum Rust version to 1.34