- Added
to_lazy_value
- Removed
Error::IsDescribedvariant
- Added
LazyValuetype.
- Fix warning caused by changes to never type fallback for edition 2024
- Fixed bug caused by not creating new
SizeSerializerinSerializeSeq::serialize_element(issue #279)
- Fixed empty
Arraynot deserialized properly (issue #277)
- Changed return types of functions in
serde_amqp::read::Readtrait - Drain
IoReaderandSliceReadereven whenread_exactfails
- Fixed a bug with value serializer that doesn't handle nested composite type properly
- Removed deprecated
removeandremove_entryinOrderedMap
- Unified versioning with other
fe2o3-amqpcrates
- Backported
0.9.1
- Mark
removeandremove_entryas deprecated inOrderedMap - Added
swap_removeandswap_remove_entryinOrderedMap - Added
shift_removeandshift_remove_entryinOrderedMap
- Unified versioning with other
fe2o3-amqpcrates - Changed
Valuevariants to strictly follow the rust naming convention - Updated
ordered-floatto "4" - Updated
indexmapto "2"
- Fixed a bug where
strandbytesof lengthu8::MAXare serialized incorrectly asstr8-utf8andvbin8, respectively. After the fix,strandbyteswith length less than or equal tou8::MAX - 1are serialized asstr8-utf8andvbin8, respectively.strandbyteswith length greater than or equal tou8::MAXand less thanu32::MAX - 4are serialized asstr32-utf8andvbin32, respectively.
- Fixed clippy warnings
- Changed
From<Described<Value>> for ValuetoFrom<Described<T>> for Value where T: Into<Value>
- Added
Borrow<str>impl for&'a SymbolRef<'b>
- Changed conversion from
Timestamptotime::OffsetDateTimeto infallible
- Updated macro to "0.2.1" to allow using raw u64 as the descriptor code (ie.
0x0000_0000_0000_0000)
- Added "chrono-preview" feature to reflect deprecation of
from_timestampinchronocrate.
- Fixed a bug where variable length types like str or vbin doesn't handle boundary condition at u8::MAX
- Added
serialized_sizemethod that returns the size of the serialized data without actually serializing it to a buffer
- Added feature gated conversion impls for
Timestampfrom/tochrono::DateTimechrono::Durationtime::OffsetDateTimetime::Duration
- Added feature gated conversion impls for
Uuidfrom/touuid::Uuid
- Fixed #117 with
serde_amqp_derive = "0.2.0" - Added
extensions::TransparentVectype that is feature gated behind"extensions"feature flag.
- Fixed a bug with serializing/deserilizing described basic wrapper that cause a bug on
AmqpValuewrapping around a custom struct
- Impl
IntoIteratorforArray<T> - Impl
TryFrom<Value>forVec<T>,Array<T>, andOrderedMap<K,V>
- Changed
Readtrait to reflectUnexpectedEofas aNone
- Added
BinaryRef<'a>which allows serialize/deserialize as bytes on the wrapped&[u8], and implementsLowerHexandUpperHexformatting. - Added
LowerHexandUpperHexformatting forserde_amqp::primitives::Uuid
- Added
impl<'a> From<SymbolRef<'a>> for Symbol
- Bug fixes (Breaking)
- Switched from
Value::Map(BTreeMap<Value, Value>)toValue::Map(OrderedMap<Value, Value>)to preserve the encoded order
- Switched from
- New features
- Added
OrderedMapwhich is a wrapper aroundIndexMapwith custom implementation of some traits - More
TryFrom<Value>impl for common map types
- Added
- Made constant
VALUEpublic for possible downstream uses
- Breaking Changes
- For consistencies, changed:
EncodingCodes::Ulong0toEncodingCodes::Ulong0EncodingCodes::SmallUlongtoEncodingCodes::SmallUlongEncodingCodes::Uint0toEncodingCodes::Uint0EncodingCodes::SmallUinttoEncodingCodes::SmallUint
- For consistencies, changed:
- Added
impl From<Array/Vec/BTreeMap> for Value - Fixed cannot deserialize
Array<Value>withserde_json
- Fixed typos in Readme
- Added
Borrow<str>impl forSymbolandSymbolRef
- Added
SymbolRefwhich takes a&strinstead ofString - Added impl of
TryFromforValuevariant types
- Instead of clearing
IoReaderbuffer, only drain thelenneeded.
- Breaking bug fixes
Array<T>deserializes a single standalone instance ofT(one that is not encoded inside anArray) into anArrayof one element (#75)- Fixed
IoReader::forward_read_bytesandIoReader::forward_read_strnot clearing buffer after forwarding
- Added
DerefandDerefMutimpl forArrayandSymbol
- Fixed #69
- Fixed clippy warnings except for too_many_arguments
- Moved
Boxoutside theDescribed
- Passed
amqp-types-testandamqp-large-content-test
- Fixed a bug where deserializing a
Valuetype doesn't resetDeserializer'senum_typefield.
- Fixed a bug with deserializing small and negative values for
i32andi64
- Fixed bug in macro where a described value of Null will be treated as if it is a field that has default value and then end up returning an error.
- Updated dependencies
ordered-floatto "3"uuidto "1"
- Added
FromIteratorimpl forArray
- (forgot)
- Made
serde_amqp::read::{IoReader, SliceReader}public.
- Added
#![deny(missing_docs, missing_debug_implementations)]
- Fixed a bug where
uuidcannot be properly deserialized because it depends onis_human_readable()to figure out whether the encoded format is binary or string.
- Fixed documentation bug