Vue d'ensemble

msgspec 0.4, publié le 8 février 2022, ajoute un module JSON dédié et réorganise l'architecture du package.

Fonctionnalités principales

Module JSON

Le nouveau module msgspec.json fournit un encodeur/décodeur JSON rapide avec validation de type intégrée.

python
import msgspec

class User(msgspec.Struct):
    name: str
    age: int

# Encodage/décodage JSON typé
data = msgspec.json.encode(User('Alice', 30))
print(data)  # b'{"name":"Alice","age":30}'

user = msgspec.json.decode(data, type=User)
print(user)  # User(name='Alice', age=30)

Réorganisation

Le package est réorganisé avec des sous-modules dédiés : msgspec.json, msgspec.msgpack.

python
import msgspec

# JSON
msgspec.json.encode({'key': 'value'})

# MessagePack
msgspec.msgpack.encode({'key': 'value'})

Sources