Skip to main content

A Python package that standardizes data serialization and deserialization from/to pydantic models.

Project description

pydantic-serdes

pydantic-serdes is a Pydantic-based tool designed to act as a conduit between serialized data and Python objects. It not only facilitates the transformation of complex serialized data into Python objects, but also ensures stringent data validation. Think of it as the wizard that transports your data from the realm of serialization into the world of Python, and vice-versa, all the while maintaining the integrity and structure of your data.

DISCLAMER: Please note that this package was previously named serial_bus until version 0.2.0. To improve communication and disambiguation, it has been renamed to pydantic-serdes.

Install

pip:

pip install pydantic-serdes

poetry:

poetry add pydantic-serdes

Features

  • Pydantic Integration: Converting serialized data into Python objects is the oldest trick in the book, but pydantic-serdes elevates this process by directly converting the data into Pydantic models (and vice-versa), which brings the added advantage of robust data validation. The models used in this process are defined by classes that inherit from either the PydanticSerdesBaseModel or PydanticSerdesRenderableModel. This not only provides flexibility in setting up behaviors for your data, but also ensures data integrity through Pydantic's validation mechanisms.

  • Built-in Support for Multiple Formats: Currently, it supports loading serialized data from JSON, YAML, TOML and INI. While future support for other formats is planned, if you need to cover additional formats, or even provide your own parsing business logic, this can be easily achieved by extending pydantic-serdes basic coverage with your own loader and/or dumper functions. Speaking of which...

  • Extensibility: The code was thought to allow for ease of extensibility. For more information and examples, refer to the documentation below.

pydantic-serdes

Quick Start

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydantic_serdes-1.0.0.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

pydantic_serdes-1.0.0-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file pydantic_serdes-1.0.0.tar.gz.

File metadata

  • Download URL: pydantic_serdes-1.0.0.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.11.6 Darwin/23.4.0

File hashes

Hashes for pydantic_serdes-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1b96ab4febf3e84a5e09633247dd0b85c6f45df400705fc983ba0d089b5e70f0
MD5 82c3d00df928a4a1b903b74d5374c8cd
BLAKE2b-256 d3610d8dd428598be9214fd051411cdaa39abfda870cb8a999b01c09f7319989

See more details on using hashes here.

Provenance

File details

Details for the file pydantic_serdes-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pydantic_serdes-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 20.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.0 CPython/3.11.6 Darwin/23.4.0

File hashes

Hashes for pydantic_serdes-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0b7a47616d8cccf6a7824bcbfe5caa105dd5937411d5caa227e55fd025cb9985
MD5 48394c21baa75fca5c3be62aa04ec6fc
BLAKE2b-256 c792b26c82e46df69485a9224ba7c61d2f82a0088717e320c672b0ce56869cfa

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page