Releases: AArnott/Nerdbank.MessagePack
Releases · AArnott/Nerdbank.MessagePack
v0.2.2-alpha
What's Changed
Fixes
- Add exhaustive test cases and fix stack overflow by @AArnott in #52
- Fix
BigInteger
serialization for very large values by @AArnott in #64 - Fix assembly version precision in analyzers by @AArnott in #70
Enhancements
- A bunch of new analyzers
- Add migration doc, analyzer, and code fix to automate migration from MessagePack-CSharp by @AArnott in #63
- Avoid serializing properties that cannot be deserialized by @AArnott in #60
- Accept values to be serialized with
in
instead ofref
by @AArnott in #61 - Offer automatic secure hash functions by @AArnott in #57
- Add
RawMessagePack
struct for deferred deserialization by @AArnott in #68 - Add default constructor to MessagePackSerializationException by @AArnott in #58
Other changes
- Rename converter methods to Read and Write by @AArnott in #66
- Switch dependency from typeshape-csharp to PolyType by @AArnott in #51
- Remove last remnants of "ExtensionFormat" naming pattern by @AArnott in #62
- Bump version to 0.2 by @AArnott in #75
Full Changelog: v0.1.734-alpha...v0.2.2-alpha
v0.1.734-alpha
What's Changed
- Enable registering custom converters by @AArnott in #27
- Add support for inflating pre-created collections in the deserializer by @AArnott in #29
- Add
MessagePackConverterAttribute
to prescribe default custom converters for custom types by @AArnott in #44 - Provide custom converters a means to delegate sub-values by @AArnott in #46
- Offer camelCase property name transformation by @AArnott in #47
New analyzers
- Add NBMsgPack002 analyzer: Avoid
[Key]
on non-serialized members by @AArnott in #39 - Add NBMsgPack003 analyzer:
[Key]
index must be unique by @AArnott in #41 - Add
[KnownSubType]
attribute analyzers by @AArnott in #43
Full Changelog: v0.1.705-alpha...v0.1.734-alpha
v0.1.705-alpha
What's Changed
This is our initial release. Your feedback is most welcome!
Features
- Serializes in the compact and fast MessagePack format.
- Performance is on par with the highly tuned and popular MessagePack-CSharp library.
- Automatically serialize any type annotated with the TypeShape-csharp
[GenerateShape]
attribute. - Automatically serialize non-annotated types by adding a 'witness' type with a similar annotation.
- Fast
ref
-based serialization and deserialization minimizes copying of large structs. - NativeAOT and trimming compatible.
- Keep memory pressure low by using async serialization directly to/from I/O like a network, IPC pipe or file.
- Primitive msgpack reader and writer APIs for low-level scenarios.
- Author custom converters for advanced scenarios.
- Security mitigations for stack overflows.
- Optionally serialize your custom types as arrays of values instead of maps of names and value for more compact representation and even higher performance.
- Support for serializing instances of certain types derived from the declared type and deserializing them back to their original runtime types using unions.
New Contributors
- @github-actions made their first contribution in #2
Full Changelog: https://github.com/AArnott/Nerdbank.MessagePack/commits/v0.1.705-alpha