- Support unhashable `Annotated` metadata in `msgspec.inspect.type_info` (566).
- Fix bug preventing decoding dataclasses/attrs types with default values and `slots=True, frozen=True` (569).
- Support passing parametrized generic struct types to `msgspec.structs.fields` (571).
- Validate `str` constraints on dict keys when decoding msgpack (577).
- Support `UUID` subclasses as inputs to `msgspec.convert` (592).
- Call `__eq__` from generated `__ne__` if user defines manual `__eq__` method on a `Struct` type (593).
- Include the `Struct` type in the generated hash (595).
- Add a `cache_hash` struct option (596).
- Fix a bug around caching of dataclass type info when dealing with subclasses of dataclasses (599).
- Add `msgspec.structs.force_setattr` (600).
- Support custom dict key types in JSON encoder and decoder (602).
- Include `dict` key constraints in generated JSON schema via the `propertyNames` field (604).
- Add a `schema_hook` for generating JSON schemas for custom types (605).
- Add support for Python 3.12's `type` aliases (606).