msgspec
msgspec copied to clipboard
A fast serialization and validation library, with builtin support for JSON, MessagePack, YAML, and TOML
With this change, the tests run for me on a local build of Python 3.14. There are a lot of failures related to sys.getrefcount() but that seems to be an...
This is related to https://docs.python.org/3.14/whatsnew/3.14.html#whatsnew314-refcount Created via: sed -Ei 's/sys\.getrefcount\(([^\)]+)\) == ([0-9]+)/sys.getrefcount(\1)
Fixes at least some of the failures reported in: https://github.com/jcrist/msgspec/pull/852#issuecomment-2910261218 These were exposed by a bug in 3.14b1 where TypedDict reported incorrect `__annotations__` but correct `__required_keys__`. msgspec would crash in...
### Description I'm used to attrs+cattrs. I define attrs classes as a basic schema, and then I encode (unstructure) and decode (structure) those objects to/from builtin types (or JSON, or...
# Expose and Enable Inheritance of StructMeta Metaclass ## Changes - Exposed `StructMeta` metaclass to Python for direct use - Added `Py_TPFLAGS_BASETYPE` flag to enable Python inheritance of `StructMeta` -...
### Description Error while creating an object with optional filed with `min_length` meta. ```python from typing import Annotated import msgspec class Author(msgspec.Struct): name: Annotated[str, msgspec.Meta(min_length=1)] biography: Annotated[None | str, msgspec.Meta(min_length=10)]...
Hey! I have a problem when I use msgspec and Decimal. One popular solution to using Decimal is to not round the data as part of the algorithm execution and...
I am using msgspec to generate JSON schemas for MCP tools, and MCP clients don't recognize the descriptions of optional fields when they are embedded in an `anyOf`. By special-casing...
### Description It looks like something is fundamentally broken in how Struct subclasses find their fields under 3.14b1. This was observed on Arm Mac with the latest release, and Linux...
### Description need this kindly consider adding support for 32 bit also