{ "info": { "author": "BlueCove Developers", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)", "Topic :: Software Development :: Documentation", "Topic :: Software Development :: Quality Assurance", "Topic :: Software Development :: Testing" ], "description": "[![Build Status](https://travis-ci.org/bluecoveltd/contracts.svg?branch=master)](https://travis-ci.org/bluecoveltd/contracts)\n[![codecov](https://codecov.io/gh/bluecoveltd/contracts/branch/master/graph/badge.svg)](https://codecov.io/gh/bluecoveltd/contracts)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/b7e92327c90e4fa895d9dc53224053b2)](https://www.codacy.com/app/AaronCritchley/contracts?utm_source=github.com&utm_medium=referral&utm_content=bluecoveltd/contracts&utm_campaign=Badge_Grade)\n\n# PyTreaty\n\nThis is a hard fork of the PyContracts library, the original version\nof which can be found [here](https://github.com/AndreaCensi/contracts).\n\nModifications we have made:\n\n- All contract definitions are now applied at all times. Previously\n if you added type annotations to a function, the docstring contracts\n were ignored. Type annotations and docstring contracts have different\n (but overlapping) purposes, and therefore we require both.\n Also, previously if you used a contract decorator then both type\n annotations and docstring contracts were ignored. This is also fixed.\n- Removed Python 2.x support. Maintaining support for legacy python\n versions bloats the codebase significantly, so we only support Python\n 3.5+.\n\n### Why did we fork?\n\nWe are big fans of the original project from Andrea Censi, and we are\nvery happy to merge these changes upstream, however we received\nno response from the original project, and therefore we assume the \nproject is orphaned.\n\nThere are also wider changes we want to make across the codebase, so we\nalso crossed the threshold where it became viable to maintain our own\ncodebase.\n\n### Thing to come\n\nWe plan to continue to improve and support PyTreaty, some notable future\nimprovements that are planned are:\n\n* Adding support for complex Python `typing` and custom type hints.\n* New and improved documentation.\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "http://github.com/bluecoveltd/contracts/tarball/2019.1b5", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/bluecoveltd/contracts", "keywords": "type checking,value checking,contracts", "license": "LGPL", "maintainer": "", "maintainer_email": "", "name": "pytreaty", "package_url": "https://pypi.org/project/pytreaty/", "platform": "", "project_url": "https://pypi.org/project/pytreaty/", "project_urls": { "Download": "http://github.com/bluecoveltd/contracts/tarball/2019.1b5", "Homepage": "http://github.com/bluecoveltd/contracts" }, "release_url": "https://pypi.org/project/pytreaty/2019.1b5/", "requires_dist": [ "pyparsing", "decorator", "six", "pandas", "numpy" ], "requires_python": "", "summary": "PyTreaty is a hard fork of the PyContracts library from Andrea Censi. This fork has been updated to allow multiple contract definitions on a function, as well as removing Python 2.x support and other updates.", "version": "2019.1b5" }, "last_serial": 5596534, "releases": { "2019.1b1": [ { "comment_text": "", "digests": { "md5": "53476cf24118d36d13b6babf5ca9475f", "sha256": "06a8b94607b84cd8296f548e27e059c9c77bfa3c534170925fb5865623f50701" }, "downloads": -1, "filename": "pytreaty-2019.1b1-py3-none-any.whl", "has_sig": false, "md5_digest": "53476cf24118d36d13b6babf5ca9475f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58061, "upload_time": "2019-06-02T15:40:33", "url": "https://files.pythonhosted.org/packages/97/15/e0f7d7912f8038f61a0a7bf2c7c244068326e5b995efac4ce634605de309/pytreaty-2019.1b1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8748c7891e7d8342cfcb3990bfe708e", "sha256": "723d06983bf3986606c71cd0300af94cd9e70872089e4eecf07dbfc720b3764f" }, "downloads": -1, "filename": "pytreaty-2019.1b1.tar.gz", "has_sig": false, "md5_digest": "e8748c7891e7d8342cfcb3990bfe708e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40757, "upload_time": "2019-06-02T15:40:35", "url": "https://files.pythonhosted.org/packages/ea/57/107e3cfbec5dc38349d430a15f78558108b0a801f8421852eb255a55b6a2/pytreaty-2019.1b1.tar.gz" } ], "2019.1b2": [ { "comment_text": "", "digests": { "md5": "7647a1b01b21eedd16b501888c0e0c06", "sha256": "f61e3e58f773bcfb168c594f09779d1347cab147d8b9b7e204671f75595d58ab" }, "downloads": -1, "filename": "pytreaty-2019.1b2-py3-none-any.whl", "has_sig": false, "md5_digest": "7647a1b01b21eedd16b501888c0e0c06", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58060, "upload_time": "2019-06-02T15:45:29", "url": "https://files.pythonhosted.org/packages/78/b2/7f478a0659521bf4844dda1d1606e051cdcc0442f8e0546d0545ba21134f/pytreaty-2019.1b2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "74509d1c89588a0511137b36087e8ad9", "sha256": "7148981a35c6ef1ebc074487bc392093f9f27593ef5361342668de3c2f1d933f" }, "downloads": -1, "filename": "pytreaty-2019.1b2.tar.gz", "has_sig": false, "md5_digest": "74509d1c89588a0511137b36087e8ad9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40750, "upload_time": "2019-06-02T15:45:31", "url": "https://files.pythonhosted.org/packages/40/a7/c29d73e6df14e3af6cbf6b34183807a47e2296f1c6509add7fd5e6b3c38b/pytreaty-2019.1b2.tar.gz" } ], "2019.1b3": [ { "comment_text": "", "digests": { "md5": "3d44c489d3ba616d759ed71f57c30b18", "sha256": "2cdc662b1036e28a3bf6c0875a563cf08e139ccb3f4e6c1f5ead432eeb90158e" }, "downloads": -1, "filename": "pytreaty-2019.1b3-py3-none-any.whl", "has_sig": false, "md5_digest": "3d44c489d3ba616d759ed71f57c30b18", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58287, "upload_time": "2019-06-28T23:52:09", "url": "https://files.pythonhosted.org/packages/39/2c/9b49e5c9b2d88c5c0d40cf49761cad26a61c196d73611ebf282cffdd4fe4/pytreaty-2019.1b3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ce1c85c7d0e7f8f8620b842a60521dc5", "sha256": "1c5ee127c47b65e34c98fc21384528e575863083d6bd695889a4105f68770592" }, "downloads": -1, "filename": "pytreaty-2019.1b3.tar.gz", "has_sig": false, "md5_digest": "ce1c85c7d0e7f8f8620b842a60521dc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41018, "upload_time": "2019-06-28T23:52:11", "url": "https://files.pythonhosted.org/packages/15/d1/6907196ecc61339084fef232061bc669b6b0c32f5a33dc4936396592fb04/pytreaty-2019.1b3.tar.gz" } ], "2019.1b4": [ { "comment_text": "", "digests": { "md5": "d5af5e2e8f3ca3a816621f69d404c2b0", "sha256": "7c8d455880159f515f6f6c22bc790534d85a50a60f8a3f0a49ecdc32af87a1ae" }, "downloads": -1, "filename": "pytreaty-2019.1b4-py3-none-any.whl", "has_sig": false, "md5_digest": "d5af5e2e8f3ca3a816621f69d404c2b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58401, "upload_time": "2019-07-27T23:30:36", "url": "https://files.pythonhosted.org/packages/e3/4c/8a848c89fd7441473745d90525b9434e446799bc2390501c7aa289fecbf4/pytreaty-2019.1b4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0a84556c03038b45118ac1af64d875d7", "sha256": "a6fa957bf92dc739f5b6ba4e17329f6ea530bf406b3379166d97bef8be15420d" }, "downloads": -1, "filename": "pytreaty-2019.1b4.tar.gz", "has_sig": false, "md5_digest": "0a84556c03038b45118ac1af64d875d7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41105, "upload_time": "2019-07-27T23:30:37", "url": "https://files.pythonhosted.org/packages/1f/44/8d93ed4b1fad032c41b3191e8141475a04a9434d4c5075a5b5eea79adf0b/pytreaty-2019.1b4.tar.gz" } ], "2019.1b5": [ { "comment_text": "", "digests": { "md5": "2cb1a61cd8a09db3de784adf0c75889c", "sha256": "8a7d19a911788bfe891c7b98c3e6418db892aaf1d22f88f8355886f9e2004590" }, "downloads": -1, "filename": "pytreaty-2019.1b5-py3-none-any.whl", "has_sig": false, "md5_digest": "2cb1a61cd8a09db3de784adf0c75889c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58376, "upload_time": "2019-07-28T19:41:38", "url": "https://files.pythonhosted.org/packages/72/05/9d16ec3ac90030b4654d060e5511ae2fe9277cce064ed7f8463df7d663d3/pytreaty-2019.1b5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9877e0625e400c88cc986f18df32714a", "sha256": "2073de47a8c0744da2de1555ea9ac22497974305bc145bca66d58b44c7c2a66f" }, "downloads": -1, "filename": "pytreaty-2019.1b5.tar.gz", "has_sig": false, "md5_digest": "9877e0625e400c88cc986f18df32714a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41096, "upload_time": "2019-07-28T19:41:40", "url": "https://files.pythonhosted.org/packages/b5/dd/8c63878f07da37a487ae046570d7dcb423360eda2fa08a81d914e54e5146/pytreaty-2019.1b5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2cb1a61cd8a09db3de784adf0c75889c", "sha256": "8a7d19a911788bfe891c7b98c3e6418db892aaf1d22f88f8355886f9e2004590" }, "downloads": -1, "filename": "pytreaty-2019.1b5-py3-none-any.whl", "has_sig": false, "md5_digest": "2cb1a61cd8a09db3de784adf0c75889c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 58376, "upload_time": "2019-07-28T19:41:38", "url": "https://files.pythonhosted.org/packages/72/05/9d16ec3ac90030b4654d060e5511ae2fe9277cce064ed7f8463df7d663d3/pytreaty-2019.1b5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9877e0625e400c88cc986f18df32714a", "sha256": "2073de47a8c0744da2de1555ea9ac22497974305bc145bca66d58b44c7c2a66f" }, "downloads": -1, "filename": "pytreaty-2019.1b5.tar.gz", "has_sig": false, "md5_digest": "9877e0625e400c88cc986f18df32714a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41096, "upload_time": "2019-07-28T19:41:40", "url": "https://files.pythonhosted.org/packages/b5/dd/8c63878f07da37a487ae046570d7dcb423360eda2fa08a81d914e54e5146/pytreaty-2019.1b5.tar.gz" } ] }