bytechomp
mashumaro
bytechomp | mashumaro | |
---|---|---|
2 | 3 | |
35 | 729 | |
- | - | |
2.2 | 9.4 | |
5 months ago | 11 days ago | |
Python | Python | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
bytechomp
-
bytechomp: A pure python, declarative custom binary protocol parser using dataclasses and type hinting.
Take a look here and feel free to submit issues with bugs or suggestions. Thanks!
-
Sunday Daily Thread: What's everyone working on this week?
Last week I went ahead and released a package I have been working on for a while called bytechomp. It is a dataclass-based wrapper around python's struct module for parsing binary data streams. This week I intend on getting my github CI flow working better to do automatic releases to PyPI.
mashumaro
- DotDict: A simple Python library to make chained attributes possible
-
apischema v0.17 - I've developed the fastest typed JSON (de)serialization library, and you can also build your GraphQL schema with it
This month, I've released version 0.17, and it's now blazing fast; there is in fact no more comparison with Pydantic, which more than 5x slower (up to 30x in serialization). It's also faster than alternatives like mashumaro or cattrs. (See the quick benchmark result in documentation, and the code)
-
I use attrs instead of pydantic
Having run into these issues with Pydantic, we've been using Mashumaro[1], which, while not having all the bells and whistles of Pydantic, has served us pretty well.
1: https://github.com/Fatal1ty/mashumaro
What are some alternatives?
bstruct - Simple and efficient binary (de)serialization using type annotations.
msgspec - A fast serialization and validation library, with builtin support for JSON, MessagePack, YAML, and TOML
pypacker
marshmallow - A lightweight library for converting complex objects to and from simple Python datatypes.
danio - Danio is a ORM for python asyncio world.
orjson - Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy
cattrs - Composable custom class converters for attrs.
ultrajson - Ultra fast JSON decoder and encoder written in C with Python bindings
python-rapidjson - Python wrapper around rapidjson
serpy - ridiculously fast object serialization
typing - Python static typing home. Hosts the documentation and a user help forum.
pysimdjson - Python bindings for the simdjson project.