Skip to main content

Forked from the original author until they incorporate latest fixes; a simple library for runtime type-checking.

Project description

Python versions PyPI version PyPI status Checked with Mypy Documentation Status Python package status standard-readme compliant

Typing-validation is a small library to perform runtime validation of Python objects using PEP 484 type hints.

This is a temporary fork of the original project to be used until the original project incorporates a bug fix to work with newer versions of the ‘typing_extensions’ dependency.

Bug: https://github.com/hashberg-io/typing-validation/issues/1

Install

You can install the latest release from PyPI as follows:

pip install --upgrade typing-validation

Usage

The core functionality of this library is provided by the validate function:

>>> from typing_validation import validate

The validate function is invoked with a value and a type as its arguments and it returns nothing when the given value is valid for the given type:

>>> validate(12, int)
# nothing is returned => 12 is a valid int

If the value is invalid for the given type, the validate function raises a TypeError:

>>> validate(12, str)
TypeError: For type <class 'str'>, invalid value: 12

For nested types (e.g. parametric collection/mapping types), the full chain of validation failures is shown by the type error:

>>> validate([0, 1, "hi"], list[int])
TypeError: For type list[int], invalid value: [0, 1, 'hi']
  For type <class 'int'>, invalid value: 'hi'

API

For the full API documentation, see https://typing-validation.readthedocs.io/

Contributing

Please see CONTRIBUTING.md.

License

MIT © Hashberg Ltd.

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

typing-validation-fix-1.0.4.tar.gz (30.6 kB view details)

Uploaded Source

Built Distribution

typing_validation_fix-1.0.4-py3-none-any.whl (13.9 kB view details)

Uploaded Python 3

File details

Details for the file typing-validation-fix-1.0.4.tar.gz.

File metadata

  • Download URL: typing-validation-fix-1.0.4.tar.gz
  • Upload date:
  • Size: 30.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.0

File hashes

Hashes for typing-validation-fix-1.0.4.tar.gz
Algorithm Hash digest
SHA256 17c916bbfd5f2d085a30f871e2a5c0f53ba80c0d5aadbd40a8c6bd95c7910dfc
MD5 c85fd941ffb421b13e44a201c5f2ce8b
BLAKE2b-256 4c3826f9743b0f5fa2fcd2b3357acc6a89cf03693aa04b66070c3b3482a3ecf3

See more details on using hashes here.

File details

Details for the file typing_validation_fix-1.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for typing_validation_fix-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3549417f2a5656944e55721b4d28c00e0ddc4d64d789753fb59e2ece275121cc
MD5 4cbfb48f0eb5a99c301811241118302f
BLAKE2b-256 55c82b618683102e3cc269af998d6e57350bb804c71f1ba977da622b67978a08

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