You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add to_builtins function for converting messages composed of any supported type to ones composed of only simple builtin types commonly supported by Python serialization libraries (#258).
Add from_builtins function for converting and validating messages composed of simple builtin types to ones composed of any type msgspec supports (#266, #302).
Add msgspec.yaml module for encoding/decoding YAML (#267).
Add msgspec.toml module for encoding/decoding TOML (#268).
Add msgspec.structs.replace function for creating a copy of an existing Struct with some changes applied (#262).
Add msgspec.structs.asdict and msgspec.structs.astuple functions for converting a struct instance to a dict or tuple respectively (#300).
Support arbitrarily nested typing.NewType/typing.Annotated types (#272).
Improve error message for invalid keyword arguments passed to Struct.__init__ (#273).
Support default_factory configuration for Struct fields (#274).
BREAKING: With the exception of empty builtin collections ([], {}, set(), bytearray()), mutable default values in Struct types are no longer deepcopied when used. If a different mutable default value is needed, please configure a default_factory instead (#274).
Improve performance of creating Structs with default parameters (#274).
Support typing.ClassVar annotations of Struct types (#281).
Support encoding/decoding decimal.Decimal types (#288).
Support "abstract" type annotations like collections.abc.MutableMapping/typing.MutableMapping in decoders (#290).
Support any string-like or int-like type as a dict key when encoding or decoding JSON (#292).
Improved performance encoding large collections in JSON and MessagePack encoders (#294, #298).