websockets


Namewebsockets JSON
Version 14.1 PyPI version JSON
download
home_pageNone
SummaryAn implementation of the WebSocket Protocol (RFC 6455 & 7692)
upload_time2024-11-13 07:11:29
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseBSD-3-Clause
keywords websocket
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: logo/horizontal.svg
   :width: 480px
   :alt: websockets

|licence| |version| |pyversions| |tests| |docs| |openssf|

.. |licence| image:: https://img.shields.io/pypi/l/websockets.svg
    :target: https://pypi.python.org/pypi/websockets

.. |version| image:: https://img.shields.io/pypi/v/websockets.svg
    :target: https://pypi.python.org/pypi/websockets

.. |pyversions| image:: https://img.shields.io/pypi/pyversions/websockets.svg
    :target: https://pypi.python.org/pypi/websockets

.. |tests| image:: https://img.shields.io/github/checks-status/python-websockets/websockets/main?label=tests
   :target: https://github.com/python-websockets/websockets/actions/workflows/tests.yml

.. |docs| image:: https://img.shields.io/readthedocs/websockets.svg
   :target: https://websockets.readthedocs.io/

.. |openssf| image:: https://bestpractices.coreinfrastructure.org/projects/6475/badge
   :target: https://bestpractices.coreinfrastructure.org/projects/6475

What is ``websockets``?
-----------------------

websockets is a library for building WebSocket_ servers and clients in Python
with a focus on correctness, simplicity, robustness, and performance.

.. _WebSocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API

Built on top of ``asyncio``, Python's standard asynchronous I/O framework, the
default implementation provides an elegant coroutine-based API.

An implementation on top of ``threading`` and a Sans-I/O implementation are also
available.

`Documentation is available on Read the Docs. <https://websockets.readthedocs.io/>`_

.. copy-pasted because GitHub doesn't support the include directive

Here's an echo server with the ``asyncio`` API:

.. code:: python

    #!/usr/bin/env python

    import asyncio
    from websockets.server import serve

    async def echo(websocket):
        async for message in websocket:
            await websocket.send(message)

    async def main():
        async with serve(echo, "localhost", 8765):
            await asyncio.get_running_loop().create_future()  # run forever

    asyncio.run(main())

Here's how a client sends and receives messages with the ``threading`` API:

.. code:: python

    #!/usr/bin/env python

    from websockets.sync.client import connect

    def hello():
        with connect("ws://localhost:8765") as websocket:
            websocket.send("Hello world!")
            message = websocket.recv()
            print(f"Received: {message}")

    hello()


Does that look good?

`Get started with the tutorial! <https://websockets.readthedocs.io/en/stable/intro/index.html>`_

Why should I use ``websockets``?
--------------------------------

The development of ``websockets`` is shaped by four principles:

1. **Correctness**: ``websockets`` is heavily tested for compliance with
   :rfc:`6455`. Continuous integration fails under 100% branch coverage.

2. **Simplicity**: all you need to understand is ``msg = await ws.recv()`` and
   ``await ws.send(msg)``. ``websockets`` takes care of managing connections
   so you can focus on your application.

3. **Robustness**: ``websockets`` is built for production. For example, it was
   the only library to `handle backpressure correctly`_ before the issue
   became widely known in the Python community.

4. **Performance**: memory usage is optimized and configurable. A C extension
   accelerates expensive operations. It's pre-compiled for Linux, macOS and
   Windows and packaged in the wheel format for each system and Python version.

Documentation is a first class concern in the project. Head over to `Read the
Docs`_ and see for yourself.

.. _Read the Docs: https://websockets.readthedocs.io/
.. _handle backpressure correctly: https://vorpus.org/blog/some-thoughts-on-asynchronous-api-design-in-a-post-asyncawait-world/#websocket-servers

Why shouldn't I use ``websockets``?
-----------------------------------

* If you prefer callbacks over coroutines: ``websockets`` was created to
  provide the best coroutine-based API to manage WebSocket connections in
  Python. Pick another library for a callback-based API.

* If you're looking for a mixed HTTP / WebSocket library: ``websockets`` aims
  at being an excellent implementation of :rfc:`6455`: The WebSocket Protocol
  and :rfc:`7692`: Compression Extensions for WebSocket. Its support for HTTP
  is minimal — just enough for an HTTP health check.

  If you want to do both in the same server, look at HTTP frameworks that
  build on top of ``websockets`` to support WebSocket connections, like
  Sanic_.

.. _Sanic: https://sanicframework.org/en/

What else?
----------

Bug reports, patches and suggestions are welcome!

To report a security vulnerability, please use the `Tidelift security
contact`_. Tidelift will coordinate the fix and disclosure.

.. _Tidelift security contact: https://tidelift.com/security

For anything else, please open an issue_ or send a `pull request`_.

.. _issue: https://github.com/python-websockets/websockets/issues/new
.. _pull request: https://github.com/python-websockets/websockets/compare/

Participants must uphold the `Contributor Covenant code of conduct`_.

.. _Contributor Covenant code of conduct: https://github.com/python-websockets/websockets/blob/main/CODE_OF_CONDUCT.md

``websockets`` is released under the `BSD license`_.

.. _BSD license: https://github.com/python-websockets/websockets/blob/main/LICENSE

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "websockets",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "WebSocket",
    "author": null,
    "author_email": "Aymeric Augustin <aymeric.augustin@m4x.org>",
    "download_url": "https://files.pythonhosted.org/packages/f4/1b/380b883ce05bb5f45a905b61790319a28958a9ab1e4b6b95ff5464b60ca1/websockets-14.1.tar.gz",
    "platform": null,
    "description": ".. image:: logo/horizontal.svg\n   :width: 480px\n   :alt: websockets\n\n|licence| |version| |pyversions| |tests| |docs| |openssf|\n\n.. |licence| image:: https://img.shields.io/pypi/l/websockets.svg\n    :target: https://pypi.python.org/pypi/websockets\n\n.. |version| image:: https://img.shields.io/pypi/v/websockets.svg\n    :target: https://pypi.python.org/pypi/websockets\n\n.. |pyversions| image:: https://img.shields.io/pypi/pyversions/websockets.svg\n    :target: https://pypi.python.org/pypi/websockets\n\n.. |tests| image:: https://img.shields.io/github/checks-status/python-websockets/websockets/main?label=tests\n   :target: https://github.com/python-websockets/websockets/actions/workflows/tests.yml\n\n.. |docs| image:: https://img.shields.io/readthedocs/websockets.svg\n   :target: https://websockets.readthedocs.io/\n\n.. |openssf| image:: https://bestpractices.coreinfrastructure.org/projects/6475/badge\n   :target: https://bestpractices.coreinfrastructure.org/projects/6475\n\nWhat is ``websockets``?\n-----------------------\n\nwebsockets is a library for building WebSocket_ servers and clients in Python\nwith a focus on correctness, simplicity, robustness, and performance.\n\n.. _WebSocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API\n\nBuilt on top of ``asyncio``, Python's standard asynchronous I/O framework, the\ndefault implementation provides an elegant coroutine-based API.\n\nAn implementation on top of ``threading`` and a Sans-I/O implementation are also\navailable.\n\n`Documentation is available on Read the Docs. <https://websockets.readthedocs.io/>`_\n\n.. copy-pasted because GitHub doesn't support the include directive\n\nHere's an echo server with the ``asyncio`` API:\n\n.. code:: python\n\n    #!/usr/bin/env python\n\n    import asyncio\n    from websockets.server import serve\n\n    async def echo(websocket):\n        async for message in websocket:\n            await websocket.send(message)\n\n    async def main():\n        async with serve(echo, \"localhost\", 8765):\n            await asyncio.get_running_loop().create_future()  # run forever\n\n    asyncio.run(main())\n\nHere's how a client sends and receives messages with the ``threading`` API:\n\n.. code:: python\n\n    #!/usr/bin/env python\n\n    from websockets.sync.client import connect\n\n    def hello():\n        with connect(\"ws://localhost:8765\") as websocket:\n            websocket.send(\"Hello world!\")\n            message = websocket.recv()\n            print(f\"Received: {message}\")\n\n    hello()\n\n\nDoes that look good?\n\n`Get started with the tutorial! <https://websockets.readthedocs.io/en/stable/intro/index.html>`_\n\nWhy should I use ``websockets``?\n--------------------------------\n\nThe development of ``websockets`` is shaped by four principles:\n\n1. **Correctness**: ``websockets`` is heavily tested for compliance with\n   :rfc:`6455`. Continuous integration fails under 100% branch coverage.\n\n2. **Simplicity**: all you need to understand is ``msg = await ws.recv()`` and\n   ``await ws.send(msg)``. ``websockets`` takes care of managing connections\n   so you can focus on your application.\n\n3. **Robustness**: ``websockets`` is built for production. For example, it was\n   the only library to `handle backpressure correctly`_ before the issue\n   became widely known in the Python community.\n\n4. **Performance**: memory usage is optimized and configurable. A C extension\n   accelerates expensive operations. It's pre-compiled for Linux, macOS and\n   Windows and packaged in the wheel format for each system and Python version.\n\nDocumentation is a first class concern in the project. Head over to `Read the\nDocs`_ and see for yourself.\n\n.. _Read the Docs: https://websockets.readthedocs.io/\n.. _handle backpressure correctly: https://vorpus.org/blog/some-thoughts-on-asynchronous-api-design-in-a-post-asyncawait-world/#websocket-servers\n\nWhy shouldn't I use ``websockets``?\n-----------------------------------\n\n* If you prefer callbacks over coroutines: ``websockets`` was created to\n  provide the best coroutine-based API to manage WebSocket connections in\n  Python. Pick another library for a callback-based API.\n\n* If you're looking for a mixed HTTP / WebSocket library: ``websockets`` aims\n  at being an excellent implementation of :rfc:`6455`: The WebSocket Protocol\n  and :rfc:`7692`: Compression Extensions for WebSocket. Its support for HTTP\n  is minimal \u2014 just enough for an HTTP health check.\n\n  If you want to do both in the same server, look at HTTP frameworks that\n  build on top of ``websockets`` to support WebSocket connections, like\n  Sanic_.\n\n.. _Sanic: https://sanicframework.org/en/\n\nWhat else?\n----------\n\nBug reports, patches and suggestions are welcome!\n\nTo report a security vulnerability, please use the `Tidelift security\ncontact`_. Tidelift will coordinate the fix and disclosure.\n\n.. _Tidelift security contact: https://tidelift.com/security\n\nFor anything else, please open an issue_ or send a `pull request`_.\n\n.. _issue: https://github.com/python-websockets/websockets/issues/new\n.. _pull request: https://github.com/python-websockets/websockets/compare/\n\nParticipants must uphold the `Contributor Covenant code of conduct`_.\n\n.. _Contributor Covenant code of conduct: https://github.com/python-websockets/websockets/blob/main/CODE_OF_CONDUCT.md\n\n``websockets`` is released under the `BSD license`_.\n\n.. _BSD license: https://github.com/python-websockets/websockets/blob/main/LICENSE\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "An implementation of the WebSocket Protocol (RFC 6455 & 7692)",
    "version": "14.1",
    "project_urls": {
        "Changelog": "https://websockets.readthedocs.io/en/stable/project/changelog.html",
        "Documentation": "https://websockets.readthedocs.io/",
        "Funding": "https://tidelift.com/subscription/pkg/pypi-websockets?utm_source=pypi-websockets&utm_medium=referral&utm_campaign=readme",
        "Homepage": "https://github.com/python-websockets/websockets",
        "Tracker": "https://github.com/python-websockets/websockets/issues"
    },
    "split_keywords": [
        "websocket"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "af91b1b375dbd856fd5fff3f117de0e520542343ecaf4e8fc60f1ac1e9f5822c",
                "md5": "f9846cfe65b7dd5a4d584e782ea6b86d",
                "sha256": "a0adf84bc2e7c86e8a202537b4fd50e6f7f0e4a6b6bf64d7ccb96c4cd3330b29"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "f9846cfe65b7dd5a4d584e782ea6b86d",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 161950,
            "upload_time": "2024-11-13T07:09:40",
            "upload_time_iso_8601": "2024-11-13T07:09:40.710130Z",
            "url": "https://files.pythonhosted.org/packages/af/91/b1b375dbd856fd5fff3f117de0e520542343ecaf4e8fc60f1ac1e9f5822c/websockets-14.1-cp310-cp310-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "618f4d52f272d3ebcd35e1325c646e98936099a348374d4a6b83b524bded8116",
                "md5": "3339eb2a87cd60d33c6b5b485cc70df5",
                "sha256": "90b5d9dfbb6d07a84ed3e696012610b6da074d97453bd01e0e30744b472c8179"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "3339eb2a87cd60d33c6b5b485cc70df5",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 159601,
            "upload_time": "2024-11-13T07:09:42",
            "upload_time_iso_8601": "2024-11-13T07:09:42.986806Z",
            "url": "https://files.pythonhosted.org/packages/61/8f/4d52f272d3ebcd35e1325c646e98936099a348374d4a6b83b524bded8116/websockets-14.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c4b129e87b53eb1937992cdee094a0988aadc94f25cf0b37e90c75eed7123d75",
                "md5": "fdce732ee0fce47bba16c8e6107ce2e9",
                "sha256": "2177ee3901075167f01c5e335a6685e71b162a54a89a56001f1c3e9e3d2ad250"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "fdce732ee0fce47bba16c8e6107ce2e9",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 159854,
            "upload_time": "2024-11-13T07:09:44",
            "upload_time_iso_8601": "2024-11-13T07:09:44.298015Z",
            "url": "https://files.pythonhosted.org/packages/c4/b1/29e87b53eb1937992cdee094a0988aadc94f25cf0b37e90c75eed7123d75/websockets-14.1-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3fe6752a2f5e8321ae2a613062676c08ff2fccfb37dc837a2ee919178a372e8a",
                "md5": "43bdcdca2896fdbe258e686998f4969c",
                "sha256": "3f14a96a0034a27f9d47fd9788913924c89612225878f8078bb9d55f859272b0"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "43bdcdca2896fdbe258e686998f4969c",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 168835,
            "upload_time": "2024-11-13T07:09:45",
            "upload_time_iso_8601": "2024-11-13T07:09:45.636205Z",
            "url": "https://files.pythonhosted.org/packages/3f/e6/752a2f5e8321ae2a613062676c08ff2fccfb37dc837a2ee919178a372e8a/websockets-14.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6027ca62de7877596926321b99071639275e94bb2401397130b7cf33dbf2106a",
                "md5": "fa7897769f219f144427f29bd56a97b5",
                "sha256": "1f874ba705deea77bcf64a9da42c1f5fc2466d8f14daf410bc7d4ceae0a9fcb0"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "fa7897769f219f144427f29bd56a97b5",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 167844,
            "upload_time": "2024-11-13T07:09:47",
            "upload_time_iso_8601": "2024-11-13T07:09:47.162536Z",
            "url": "https://files.pythonhosted.org/packages/60/27/ca62de7877596926321b99071639275e94bb2401397130b7cf33dbf2106a/websockets-14.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7edbf556a1d06635c680ef376be626c632e3f2bbdb1a0189d1d1bffb061c3b70",
                "md5": "e06d2c5c53b2b32b0fd346d2bb73bd3a",
                "sha256": "9607b9a442392e690a57909c362811184ea429585a71061cd5d3c2b98065c199"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e06d2c5c53b2b32b0fd346d2bb73bd3a",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 168157,
            "upload_time": "2024-11-13T07:09:49",
            "upload_time_iso_8601": "2024-11-13T07:09:49.068626Z",
            "url": "https://files.pythonhosted.org/packages/7e/db/f556a1d06635c680ef376be626c632e3f2bbdb1a0189d1d1bffb061c3b70/websockets-14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b3bc99e5f511838c365ac6ecae19674eb5e94201aa4235bd1af3e6fa92c12905",
                "md5": "f67a88f654655be93d9a90a18dbf91ea",
                "sha256": "bea45f19b7ca000380fbd4e02552be86343080120d074b87f25593ce1700ad58"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-musllinux_1_2_aarch64.whl",
            "has_sig": false,
            "md5_digest": "f67a88f654655be93d9a90a18dbf91ea",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 168561,
            "upload_time": "2024-11-13T07:09:50",
            "upload_time_iso_8601": "2024-11-13T07:09:50.341618Z",
            "url": "https://files.pythonhosted.org/packages/b3/bc/99e5f511838c365ac6ecae19674eb5e94201aa4235bd1af3e6fa92c12905/websockets-14.1-cp310-cp310-musllinux_1_2_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c6e7251491585bad61c79e525ac60927d96e4e17b18447cc9c3cfab47b2eb1b8",
                "md5": "76546a519eaff7b95d423dbcec47fc82",
                "sha256": "219c8187b3ceeadbf2afcf0f25a4918d02da7b944d703b97d12fb01510869078"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-musllinux_1_2_i686.whl",
            "has_sig": false,
            "md5_digest": "76546a519eaff7b95d423dbcec47fc82",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 167979,
            "upload_time": "2024-11-13T07:09:52",
            "upload_time_iso_8601": "2024-11-13T07:09:52.556330Z",
            "url": "https://files.pythonhosted.org/packages/c6/e7/251491585bad61c79e525ac60927d96e4e17b18447cc9c3cfab47b2eb1b8/websockets-14.1-cp310-cp310-musllinux_1_2_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ac987ac2e4eeada19bdbc7a3a66a58e3ebdf33648b9e1c5b3f08c3224df168cf",
                "md5": "666d9e21531a27e58be656c2ff426be2",
                "sha256": "ad2ab2547761d79926effe63de21479dfaf29834c50f98c4bf5b5480b5838434"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "666d9e21531a27e58be656c2ff426be2",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 167925,
            "upload_time": "2024-11-13T07:09:54",
            "upload_time_iso_8601": "2024-11-13T07:09:54.444800Z",
            "url": "https://files.pythonhosted.org/packages/ac/98/7ac2e4eeada19bdbc7a3a66a58e3ebdf33648b9e1c5b3f08c3224df168cf/websockets-14.1-cp310-cp310-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ab3d09e65c47ee2396b7482968068f6e9b516221e1032b12dcf843b9412a5dfb",
                "md5": "f2cc95ec55a547bb37a2ec2790ac68f6",
                "sha256": "1288369a6a84e81b90da5dbed48610cd7e5d60af62df9851ed1d1d23a9069f10"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-win32.whl",
            "has_sig": false,
            "md5_digest": "f2cc95ec55a547bb37a2ec2790ac68f6",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 162831,
            "upload_time": "2024-11-13T07:09:55",
            "upload_time_iso_8601": "2024-11-13T07:09:55.757242Z",
            "url": "https://files.pythonhosted.org/packages/ab/3d/09e65c47ee2396b7482968068f6e9b516221e1032b12dcf843b9412a5dfb/websockets-14.1-cp310-cp310-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8a6759828a3d09740e6a485acccfbb66600632f2178b6ed1b61388ee96f17d5a",
                "md5": "028796c3b4fb5ad66c8c05bf37375d2d",
                "sha256": "e0744623852f1497d825a49a99bfbec9bea4f3f946df6eb9d8a2f0c37a2fec2e"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "028796c3b4fb5ad66c8c05bf37375d2d",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 163266,
            "upload_time": "2024-11-13T07:09:57",
            "upload_time_iso_8601": "2024-11-13T07:09:57.903045Z",
            "url": "https://files.pythonhosted.org/packages/8a/67/59828a3d09740e6a485acccfbb66600632f2178b6ed1b61388ee96f17d5a/websockets-14.1-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "97edc0d03cb607b7fe1f7ff45e2cd4bb5cd0f9e3299ced79c2c303a6fff44524",
                "md5": "f22eb9899193a5e3507cd6692b7488c9",
                "sha256": "449d77d636f8d9c17952628cc7e3b8faf6e92a17ec581ec0c0256300717e1512"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "f22eb9899193a5e3507cd6692b7488c9",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 161949,
            "upload_time": "2024-11-13T07:10:00",
            "upload_time_iso_8601": "2024-11-13T07:10:00.134832Z",
            "url": "https://files.pythonhosted.org/packages/97/ed/c0d03cb607b7fe1f7ff45e2cd4bb5cd0f9e3299ced79c2c303a6fff44524/websockets-14.1-cp311-cp311-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0691bf0a44e238660d37a2dda1b4896235d20c29a2d0450f3a46cd688f43b239",
                "md5": "2478148730cc57904cf9040d6f415223",
                "sha256": "a35f704be14768cea9790d921c2c1cc4fc52700410b1c10948511039be824aac"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2478148730cc57904cf9040d6f415223",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 159606,
            "upload_time": "2024-11-13T07:10:02",
            "upload_time_iso_8601": "2024-11-13T07:10:02.079863Z",
            "url": "https://files.pythonhosted.org/packages/06/91/bf0a44e238660d37a2dda1b4896235d20c29a2d0450f3a46cd688f43b239/websockets-14.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ffb87185212adad274c2b42b6a24e1ee6b916b7809ed611cbebc33b227e5c215",
                "md5": "b20afef1b92e63aca29e29ce3934de50",
                "sha256": "b1f3628a0510bd58968c0f60447e7a692933589b791a6b572fcef374053ca280"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "b20afef1b92e63aca29e29ce3934de50",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 159854,
            "upload_time": "2024-11-13T07:10:03",
            "upload_time_iso_8601": "2024-11-13T07:10:03.309974Z",
            "url": "https://files.pythonhosted.org/packages/ff/b8/7185212adad274c2b42b6a24e1ee6b916b7809ed611cbebc33b227e5c215/websockets-14.1-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5a8a0849968d83474be89c183d8ae8dcb7f7ada1a3c24f4d2a0d7333c231a2c3",
                "md5": "e4ec2abf82d5da33161bffc466d397b0",
                "sha256": "3c3deac3748ec73ef24fc7be0b68220d14d47d6647d2f85b2771cb35ea847aa1"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "e4ec2abf82d5da33161bffc466d397b0",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 169402,
            "upload_time": "2024-11-13T07:10:04",
            "upload_time_iso_8601": "2024-11-13T07:10:04.583482Z",
            "url": "https://files.pythonhosted.org/packages/5a/8a/0849968d83474be89c183d8ae8dcb7f7ada1a3c24f4d2a0d7333c231a2c3/websockets-14.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bd4fef886e37245ff6b4a736a09b8468dae05d5d5c99de1357f840d54c6f297d",
                "md5": "dc1d3238095ee5a34c79a182bba53da8",
                "sha256": "7048eb4415d46368ef29d32133134c513f507fff7d953c18c91104738a68c3b3"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "dc1d3238095ee5a34c79a182bba53da8",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 168406,
            "upload_time": "2024-11-13T07:10:05",
            "upload_time_iso_8601": "2024-11-13T07:10:05.841188Z",
            "url": "https://files.pythonhosted.org/packages/bd/4f/ef886e37245ff6b4a736a09b8468dae05d5d5c99de1357f840d54c6f297d/websockets-14.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1143e2dbd4401a63e409cebddedc1b63b9834de42f51b3c84db885469e9bdcef",
                "md5": "9c12c8a3e4b680f719ef18583090355e",
                "sha256": "f6cf0ad281c979306a6a34242b371e90e891bce504509fb6bb5246bbbf31e7b6"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9c12c8a3e4b680f719ef18583090355e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 168776,
            "upload_time": "2024-11-13T07:10:07",
            "upload_time_iso_8601": "2024-11-13T07:10:07.793745Z",
            "url": "https://files.pythonhosted.org/packages/11/43/e2dbd4401a63e409cebddedc1b63b9834de42f51b3c84db885469e9bdcef/websockets-14.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6dd67063e3f5c1b612e9f70faae20ebaeb2e684ffa36cb959eb0862ee2809b32",
                "md5": "bfd6d2da6d963fda3d6e76972dd0aead",
                "sha256": "cc1fc87428c1d18b643479caa7b15db7d544652e5bf610513d4a3478dbe823d0"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-musllinux_1_2_aarch64.whl",
            "has_sig": false,
            "md5_digest": "bfd6d2da6d963fda3d6e76972dd0aead",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 169083,
            "upload_time": "2024-11-13T07:10:09",
            "upload_time_iso_8601": "2024-11-13T07:10:09.109867Z",
            "url": "https://files.pythonhosted.org/packages/6d/d6/7063e3f5c1b612e9f70faae20ebaeb2e684ffa36cb959eb0862ee2809b32/websockets-14.1-cp311-cp311-musllinux_1_2_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4969e6f3d953f2fa0f8a723cf18cd011d52733bd7f6e045122b24e0e7f49f9b0",
                "md5": "5421937e0569ab52e89a7166ec91bc94",
                "sha256": "f95ba34d71e2fa0c5d225bde3b3bdb152e957150100e75c86bc7f3964c450d89"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-musllinux_1_2_i686.whl",
            "has_sig": false,
            "md5_digest": "5421937e0569ab52e89a7166ec91bc94",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 168529,
            "upload_time": "2024-11-13T07:10:11",
            "upload_time_iso_8601": "2024-11-13T07:10:11.137958Z",
            "url": "https://files.pythonhosted.org/packages/49/69/e6f3d953f2fa0f8a723cf18cd011d52733bd7f6e045122b24e0e7f49f9b0/websockets-14.1-cp311-cp311-musllinux_1_2_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "70fff31fa14561fc1d7b8663b0ed719996cf1f581abee32c8fb2f295a472f268",
                "md5": "c9420dfebccf87b63820387c1304eec4",
                "sha256": "9481a6de29105d73cf4515f2bef8eb71e17ac184c19d0b9918a3701c6c9c4f23"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c9420dfebccf87b63820387c1304eec4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 168475,
            "upload_time": "2024-11-13T07:10:13",
            "upload_time_iso_8601": "2024-11-13T07:10:13.179123Z",
            "url": "https://files.pythonhosted.org/packages/70/ff/f31fa14561fc1d7b8663b0ed719996cf1f581abee32c8fb2f295a472f268/websockets-14.1-cp311-cp311-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f115b72be0e4bf32ff373aa5baef46a4c7521b8ea93ad8b49ca8c6e8e764c083",
                "md5": "acb0456455881785d85c7a275a82a888",
                "sha256": "368a05465f49c5949e27afd6fbe0a77ce53082185bbb2ac096a3a8afaf4de52e"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-win32.whl",
            "has_sig": false,
            "md5_digest": "acb0456455881785d85c7a275a82a888",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 162833,
            "upload_time": "2024-11-13T07:10:15",
            "upload_time_iso_8601": "2024-11-13T07:10:15.103095Z",
            "url": "https://files.pythonhosted.org/packages/f1/15/b72be0e4bf32ff373aa5baef46a4c7521b8ea93ad8b49ca8c6e8e764c083/websockets-14.1-cp311-cp311-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bcef2d81679acbe7057ffe2308d422f744497b52009ea8bab34b6d74a2657d1d",
                "md5": "83799b08bf980730688216da4d3d0199",
                "sha256": "6d24fc337fc055c9e83414c94e1ee0dee902a486d19d2a7f0929e49d7d604b09"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "83799b08bf980730688216da4d3d0199",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 163263,
            "upload_time": "2024-11-13T07:10:17",
            "upload_time_iso_8601": "2024-11-13T07:10:17.090842Z",
            "url": "https://files.pythonhosted.org/packages/bc/ef/2d81679acbe7057ffe2308d422f744497b52009ea8bab34b6d74a2657d1d/websockets-14.1-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "556455698544ce29e877c9188f1aee9093712411a8fc9732cca14985e49a8e9c",
                "md5": "ef849bb4c88e61eec8e7f46f19de9a07",
                "sha256": "ed907449fe5e021933e46a3e65d651f641975a768d0649fee59f10c2985529ed"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "ef849bb4c88e61eec8e7f46f19de9a07",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 161957,
            "upload_time": "2024-11-13T07:10:18",
            "upload_time_iso_8601": "2024-11-13T07:10:18.363144Z",
            "url": "https://files.pythonhosted.org/packages/55/64/55698544ce29e877c9188f1aee9093712411a8fc9732cca14985e49a8e9c/websockets-14.1-cp312-cp312-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a2b1b088f67c2b365f2c86c7b48edb8848ac27e508caf910a9d9d831b2f343cb",
                "md5": "f07a7c5640ab87c43ff2f8782db14a88",
                "sha256": "87e31011b5c14a33b29f17eb48932e63e1dcd3fa31d72209848652310d3d1f0d"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-macosx_10_13_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f07a7c5640ab87c43ff2f8782db14a88",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 159620,
            "upload_time": "2024-11-13T07:10:19",
            "upload_time_iso_8601": "2024-11-13T07:10:19.745903Z",
            "url": "https://files.pythonhosted.org/packages/a2/b1/b088f67c2b365f2c86c7b48edb8848ac27e508caf910a9d9d831b2f343cb/websockets-14.1-cp312-cp312-macosx_10_13_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c1892a09db1bbb40ba967a1b8225b07b7df89fea44f06de9365f17f684d0f7e6",
                "md5": "ee6f253a660f50480c546ce2926b009b",
                "sha256": "bc6ccf7d54c02ae47a48ddf9414c54d48af9c01076a2e1023e3b486b6e72c707"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ee6f253a660f50480c546ce2926b009b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 159852,
            "upload_time": "2024-11-13T07:10:21",
            "upload_time_iso_8601": "2024-11-13T07:10:21.040092Z",
            "url": "https://files.pythonhosted.org/packages/c1/89/2a09db1bbb40ba967a1b8225b07b7df89fea44f06de9365f17f684d0f7e6/websockets-14.1-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cac1f983138cd56e7d3079f1966e81f77ce6643f230cd309f73aa156bb181749",
                "md5": "05f5fe51ecb174f576a425369d9083ef",
                "sha256": "9777564c0a72a1d457f0848977a1cbe15cfa75fa2f67ce267441e465717dcf1a"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "05f5fe51ecb174f576a425369d9083ef",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 169675,
            "upload_time": "2024-11-13T07:10:22",
            "upload_time_iso_8601": "2024-11-13T07:10:22.991150Z",
            "url": "https://files.pythonhosted.org/packages/ca/c1/f983138cd56e7d3079f1966e81f77ce6643f230cd309f73aa156bb181749/websockets-14.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c1c884191455d8660e2a0bdb33878d4ee5dfa4a2cedbcdc88bbd097303b65bfa",
                "md5": "a62639ffe79b65abae78d38bd69c73c0",
                "sha256": "a655bde548ca98f55b43711b0ceefd2a88a71af6350b0c168aa77562104f3f45"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "a62639ffe79b65abae78d38bd69c73c0",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 168619,
            "upload_time": "2024-11-13T07:10:24",
            "upload_time_iso_8601": "2024-11-13T07:10:24.820727Z",
            "url": "https://files.pythonhosted.org/packages/c1/c8/84191455d8660e2a0bdb33878d4ee5dfa4a2cedbcdc88bbd097303b65bfa/websockets-14.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8da762e551fdcd7d44ea74a006dc193aba370505278ad76efd938664531ce9d6",
                "md5": "9a43b48318ce8efdbcc89212ea3fdc33",
                "sha256": "a3dfff83ca578cada2d19e665e9c8368e1598d4e787422a460ec70e531dbdd58"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "9a43b48318ce8efdbcc89212ea3fdc33",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 169042,
            "upload_time": "2024-11-13T07:10:27",
            "upload_time_iso_8601": "2024-11-13T07:10:27.016048Z",
            "url": "https://files.pythonhosted.org/packages/8d/a7/62e551fdcd7d44ea74a006dc193aba370505278ad76efd938664531ce9d6/websockets-14.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "aded1532786f55922c1e9c4d329608e36a15fdab186def3ca9eb10d7465bc1cc",
                "md5": "1cc633b3b3ad20720cfc3c097bf7a057",
                "sha256": "6a6c9bcf7cdc0fd41cc7b7944447982e8acfd9f0d560ea6d6845428ed0562058"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-musllinux_1_2_aarch64.whl",
            "has_sig": false,
            "md5_digest": "1cc633b3b3ad20720cfc3c097bf7a057",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 169345,
            "upload_time": "2024-11-13T07:10:28",
            "upload_time_iso_8601": "2024-11-13T07:10:28.338897Z",
            "url": "https://files.pythonhosted.org/packages/ad/ed/1532786f55922c1e9c4d329608e36a15fdab186def3ca9eb10d7465bc1cc/websockets-14.1-cp312-cp312-musllinux_1_2_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "eafb160f66960d495df3de63d9bcff78e1b42545b2a123cc611950ffe6468016",
                "md5": "77d3242cedc6b2d4f556d067c04c9f38",
                "sha256": "4b6caec8576e760f2c7dd878ba817653144d5f369200b6ddf9771d64385b84d4"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-musllinux_1_2_i686.whl",
            "has_sig": false,
            "md5_digest": "77d3242cedc6b2d4f556d067c04c9f38",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 168725,
            "upload_time": "2024-11-13T07:10:30",
            "upload_time_iso_8601": "2024-11-13T07:10:30.337355Z",
            "url": "https://files.pythonhosted.org/packages/ea/fb/160f66960d495df3de63d9bcff78e1b42545b2a123cc611950ffe6468016/websockets-14.1-cp312-cp312-musllinux_1_2_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cf531bf0c06618b5ac35f1d7906444b9958f8485682ab0ea40dee7b17a32da1e",
                "md5": "ab3a017346467e1f6e185419e2aad42f",
                "sha256": "eb6d38971c800ff02e4a6afd791bbe3b923a9a57ca9aeab7314c21c84bf9ff05"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ab3a017346467e1f6e185419e2aad42f",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 168712,
            "upload_time": "2024-11-13T07:10:31",
            "upload_time_iso_8601": "2024-11-13T07:10:31.667116Z",
            "url": "https://files.pythonhosted.org/packages/cf/53/1bf0c06618b5ac35f1d7906444b9958f8485682ab0ea40dee7b17a32da1e/websockets-14.1-cp312-cp312-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e5225ec2f39fff75f44aa626f86fa7f20594524a447d9c3be94d8482cd5572ef",
                "md5": "a5b4aa0ce99888c4bb91cc73abe8cd62",
                "sha256": "1d045cbe1358d76b24d5e20e7b1878efe578d9897a25c24e6006eef788c0fdf0"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-win32.whl",
            "has_sig": false,
            "md5_digest": "a5b4aa0ce99888c4bb91cc73abe8cd62",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 162838,
            "upload_time": "2024-11-13T07:10:33",
            "upload_time_iso_8601": "2024-11-13T07:10:33.248995Z",
            "url": "https://files.pythonhosted.org/packages/e5/22/5ec2f39fff75f44aa626f86fa7f20594524a447d9c3be94d8482cd5572ef/websockets-14.1-cp312-cp312-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "742728f07df09f2983178db7bf6c9cccc847205d2b92ced986cd79565d68af4f",
                "md5": "9dafb6241b80843800a1d60962e543c5",
                "sha256": "90f4c7a069c733d95c308380aae314f2cb45bd8a904fb03eb36d1a4983a4993f"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "9dafb6241b80843800a1d60962e543c5",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 163277,
            "upload_time": "2024-11-13T07:10:34",
            "upload_time_iso_8601": "2024-11-13T07:10:34.522542Z",
            "url": "https://files.pythonhosted.org/packages/74/27/28f07df09f2983178db7bf6c9cccc847205d2b92ced986cd79565d68af4f/websockets-14.1-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3477812b3ba5110ed8726eddf9257ab55ce9e85d97d4aa016805fdbecc5e5d48",
                "md5": "c697c315a544ca567b15e277596c1825",
                "sha256": "3630b670d5057cd9e08b9c4dab6493670e8e762a24c2c94ef312783870736ab9"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "c697c315a544ca567b15e277596c1825",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 161966,
            "upload_time": "2024-11-13T07:10:36",
            "upload_time_iso_8601": "2024-11-13T07:10:36.540119Z",
            "url": "https://files.pythonhosted.org/packages/34/77/812b3ba5110ed8726eddf9257ab55ce9e85d97d4aa016805fdbecc5e5d48/websockets-14.1-cp313-cp313-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8d244fcb7aa6986ae7d9f6d083d9d53d580af1483c5ec24bdec0978307a0f6ac",
                "md5": "dc7561b659bdc4dacfd6a2429e28b186",
                "sha256": "36ebd71db3b89e1f7b1a5deaa341a654852c3518ea7a8ddfdf69cc66acc2db1b"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-macosx_10_13_x86_64.whl",
            "has_sig": false,
            "md5_digest": "dc7561b659bdc4dacfd6a2429e28b186",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 159625,
            "upload_time": "2024-11-13T07:10:38",
            "upload_time_iso_8601": "2024-11-13T07:10:38.414156Z",
            "url": "https://files.pythonhosted.org/packages/8d/24/4fcb7aa6986ae7d9f6d083d9d53d580af1483c5ec24bdec0978307a0f6ac/websockets-14.1-cp313-cp313-macosx_10_13_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f8472a0a3a2fc4965ff5b9ce9324d63220156bd8bedf7f90824ab92a822e65fd",
                "md5": "6a9cf089557fd465846f5b948aa6b6a4",
                "sha256": "5b918d288958dc3fa1c5a0b9aa3256cb2b2b84c54407f4813c45d52267600cd3"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "6a9cf089557fd465846f5b948aa6b6a4",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 159857,
            "upload_time": "2024-11-13T07:10:39",
            "upload_time_iso_8601": "2024-11-13T07:10:39.718763Z",
            "url": "https://files.pythonhosted.org/packages/f8/47/2a0a3a2fc4965ff5b9ce9324d63220156bd8bedf7f90824ab92a822e65fd/websockets-14.1-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ddc8d7b425011a15e35e17757e4df75b25e1d0df64c0c315a44550454eaf88fc",
                "md5": "7482c8db1a3f6b5b29d0b8217c4b1a39",
                "sha256": "00fe5da3f037041da1ee0cf8e308374e236883f9842c7c465aa65098b1c9af59"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "7482c8db1a3f6b5b29d0b8217c4b1a39",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 169635,
            "upload_time": "2024-11-13T07:10:41",
            "upload_time_iso_8601": "2024-11-13T07:10:41.132697Z",
            "url": "https://files.pythonhosted.org/packages/dd/c8/d7b425011a15e35e17757e4df75b25e1d0df64c0c315a44550454eaf88fc/websockets-14.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "93396e3b5cffa11036c40bd2f13aba2e8e691ab2e01595532c46437b56575678",
                "md5": "314041d24dfcf2e6e465725ea3f4ac9d",
                "sha256": "8149a0f5a72ca36720981418eeffeb5c2729ea55fa179091c81a0910a114a5d2"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "314041d24dfcf2e6e465725ea3f4ac9d",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 168578,
            "upload_time": "2024-11-13T07:10:42",
            "upload_time_iso_8601": "2024-11-13T07:10:42.508797Z",
            "url": "https://files.pythonhosted.org/packages/93/39/6e3b5cffa11036c40bd2f13aba2e8e691ab2e01595532c46437b56575678/websockets-14.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cf038faa5c9576299b2adf34dcccf278fc6bbbcda8a3efcc4d817369026be421",
                "md5": "8807175eb9f2113167166bfa049983db",
                "sha256": "77569d19a13015e840b81550922056acabc25e3f52782625bc6843cfa034e1da"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8807175eb9f2113167166bfa049983db",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 169018,
            "upload_time": "2024-11-13T07:10:43",
            "upload_time_iso_8601": "2024-11-13T07:10:43.893575Z",
            "url": "https://files.pythonhosted.org/packages/cf/03/8faa5c9576299b2adf34dcccf278fc6bbbcda8a3efcc4d817369026be421/websockets-14.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8c05ea1fec05cc3a60defcdf0bb9f760c3c6bd2dd2710eff7ac7f891864a22ba",
                "md5": "7276fac6fe41124dd961b6e34fd3a1af",
                "sha256": "cf5201a04550136ef870aa60ad3d29d2a59e452a7f96b94193bee6d73b8ad9a9"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-musllinux_1_2_aarch64.whl",
            "has_sig": false,
            "md5_digest": "7276fac6fe41124dd961b6e34fd3a1af",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 169383,
            "upload_time": "2024-11-13T07:10:45",
            "upload_time_iso_8601": "2024-11-13T07:10:45.171211Z",
            "url": "https://files.pythonhosted.org/packages/8c/05/ea1fec05cc3a60defcdf0bb9f760c3c6bd2dd2710eff7ac7f891864a22ba/websockets-14.1-cp313-cp313-musllinux_1_2_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "211deac1d9ed787f80754e51228e78855f879ede1172c8b6185aca8cef494911",
                "md5": "c4cc53aab2ce5477070de806b396ccfc",
                "sha256": "88cf9163ef674b5be5736a584c999e98daf3aabac6e536e43286eb74c126b9c7"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-musllinux_1_2_i686.whl",
            "has_sig": false,
            "md5_digest": "c4cc53aab2ce5477070de806b396ccfc",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 168773,
            "upload_time": "2024-11-13T07:10:46",
            "upload_time_iso_8601": "2024-11-13T07:10:46.508638Z",
            "url": "https://files.pythonhosted.org/packages/21/1d/eac1d9ed787f80754e51228e78855f879ede1172c8b6185aca8cef494911/websockets-14.1-cp313-cp313-musllinux_1_2_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0e1be808685530185915299740d82b3a4af3f2b44e56ccf4389397c7a5d95d39",
                "md5": "25bc913dba9916050b1f56e7477e89aa",
                "sha256": "836bef7ae338a072e9d1863502026f01b14027250a4545672673057997d5c05a"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "25bc913dba9916050b1f56e7477e89aa",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 168757,
            "upload_time": "2024-11-13T07:10:47",
            "upload_time_iso_8601": "2024-11-13T07:10:47.816579Z",
            "url": "https://files.pythonhosted.org/packages/0e/1b/e808685530185915299740d82b3a4af3f2b44e56ccf4389397c7a5d95d39/websockets-14.1-cp313-cp313-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b6196ab716d02a3b068fbbeb6face8a7423156e12c446975312f1c7c0f4badab",
                "md5": "c652984663e9ecb19f5080570f6a15ee",
                "sha256": "0d4290d559d68288da9f444089fd82490c8d2744309113fc26e2da6e48b65da6"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-win32.whl",
            "has_sig": false,
            "md5_digest": "c652984663e9ecb19f5080570f6a15ee",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 162834,
            "upload_time": "2024-11-13T07:10:49",
            "upload_time_iso_8601": "2024-11-13T07:10:49.149082Z",
            "url": "https://files.pythonhosted.org/packages/b6/19/6ab716d02a3b068fbbeb6face8a7423156e12c446975312f1c7c0f4badab/websockets-14.1-cp313-cp313-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6cfdab6b7676ba712f2fc89d1347a4b5bdc6aa130de10404071f2b2606450209",
                "md5": "afbbbb428225156db40be213e4639ac6",
                "sha256": "8621a07991add373c3c5c2cf89e1d277e49dc82ed72c75e3afc74bd0acc446f0"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "afbbbb428225156db40be213e4639ac6",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 163277,
            "upload_time": "2024-11-13T07:10:50",
            "upload_time_iso_8601": "2024-11-13T07:10:50.561435Z",
            "url": "https://files.pythonhosted.org/packages/6c/fd/ab6b7676ba712f2fc89d1347a4b5bdc6aa130de10404071f2b2606450209/websockets-14.1-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4d23ac9d8c5ec7b90efc3687d60474ef7e698f8b75cb7c9dfedad72701e797c9",
                "md5": "4fb1b8802654cdf9fa6ab7ef9517ddfc",
                "sha256": "01bb2d4f0a6d04538d3c5dfd27c0643269656c28045a53439cbf1c004f90897a"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "4fb1b8802654cdf9fa6ab7ef9517ddfc",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 161945,
            "upload_time": "2024-11-13T07:10:51",
            "upload_time_iso_8601": "2024-11-13T07:10:51.836131Z",
            "url": "https://files.pythonhosted.org/packages/4d/23/ac9d8c5ec7b90efc3687d60474ef7e698f8b75cb7c9dfedad72701e797c9/websockets-14.1-cp39-cp39-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c56bffa450e3b736a86ae6b40ce20a758ac9af80c96a18548f6c323ed60329c5",
                "md5": "0b58b48631523217f8c59bad88f5e592",
                "sha256": "414ffe86f4d6f434a8c3b7913655a1a5383b617f9bf38720e7c0799fac3ab1c6"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0b58b48631523217f8c59bad88f5e592",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 159600,
            "upload_time": "2024-11-13T07:10:53",
            "upload_time_iso_8601": "2024-11-13T07:10:53.127045Z",
            "url": "https://files.pythonhosted.org/packages/c5/6b/ffa450e3b736a86ae6b40ce20a758ac9af80c96a18548f6c323ed60329c5/websockets-14.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7462f90d1fd57ea7337ecaa99f17c31a544b9dcdb7c7c32a3d3997ccc42d57d3",
                "md5": "c892075f6259584589112ab7c5d38e69",
                "sha256": "8fda642151d5affdee8a430bd85496f2e2517be3a2b9d2484d633d5712b15c56"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "c892075f6259584589112ab7c5d38e69",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 159850,
            "upload_time": "2024-11-13T07:10:54",
            "upload_time_iso_8601": "2024-11-13T07:10:54.439685Z",
            "url": "https://files.pythonhosted.org/packages/74/62/f90d1fd57ea7337ecaa99f17c31a544b9dcdb7c7c32a3d3997ccc42d57d3/websockets-14.1-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "35dd1e71865de1f3c265e11d02b0b4c76178f84351c6611e515fbe3d2bd1b98c",
                "md5": "790e44473b6bd8861395803082783237",
                "sha256": "cd7c11968bc3860d5c78577f0dbc535257ccec41750675d58d8dc66aa47fe52c"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "790e44473b6bd8861395803082783237",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 168616,
            "upload_time": "2024-11-13T07:10:55",
            "upload_time_iso_8601": "2024-11-13T07:10:55.734130Z",
            "url": "https://files.pythonhosted.org/packages/35/dd/1e71865de1f3c265e11d02b0b4c76178f84351c6611e515fbe3d2bd1b98c/websockets-14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "baae0d069b52e26d48402dbe90c7581eb6a5bed5d7dbe3d9ca3cf1033859d58e",
                "md5": "856639feeed6ba63eda7735b74ecc05d",
                "sha256": "a032855dc7db987dff813583d04f4950d14326665d7e714d584560b140ae6b8b"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "856639feeed6ba63eda7735b74ecc05d",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 167619,
            "upload_time": "2024-11-13T07:10:57",
            "upload_time_iso_8601": "2024-11-13T07:10:57.732892Z",
            "url": "https://files.pythonhosted.org/packages/ba/ae/0d069b52e26d48402dbe90c7581eb6a5bed5d7dbe3d9ca3cf1033859d58e/websockets-14.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1c3fd3f2df62704c53e0296f0ce714921b6a15df10e2e463734c737b1d9e2522",
                "md5": "eed3e12c3b42c302c09e26a22c274f17",
                "sha256": "b7e7ea2f782408c32d86b87a0d2c1fd8871b0399dd762364c731d86c86069a78"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "eed3e12c3b42c302c09e26a22c274f17",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 167921,
            "upload_time": "2024-11-13T07:10:59",
            "upload_time_iso_8601": "2024-11-13T07:10:59.854023Z",
            "url": "https://files.pythonhosted.org/packages/1c/3f/d3f2df62704c53e0296f0ce714921b6a15df10e2e463734c737b1d9e2522/websockets-14.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e0e22dcb295bdae9393070cea58c790d87d1d36149bb4319b1da6014c8a36d42",
                "md5": "8092b86ea3fbe7b7601e8402a7d1f9a1",
                "sha256": "39450e6215f7d9f6f7bc2a6da21d79374729f5d052333da4d5825af8a97e6735"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-musllinux_1_2_aarch64.whl",
            "has_sig": false,
            "md5_digest": "8092b86ea3fbe7b7601e8402a7d1f9a1",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 168343,
            "upload_time": "2024-11-13T07:11:01",
            "upload_time_iso_8601": "2024-11-13T07:11:01.170509Z",
            "url": "https://files.pythonhosted.org/packages/e0/e2/2dcb295bdae9393070cea58c790d87d1d36149bb4319b1da6014c8a36d42/websockets-14.1-cp39-cp39-musllinux_1_2_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6bfdfa48e8b4e10e2c165cbfc16dada7405b4008818be490fc6b99a4928e232a",
                "md5": "31dfd027995f7f3a67c13303a32c481a",
                "sha256": "ceada5be22fa5a5a4cdeec74e761c2ee7db287208f54c718f2df4b7e200b8d4a"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-musllinux_1_2_i686.whl",
            "has_sig": false,
            "md5_digest": "31dfd027995f7f3a67c13303a32c481a",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 167745,
            "upload_time": "2024-11-13T07:11:02",
            "upload_time_iso_8601": "2024-11-13T07:11:02.803441Z",
            "url": "https://files.pythonhosted.org/packages/6b/fd/fa48e8b4e10e2c165cbfc16dada7405b4008818be490fc6b99a4928e232a/websockets-14.1-cp39-cp39-musllinux_1_2_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "424579db33f2b744d2014b40946428e6c37ce944fde8791d82e1c2f4d4a67d96",
                "md5": "09575a7a79c74255e2362d6500a7d46d",
                "sha256": "3fc753451d471cff90b8f467a1fc0ae64031cf2d81b7b34e1811b7e2691bc4bc"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-musllinux_1_2_x86_64.whl",
            "has_sig": false,
            "md5_digest": "09575a7a79c74255e2362d6500a7d46d",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 167705,
            "upload_time": "2024-11-13T07:11:04",
            "upload_time_iso_8601": "2024-11-13T07:11:04.143295Z",
            "url": "https://files.pythonhosted.org/packages/42/45/79db33f2b744d2014b40946428e6c37ce944fde8791d82e1c2f4d4a67d96/websockets-14.1-cp39-cp39-musllinux_1_2_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "da27f66507db34ca9c79562f28fa5983433f7b9080fd471cc188906006d36ba4",
                "md5": "706692476a375cb32aae944af3319bd7",
                "sha256": "14839f54786987ccd9d03ed7f334baec0f02272e7ec4f6e9d427ff584aeea8b4"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-win32.whl",
            "has_sig": false,
            "md5_digest": "706692476a375cb32aae944af3319bd7",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 162828,
            "upload_time": "2024-11-13T07:11:05",
            "upload_time_iso_8601": "2024-11-13T07:11:05.442340Z",
            "url": "https://files.pythonhosted.org/packages/da/27/f66507db34ca9c79562f28fa5983433f7b9080fd471cc188906006d36ba4/websockets-14.1-cp39-cp39-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1125bb8f81a4ec94f595adb845608c5ec9549cb6b446945b292fe61807c7c95b",
                "md5": "8dff024a1d02812dd2291ac346018df0",
                "sha256": "d9fd19ecc3a4d5ae82ddbfb30962cf6d874ff943e56e0c81f5169be2fda62979"
            },
            "downloads": -1,
            "filename": "websockets-14.1-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "8dff024a1d02812dd2291ac346018df0",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 163271,
            "upload_time": "2024-11-13T07:11:07",
            "upload_time_iso_8601": "2024-11-13T07:11:07.457508Z",
            "url": "https://files.pythonhosted.org/packages/11/25/bb8f81a4ec94f595adb845608c5ec9549cb6b446945b292fe61807c7c95b/websockets-14.1-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fbcd382a05a1ba2a93bd9fb807716a660751295df72e77204fb130a102fcdd36",
                "md5": "40b062561c2bc92bcc1d7811e9fe89ed",
                "sha256": "e5dc25a9dbd1a7f61eca4b7cb04e74ae4b963d658f9e4f9aad9cd00b688692c8"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "40b062561c2bc92bcc1d7811e9fe89ed",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 159633,
            "upload_time": "2024-11-13T07:11:08",
            "upload_time_iso_8601": "2024-11-13T07:11:08.826700Z",
            "url": "https://files.pythonhosted.org/packages/fb/cd/382a05a1ba2a93bd9fb807716a660751295df72e77204fb130a102fcdd36/websockets-14.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b7a0fa7c62e2952ef028b422fbf420f9353d9dd4dfaa425de3deae36e98c0784",
                "md5": "d2baf93911c3d48333a29845f6f42787",
                "sha256": "04a97aca96ca2acedf0d1f332c861c5a4486fdcba7bcef35873820f940c4231e"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "d2baf93911c3d48333a29845f6f42787",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 159867,
            "upload_time": "2024-11-13T07:11:10",
            "upload_time_iso_8601": "2024-11-13T07:11:10.141302Z",
            "url": "https://files.pythonhosted.org/packages/b7/a0/fa7c62e2952ef028b422fbf420f9353d9dd4dfaa425de3deae36e98c0784/websockets-14.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c194954b4924f868db31d5f0935893c7a8446515ee4b36bb8ad75a929469e453",
                "md5": "33d494a5a1f48e4b799503f8af55c791",
                "sha256": "df174ece723b228d3e8734a6f2a6febbd413ddec39b3dc592f5a4aa0aff28098"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "33d494a5a1f48e4b799503f8af55c791",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 161121,
            "upload_time": "2024-11-13T07:11:11",
            "upload_time_iso_8601": "2024-11-13T07:11:11.730689Z",
            "url": "https://files.pythonhosted.org/packages/c1/94/954b4924f868db31d5f0935893c7a8446515ee4b36bb8ad75a929469e453/websockets-14.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7a2ef12bbb41a8f2abb76428ba4fdcd9e67b5b364a3e7fa97c88f4d6950aa2d4",
                "md5": "9f066f936ba6a54f675707f3220fd34d",
                "sha256": "034feb9f4286476f273b9a245fb15f02c34d9586a5bc936aff108c3ba1b21beb"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "9f066f936ba6a54f675707f3220fd34d",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 160731,
            "upload_time": "2024-11-13T07:11:13",
            "upload_time_iso_8601": "2024-11-13T07:11:13.085759Z",
            "url": "https://files.pythonhosted.org/packages/7a/2e/f12bbb41a8f2abb76428ba4fdcd9e67b5b364a3e7fa97c88f4d6950aa2d4/websockets-14.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1397b76979401f2373af1fe3e08f960b265cecab112e7dac803446fb98351a52",
                "md5": "69b70237c21abb99e2828d7357319739",
                "sha256": "660c308dabd2b380807ab64b62985eaccf923a78ebc572bd485375b9ca2b7dc7"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "69b70237c21abb99e2828d7357319739",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 160681,
            "upload_time": "2024-11-13T07:11:14",
            "upload_time_iso_8601": "2024-11-13T07:11:14.366026Z",
            "url": "https://files.pythonhosted.org/packages/13/97/b76979401f2373af1fe3e08f960b265cecab112e7dac803446fb98351a52/websockets-14.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "399c16916d9a436c109a1d7ba78817e8fee357b78968be3f6e6f517f43afa43d",
                "md5": "13fab021ece605bf0e9351a217f3ec39",
                "sha256": "5a42d3ecbb2db5080fc578314439b1d79eef71d323dc661aa616fb492436af5d"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp310-pypy310_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "13fab021ece605bf0e9351a217f3ec39",
            "packagetype": "bdist_wheel",
            "python_version": "pp310",
            "requires_python": ">=3.9",
            "size": 163316,
            "upload_time": "2024-11-13T07:11:16",
            "upload_time_iso_8601": "2024-11-13T07:11:16.470387Z",
            "url": "https://files.pythonhosted.org/packages/39/9c/16916d9a436c109a1d7ba78817e8fee357b78968be3f6e6f517f43afa43d/websockets-14.1-pp310-pypy310_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0f5750fd09848a80a1b63a572c610f230f8a17590ca47daf256eb28a0851df73",
                "md5": "76d6c402edeac724edcc0da497f609ad",
                "sha256": "ddaa4a390af911da6f680be8be4ff5aaf31c4c834c1a9147bc21cbcbca2d4370"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "76d6c402edeac724edcc0da497f609ad",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 159633,
            "upload_time": "2024-11-13T07:11:17",
            "upload_time_iso_8601": "2024-11-13T07:11:17.894621Z",
            "url": "https://files.pythonhosted.org/packages/0f/57/50fd09848a80a1b63a572c610f230f8a17590ca47daf256eb28a0851df73/websockets-14.1-pp39-pypy39_pp73-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d72fdb728b0c7962ad6a13ced8286325bf430b59722d943e7f6bdbd8a78e2bfe",
                "md5": "cde64c2cd732ff7574914af5d3efb04a",
                "sha256": "a4c805c6034206143fbabd2d259ec5e757f8b29d0a2f0bf3d2fe5d1f60147a4a"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "cde64c2cd732ff7574914af5d3efb04a",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 159863,
            "upload_time": "2024-11-13T07:11:19",
            "upload_time_iso_8601": "2024-11-13T07:11:19.855336Z",
            "url": "https://files.pythonhosted.org/packages/d7/2f/db728b0c7962ad6a13ced8286325bf430b59722d943e7f6bdbd8a78e2bfe/websockets-14.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fae421e7481936fbfffee138edb488a6184eb3468b402a8181b95b9e44f6a676",
                "md5": "7ccfad1f1d3c3012044b930d341c2f26",
                "sha256": "205f672a6c2c671a86d33f6d47c9b35781a998728d2c7c2a3e1cf3333fcb62b7"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "7ccfad1f1d3c3012044b930d341c2f26",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 161119,
            "upload_time": "2024-11-13T07:11:21",
            "upload_time_iso_8601": "2024-11-13T07:11:21.124717Z",
            "url": "https://files.pythonhosted.org/packages/fa/e4/21e7481936fbfffee138edb488a6184eb3468b402a8181b95b9e44f6a676/websockets-14.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "642defb6cf716d4f9da60190756e06f8db2066faf1ae4a4a8657ab136dfcc7a8",
                "md5": "cfd5538943d1efb12468db55143b1d1b",
                "sha256": "5ef440054124728cc49b01c33469de06755e5a7a4e83ef61934ad95fc327fbb0"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "has_sig": false,
            "md5_digest": "cfd5538943d1efb12468db55143b1d1b",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 160724,
            "upload_time": "2024-11-13T07:11:23",
            "upload_time_iso_8601": "2024-11-13T07:11:23.198740Z",
            "url": "https://files.pythonhosted.org/packages/64/2d/efb6cf716d4f9da60190756e06f8db2066faf1ae4a4a8657ab136dfcc7a8/websockets-14.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "40b0a70b972d853c3f26040834fcff3dd45c8a0292af9f5f0b36f9fbb82d5d44",
                "md5": "8c10079a24597bd5681d60bbcfd3ba5e",
                "sha256": "e7591d6f440af7f73c4bd9404f3772bfee064e639d2b6cc8c94076e71b2471c1"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8c10079a24597bd5681d60bbcfd3ba5e",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 160676,
            "upload_time": "2024-11-13T07:11:25",
            "upload_time_iso_8601": "2024-11-13T07:11:25.146766Z",
            "url": "https://files.pythonhosted.org/packages/40/b0/a70b972d853c3f26040834fcff3dd45c8a0292af9f5f0b36f9fbb82d5d44/websockets-14.1-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4a76f9da7f97476cc7b8c74829bb4851f1faf660455839689ffcc354b52860a7",
                "md5": "1b624628b975ed17a1a3e01e8ebc209a",
                "sha256": "25225cc79cfebc95ba1d24cd3ab86aaa35bcd315d12fa4358939bd55e9bd74a5"
            },
            "downloads": -1,
            "filename": "websockets-14.1-pp39-pypy39_pp73-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "1b624628b975ed17a1a3e01e8ebc209a",
            "packagetype": "bdist_wheel",
            "python_version": "pp39",
            "requires_python": ">=3.9",
            "size": 163311,
            "upload_time": "2024-11-13T07:11:26",
            "upload_time_iso_8601": "2024-11-13T07:11:26.531362Z",
            "url": "https://files.pythonhosted.org/packages/4a/76/f9da7f97476cc7b8c74829bb4851f1faf660455839689ffcc354b52860a7/websockets-14.1-pp39-pypy39_pp73-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b00bc7e5d11020242984d9d37990310520ed663b942333b83a033c2f20191113",
                "md5": "f13660bd7a6bb94cf9f34c07cbda6914",
                "sha256": "4d4fc827a20abe6d544a119896f6b78ee13fe81cbfef416f3f2ddf09a03f0e2e"
            },
            "downloads": -1,
            "filename": "websockets-14.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f13660bd7a6bb94cf9f34c07cbda6914",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 156277,
            "upload_time": "2024-11-13T07:11:27",
            "upload_time_iso_8601": "2024-11-13T07:11:27.848521Z",
            "url": "https://files.pythonhosted.org/packages/b0/0b/c7e5d11020242984d9d37990310520ed663b942333b83a033c2f20191113/websockets-14.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f41b380b883ce05bb5f45a905b61790319a28958a9ab1e4b6b95ff5464b60ca1",
                "md5": "eaef5161b6d36f8f66a1328c7e3bde7f",
                "sha256": "398b10c77d471c0aab20a845e7a60076b6390bfdaac7a6d2edb0d2c59d75e8d8"
            },
            "downloads": -1,
            "filename": "websockets-14.1.tar.gz",
            "has_sig": false,
            "md5_digest": "eaef5161b6d36f8f66a1328c7e3bde7f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 162840,
            "upload_time": "2024-11-13T07:11:29",
            "upload_time_iso_8601": "2024-11-13T07:11:29.152943Z",
            "url": "https://files.pythonhosted.org/packages/f4/1b/380b883ce05bb5f45a905b61790319a28958a9ab1e4b6b95ff5464b60ca1/websockets-14.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-13 07:11:29",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "python-websockets",
    "github_project": "websockets",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "websockets"
}
        
Elapsed time: 0.34588s