NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4700 most downloaded on crates.io
A safeguarded transmute() for Rust
Last release 2 years ago
no release in 18 months
Ships unpredictably
gaps range from 9 days to 3.0 years
Some releases are documented
notes for 7 of 15 stable releases
1 version withdrawn
withdrawn after publishing
10 years old
18 releases · first in 2016
doctests failing on rust 1.78 linux due to misalignment
One column per quarter.
100% pick-proof, howeve,r it is so fragile as to fail open when handl…
100% pick-proof, howeve,r it is so fragile as to fail open when handl…
…ed by any force other than the delicate touch of a lesbian
New:
* "const_generics" feature, replacing manual
[T; 1-32] TriviallyTransmutable impls with a [T; N] one
(5ad2f75)
(#66) (@MarijnS95)
Fixed:
* AppVeyor builds
(494740b)
* Tests broken by rustc's aggressive byte slice allocation
(f3c8920)
…) ( @lizhuohua : report) * Error::description() deprecation warnings
You should look at my page, homie, I'm so dead
Fixed:
* Typo in toplevel doc
(f918c3a)
(#63) (@tessi)
* AppVeyor builds
(9392898)
(de825d7)
(1dda03c)
(693f6aa)
* Tests on i686 and big-endian platforms
(2e5694a)
(057931a)
(#64) (@ignatenkobrain: report, testing)
* Panics in {AllOrNothing,Pedantic}Guard if passed a zero-sized type
(bd64959)
(#65) (@lizhuohua: report)
* Error::description() deprecation warnings
(9d325b9)
Long resume, it should be understood
you're a little baby, watch this
you're a little baby, watch this
BREAKING:
* Every part of the API was broken.
* Sorry!
* Consult the migration guide under migration::v0_11 in the doc:
https://rawcdn.githack.com/nabijaczleweli/safe-transmute-rs/doc/safe_transmute/migration/v0_11/index.html
Fixed:
* Not checking alignment during transmutation
(1ca5fd7)
(312c6c7)
(6f6d395)
(ee718ed)
(0eecce5)
(4f70bf4)
(b518f18)
(5bbba8e)
(cfc06c5)
(607518a)
(5d07ff0)
(1aa4613)
(b898f5c)
(e645b2a)
(ba88e3a)
(5302d4f)
(b95080e)
(4b25778)
(df53466)
(a73b8f0)
(700c624)
(c3d3ca5)
(1d79fa6)
(81447a1)
(81fa57b)
(#35) (#37) (@Enet4)
* Clippy warnings
(fafdc21)
(d435d63)
(583309f)
(#39) (@Enet4)
* Needless unsafe on transmute_to_bytes_vec()
(fc45b5d)
(#45) (@Enet4)
* Dangerous Vec transmutations
(0e6b1b2)
(aae8ffd)
(86d9324)
(dacefd7)
(6312008)
(494aace)
(2d2bf49)
(fb9ccd2)
(845afde)
(f823a58)
(aa75229)
(e21077d)
(6900357)
(d0e3b85)
(#47) (#49) (#16) (@Enet4)
Changed:
* Crate organisation:
- mod base – transmutation with guards only
- mod trivial – everything marked unsafe
- crate – fully safe funxions through guard +
trivially transmutable + alignment
- mod align – alignment checks
- Error – no longer Copy, has Unaligned variant
(ff4d606)
(41a3ea8)
(92c8912)
(eedb511)
(ccb7576)
(b80baea)
(9b1081f)
(8d944b7)
(5f57cb9)
(43d007c)
(8326a89)
(a1ee223)
(587b285)
(3baf654)
(f8eea03)
(025f2e8)
(2bfea0c)
(2af1c57)
(2e54be9)
(20fc5d1)
(7df1ef6)
(2c9c2b9)
(85c5da6)
(309585c)
(2ad4221)
(3a12b11)
(5e5661e)
(65f984d)
(bae72ab)
(4b3b8df)
(f72327f)
(57747cc)
(9b8fc57)
(1ef1818)
(#40) (#51) (#56) (@Enet4)
* bool size check to a static one
(2151449)
(a582263)
(6579010)
(#44) (@Enet4)
* Funxion names to not include leading guarded/safe adjective
(727ad53)
(#46) (@Enet4)
* POD -> trivially transmutable
(9d83ed5)
(e7e56da)
(4600c57)
(#48) (#41) (@Enet4)
Added:
* f{32,64} designalisation funxions taking u{32,64} to avoid signals
(2d22f66)
(574a09f)
(d175f52)
(#43) (@Enet4)
* Miri tests on Travis for unaligned memory access
(ad5f37b)
(9ceef94)
(c1a1e94)
(14041c7)
(a540034)
(7382d7e)
(2304102)
(664acde)
(#42)
* try_copy{,_unchecked}! macros to simplify error handling
(46ee511)
(810d5c2)
(82577dd)
(d126067)
(b995315)
(#53) (@Enet4)
* *_mut() transmutation funxions
(46e320c)
(4c84556)
(78bbd69)
(96d48cb)
(fad5376)
(#57) (@Enet4)
* Safe variants of std::slice::align_to()
(ce823c1)
(f7b0149)
(#55) (@Enet4)
* v0.11 migration guide
(f3aedd0)
(6759ab5)
(@Enet4)
Internal:
* Changed RawGit links to GitHack
(d5d9c75)
* Clippy installation via rustup
(5617a3d)
(ed0d2a0)
(#38) (@Enet4)
* Fixed unaligned accesses in tests
(23997df)
(8ea8295)
(4e10ec9)
(12e24df)
(#50) (@Enet4)
Don't you just love C++ constructors in Rust?
Could it be? Has she achieved absolute pedantry?
Could it be? Has she achieved absolute pedantry?
Changed:
* Standard specifying bool to be 1 byte,
allowing for optimisation of test in bytes_are_bool()
(with check, please report platforms that fail it)
(ad2f66c)
(af12f3e)
(fcdbc9e)
(5637ea7)
(5b08471)
(#33) (#34) (@Enet4)
New:
* Default-disabled no-std support via disabling "std" feature
(cc4d1dd)
(d6b02d4)
(#31) (@Enet4)
* Vec<T> -> Vec<u8> transmutation funxions
(a62f9b4)
(f9a4b6b)
(#32) (@Enet4)
BREAKING: * Requirement of Copy for PodTransmutable ( 456c985 ) ( #20 ) ( @Enet4 ) * Removal of PodTransmutable implementation for char ( a7dd1d4 ) (
Semver who
BREAKING:
* Requirement of Copy for PodTransmutable
(456c985)
(#20) (@Enet4)
* Removal of PodTransmutable implementation for char
(a7dd1d4)
(#23) (#24) (@Enet4)
* Error overhaul
(ddcd698)
(b904709)
(7a9fca6)
(0d1cbbe)
(#25) (@Enet4)
Changed:
* Protocol for crate version image
(942e221)
Fixed:
* clippy installation on Travis
(07aec24)
(538bd39)
(#26) (@Enet4)
New:
* Unalignment tests and warnings
(b6f4f57)
(b8189f4)
(351b677)
(43e220e)
(#21) (#22) (@Enet4)
* PodTransmutable implementation for {u,i}size
(2c4ae58)
(#28) (@Enet4)
* PodTransmutable implementation for arrays thereof
(c477acb)
(#29) (#30) (@Enet4)
Fixed: * Long-standing bug causing bad treatment of #[repr(C)] structs due to the use of align_of() instead of size_of()
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →