All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Add
serialize_into
- Add the
proptest
feature flag to opt-outproptest
impls
- Fix Variable Capture bug for "value" struct field name
- Add more docs
- Add
impl Default for Value
- Indexing must return the last value
- Add
Index
impls formsgpack_value::Value
- Restore
msgpack_schema::value
as a hidden module.
- Add more docs
- Add
Deserializer::{try_deserialize, deserialize_any}
- Remove
msgpack_schema::value
module. Usemsgpack_value
instead.
- Turn
Token
into a non-owning type. - Use last-value-wins strategy for duplicate keys. (following JSON)
- Add
msgpack-value
crate - Implement
proptest::arbitrary::Arbitrary
formsgpack_value::Value
and others - Implement
Serialize
andDeserialize
forBox
,Rc
, andArc
- Add more tests
- Bump Rust edition to 2021 (no user-facing changes)
- Add
value::Empty
- Support tuple structs (with more than one field)
- Report errors when there are attributes in an invalid position
- (experimental) Add
schema
attribute - Support
#[flatten]
- Remove
Serialize
andDeserialize
impls forOption<T>
- Fix Cargo dependency bound.
- Add
Ext
type. - Support untagged structs.
- Hide
msgpack
macro. - All inherent methods of
Token
.
- Change the types of
serialize
anddeserialize
. Serialize
never throws an error.DeserializeError
no longer contains detailed information.Deserializer
andSerializer
are now structs.
- Restore
DeserializeError::InvalidValue
as a unit variant.
- Remove
DeserializeError::InvalidValue
to allow theDeserializeError
type to beSend
andSync
.
- Add
msgpack
macro.
- Remove
BinarySerializer
andBinaryDeserializer
. Useserialize
anddeserialize
instead.
- Fix serialization of 0-length map value
- Fix deserialization of FixExt8 and FixExt16
- Fix doc test failure.
This release mainly includes doc improvements and typo fixes.
Value
TryFromValueError
value::{Serializer, Deserializer, serialize, deserialize}
- Move
Any
tovalue::Any
- Move
Nil
tovalue::Nil
- Add a blanket implementation
impl<T: Serialize> Serialize for &T
Initial version