Skip to main content
Help improve PyPI by participating in a 5-minute user interface survey!

Python data validation with web in-mind

Project Description

travis coverage pyver

Validation library for processing http endpoint arguments.

from flask import Flask

from covador import split, opt
from covador.flask import query_string

app = Flask(__name__)

@app.route('/')
@query_string(foo=opt(split(int), []))
def csv_argument(foo):
    return repr(foo)

# GET /?foo=1,2,3 -> [1, 2, 3]

if __name__ == '__main__':
    app.run()
  • Support for flask, django, aiohttp, tornado and sanic.
  • Simple creating of custom query_string/form/params/json_body/rparams wrappers.
  • Multi dict support via item multi param.
  • Multi dict keys support via item src param.
  • Simple interface for custom validators/processors it’s just a callable.
  • Maps, typed Maps, Lists, Tuples, Enums.
  • Validation chains: opt(default=[]) | split(separator=' ') | List(int) | (lambda it: it[:10]) or more concise opt(split(int, separator=' '), []) | operator.itemgetter(slice(10)) — an optional argument of space separated integers and we need top 10 items from it and it is empty by default.
  • Literal schema: schema(foo=[{'boo': int}]), validates {'foo': [{'boo': 10}, {'boo': 20}]}.
  • Bytes/unicode aware.

Release history Release notifications

This version
History Node

0.9.18

History Node

0.9.17

History Node

0.9.16

History Node

0.9.15

History Node

0.9.14

History Node

0.9.13

History Node

0.9.12

History Node

0.9.11

History Node

0.9.10

History Node

0.9.9

History Node

0.9.8

History Node

0.9.7

History Node

0.9.6

History Node

0.9.5

History Node

0.9.2

History Node

0.9.1

History Node

0.9.0

History Node

0.8.3

History Node

0.8.2

History Node

0.8.1

History Node

0.8.0

History Node

0.7.5

History Node

0.7.1

History Node

0.7

History Node

0.6.1

History Node

0.6

History Node

0.5.dev0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
covador-0.9.18.tar.gz (10.7 kB) Copy SHA256 hash SHA256 Source None Apr 17, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page