- Improve JSON encoding performance by up to 40% (#647).
- Ensure
tuple
andfrozenset
default values are treated identically whether specified by value ordefault_factory
(#653). - Fix memory leak of
match_args
inStructConfig
object (#684). - Fix memory leak in
Raw.copy()
(#709). - Update
decode
signatures for PEP 688 (#740). - Generate
__replace__
method onStruct
types, for use withcopy.replace
(#747). - Fix incorrect decoding of certain > 64 bit integers (#751).
- Call
__post_init__
when converting from an object to a Struct (#752). - BREAKING: Expand buffer when
encode_into
is passed a buffer smaller thanoffset
(#753). - Support
Raw
objects as inputs toconvert
(#754). - Error nicely when a dataclass type (instead of an instance) is passed to
encode
(#755). - Drop support for Python 3.8 (#756, #763).
- Add support for Python 3.13 (#711).
- Remove deprecated
from_builtins
(#761). - Support encoding any
Enum
type whose.value
is a supported type (#757). - Don't fail eagerly when processing generic types with unsupported
__parameters__
(#772). - Use
eval_type_backport
to backport type annotations to Python 3.9 (#773).