Trafaret is a validation + conversion library. The main distinct feature of Trafaret is composability.
From base Trafaret transformers and simple functions you can construct transformer of any complexity. And dict validation is not corner stone of this library.
What's the difference between this Python project and similar ones?
There is no actually similar projects or I don't know about. Trafaret is simple and yet powerful, because of monads inside, sorry. It does not count dict as a only thing that is need care about, offer strong API first and some sugar on top of strong foundation.
To combine two trafarets you just do trafaret1 & trafaret2, or even trafaret1 | trafaret2. And any single argument function can be treated as trafaret if it raises trafaret.DataError or return value.
🔄 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/1022
**Author:** [@Deepwalker](https://github.com/Deepwalker)
**Created:** 2/14/2018
**Status:** ❌ Closed
**Base:** `master` ← **Head:** `trafaret`
---
### 📝 Commits (1)
- [`a68ca58`](https://github.com/vinta/awesome-python/commit/a68ca58bc1db74bede495b0cfc2902c93a3fb754) Add trafaret library
### 📊 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?
Trafaret is a validation + conversion library. The main distinct feature of Trafaret is composability.
From base Trafaret transformers and simple functions you can construct transformer of any complexity. And dict validation is not corner stone of this library.
## What's the difference between this Python project and similar ones?
There is no actually similar projects or I don't know about. Trafaret is simple and yet powerful, because of monads inside, sorry. It does not count dict as a only thing that is need care about, offer strong API first and some sugar on top of strong foundation.
To combine two trafarets you just do `trafaret1 & trafaret2`, or even `trafaret1 | trafaret2`. And any single argument function can be treated as trafaret if it raises trafaret.DataError or return value.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/vinta/awesome-python/pull/1022
Author: @Deepwalker
Created: 2/14/2018
Status: ❌ Closed
Base:
master← Head:trafaret📝 Commits (1)
a68ca58Add trafaret library📊 Changes
1 file changed (+1 additions, -0 deletions)
View changed files
📝
README.md(+1 -0)📄 Description
What is this Python project?
Trafaret is a validation + conversion library. The main distinct feature of Trafaret is composability.
From base Trafaret transformers and simple functions you can construct transformer of any complexity. And dict validation is not corner stone of this library.
What's the difference between this Python project and similar ones?
There is no actually similar projects or I don't know about. Trafaret is simple and yet powerful, because of monads inside, sorry. It does not count dict as a only thing that is need care about, offer strong API first and some sugar on top of strong foundation.
To combine two trafarets you just do
trafaret1 & trafaret2, or eventrafaret1 | trafaret2. And any single argument function can be treated as trafaret if it raises trafaret.DataError or return value.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.