{ "info": { "author": "R\u00f3bert M\u00e1rki", "author_email": "gsmiko@gmail.com", "bugtrack_url": null, "classifiers": [ "Framework :: AsyncIO", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython" ], "description": "aiocometd\n=========\n\n.. image:: https://badge.fury.io/py/aiocometd.svg\n :target: https://badge.fury.io/py/aiocometd\n :alt: PyPI package\n\n.. image:: https://readthedocs.org/projects/aiocometd/badge/?version=latest\n :target: http://aiocometd.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://travis-ci.org/robertmrk/aiocometd.svg?branch=develop\n :target: https://travis-ci.org/robertmrk/aiocometd\n :alt: Build status\n\n.. image:: https://coveralls.io/repos/github/robertmrk/aiocometd/badge.svg\n :target: https://coveralls.io/github/robertmrk/aiocometd\n :alt: Coverage\n\n.. image:: https://img.shields.io/badge/License-MIT-yellow.svg\n :target: https://opensource.org/licenses/MIT\n :alt: MIT license\n\naiocometd is a CometD_ client built using asyncio_, implementing the Bayeux_\nprotocol.\n\nCometD_ is a scalable WebSocket and HTTP based event and message routing bus.\nCometD_ makes use of WebSocket and HTTP push technologies known as Comet_ to\nprovide low-latency data from the server to browsers and client applications.\n\nFeatures\n--------\n\n- Supported transports:\n - ``long-polling``\n - ``websocket``\n- Automatic reconnection after network failures\n- Extensions\n\nUsage\n-----\n\n.. code-block:: python\n\n import asyncio\n\n from aiocometd import Client\n\n async def chat():\n nickname = \"John\"\n\n # connect to the server\n async with Client(\"http://example.com/cometd\") as client:\n\n # subscribe to channels to receive chat messages and\n # notifications about new members\n await client.subscribe(\"/chat/demo\")\n await client.subscribe(\"/members/demo\")\n\n # send initial message\n await client.publish(\"/chat/demo\", {\n \"user\": nickname,\n \"membership\": \"join\",\n \"chat\": nickname + \" has joined\"\n })\n # add the user to the chat room's members\n await client.publish(\"/service/members\", {\n \"user\": nickname,\n \"room\": \"/chat/demo\"\n })\n\n # listen for incoming messages\n async for message in client:\n if message[\"channel\"] == \"/chat/demo\":\n data = message[\"data\"]\n print(f\"{data['user']}: {data['chat']}\")\n\n if __name__ == \"__main__\":\n loop = asyncio.get_event_loop()\n loop.run_until_complete(chat())\n\nFor more detailed usage examples take a look at the\n`command line chat example `_ or for a more complex example with\na GUI check out the aiocometd-chat-demo_.\n\nDocumentation\n-------------\n\nhttps://aiocometd.readthedocs.io/\n\n.. _aiohttp: https://github.com/aio-libs/aiohttp/\n.. _CometD: https://cometd.org/\n.. _Comet: https://en.wikipedia.org/wiki/Comet_(programming)\n.. _asyncio: https://docs.python.org/3/library/asyncio.html\n.. _Bayeux: https://docs.cometd.org/current/reference/#_bayeux\n.. _ext: https://docs.cometd.org/current/reference/#_bayeux_ext\n.. _cli_example: https://github.com/robertmrk/aiocometd/blob/develop/examples/chat.py\n.. _aiocometd-chat-demo: https://github.com/robertmrk/aiocometd-chat-demo\n\nChangelog\n=========\n\n0.4.5 (2019-03-14)\n------------------\n\n- Fix connection issues when used with reverse proxy servers with cookie based\n sticky sessions\n\n0.4.4 (2019-02-26)\n------------------\n\n- Refactor the websocket transport implementation to use a single connection\n per client\n\n0.4.3 (2019-02-12)\n------------------\n\n- Fix reconnection issue on Salesforce Streaming API\n\n0.4.2 (2019-01-15)\n------------------\n\n- Fix the handling of invalid websocket transport responses\n- Fix the handling of failed subscription responses\n\n0.4.1 (2019-01-04)\n------------------\n\n- Add documentation links\n\n0.4.0 (2019-01-04)\n------------------\n\n- Add type hints\n- Add integration tests\n\n0.3.1 (2018-06-15)\n------------------\n\n- Fix premature request timeout issue\n\n0.3.0 (2018-05-04)\n------------------\n\n- Enable the usage of third party JSON libraries\n- Fix detection and recovery from network failures\n\n0.2.3 (2018-04-24)\n------------------\n\n- Fix RST rendering issues\n\n0.2.2 (2018-04-24)\n------------------\n\n- Fix documentation typos\n- Improve examples\n- Reorganise documentation\n\n0.2.1 (2018-04-21)\n------------------\n\n- Add PyPI badge to README\n\n0.2.0 (2018-04-21)\n------------------\n\n- Supported transports:\n - ``long-polling``\n - ``websocket``\n- Automatic reconnection after network failures\n- Extensions\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/robertmrk/aiocometd", "keywords": "asyncio aiohttp comet cometd bayeux push streaming", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "aiocometd", "package_url": "https://pypi.org/project/aiocometd/", "platform": "", "project_url": "https://pypi.org/project/aiocometd/", "project_urls": { "CI": "https://travis-ci.org/robertmrk/aiocometd", "Coverage": "https://coveralls.io/github/robertmrk/aiocometd", "Docs": "http://aiocometd.readthedocs.io/", "Homepage": "https://github.com/robertmrk/aiocometd" }, "release_url": "https://pypi.org/project/aiocometd/0.4.5/", "requires_dist": [ "aiohttp (<4.0,>=3.1)", "asynctest (<1.0.0,>=0.12.0) ; extra == 'dev'", "coverage (<5.0,>=4.5) ; extra == 'dev'", "docker (>=3.5.1) ; extra == 'dev'", "flake8 ; extra == 'dev'", "pylint ; extra == 'dev'", "mypy ; extra == 'dev'", "Sphinx (<2.0,>=1.7) ; extra == 'dev'", "sphinxcontrib-asyncio (>=0.2.0) ; extra == 'dev'", "sphinx-autodoc-typehints ; extra == 'dev'", "aioconsole (<1.0.0,>=0.1.7) ; extra == 'dev'", "Sphinx (<2.0,>=1.7) ; extra == 'docs'", "sphinxcontrib-asyncio (>=0.2.0) ; extra == 'docs'", "sphinx-autodoc-typehints ; extra == 'docs'", "aioconsole (<1.0.0,>=0.1.7) ; extra == 'examples'", "asynctest (<1.0.0,>=0.12.0) ; extra == 'tests'", "coverage (<5.0,>=4.5) ; extra == 'tests'", "docker (>=3.5.1) ; extra == 'tests'", "flake8 ; extra == 'tests'", "pylint ; extra == 'tests'", "mypy ; extra == 'tests'" ], "requires_python": ">=3.6.0", "summary": "CometD client for asyncio", "version": "0.4.5" }, "last_serial": 4940636, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "a4b593fda2348ef09f5b0d1f0548623b", "sha256": "1e13cb3866b9f9c95e6af5e5b4834c7d8f6672cc2466ec348e57071ca64579b8" }, "downloads": -1, "filename": "aiocometd-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a4b593fda2348ef09f5b0d1f0548623b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 22650, "upload_time": "2018-04-21T10:36:00", "url": "https://files.pythonhosted.org/packages/3f/fb/3eb0193efcafa3a8e8b7ddb6c7ecd2dfbf0a8dfb7a2e53e22c60dcde39f8/aiocometd-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d9b92d5b124bf02970c1f26f812d096d", "sha256": "8db70e4ccaec56e25fd55334b4e352e8f2ff4251f973fbd92cef1820c35e3973" }, "downloads": -1, "filename": "aiocometd-0.2.1.tar.gz", "has_sig": false, "md5_digest": "d9b92d5b124bf02970c1f26f812d096d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 44826, "upload_time": "2018-04-21T10:36:02", "url": "https://files.pythonhosted.org/packages/39/a7/9ee0b7a513fd9049dd9b4ac5c35ad7e2475f285ea363baf9c17734677580/aiocometd-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "52edb1c1ad8adbf4ab5b1d8c639656da", "sha256": "4f21a885f40e76ce0b50781b260e4ef631f5e26e67329be589f0d32304d744c4" }, "downloads": -1, "filename": "aiocometd-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "52edb1c1ad8adbf4ab5b1d8c639656da", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 22611, "upload_time": "2018-04-24T19:05:14", "url": "https://files.pythonhosted.org/packages/f6/4e/ec275f64ad7ccb1680ce037d66b594d4038b40dbd6ecb22ea3113751c4c6/aiocometd-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc15e8bf7f8354e60e0fd6900eb18a5c", "sha256": "6b8bc71f7b4f82fadc02aa6c67a6946c89e9fa0a782a61e99335756865afcbdb" }, "downloads": -1, "filename": "aiocometd-0.2.2.tar.gz", "has_sig": false, "md5_digest": "fc15e8bf7f8354e60e0fd6900eb18a5c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 44636, "upload_time": "2018-04-24T19:05:16", "url": "https://files.pythonhosted.org/packages/e3/5c/f613c59f321d65fb6362fde8a7215f8b7a47a7efe642c4f568f43271b638/aiocometd-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "6727342e3ef23ffc0fd5828f6e0c9d22", "sha256": "d136c2a39a7e4fe3c22971625d7616187b822fc55651bf2dbcc6341d34cec062" }, "downloads": -1, "filename": "aiocometd-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6727342e3ef23ffc0fd5828f6e0c9d22", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 22721, "upload_time": "2018-04-24T19:18:07", "url": "https://files.pythonhosted.org/packages/12/18/9d91e2cb5656ee79700e540355459029573820a7b8c675de3197ab738e6e/aiocometd-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "29f47396fecfa97408dc8863f0d1dd15", "sha256": "cf2b76d0b8e91bc345e309bb24d0d850590428f71051799daf7e1cb8d47be517" }, "downloads": -1, "filename": "aiocometd-0.2.3.tar.gz", "has_sig": false, "md5_digest": "29f47396fecfa97408dc8863f0d1dd15", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 45441, "upload_time": "2018-04-24T19:18:10", "url": "https://files.pythonhosted.org/packages/05/38/103d5411e53863a5be6a89e2d98448a3fc97e3198d8408f3858c946ae59d/aiocometd-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a3db087b6df71afc0f89c64a2ac2bcf4", "sha256": "ff4ae09d847f824cd22011f5d789d24f1242fa9ffe96bdb7d9a9732ad9ce7ea0" }, "downloads": -1, "filename": "aiocometd-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a3db087b6df71afc0f89c64a2ac2bcf4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 23501, "upload_time": "2018-05-04T20:35:16", "url": "https://files.pythonhosted.org/packages/0a/95/6f525cf1ce5f1e28cd4a5305c2d98c607d5f42319ed86a2384161d6c27f1/aiocometd-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cdde89e1e69a0eff9323048cdc38b8a0", "sha256": "26527833a161980cae512394560da7594105bd70cca1ab8dd22a27d483492e3c" }, "downloads": -1, "filename": "aiocometd-0.3.0.tar.gz", "has_sig": false, "md5_digest": "cdde89e1e69a0eff9323048cdc38b8a0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 47180, "upload_time": "2018-05-04T20:35:19", "url": "https://files.pythonhosted.org/packages/7d/ff/b98c656202a740c41ebec6bb3c06eefcf542dea3948fe427a2771eb53295/aiocometd-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "3255f16d5c17b921751b851545ad6ed7", "sha256": "06906ecf374ebb50abb6a6736983038e5deb08a5fc4e96e0c6a28a0145aa62dd" }, "downloads": -1, "filename": "aiocometd-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "3255f16d5c17b921751b851545ad6ed7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 23505, "upload_time": "2018-06-15T09:55:52", "url": "https://files.pythonhosted.org/packages/bd/2a/281da1b36d6293474c7ecf114271d37fff3d3aaca62f2fb14b4c32b60346/aiocometd-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7011f57d0a100a8c66e50aa5154e8ea5", "sha256": "606bf2d08248b3b2b7971c37ff7ee1e825b86c290a17a445a1b3ca4743f7b71a" }, "downloads": -1, "filename": "aiocometd-0.3.1.tar.gz", "has_sig": false, "md5_digest": "7011f57d0a100a8c66e50aa5154e8ea5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 47203, "upload_time": "2018-06-15T09:55:58", "url": "https://files.pythonhosted.org/packages/e5/a2/42a287839b1bebc8e2bb208fc0dd14f9e9b27304eaed047bad9f75ebd0d9/aiocometd-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "47e062a5c2e91ff4d82030b52655b7d5", "sha256": "8a6e092e844c2e000e726b56734dd6644b2aced6853631f0cec55a71c5384919" }, "downloads": -1, "filename": "aiocometd-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "47e062a5c2e91ff4d82030b52655b7d5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 26365, "upload_time": "2019-01-04T18:04:08", "url": "https://files.pythonhosted.org/packages/38/b6/bc7f5bd1ed6d24352629a56ca8ad1e787b5063a2bb5386a21de2080cfb96/aiocometd-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5cd9feac7940a8e633bd609ed60e35d3", "sha256": "a9e2b7e41542b122604e1fd60e43949fa71a70071ff3d0aeaf0994ae2d6759e8" }, "downloads": -1, "filename": "aiocometd-0.4.0.tar.gz", "has_sig": false, "md5_digest": "5cd9feac7940a8e633bd609ed60e35d3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 50953, "upload_time": "2019-01-04T18:04:10", "url": "https://files.pythonhosted.org/packages/e3/9b/a8bd11c388213b42a5fed56a5058a6f57e9372d61f7497be477a474b01c5/aiocometd-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "bc8b34fd59bd02cc13003208ce441987", "sha256": "863337f99965738b5a8d50a707954d42caa805ac411d242a63ec596cfba2b173" }, "downloads": -1, "filename": "aiocometd-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "bc8b34fd59bd02cc13003208ce441987", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 26494, "upload_time": "2019-01-04T18:54:04", "url": "https://files.pythonhosted.org/packages/ef/d1/72329916635a8bef5f043b44be534ed16fb1324ab7ada941fbb00d77e625/aiocometd-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9808bb0f759c1ad7ae3b86bc83be7b48", "sha256": "5002a5e29bdcfb37a942bbabd4d2506b5738c5064ff2383511516251325a02c3" }, "downloads": -1, "filename": "aiocometd-0.4.1.tar.gz", "has_sig": false, "md5_digest": "9808bb0f759c1ad7ae3b86bc83be7b48", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 51184, "upload_time": "2019-01-04T18:54:06", "url": "https://files.pythonhosted.org/packages/23/b5/2768e6d95047577db7190a891a2c40f42dde20e57af8fee144e9c851c777/aiocometd-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "64cb771c8216580041601a9bbcceedb1", "sha256": "3d37418e417338cacb41f46b45863d52770db3dc19d02d1274a0deb2d20f51d9" }, "downloads": -1, "filename": "aiocometd-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "64cb771c8216580041601a9bbcceedb1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 26572, "upload_time": "2019-01-15T11:51:35", "url": "https://files.pythonhosted.org/packages/03/52/d4ec0bcf95a592844f11e3f0709a6a41a679f00cca00429d2ead2a5c5716/aiocometd-0.4.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "88ba0e9ef3bbc812d1afbf50accc2f39", "sha256": "20cec481486e129367f5662d6645a7e1405b59e6f3bb103e14c8c24cde6eacb9" }, "downloads": -1, "filename": "aiocometd-0.4.2.tar.gz", "has_sig": false, "md5_digest": "88ba0e9ef3bbc812d1afbf50accc2f39", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 51456, "upload_time": "2019-01-15T11:51:39", "url": "https://files.pythonhosted.org/packages/46/e0/8e9ff83614ffb8548509aa9ccdfa8402a28aaeb68d9e3b2bbc77c8a53615/aiocometd-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "31aaad227e5979b5095e2fda0d036a49", "sha256": "a56ad0411dcbf28a3b61794ceb568f9e38e71218c0668432d4326d431e1e0623" }, "downloads": -1, "filename": "aiocometd-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "31aaad227e5979b5095e2fda0d036a49", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 26898, "upload_time": "2019-02-12T19:22:23", "url": "https://files.pythonhosted.org/packages/dd/39/6fb15904733c7efe6050fb5369f64a07aeda2e48da0007fb8798d198dff2/aiocometd-0.4.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d325aa67e4e2fb9595f59028070f7918", "sha256": "7cedfdfb2aa4a3950231cf21e7c59266c2879d8315d7c6824f18ab9dc1878455" }, "downloads": -1, "filename": "aiocometd-0.4.3.tar.gz", "has_sig": false, "md5_digest": "d325aa67e4e2fb9595f59028070f7918", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 52159, "upload_time": "2019-02-12T19:22:28", "url": "https://files.pythonhosted.org/packages/a8/19/95caf698bc29d76d3d545299516b6fd9925ee0e134021504294fbbe6fb57/aiocometd-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "9393e81c7407e173f4bdc39b2f6172b9", "sha256": "5cf056b3f97cab4b0a630f932930971ba17f64ec3adde8558cc0cdd961eeac34" }, "downloads": -1, "filename": "aiocometd-0.4.4-py3-none-any.whl", "has_sig": false, "md5_digest": "9393e81c7407e173f4bdc39b2f6172b9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 27638, "upload_time": "2019-02-26T12:19:36", "url": "https://files.pythonhosted.org/packages/2a/ac/056006c59c895cb99781bfac57871bb70604b25704093ae8211d56d89183/aiocometd-0.4.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2ccdc133352e1d56592de20a11614a93", "sha256": "e0a7f39fdc8f75527479495e6c42bb5173c5d82bdc6523bd9a3a5e1c7f1fb5a3" }, "downloads": -1, "filename": "aiocometd-0.4.4.tar.gz", "has_sig": false, "md5_digest": "2ccdc133352e1d56592de20a11614a93", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 53499, "upload_time": "2019-02-26T12:19:43", "url": "https://files.pythonhosted.org/packages/d2/53/6a6d58fc07e0eb0f2a0aa4f3fe8ff22b239c869b371d16f19bcd7201485b/aiocometd-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "18828c927752e4e0b7ceb59016797c06", "sha256": "45bf584e8c69f74471945b00310f62c7de845a760d87f3d8604c301ca4e25d44" }, "downloads": -1, "filename": "aiocometd-0.4.5-py3-none-any.whl", "has_sig": false, "md5_digest": "18828c927752e4e0b7ceb59016797c06", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 27969, "upload_time": "2019-03-14T16:44:33", "url": "https://files.pythonhosted.org/packages/e3/96/17bd03054056b41b5855a582946cc5d47e568c5bc4452a2de90ddce6d1a8/aiocometd-0.4.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3101ba8060b44c96c49b11e94d5d9c2", "sha256": "14cba933cfffa5fbe39da801d5b681675962dcb1a868ddb0f00d521c9b9171f4" }, "downloads": -1, "filename": "aiocometd-0.4.5.tar.gz", "has_sig": false, "md5_digest": "d3101ba8060b44c96c49b11e94d5d9c2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 53975, "upload_time": "2019-03-14T16:44:40", "url": "https://files.pythonhosted.org/packages/fa/75/24f9a4b441f81dcac0bc0c35b4f4299e77f1fa5a6a1d0b3f4cd68f063bcb/aiocometd-0.4.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "18828c927752e4e0b7ceb59016797c06", "sha256": "45bf584e8c69f74471945b00310f62c7de845a760d87f3d8604c301ca4e25d44" }, "downloads": -1, "filename": "aiocometd-0.4.5-py3-none-any.whl", "has_sig": false, "md5_digest": "18828c927752e4e0b7ceb59016797c06", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 27969, "upload_time": "2019-03-14T16:44:33", "url": "https://files.pythonhosted.org/packages/e3/96/17bd03054056b41b5855a582946cc5d47e568c5bc4452a2de90ddce6d1a8/aiocometd-0.4.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3101ba8060b44c96c49b11e94d5d9c2", "sha256": "14cba933cfffa5fbe39da801d5b681675962dcb1a868ddb0f00d521c9b9171f4" }, "downloads": -1, "filename": "aiocometd-0.4.5.tar.gz", "has_sig": false, "md5_digest": "d3101ba8060b44c96c49b11e94d5d9c2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 53975, "upload_time": "2019-03-14T16:44:40", "url": "https://files.pythonhosted.org/packages/fa/75/24f9a4b441f81dcac0bc0c35b4f4299e77f1fa5a6a1d0b3f4cd68f063bcb/aiocometd-0.4.5.tar.gz" } ] }