{ "info": { "author": "Levii, inc", "author_email": "contact+oss@levii.co.jp", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# dataclass-type-validator\n\nThe `dataclass-type-validator` is a type validation library for the properties of `dataclasses.dataclass` using Python type hint information.\n\n## Installation\n\n`pip install dataclass-type-validator` or add `dataclass-type-validator` line to `requirements.txt`\n\n## A Simple Example\n\n\n```python\nfrom dataclasses import dataclass\nfrom typing import List\nfrom dataclass_type_validator import dataclass_type_validator\nfrom dataclass_type_validator import TypeValidationError\n\n@dataclass()\nclass User:\n id: int\n name: str\n friend_ids: List[int]\n\n def __post_init__(self):\n dataclass_type_validator(self)\n\n\n# Valid User\nUser(id=10, name='John Smith', friend_ids=[1, 2])\n# => User(id=10, name='John Smith', friend_ids=[1, 2])\n\n# Invalid User\ntry:\n User(id='a', name=['John', 'Smith'], friend_ids=['a'])\nexcept TypeValidationError as e:\n print(e)\n# => TypeValidationError: Dataclass Type Validation (errors = {\n# 'id': \"must be an instance of , but received \",\n# 'name': \"must be an instance of , but received \",\n# 'friend_ids': 'must be an instance of typing.List[int], but there are some errors:\n# [\"must be an instance of , but received \"]'})\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/levii/dataclass-type-validator", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "dataclass-type-validator", "package_url": "https://pypi.org/project/dataclass-type-validator/", "platform": "", "project_url": "https://pypi.org/project/dataclass-type-validator/", "project_urls": { "Homepage": "https://github.com/levii/dataclass-type-validator" }, "release_url": "https://pypi.org/project/dataclass-type-validator/0.0.4/", "requires_dist": null, "requires_python": "", "summary": "Dataclass Type Validator Library", "version": "0.0.4" }, "last_serial": 5718047, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "0b4e6ccce64cf574e550d6e562347aed", "sha256": "087d9ca5c5db2a1aad515754e7a69c2e0c4b9184ad9ad5a99d90a54d3c23ea5b" }, "downloads": -1, "filename": "dataclass_type_validator-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0b4e6ccce64cf574e550d6e562347aed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4441, "upload_time": "2019-08-22T13:19:40", "url": "https://files.pythonhosted.org/packages/2b/78/ec08d8dc5675501ec8089941109be9a74a3007d3eb05004ff732e487c903/dataclass_type_validator-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3627102ae9e60063d3c15c229e329a4a", "sha256": "d1df3d6a010f51ea1389229d53a412a3c29343cdab69f29f146da4362495830c" }, "downloads": -1, "filename": "dataclass-type-validator-0.0.1.tar.gz", "has_sig": false, "md5_digest": "3627102ae9e60063d3c15c229e329a4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2776, "upload_time": "2019-08-22T13:19:42", "url": "https://files.pythonhosted.org/packages/36/e4/4de157b3f5ad632560eb45371a45e0dafce6a87c0a3c79c8bbacc18bae81/dataclass-type-validator-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "2fc39096012892dbbca89e9e3d2b9289", "sha256": "eabd1e75e724bdf45c68c2ac535b3ee3733a7782dccd6aacb5b5fabd5cdf1d86" }, "downloads": -1, "filename": "dataclass_type_validator-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2fc39096012892dbbca89e9e3d2b9289", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5111, "upload_time": "2019-08-22T23:19:56", "url": "https://files.pythonhosted.org/packages/e7/66/de071bacd0777f3565c1dc451ddd5d8bccead4899e33ab53c379c12bc056/dataclass_type_validator-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a907fca82c61cae5b1d86c7a123b10d", "sha256": "ac20d7dc899524a6dce26d5dac252e16c99d8c236a7b33f333ef5341cdaecaa0" }, "downloads": -1, "filename": "dataclass-type-validator-0.0.2.tar.gz", "has_sig": false, "md5_digest": "1a907fca82c61cae5b1d86c7a123b10d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3444, "upload_time": "2019-08-22T23:19:57", "url": "https://files.pythonhosted.org/packages/c3/89/75458b0c0fe054b8a83352984a870a20ad5889f3672021d2cd49b6098149/dataclass-type-validator-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "e1bd745e535527b38722020bbea26897", "sha256": "5bb2aefb87be049de7f962cc6e3b6f40541b839c29988912605e76df8399902b" }, "downloads": -1, "filename": "dataclass_type_validator-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "e1bd745e535527b38722020bbea26897", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5159, "upload_time": "2019-08-22T23:44:33", "url": "https://files.pythonhosted.org/packages/b4/d2/26231cec370f2010e23450f4d57c949109ed73e4af53cc31d4dc01027d6a/dataclass_type_validator-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5044cf4bddfe966a8d0e468df7bb4f93", "sha256": "252903a2b4c84ac9ff9388147221d72629fe2fd829465f6d761e882460888963" }, "downloads": -1, "filename": "dataclass-type-validator-0.0.3.tar.gz", "has_sig": false, "md5_digest": "5044cf4bddfe966a8d0e468df7bb4f93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3496, "upload_time": "2019-08-22T23:44:34", "url": "https://files.pythonhosted.org/packages/fa/4a/669d29d392af33c6160b194c80f236437d274b3ee1b86ebe524bb1eaaf27/dataclass-type-validator-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "5909ff39a417c22134fd9de1d3868633", "sha256": "e15c932f74bba055c7e06d2d212590305085193065b1f91ef2124141adc25ac9" }, "downloads": -1, "filename": "dataclass_type_validator-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "5909ff39a417c22134fd9de1d3868633", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5253, "upload_time": "2019-08-23T00:39:11", "url": "https://files.pythonhosted.org/packages/b3/81/cb436fdffdaad3f8b522aec6d778310361ae868d6928b2c3c5533d62e865/dataclass_type_validator-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "199a7958898347d2b303056c9b3ad78f", "sha256": "52d1e0010abea224a1205b206004b30e1ee4c2f7eff70e50a421f692d8efb6ee" }, "downloads": -1, "filename": "dataclass-type-validator-0.0.4.tar.gz", "has_sig": false, "md5_digest": "199a7958898347d2b303056c9b3ad78f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3598, "upload_time": "2019-08-23T00:39:13", "url": "https://files.pythonhosted.org/packages/21/4c/84e0e25593000aa6c6214e851e5b890794cc6afc7bcd971e6a5a3a8c229c/dataclass-type-validator-0.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5909ff39a417c22134fd9de1d3868633", "sha256": "e15c932f74bba055c7e06d2d212590305085193065b1f91ef2124141adc25ac9" }, "downloads": -1, "filename": "dataclass_type_validator-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "5909ff39a417c22134fd9de1d3868633", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5253, "upload_time": "2019-08-23T00:39:11", "url": "https://files.pythonhosted.org/packages/b3/81/cb436fdffdaad3f8b522aec6d778310361ae868d6928b2c3c5533d62e865/dataclass_type_validator-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "199a7958898347d2b303056c9b3ad78f", "sha256": "52d1e0010abea224a1205b206004b30e1ee4c2f7eff70e50a421f692d8efb6ee" }, "downloads": -1, "filename": "dataclass-type-validator-0.0.4.tar.gz", "has_sig": false, "md5_digest": "199a7958898347d2b303056c9b3ad78f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3598, "upload_time": "2019-08-23T00:39:13", "url": "https://files.pythonhosted.org/packages/21/4c/84e0e25593000aa6c6214e851e5b890794cc6afc7bcd971e6a5a3a8c229c/dataclass-type-validator-0.0.4.tar.gz" } ] }