{ "info": { "author": "ThriftPy Organization", "author_email": "gotzehsing@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development" ], "description": "============\nThriftPy2\n============\n\n.. image:: https://travis-ci.com/Thriftpy/thriftpy2.svg?branch=develop\n :target: https://travis-ci.com/Thriftpy/thriftpy2\n\n.. image:: https://img.shields.io/codecov/c/github/Thriftpy/thriftpy2.svg\n :target: https://codecov.io/gh/Thriftpy/thriftpy2\n\n.. image:: https://img.shields.io/pypi/dm/thriftpy2.svg\n :target: https://pypi.org/project/thriftpy2/\n\n.. image:: https://img.shields.io/pypi/v/thriftpy2.svg\n :target: https://pypi.org/project/thriftpy2/\n\n.. image:: https://img.shields.io/pypi/pyversions/thriftpy2.svg\n :target: https://pypi.org/project/thriftpy2/\n\n.. image:: https://img.shields.io/pypi/implementation/thriftpy2.svg\n :target: https://pypi.org/project/thriftpy2/\n\n\nThriftPy: https://github.com/eleme/thriftpy has been deprecated, ThriftPy2 aims to provide long term support.\n\n\nMigrate from Thriftpy?\n======================\n\nAll you need is:\n\n.. code:: python\n\n import thriftpy2 as thriftpy\n\n\nThat's it! thriftpy2 is fully compatible with thriftpy.\n\n\nInstallation\n============\n\nInstall with pip.\n\n.. code:: bash\n\n $ pip install thriftpy2\n\nYou may also install cython first to build cython extension locally.\n\n.. code:: bash\n\n $ pip install cython thriftpy2\n\n\nCode Demo\n=========\n\nThriftPy make it super easy to write server/client code with thrift. Let's\ncheckout this simple pingpong service demo.\n\nWe need a 'pingpong.thrift' file:\n\n::\n\n service PingPong {\n string ping(),\n }\n\nThen we can make a server:\n\n.. code:: python\n\n import thriftpy2\n pingpong_thrift = thriftpy2.load(\"pingpong.thrift\", module_name=\"pingpong_thrift\")\n\n from thriftpy2.rpc import make_server\n\n class Dispatcher(object):\n def ping(self):\n return \"pong\"\n\n server = make_server(pingpong_thrift.PingPong, Dispatcher(), '127.0.0.1', 6000)\n server.serve()\n\nAnd a client:\n\n.. code:: python\n\n import thriftpy2\n pingpong_thrift = thriftpy2.load(\"pingpong.thrift\", module_name=\"pingpong_thrift\")\n\n from thriftpy2.rpc import make_client\n\n client = make_client(pingpong_thrift.PingPong, '127.0.0.1', 6000)\n print(client.ping())\n\nAnd it also supports asyncio on Python 3.5 or later:\n\n.. code:: python\n\n import thriftpy2\n import asyncio\n from thriftpy2.rpc import make_aio_client\n\n\n echo_thrift = thriftpy2.load(\"echo.thrift\", module_name=\"echo_thrift\")\n\n\n async def request():\n client = await make_aio_client(\n echo_thrift.EchoService, '127.0.0.1', 6000)\n print(await client.echo('hello, world'))\n client.close()\n\n.. code:: python\n\n import asyncio\n import thriftpy2\n\n from thriftpy2.rpc import make_aio_server\n\n echo_thrift = thriftpy2.load(\"echo.thrift\", module_name=\"echo_thrift\")\n\n\n class Dispatcher(object):\n async def echo(self, param):\n print(param)\n await asyncio.sleep(0.1)\n return param\n\n\n def main():\n server = make_aio_server(\n echo_thrift.EchoService, Dispatcher(), '127.0.0.1', 6000)\n server.serve()\n\n\n if __name__ == '__main__':\n main()\n\nSee, it's that easy!\n\nYou can refer to 'examples' and 'tests' directory in source code for more\nusage examples.\n\n\nFeatures\n========\n\nCurrently ThriftPy have these features (also advantages over the upstream\npython lib):\n\n- Supports Python 2.7, Python 3.4+, PyPy and PyPy3.\n\n- Pure python implementation. No longer need to compile & install the 'thrift'\n package. All you need is thriftpy2 and thrift file.\n\n- Compatible with Apache Thrift. You can use ThriftPy together with the\n official implementation servers and clients, such as a upstream server with\n a thriftpy2 client or the opposite.\n\n Currently implemented protocols and transports:\n\n * binary protocol (python and cython)\n\n * compact protocol (python and cython)\n\n * json protocol\n\n * buffered transport (python & cython)\n\n * framed transport\n\n * tornado server and client (with tornado 4.0)\n\n * http server and client\n\n * asyncio support (python 3.5 or later)\n\n- Can directly load thrift file as module, the sdk code will be generated on\n the fly.\n\n For example, ``pingpong_thrift = thriftpy2.load(\"pingpong.thrift\", module_name=\"pingpong_thrift\")``\n will load 'pingpong.thrift' as 'pingpong_thrift' module.\n\n Or, when import hook enabled by ``thriftpy2.install_import_hook()``, you can\n directly use ``import pingpong_thrift`` to import the 'pingpong.thrift' file\n as module, you may also use ``from pingpong_thrift import PingService`` to\n import specific object from the thrift module.\n\n- Easy RPC server/client setup.\n\n\n\nContribute\n==========\n\n1. Fork the repo and make changes.\n\n2. Write a test which shows a bug was fixed or the feature works as expected.\n\n3. Make sure ``travis-ci`` or ``tox`` tests succeed.\n\n4. Send pull request.\n\n\nContributors\n============\n\nhttps://github.com/Thriftpy/thriftpy2/graphs/contributors\n\n\nSponsors:\n============\n\n.. image:: ./docs/jetbrains.svg\n :target: https://www.jetbrains.com/?from=ThriftPy\n\n\nChangelog\n=========\n\nhttps://github.com/Thriftpy/thriftpy2/blob/master/CHANGES.rst\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://thriftpy2.readthedocs.io/", "keywords": "thrift python thriftpy thriftpy2", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "thriftpy2", "package_url": "https://pypi.org/project/thriftpy2/", "platform": "", "project_url": "https://pypi.org/project/thriftpy2/", "project_urls": { "Homepage": "https://thriftpy2.readthedocs.io/" }, "release_url": "https://pypi.org/project/thriftpy2/0.4.14/", "requires_dist": [ "ply (<4.0,>=3.4)", "cython (>=0.28.4) ; extra == 'dev'", "flake8 (>=2.5) ; extra == 'dev'", "pytest (>=2.8) ; extra == 'dev'", "sphinx-rtd-theme (>=0.1.9) ; extra == 'dev'", "sphinx (>=1.3) ; extra == 'dev'", "tornado (<6.0,>=4.0) ; extra == 'dev'", "tornado (<6.0,>=4.0) ; extra == 'tornado'" ], "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "summary": "Pure python implementation of Apache Thrift.", "version": "0.4.14", "yanked": false, "yanked_reason": null }, "last_serial": 9192186, "releases": { "0.3.11": [ { "comment_text": "", "digests": { "md5": "d4b4b3b5461802e7f5233a52b1b7ab17", "sha256": "cf92fa9262736fca822e31d9e360bd14f9a45d5add870f417c9b1d9f8831a2b0" }, "downloads": -1, "filename": "thriftpy2-0.3.11.tar.gz", "has_sig": false, "md5_digest": "d4b4b3b5461802e7f5233a52b1b7ab17", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 287012, "upload_time": "2018-09-26T12:59:09", "upload_time_iso_8601": "2018-09-26T12:59:09.423213Z", "url": "https://files.pythonhosted.org/packages/88/35/7829afe940eed69137522b6d7b96e6cb732116775b4a7cfeea0d6e84201d/thriftpy2-0.3.11.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.12": [ { "comment_text": "", "digests": { "md5": "871789aac51801f4adcae090fcee5525", "sha256": "5c74d2772de9e60cab20264bb87cbaf3f38d485e879503045056263375dffd85" }, "downloads": -1, "filename": "thriftpy2-0.3.12.tar.gz", "has_sig": false, "md5_digest": "871789aac51801f4adcae090fcee5525", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 287148, "upload_time": "2018-11-14T11:18:44", "upload_time_iso_8601": "2018-11-14T11:18:44.521705Z", "url": "https://files.pythonhosted.org/packages/93/d5/6f0568ac9a5309292395bc748df1d6ca61710b73eef2c23d6f09fb194c4f/thriftpy2-0.3.12.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "27db572a60f1504ba81cc2e9f11d768b", "sha256": "31a616efb1492ae0caae48006c06d7a7d1f26929c8b4c8a12ec64a99bbd65e87" }, "downloads": -1, "filename": "thriftpy2-0.4.0.tar.gz", "has_sig": false, "md5_digest": "27db572a60f1504ba81cc2e9f11d768b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 293167, "upload_time": "2018-12-09T16:53:46", "upload_time_iso_8601": "2018-12-09T16:53:46.048496Z", "url": "https://files.pythonhosted.org/packages/d5/bd/8843470763354f509ed7ccec08722f405c9a3b714c51c9866cca4cfe55c7/thriftpy2-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "7ec0ae533ee02c9a6ffbb43b629a0bdd", "sha256": "1e7c85c25ee5e56452ebe09c1607cc61f43407ddc86f3ca579e84aab3f718de1" }, "downloads": -1, "filename": "thriftpy2-0.4.1.tar.gz", "has_sig": false, "md5_digest": "7ec0ae533ee02c9a6ffbb43b629a0bdd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 294678, "upload_time": "2019-02-18T12:23:55", "upload_time_iso_8601": "2019-02-18T12:23:55.960280Z", "url": "https://files.pythonhosted.org/packages/7b/a0/e46894d5f41ac180aea03030f17b48bef70d8e1923d52b4890ff9803fe96/thriftpy2-0.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.10": [ { "comment_text": "", "digests": { "md5": "13b5ddd869cfe5c117e8cb73d71f2a49", "sha256": "0bd98580bdb1d1184338e5f105b685f55f3fd60e6335c72d9bb7634ed284cc57" }, "downloads": -1, "filename": "thriftpy2-0.4.10.tar.gz", "has_sig": false, "md5_digest": "13b5ddd869cfe5c117e8cb73d71f2a49", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 301668, "upload_time": "2020-01-01T05:26:30", "upload_time_iso_8601": "2020-01-01T05:26:30.337063Z", "url": "https://files.pythonhosted.org/packages/78/9b/f415dc3b1a17d52a0dbfe311f1c3250469ad219a0bdb506eb8050245c8d4/thriftpy2-0.4.10.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.11": [ { "comment_text": "", "digests": { "md5": "19de435dc479bbdc9ee65330bc10cefb", "sha256": "6516b4c55b656d6de92ec1f554a0f1ce758d42fc8d564385a26fb31e5842dc6e" }, "downloads": -1, "filename": "thriftpy2-0.4.11.tar.gz", "has_sig": false, "md5_digest": "19de435dc479bbdc9ee65330bc10cefb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 498682, "upload_time": "2020-03-17T03:50:25", "upload_time_iso_8601": "2020-03-17T03:50:25.858571Z", "url": "https://files.pythonhosted.org/packages/a9/f0/9bf08e6b5983aa6a6103818da21eadfaea1ad99ec9882be3e75a30e8e9ff/thriftpy2-0.4.11.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.12": [ { "comment_text": "", "digests": { "md5": "f6d1aa7405771009b85dc4f93ef7d228", "sha256": "01f2b93ea3493dbd518b098ba5bfa3dfcf296f6e4eddefac660824c883699647" }, "downloads": -1, "filename": "thriftpy2-0.4.12.tar.gz", "has_sig": false, "md5_digest": "f6d1aa7405771009b85dc4f93ef7d228", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 356497, "upload_time": "2020-10-13T06:42:00", "upload_time_iso_8601": "2020-10-13T06:42:00.369296Z", "url": "https://files.pythonhosted.org/packages/be/e7/9a2e74314e4f457aee34322b5c67f76277a7d0a450556ad3c9ee12aabe31/thriftpy2-0.4.12.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.13": [ { "comment_text": "", "digests": { "md5": "094ec97cc5d8bd2424751fbaa1c5d00f", "sha256": "f5c480f1ad415ebc7d1224bd8c0f66665e25cdfb4f351be50a68824bf08d8624" }, "downloads": -1, "filename": "thriftpy2-0.4.13-cp27-cp27m-macosx_10_15_x86_64.whl", "has_sig": false, "md5_digest": "094ec97cc5d8bd2424751fbaa1c5d00f", "packagetype": "bdist_wheel", "python_version": "cp27", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 467134, "upload_time": "2021-01-19T08:14:21", "upload_time_iso_8601": "2021-01-19T08:14:21.364007Z", "url": "https://files.pythonhosted.org/packages/de/f5/5e3df624c25c1a67f5100fbc6e6041ec2d4ccc8cca52bd03c8bf8acb549a/thriftpy2-0.4.13-cp27-cp27m-macosx_10_15_x86_64.whl", "yanked": true, "yanked_reason": "Serialization broken, see: https://github.com/Thriftpy/thriftpy2/issues/156" }, { "comment_text": "", "digests": { "md5": "2ba44fb14a915c129280d431df3b6f39", "sha256": "8a6326d82dc2b7edb364607041715645e64256949680c9a549a1258d74ef625d" }, "downloads": -1, "filename": "thriftpy2-0.4.13.tar.gz", "has_sig": false, "md5_digest": "2ba44fb14a915c129280d431df3b6f39", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 365812, "upload_time": "2021-01-19T08:14:25", "upload_time_iso_8601": "2021-01-19T08:14:25.590670Z", "url": "https://files.pythonhosted.org/packages/b8/d8/4f9dc476c00ff92659efe70d5fb88efa340cd9ed4910ffa2fcaf417319fe/thriftpy2-0.4.13.tar.gz", "yanked": true, "yanked_reason": "Serialization broken, see: https://github.com/Thriftpy/thriftpy2/issues/156" } ], "0.4.14": [ { "comment_text": "", "digests": { "md5": "2700ce3f1c8d548ff991446558b90f37", "sha256": "b4aae6f6c1d8d12e63c45f68ec1a25267e7d3af1ced1e5a82cbabaaed4bcebc9" }, "downloads": -1, "filename": "thriftpy2-0.4.14-cp38-cp38-macosx_10_15_x86_64.whl", "has_sig": false, "md5_digest": "2700ce3f1c8d548ff991446558b90f37", "packagetype": "bdist_wheel", "python_version": "cp38", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 467610, "upload_time": "2021-01-21T09:43:22", "upload_time_iso_8601": "2021-01-21T09:43:22.865990Z", "url": "https://files.pythonhosted.org/packages/9e/2f/e3fde100254cbb00b0496e8e2385f3f1a5c4b314215170612c6d498c3132/thriftpy2-0.4.14-cp38-cp38-macosx_10_15_x86_64.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c601d1d3f81cb49061b55e58e49aa166", "sha256": "1758ccaeb2a40d8779b50cdd3d7a3b43e8c5752f21ad0a54ded7c251d05219e8" }, "downloads": -1, "filename": "thriftpy2-0.4.14.tar.gz", "has_sig": false, "md5_digest": "c601d1d3f81cb49061b55e58e49aa166", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 361668, "upload_time": "2021-01-21T09:43:26", "upload_time_iso_8601": "2021-01-21T09:43:26.448364Z", "url": "https://files.pythonhosted.org/packages/1d/d1/6b041449bd04b953294f3a070fc96bd8ce23ff81e96cc4c2920f7d555fe0/thriftpy2-0.4.14.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "42b491e251246f9e544aa5ae2696e69f", "sha256": "419312421f58e028f8238735f4d99808c7348e5a3f3e7a19e1d9795c98f177ac" }, "downloads": -1, "filename": "thriftpy2-0.4.2.tar.gz", "has_sig": false, "md5_digest": "42b491e251246f9e544aa5ae2696e69f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 294946, "upload_time": "2019-02-25T04:12:55", "upload_time_iso_8601": "2019-02-25T04:12:55.149482Z", "url": "https://files.pythonhosted.org/packages/aa/0d/3525fd44535726e97b9b9ae5ed45bcb2c58844d9cb4dfe1d9ccf1d93d0a2/thriftpy2-0.4.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "74eaa34161de945064ed641df7704e8e", "sha256": "286fae34e9dd00374ceaee1f20622b6c303b3345ad8d99bb7fb50ea25d54776b" }, "downloads": -1, "filename": "thriftpy2-0.4.3.tar.gz", "has_sig": false, "md5_digest": "74eaa34161de945064ed641df7704e8e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 296310, "upload_time": "2019-05-24T08:05:15", "upload_time_iso_8601": "2019-05-24T08:05:15.703428Z", "url": "https://files.pythonhosted.org/packages/e5/50/21352a336e6defe06b9ab519539234f970bd131a063c4f57573d76b9c143/thriftpy2-0.4.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "3919b79186d73b1c87849b1ea45fe374", "sha256": "7c0e7f330b70b18035b02522163dba914aadca1cae0dc5455949307bce8755f2" }, "downloads": -1, "filename": "thriftpy2-0.4.4.tar.gz", "has_sig": false, "md5_digest": "3919b79186d73b1c87849b1ea45fe374", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 296713, "upload_time": "2019-06-11T09:58:52", "upload_time_iso_8601": "2019-06-11T09:58:52.997932Z", "url": "https://files.pythonhosted.org/packages/b1/6e/ee0400c5d25babf1426b20fc75192f723c693915e81d251056097206a161/thriftpy2-0.4.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "f0d1625e927ecf3ce112278e78a44237", "sha256": "d5bb46304122aa9d74889033e84ff306b849dbc9a0599453afae14a83d7d415f" }, "downloads": -1, "filename": "thriftpy2-0.4.5.tar.gz", "has_sig": false, "md5_digest": "f0d1625e927ecf3ce112278e78a44237", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 296831, "upload_time": "2019-08-27T02:42:08", "upload_time_iso_8601": "2019-08-27T02:42:08.551497Z", "url": "https://files.pythonhosted.org/packages/cf/04/acbe97485fe7418fc09a127d10349e7ada3fb39ab3f096e17a3ccb5ebd65/thriftpy2-0.4.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.6": [ { "comment_text": "", "digests": { "md5": "6952bc27728f16aa629c40dab7236eb9", "sha256": "774406df2a12d35c58111efd25830b6bb7b48d10a4bf28107e6e1de0fa9c103a" }, "downloads": -1, "filename": "thriftpy2-0.4.6.tar.gz", "has_sig": false, "md5_digest": "6952bc27728f16aa629c40dab7236eb9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 297677, "upload_time": "2019-09-24T02:59:39", "upload_time_iso_8601": "2019-09-24T02:59:39.553279Z", "url": "https://files.pythonhosted.org/packages/33/58/9afacf2d2de952be5452dedde942b11bfcc17feaa2c18579d343884b6a4a/thriftpy2-0.4.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "e688b9880d0513e66c9aee9d1536cb7f", "sha256": "040a17f51ce752af4118475e2306abbd72ab0e2a9aa904ee94ef73ec20cadc34" }, "downloads": -1, "filename": "thriftpy2-0.4.7.tar.gz", "has_sig": false, "md5_digest": "e688b9880d0513e66c9aee9d1536cb7f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 298064, "upload_time": "2019-10-04T10:09:10", "upload_time_iso_8601": "2019-10-04T10:09:10.081246Z", "url": "https://files.pythonhosted.org/packages/bc/a8/9267131412914f75cdad654b3deb920fd28d9d4afb188900bf2a420d9fb1/thriftpy2-0.4.7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "b3917cb717698e029592078000b40ba7", "sha256": "e36c51cf08db7b4e3667dfde8aa2cf7af45750ed3faf839bc5057b3465c5e18d" }, "downloads": -1, "filename": "thriftpy2-0.4.8.tar.gz", "has_sig": false, "md5_digest": "b3917cb717698e029592078000b40ba7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 298135, "upload_time": "2019-10-27T09:10:09", "upload_time_iso_8601": "2019-10-27T09:10:09.093383Z", "url": "https://files.pythonhosted.org/packages/2c/23/57b00b3d5d3d0ae66d79844a39d3c3b92dde3063c901036808602137d3ab/thriftpy2-0.4.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.9": [ { "comment_text": "", "digests": { "md5": "a6d20f024b256af67f75395f5f486603", "sha256": "6a288463f4f9457b01136933197dc4814093824ce42ca9170c4a56704b3b6b75" }, "downloads": -1, "filename": "thriftpy2-0.4.9.tar.gz", "has_sig": false, "md5_digest": "a6d20f024b256af67f75395f5f486603", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 298282, "upload_time": "2019-11-27T06:56:09", "upload_time_iso_8601": "2019-11-27T06:56:09.220380Z", "url": "https://files.pythonhosted.org/packages/9d/33/8cd7204ce170c82f78bfd327b3029ce94823ac8a784e021bf428a0b04a84/thriftpy2-0.4.9.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2700ce3f1c8d548ff991446558b90f37", "sha256": "b4aae6f6c1d8d12e63c45f68ec1a25267e7d3af1ced1e5a82cbabaaed4bcebc9" }, "downloads": -1, "filename": "thriftpy2-0.4.14-cp38-cp38-macosx_10_15_x86_64.whl", "has_sig": false, "md5_digest": "2700ce3f1c8d548ff991446558b90f37", "packagetype": "bdist_wheel", "python_version": "cp38", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 467610, "upload_time": "2021-01-21T09:43:22", "upload_time_iso_8601": "2021-01-21T09:43:22.865990Z", "url": "https://files.pythonhosted.org/packages/9e/2f/e3fde100254cbb00b0496e8e2385f3f1a5c4b314215170612c6d498c3132/thriftpy2-0.4.14-cp38-cp38-macosx_10_15_x86_64.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c601d1d3f81cb49061b55e58e49aa166", "sha256": "1758ccaeb2a40d8779b50cdd3d7a3b43e8c5752f21ad0a54ded7c251d05219e8" }, "downloads": -1, "filename": "thriftpy2-0.4.14.tar.gz", "has_sig": false, "md5_digest": "c601d1d3f81cb49061b55e58e49aa166", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "size": 361668, "upload_time": "2021-01-21T09:43:26", "upload_time_iso_8601": "2021-01-21T09:43:26.448364Z", "url": "https://files.pythonhosted.org/packages/1d/d1/6b041449bd04b953294f3a070fc96bd8ce23ff81e96cc4c2920f7d555fe0/thriftpy2-0.4.14.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }