Releases: vigna/epserde-rs
0.11.5
0.11.4
0.11.3
0.11.1
0.11.0
[0.11.0] - 2025-10-03
New
- Thanks to const blocks, the previous runtime check for a deep-type type being
a candidate for zero-copy is now a static assertion. This is a significant
improvement, but it requires a major release as previous code might not
compile anymore.
0.10.4
Change Log
[0.10.4] - 2025-09-30
New
- The attributes
zero_copyanddeep_copywere dangerously commonly named,
and they have been replaced byepserde_zero_copyandepserde_deep_copy.
The old names are still supported but deprecated, and will be removed in a
future release. There are deprecation warnings, but unfortunately for the time
being they will only appear on nightly.
Changed
- Revamped examples; new
schemafeature for enabling schema printing.
0.10.3
0.10.2
[0.10.2] - 2025-09-26
Fixed
-
Restored previous type hash of string (only for use with
PhantomData). -
Added back previous type hashes for
strand[T]for use with
PhantomData. -
Revised bound propagation (again).
-
Renamed
MaxSizeOftoAlignToas it includes results from
std::mem::align_of.
Changed
- The indices of ranges and bounds from the standard library can now be
deep-copy.
0.10.1
0.10.0
Change Log
[0.10.0] - 2025-09-25
New
-
New delegations of standard-library traits to
MemCase; in particular,
AsRefandDerefare back, but with a slightly different semantics, as
the implementationDerefforMemCase<S>has target
S::DeserType<_>::Target, and analogously forAsRef. -
New strategy for
MemCase::encase, which uses a transparent wrapperOwned
to bring back the original functionality. -
New
SerTypetype alias, analogous toDeserType. -
Major internal code restructuring:
TypeHash/AlignHash/MaxSizeOfare now
computed on the serialization type, not on the serializable type. -
New convenience serialization implementation for
&str, in the same vain as
that for&[T].
Changed
-
Major disruptive change: vectors and boxed slices have now the same
serialization type. This makes them interchangeable at will in
(de)serialization, which is an extremely useful feature. Unfortunately, old
instances with replaceable type parameters whose concrete type is a vector
will no longer be deserializable. The same happens forStringand
Box<str>. -
CopyTypeis now unsafe as there is no way to check a type contains
no references. -
reprattributes are now sorted lexicographically. This change was
necessary as the order of such attributes is irrelevant, but it might make
impossible to deserialize old instances whose type specifiesreprattributes
in a different order. -
A few
TypeHash/AlignHashimplementation that were not really necessary
have been removed.
Fixed
- The
nostdfeature now works.