{ "info": { "author": "Andrew Kiyko", "author_email": "eb08a167@gmail.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "Programming Language :: Python :: 3" ], "description": "Schematizer\n===========\n\nSchematizer is a lightweight library for data marshalling/unmarshalling in Python.\n\nIt helps you:\n\n- **Validate** input and output data\n- **Marshal** primitive data into a form you would like to interact with\n- **Unmarshal** native data so that it can be rendered to JSON, YAML, MsgPack, etc.\n\nExamples\n--------\n\nSimple.\n\n.. code:: python\n\n >>> from schematizer.exceptions import BaseValidationError\n >>> from schematizer.schemas.compound import Dict, List\n >>> from schematizer.schemas.simple import Date, Str\n >>> from schematizer.validators import Length\n >>>\n >>> album_schema = Dict({\n ... 'title': Str(),\n ... 'released_at': Date(),\n ... })\n >>>\n >>> artist_schema = Dict({\n ... 'name': Str(),\n ... 'albums': List(album_schema),\n ... })\n >>>\n >>> artist_schema.to_native({\n ... 'name': 'Burzum',\n ... 'albums': [\n ... {\n ... 'title': 'Filosofem',\n ... 'released_at': '1996-01-01',\n ... },\n ... ],\n ... })\n {'name': 'Burzum', 'albums': [{'title': 'Filosofem', 'released_at': datetime.date(1996, 1, 1)}]}\n\nWith invalid data.\n\n.. code:: python\n\n >>> try:\n ... artist_schema.to_native({\n ... 'albums': [\n ... {'released_at': '19960101'},\n ... ],\n ... })\n ... except BaseValidationError as exc:\n ... exc.flatten()\n ...\n [\n SimpleValidationError('MISSING', path=['name'], extra=None),\n SimpleValidationError('MISSING', path=['albums', 0, 'title'], extra=None),\n SimpleValidationError('INVALID', path=['albums', 0, 'released_at'], extra={'message': \"time data '19960101' does not match format '%Y-%m-%d'\"}),\n ]\n\nInstallation\n------------\n\n::\n\n $ pip install schematizer\n\nDocumentation\n-------------\n\nComing soon...", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/eb08a167/schematizer", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "schematizer", "package_url": "https://pypi.org/project/schematizer/", "platform": "", "project_url": "https://pypi.org/project/schematizer/", "project_urls": { "Homepage": "https://github.com/eb08a167/schematizer" }, "release_url": "https://pypi.org/project/schematizer/0.9.0/", "requires_dist": null, "requires_python": ">=3.6", "summary": "A lightweight library for data marshalling/unmarshalling in Python", "version": "0.9.0" }, "last_serial": 5313907, "releases": { "0.6.1": [ { "comment_text": "", "digests": { "md5": "38d42ea68609df74b0801ba5c0ff2258", "sha256": "c4f0e47e90ac8c93406b0e6d1ab63510c3dd3ef5075343e875187bd30ed19e5e" }, "downloads": -1, "filename": "schematizer-0.6.1.tar.gz", "has_sig": false, "md5_digest": "38d42ea68609df74b0801ba5c0ff2258", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3979, "upload_time": "2017-09-28T20:02:28", "url": "https://files.pythonhosted.org/packages/66/2e/c45a2c83adbbc082eb8c9746ab05634b59366877903c62acd0afb623ae82/schematizer-0.6.1.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "2cb8a5a3f98d38a2b7b6a650d46936fd", "sha256": "f3118e4270386233d32fc441bd208380710df8fa01e05360fcf4ef4c6e619b22" }, "downloads": -1, "filename": "schematizer-0.7.0.tar.gz", "has_sig": false, "md5_digest": "2cb8a5a3f98d38a2b7b6a650d46936fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4010, "upload_time": "2017-10-22T11:25:58", "url": "https://files.pythonhosted.org/packages/0b/52/3065962d124f82a98fdb4bd70d704cef59fd70bcc32ce776dd281c057938/schematizer-0.7.0.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "0a3b67c4501f573ed144963aca5d6141", "sha256": "938a245a861fabae09deba7e1255c36703ad87f9ca1178041c61c72e54795148" }, "downloads": -1, "filename": "schematizer-0.8.0-py3-none-any.whl", "has_sig": false, "md5_digest": "0a3b67c4501f573ed144963aca5d6141", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7578, "upload_time": "2019-02-16T18:27:49", "url": "https://files.pythonhosted.org/packages/cf/ae/0be7feb7cda8829154d87930992223244e1f06ff16cb13a9a9cc6f57aa2d/schematizer-0.8.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "69941be0436f5f3a786d490193ea7e6b", "sha256": "e2d45a9f74b8e0874179b164771779491f0af25282430c577f8a99152d92513b" }, "downloads": -1, "filename": "schematizer-0.8.0.tar.gz", "has_sig": false, "md5_digest": "69941be0436f5f3a786d490193ea7e6b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4359, "upload_time": "2019-02-16T18:27:50", "url": "https://files.pythonhosted.org/packages/77/71/9a2d026db7fc546481a1a30dcc5dc52784c47c30fcf20d1331704fd21564/schematizer-0.8.0.tar.gz" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "877c3e6b33e0c323fc63ffad6fce6a2a", "sha256": "d59f3e58d41c216557610c4d790489ad0b44b5608b992b334e970fd24ff6f295" }, "downloads": -1, "filename": "schematizer-0.8.2-py3-none-any.whl", "has_sig": false, "md5_digest": "877c3e6b33e0c323fc63ffad6fce6a2a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7625, "upload_time": "2019-02-18T08:05:10", "url": "https://files.pythonhosted.org/packages/71/ce/337ba638d2e1ff644c6d0a32376a46b73f08846557151aec2746eb71a7d1/schematizer-0.8.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "91203fa2fb09cc0176ee6e9e0b9e0f66", "sha256": "79f9c9862b28032b78482fa48484c993d9efc67af7e2c97c51017541f41ae48b" }, "downloads": -1, "filename": "schematizer-0.8.2.tar.gz", "has_sig": false, "md5_digest": "91203fa2fb09cc0176ee6e9e0b9e0f66", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4389, "upload_time": "2019-02-18T08:05:13", "url": "https://files.pythonhosted.org/packages/a8/69/89a49eb09a986db7ce3dcb9aa67a427f9e624cd15723d5b332da49fd4ee2/schematizer-0.8.2.tar.gz" } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "a1b1e98fc9ec44941c6e261ea986aa08", "sha256": "239ebf3cf12103ac8402edf3bc0ddfc3fbc6bf853502f6c4ad6877e4d49589a6" }, "downloads": -1, "filename": "schematizer-0.8.3-py3-none-any.whl", "has_sig": false, "md5_digest": "a1b1e98fc9ec44941c6e261ea986aa08", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7629, "upload_time": "2019-02-19T12:14:16", "url": "https://files.pythonhosted.org/packages/4d/66/cfb9ba3afd9f7c23cda8377fc3aaa5479ae98b0cb8b2207cd8f53ef4f9e8/schematizer-0.8.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "41db1d108546dba6590232f03057be1b", "sha256": "43ae9a58f1289200dc04167575cb917d5db8c03845e18efc7783f476e410a0d6" }, "downloads": -1, "filename": "schematizer-0.8.3.tar.gz", "has_sig": false, "md5_digest": "41db1d108546dba6590232f03057be1b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4390, "upload_time": "2019-02-19T12:14:17", "url": "https://files.pythonhosted.org/packages/4f/c4/9127390e18b95490f07cc7070a16361c9f046c77461b43453d70a14f29c2/schematizer-0.8.3.tar.gz" } ], "0.8.4": [ { "comment_text": "", "digests": { "md5": "ff7c416107ca63976d9c6a897c93bf59", "sha256": "530697f1d564114c54250f76132d81166e479872f3d5c739fe7306b487a0080c" }, "downloads": -1, "filename": "schematizer-0.8.4-py3-none-any.whl", "has_sig": false, "md5_digest": "ff7c416107ca63976d9c6a897c93bf59", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7644, "upload_time": "2019-02-22T14:25:23", "url": "https://files.pythonhosted.org/packages/d8/63/29efad1c1ccffe6226cd23add179c5bf94a4bbc6c8c1edb0d2fb70c283c8/schematizer-0.8.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3713c4cb7c7de25e72f5ae567f17dcd7", "sha256": "f5536934145bdc3440721f4c2762ac4ec77e6541899fcff0b69ed450f628967b" }, "downloads": -1, "filename": "schematizer-0.8.4.tar.gz", "has_sig": false, "md5_digest": "3713c4cb7c7de25e72f5ae567f17dcd7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4412, "upload_time": "2019-02-22T14:25:25", "url": "https://files.pythonhosted.org/packages/0a/74/8c4a0c48461b2c1a30bb3657c27498a9cb41e592e196154f879ca142f565/schematizer-0.8.4.tar.gz" } ], "0.8.5": [ { "comment_text": "", "digests": { "md5": "e418b6cd54fd3af4ca68073dbe96fec1", "sha256": "3fa430eb2f7085bc44f702c8f0acc561b876f823f9af56e26c5bb1db362e615e" }, "downloads": -1, "filename": "schematizer-0.8.5-py3-none-any.whl", "has_sig": false, "md5_digest": "e418b6cd54fd3af4ca68073dbe96fec1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7660, "upload_time": "2019-02-27T08:35:39", "url": "https://files.pythonhosted.org/packages/ac/82/28630d21197cb7b1765acbfb4a738d81be798ca7e9e5baabb689ecc9dfb1/schematizer-0.8.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb50b1b11cb30d2f77d1969e1a3b6774", "sha256": "1fcd5771cf05d5e7dcbcc27b61d21f4f2e37bd586f8c399db9e2dd66bee57d8f" }, "downloads": -1, "filename": "schematizer-0.8.5.tar.gz", "has_sig": false, "md5_digest": "eb50b1b11cb30d2f77d1969e1a3b6774", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4426, "upload_time": "2019-02-27T08:35:40", "url": "https://files.pythonhosted.org/packages/9a/95/24b77740eb9cc219d9979d38c4a174fc2c7453f5b23f0bd5dc1d02dd6a44/schematizer-0.8.5.tar.gz" } ], "0.8.6": [ { "comment_text": "", "digests": { "md5": "bd46e5e3d7ebf7638342146ea8b96f0d", "sha256": "4fe5d8303b2ab2a4703b3fe8c22d735943d470820a315bbaddd19da513448317" }, "downloads": -1, "filename": "schematizer-0.8.6-py3-none-any.whl", "has_sig": false, "md5_digest": "bd46e5e3d7ebf7638342146ea8b96f0d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7701, "upload_time": "2019-03-01T17:47:29", "url": "https://files.pythonhosted.org/packages/97/37/14f2acfc83438a3d62e0c33184e74bcb00dcf4dae0f192505696f07d41d2/schematizer-0.8.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f100a1745a682d8a9f764aecf13bb8ec", "sha256": "ad69880f6cb087b395617d53942e5620508d59a9d8ea11504056619383f8be68" }, "downloads": -1, "filename": "schematizer-0.8.6.tar.gz", "has_sig": false, "md5_digest": "f100a1745a682d8a9f764aecf13bb8ec", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4469, "upload_time": "2019-03-01T17:47:31", "url": "https://files.pythonhosted.org/packages/28/f4/eddb4d512650fd5057f744fca2838680aa6a665e0a00bc61ef334cd5279c/schematizer-0.8.6.tar.gz" } ], "0.8.7": [ { "comment_text": "", "digests": { "md5": "478f034255f4622e1b88ced88a83186b", "sha256": "8d811f2e855f530a3fb9f59f3f28ba196b5892ee670ecec3ef54357fff8ca12e" }, "downloads": -1, "filename": "schematizer-0.8.7-py3-none-any.whl", "has_sig": false, "md5_digest": "478f034255f4622e1b88ced88a83186b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7749, "upload_time": "2019-03-24T12:18:35", "url": "https://files.pythonhosted.org/packages/9d/c9/a3bfe156ea25d4a2bdb6f75b757b94d2a52b973773c357024d3144747bf2/schematizer-0.8.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2af4ca80ee0e232965421d4a2959d5ce", "sha256": "1cd3d154683e91885c0c5651d958515042361dc273e678b42c98469396b71557" }, "downloads": -1, "filename": "schematizer-0.8.7.tar.gz", "has_sig": false, "md5_digest": "2af4ca80ee0e232965421d4a2959d5ce", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4527, "upload_time": "2019-03-24T12:18:36", "url": "https://files.pythonhosted.org/packages/3d/5f/663e0e20600a0eb8c402c61867aafc76be485b7e89cfd491c6194010fe96/schematizer-0.8.7.tar.gz" } ], "0.8.8": [ { "comment_text": "", "digests": { "md5": "0b64712eb686927de37f124015c130b8", "sha256": "606ce33f51db1a8b933da43b118604f471b6dd7bbace7f16ab754e856c9acc53" }, "downloads": -1, "filename": "schematizer-0.8.8-py3-none-any.whl", "has_sig": false, "md5_digest": "0b64712eb686927de37f124015c130b8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 7791, "upload_time": "2019-03-31T17:26:13", "url": "https://files.pythonhosted.org/packages/02/f4/f1cc18a5b149d633a04b940e5b1c956ea3acf282d056ef0451025e3cdc49/schematizer-0.8.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6fc3a5d337bf71211e49a3e35e56dada", "sha256": "f352f11069da2faee17fd592cfe34b190fa58f619109a6bd36f4b37db2a25291" }, "downloads": -1, "filename": "schematizer-0.8.8.tar.gz", "has_sig": false, "md5_digest": "6fc3a5d337bf71211e49a3e35e56dada", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4559, "upload_time": "2019-03-31T17:26:15", "url": "https://files.pythonhosted.org/packages/91/c6/fed866936c4ea3eebf6647be03bb80a37ebdf9dbbcb755ea705c5375de7a/schematizer-0.8.8.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "f58465d7bf827c610d4caf0787773ea2", "sha256": "cacd7ad286788a783fae8fbd510eaf6aeb8c1b59006771cd6c91caf48a0acd3a" }, "downloads": -1, "filename": "schematizer-0.9.0.tar.gz", "has_sig": false, "md5_digest": "f58465d7bf827c610d4caf0787773ea2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4557, "upload_time": "2019-05-24T18:03:04", "url": "https://files.pythonhosted.org/packages/3e/3d/64b0ed7340068c445b5f88a4c163f5f265dd38611089983afdea81ba3f4a/schematizer-0.9.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f58465d7bf827c610d4caf0787773ea2", "sha256": "cacd7ad286788a783fae8fbd510eaf6aeb8c1b59006771cd6c91caf48a0acd3a" }, "downloads": -1, "filename": "schematizer-0.9.0.tar.gz", "has_sig": false, "md5_digest": "f58465d7bf827c610d4caf0787773ea2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4557, "upload_time": "2019-05-24T18:03:04", "url": "https://files.pythonhosted.org/packages/3e/3d/64b0ed7340068c445b5f88a4c163f5f265dd38611089983afdea81ba3f4a/schematizer-0.9.0.tar.gz" } ] }