Skip to main content

Highly flexible, no magic input validation library

Project description

pycerberus is a framework to check user data thoroughly so that you can protect your application from malicious (or just garbled) input data.

  • Remove stupid code which converts input values: After values are validated, you can work with real Python types instead of strings - e.g. 42 instead of ‘42’, convert database IDs to model objects transparently.

  • Implement custom validation rules: Writing custom validators is straightforward, everything is well documented and pycerberus only uses very little Python magic.

  • Focus on your value-adding application code: Save time by implementing every input validation rule only once, but 100% right instead of implementing a dozen different half-baked solutions.

  • Ready for global business: i18n support (based on GNU gettext) is built in, adding custom translations is easy.

  • Tune it for your needs: You can implement custom behavior in your validators, e.g. fetch translations from a database instead of using gettext or define custom translations for built-in validators.

  • Use it wherever you like: pycerberus is used in a SMTP server, trac macros as well as web applications - there are no dependencies on a specific context like web development.

Changelog

0.4 (13.04.2011)

  • pycerberus now supports Python 3!

  • Fix installation/egg generation without babel

  • Added a schema which can parse positional parameters from a string into a dict before processing the data like a normal schema would do

0.3.3 (04.07.2010)

  • Fix installation issue: pycerberus is actually not zip-safe

0.3.2 (05.06.2010)

  • Fix egg file generation: Include all necessary packages in eggs

  • added babel support to setup.py

  • updated pot file and completed German translation

  • fix exception if translations for preferred locale are not available (fall back to english messages)

0.3.1 (07.04.2010)

  • Fixed bug due to duplicated message in DomainNameValidator/EmailAddressValidator

  • Validator can now strip inputs (False by default)

  • StringValidator now also treats ‘’ as empty value (as well as None)

0.3 (27.03.2010)

  • Python 2.3 compatibility

  • Schema can raise error if unknown items are processed

  • Basic domain name validator

  • Basic email address validator

0.2 (16.03.2010)

  • You now can declare custom messages as a class-level dict

  • Added interface to retrieve error details from InvalidDataErrors

  • Added validation schemas to validate a set of values (typically a web form). Schemas can also inherit from other schemas to avoid code duplication.

  • Validators try to make thread-safety violations obvious

  • Nicer API to retrieve error details from an InvalidDataError

0.1 (30.01.2010)

  • initial release

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

pycerberus-0.4.tar.gz (112.3 kB view details)

Uploaded Source

Built Distributions

pycerberus-0.4-py3.1.egg (64.4 kB view details)

Uploaded Source

pycerberus-0.4-py2.7.egg (63.8 kB view details)

Uploaded Source

File details

Details for the file pycerberus-0.4.tar.gz.

File metadata

  • Download URL: pycerberus-0.4.tar.gz
  • Upload date:
  • Size: 112.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pycerberus-0.4.tar.gz
Algorithm Hash digest
SHA256 69464ae3978a9f8a39d0105ca931009b82b13134dcc5e7b5613c7a6ddc74f859
MD5 fbdb7144d1fcc32de95469cad8dedd62
BLAKE2b-256 fc685678ea489df448c255a6e61aafeda9b211ac3e8c8333002a61f4450b6688

See more details on using hashes here.

File details

Details for the file pycerberus-0.4-py3.1.egg.

File metadata

  • Download URL: pycerberus-0.4-py3.1.egg
  • Upload date:
  • Size: 64.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pycerberus-0.4-py3.1.egg
Algorithm Hash digest
SHA256 9be9c3881a24c8cecc48f247afad97e527034d02016d16a6dffcde17dffbe200
MD5 55cd701357b4266a1c61afa9830b11d0
BLAKE2b-256 ecd265bcd1adb1dc0336599aaa2de5d7e157f5eb272ef3ced267950f9683eacf

See more details on using hashes here.

File details

Details for the file pycerberus-0.4-py2.7.egg.

File metadata

  • Download URL: pycerberus-0.4-py2.7.egg
  • Upload date:
  • Size: 63.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pycerberus-0.4-py2.7.egg
Algorithm Hash digest
SHA256 0c400e771fee88f9772aa3624804407795eaab8e94cd64d5721c16dde838c7e8
MD5 4a83372575757dd471fd41d2c8675d7e
BLAKE2b-256 e0daea1524d84a051de516c1e6b632e1fc7db1878234fa27e35836cc1ad8e599

See more details on using hashes here.

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