[PR #1044] [CLOSED] Add lupin, a serialization/deserialization library #14639

Closed
opened 2026-05-02 06:38:57 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/vinta/awesome-python/pull/1044
Author: @holinnn
Created: 4/7/2018
Status: Closed

Base: masterHead: add_lupin


📝 Commits (1)

📊 Changes

1 file changed (+1 additions, -0 deletions)

View changed files

📝 README.md (+1 -0)

📄 Description

What is this Python project?

lupin helps in serializing python objects (user classes) to native Python types (dict, list, etc.) and loading data to python complex objects.

It can also be used to validate incoming data.

What's the difference between this Python project and similar ones?

You can use your existing models (and don't need to modify them) in order to make them work with lupin.
You just have to define a schema and bind it to your class in order to make it work.

It handles polymorphic lists and associations.
For example if in one list there are a User and an Admin object, then it will be able to load and dump those objects to native python datatypes or load the list with one instance of the User class and the other one with the Admin class.

Complex validators combinations can be made in order to make the data validation process easier
For example if a field is defined with this validators combination : Equal("Lupin") | Equal("Andrésy") then the validation stage will only pass if the data is Andrésy or Lupin.

--

Anyone who agrees with this pull request could vote for it by adding a 👍 to it, and usually, the maintainer will merge it when votes reach 20.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/vinta/awesome-python/pull/1044 **Author:** [@holinnn](https://github.com/holinnn) **Created:** 4/7/2018 **Status:** ❌ Closed **Base:** `master` ← **Head:** `add_lupin` --- ### 📝 Commits (1) - [`9f564e4`](https://github.com/vinta/awesome-python/commit/9f564e49c99571fc32836525065d651979950286) Add lupin ### 📊 Changes **1 file changed** (+1 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+1 -0) </details> ### 📄 Description ## What is this Python project? [lupin](https://github.com/holinnn/lupin) helps in serializing python objects (user classes) to native Python types (dict, list, etc.) and loading data to python complex objects. It can also be used to validate incoming data. ## What's the difference between this Python project and similar ones? You can use your existing models (and don't need to modify them) in order to make them work with lupin. You just have to define a schema and bind it to your class in order to make it work. It handles polymorphic lists and associations. For example if in one list there are a `User` and an `Admin` object, then it will be able to load and dump those objects to native python datatypes or load the list with one instance of the `User` class and the other one with the `Admin` class. Complex validators combinations can be made in order to make the data validation process easier For example if a field is defined with this validators combination : `Equal("Lupin") | Equal("Andrésy")` then the validation stage will only pass if the data is `Andrésy` or `Lupin`. -- Anyone who agrees with this pull request could vote for it by adding a :+1: to it, and usually, the maintainer will merge it when votes reach **20**. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-05-02 06:38:57 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/awesome-python#14639