Releases: 3Hren/msgpack-rust
Releases · 3Hren/msgpack-rust
GitHub fails to update which release is the latest. Ignore this, look up at the hidden tags
Mindbender Ghur'sha
Changed
- Upper limit for serde version.
Fixed
- Use the most effective int encoding
Even if the value is explicitly marked as i64 it must be encoded using
the most effective bytes representation despite of signed it or
unsigned.
Wrath Timewalker
Changed
-
Use
to_ownedinstead ofto_stringwhile convertingValueRefintoValue.
This change improvesValueRef::to_owned()method performance by approximately 10-20%.Also after this commit it's cheaper to decode directly into
ValueRefwith further converting to owned value rather than decoding directly intoValue.
Savage
Changed
- Serializer can now be extended with custom struct encoding policy.
- Improved error types and its messages for serialization part.
- New error type introduced - UnknownLength. Returned on attempt to serialize struct, map or serquence with unknown
length (Serde allows this). - The new type is returned if necessary.
- New error type introduced - UnknownLength. Returned on attempt to serialize struct, map or serquence with unknown
Fixed
- Deserializer now properly works with enums.
- Options with default values (that can be initialized using unit marker) deserialization.
This fix also forbids the following Option deserialization cases:- Option<()>.
- Option<Option<...>>.
It's impossible to properly deserialize the listed cases without explicit option marker in protocol.
- Serializer now properly serializes unit structs.
Previously it was serialized as a unit (nil), now there is just an empty array ([]).
Yogg-Saron
Added
- Initial support for Serde serializer and deserializer.
- Efficient bytes serialization with Serde.
- Efficient binaries deserialization with Serde using
ByteBuf. - Rust serialize Decoder now can provide the underlying reader both by reference or by value, destroying itself in the last case.
Changed
- Update well-formness for
BigEndianReadtrait to be implemented only for sized types. - Renamed
PositiveFixnummarker toFixPos. - Renamed
NegativeFixnummarker toFixNeg. - Renamed
FixedStringmarker toFixStr. - Renamed
FixedArraymarker toFixArray. - Renamed
FixedMaptoFixMap. - Minor documentation updates and markdown fixes.
Illidari Council
Changed
- Now the
rustc_serialize::Encodershould encode signed integers using the most effective underlying representation. - Now the
rustc_serialize::Decodershould properly map integers to the result type if the decoded value fits in
result type's range.