Updated script that can be controled by Nodejs web app

This commit is contained in:
mac OS
2024-11-25 12:24:18 +07:00
parent c440eda1f4
commit 8b0ab2bd3a
8662 changed files with 1803808 additions and 34 deletions

View File

@ -0,0 +1 @@
pip

View File

@ -0,0 +1,130 @@
Metadata-Version: 2.3
Name: eventlet
Version: 0.38.0
Summary: Highly concurrent networking library
Project-URL: Homepage, https://github.com/eventlet/eventlet
Project-URL: History, https://github.com/eventlet/eventlet/blob/master/NEWS
Project-URL: Tracker, https://github.com/eventlet/eventlet/issues
Project-URL: Source, https://github.com/eventlet/eventlet
Project-URL: Documentation, https://eventlet.readthedocs.io/
Author-email: Sergey Shepelev <temotor@gmail.com>, Jakub Stasiak <jakub@stasiak.at>, Tim Burke <tim.burke@gmail.com>, Nat Goodspeed <nat@lindenlab.com>, Itamar Turner-Trauring <itamar@itamarst.org>, Hervé Beraud <hberaud@redhat.com>
License: MIT
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Requires-Dist: dnspython>=1.15.0
Requires-Dist: greenlet>=1.0
Requires-Dist: monotonic>=1.4; python_version < '3.5'
Provides-Extra: dev
Requires-Dist: black; extra == 'dev'
Requires-Dist: build; extra == 'dev'
Requires-Dist: commitizen; extra == 'dev'
Requires-Dist: isort; extra == 'dev'
Requires-Dist: pip-tools; extra == 'dev'
Requires-Dist: pre-commit; extra == 'dev'
Requires-Dist: twine; extra == 'dev'
Description-Content-Type: text/x-rst
Warning
=======
**New usages of eventlet are now heavily discouraged! Please read the
following.**
Eventlet was created almost 18 years ago, at a time where async
features were absent from the CPython stdlib. With time eventlet evolved and
CPython too, but since several years the maintenance activity of eventlet
decreased leading to a growing gap between eventlet and the CPython
implementation.
This gap is now too high and can lead you to unexpected side effects and bugs
in your applications.
Eventlet now follows a new maintenance policy. **Only maintenance for
stability and bug fixing** will be provided. **No new features will be
accepted**, except those related to the asyncio migration. **Usages in new
projects are discouraged**. **Our goal is to plan the retirement of eventlet**
and to give you ways to move away from eventlet.
If you are looking for a library to manage async network programming,
and if you do not yet use eventlet, then, we encourage you to use `asyncio`_,
which is the official async library of the CPython stdlib.
If you already use eventlet, we hope to enable migration to asyncio for some use
cases; see `Migrating off of Eventlet`_. Only new features related to the migration
solution will be accepted.
If you have questions concerning maintenance goals or concerning
the migration do not hesitate to `open a new issue`_, we will be happy to
answer them.
.. _asyncio: https://docs.python.org/3/library/asyncio.html
.. _open a new issue: https://github.com/eventlet/eventlet/issues/new
.. _Migrating off of Eventlet: https://eventlet.readthedocs.io/en/latest/asyncio/migration.html#migration-guide
Eventlet
========
.. image:: https://img.shields.io/pypi/v/eventlet
:target: https://pypi.org/project/eventlet/
.. image:: https://img.shields.io/github/actions/workflow/status/eventlet/eventlet/test.yaml?branch=master
:target: https://github.com/eventlet/eventlet/actions?query=workflow%3Atest+branch%3Amaster
.. image:: https://codecov.io/gh/eventlet/eventlet/branch/master/graph/badge.svg
:target: https://codecov.io/gh/eventlet/eventlet
Eventlet is a concurrent networking library for Python that allows you to change how you run your code, not how you write it.
It uses epoll or libevent for highly scalable non-blocking I/O. Coroutines ensure that the developer uses a blocking style of programming that is similar to threading, but provide the benefits of non-blocking I/O. The event dispatch is implicit, which means you can easily use Eventlet from the Python interpreter, or as a small part of a larger application.
It's easy to get started using Eventlet, and easy to convert existing
applications to use it. Start off by looking at the `examples`_,
`common design patterns`_, and the list of `basic API primitives`_.
.. _examples: https://eventlet.readthedocs.io/en/latest/examples.html
.. _common design patterns: https://eventlet.readthedocs.io/en/latest/design_patterns.html
.. _basic API primitives: https://eventlet.readthedocs.io/en/latest/basic_usage.html
Getting Eventlet
================
The easiest way to get Eventlet is to use pip::
pip install -U eventlet
To install latest development version once::
pip install -U https://github.com/eventlet/eventlet/archive/master.zip
Building the Docs Locally
=========================
To build a complete set of HTML documentation::
tox -e docs
The built html files can be found in doc/build/html afterward.
Supported Python versions
=========================
Python 3.7-3.13 are currently supported.

View File

@ -0,0 +1,199 @@
eventlet-0.38.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
eventlet-0.38.0.dist-info/METADATA,sha256=FPAWSbJVa00jpxa-J9tLzVTQmiZ4k7H8ubxBDuxRK2A,5514
eventlet-0.38.0.dist-info/RECORD,,
eventlet-0.38.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
eventlet-0.38.0.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
eventlet-0.38.0.dist-info/licenses/AUTHORS,sha256=4bOaa7VfMxTYsk_74-G7Rhp0aVThD_zNddMOW71-Fxc,6203
eventlet-0.38.0.dist-info/licenses/LICENSE,sha256=vOygSX96gUdRFr_0E4cz-yAGC2sitnHmV7YVioYGVuI,1254
eventlet/__init__.py,sha256=DKavmh5WiRlLagn7tb7r-aaqwIyTJD0rn39wsJ_4BDg,2295
eventlet/__pycache__/__init__.cpython-313.pyc,,
eventlet/__pycache__/_version.cpython-313.pyc,,
eventlet/__pycache__/asyncio.cpython-313.pyc,,
eventlet/__pycache__/backdoor.cpython-313.pyc,,
eventlet/__pycache__/convenience.cpython-313.pyc,,
eventlet/__pycache__/corolocal.cpython-313.pyc,,
eventlet/__pycache__/coros.cpython-313.pyc,,
eventlet/__pycache__/dagpool.cpython-313.pyc,,
eventlet/__pycache__/db_pool.cpython-313.pyc,,
eventlet/__pycache__/debug.cpython-313.pyc,,
eventlet/__pycache__/event.cpython-313.pyc,,
eventlet/__pycache__/greenpool.cpython-313.pyc,,
eventlet/__pycache__/greenthread.cpython-313.pyc,,
eventlet/__pycache__/lock.cpython-313.pyc,,
eventlet/__pycache__/patcher.cpython-313.pyc,,
eventlet/__pycache__/pools.cpython-313.pyc,,
eventlet/__pycache__/queue.cpython-313.pyc,,
eventlet/__pycache__/semaphore.cpython-313.pyc,,
eventlet/__pycache__/timeout.cpython-313.pyc,,
eventlet/__pycache__/tpool.cpython-313.pyc,,
eventlet/__pycache__/websocket.cpython-313.pyc,,
eventlet/__pycache__/wsgi.cpython-313.pyc,,
eventlet/_version.py,sha256=SsIfGVTAs4v7cGvj7Yyn-qsZwhuSHF59TdkE1-M9OLA,413
eventlet/asyncio.py,sha256=X-eMizlIBJ7z1nQqkZVPQynBgBiYmeIQxqnShe-P4v0,1723
eventlet/backdoor.py,sha256=Rl0YQMNGRh6Htn5RlcrvgNDyGZ_X8B4rRsqkne0kOFA,4043
eventlet/convenience.py,sha256=dF_ntllWDM09s-y2hoo987ijEVUK80AEqkto-3FN5aY,7158
eventlet/corolocal.py,sha256=FbStAfAkBixRiFJaJb8On3RbaXEVx0f25BsFL9AyKTg,1733
eventlet/coros.py,sha256=0wub8j1GlVX19driNRwzsDeBhINWXHqOBKb0PEqVJ2s,2030
eventlet/dagpool.py,sha256=SHtsmYkvvo1hVcEejfJYVVQ7mS8lSnR5opAHBwOCX_U,26180
eventlet/db_pool.py,sha256=fucoCrf2cqGc-uL5IYrQJYAznj61DDWatmY2OMNCMbY,15514
eventlet/debug.py,sha256=dLMel6VKDO3wX1SU1PC09OVgtatcY7gAT7GMfZKd2Js,8181
eventlet/event.py,sha256=SmfhkdHozkG2TkKrob-r3lPfSYKKgnmYtRMJxjXW35M,7496
eventlet/green/BaseHTTPServer.py,sha256=kAwWSvHTKqm-Y-5dtGAVXY84kMFSfeBcT7ucwKx8MXg,302
eventlet/green/CGIHTTPServer.py,sha256=g6IUEF1p4q7kpAaKVhsqo0L1f8acl_X-_gX0ynP4Y50,466
eventlet/green/MySQLdb.py,sha256=sTanY41h3vqnh6tum-wYucOgkFqHJBIthtsOjA_qbLw,1196
eventlet/green/OpenSSL/SSL.py,sha256=1hFS2eB30LGZDgbLTrCMH7htDbRreBVLtXgNmiJ50tk,4534
eventlet/green/OpenSSL/__init__.py,sha256=h3kX23byJXMSl1rEhBf1oPo5D9LLqmXjWngXmaHpON0,246
eventlet/green/OpenSSL/__pycache__/SSL.cpython-313.pyc,,
eventlet/green/OpenSSL/__pycache__/__init__.cpython-313.pyc,,
eventlet/green/OpenSSL/__pycache__/crypto.cpython-313.pyc,,
eventlet/green/OpenSSL/__pycache__/tsafe.cpython-313.pyc,,
eventlet/green/OpenSSL/__pycache__/version.cpython-313.pyc,,
eventlet/green/OpenSSL/crypto.py,sha256=dcnjSGP6K274eAxalZEOttUZ1djAStBnbRH-wGBSJu4,29
eventlet/green/OpenSSL/tsafe.py,sha256=DuY1rHdT2R0tiJkD13ECj-IU7_v-zQKjhTsK6CG8UEM,28
eventlet/green/OpenSSL/version.py,sha256=3Ti2k01zP3lM6r0YuLbLS_QReJBEHaTJt5k0dNdXtI4,49
eventlet/green/Queue.py,sha256=CsIn5cEJtbge-kTLw2xSFzjNkq5udUY1vyVrf5AS9WM,789
eventlet/green/SimpleHTTPServer.py,sha256=O8A3gRYO48q3jVxIslyyaLYgjvTJqiHtGAJZPydEZRs,232
eventlet/green/SocketServer.py,sha256=w1Ge_Zhp-Dm2hG2t06GscLgd7gXZyCg55e45kba28yY,323
eventlet/green/__init__.py,sha256=upnrKC57DQQBDNvpxXf_IhDapQ6NtEt2hgxIs1pZDao,84
eventlet/green/__pycache__/BaseHTTPServer.cpython-313.pyc,,
eventlet/green/__pycache__/CGIHTTPServer.cpython-313.pyc,,
eventlet/green/__pycache__/MySQLdb.cpython-313.pyc,,
eventlet/green/__pycache__/Queue.cpython-313.pyc,,
eventlet/green/__pycache__/SimpleHTTPServer.cpython-313.pyc,,
eventlet/green/__pycache__/SocketServer.cpython-313.pyc,,
eventlet/green/__pycache__/__init__.cpython-313.pyc,,
eventlet/green/__pycache__/_socket_nodns.cpython-313.pyc,,
eventlet/green/__pycache__/asynchat.cpython-313.pyc,,
eventlet/green/__pycache__/asyncore.cpython-313.pyc,,
eventlet/green/__pycache__/builtin.cpython-313.pyc,,
eventlet/green/__pycache__/ftplib.cpython-313.pyc,,
eventlet/green/__pycache__/httplib.cpython-313.pyc,,
eventlet/green/__pycache__/os.cpython-313.pyc,,
eventlet/green/__pycache__/profile.cpython-313.pyc,,
eventlet/green/__pycache__/select.cpython-313.pyc,,
eventlet/green/__pycache__/selectors.cpython-313.pyc,,
eventlet/green/__pycache__/socket.cpython-313.pyc,,
eventlet/green/__pycache__/ssl.cpython-313.pyc,,
eventlet/green/__pycache__/subprocess.cpython-313.pyc,,
eventlet/green/__pycache__/thread.cpython-313.pyc,,
eventlet/green/__pycache__/threading.cpython-313.pyc,,
eventlet/green/__pycache__/time.cpython-313.pyc,,
eventlet/green/__pycache__/urllib2.cpython-313.pyc,,
eventlet/green/__pycache__/zmq.cpython-313.pyc,,
eventlet/green/_socket_nodns.py,sha256=Oc-5EYs3AST-0HH4Hpi24t2tLp_CrzRX3jDFHN_rPH4,795
eventlet/green/asynchat.py,sha256=IxG7yS4UNv2z8xkbtlnyGrAGpaXIjYGpyxtXjmcgWrI,291
eventlet/green/asyncore.py,sha256=aKGWNcWSKUJhWS5fC5i9SrcIWyPuHQxaQKks8yw_m50,345
eventlet/green/builtin.py,sha256=eLrJZgTDwhIFN-Sor8jWjm-D-OLqQ69GDqvjIZHK9As,1013
eventlet/green/ftplib.py,sha256=d23VMcAPqw7ZILheDJmueM8qOlWHnq0WFjjSgWouRdA,307
eventlet/green/http/__init__.py,sha256=X0DA5WqAuctSblh2tBviwW5ob1vnVcW6uiT9INsH_1o,8738
eventlet/green/http/__pycache__/__init__.cpython-313.pyc,,
eventlet/green/http/__pycache__/client.cpython-313.pyc,,
eventlet/green/http/__pycache__/cookiejar.cpython-313.pyc,,
eventlet/green/http/__pycache__/cookies.cpython-313.pyc,,
eventlet/green/http/__pycache__/server.cpython-313.pyc,,
eventlet/green/http/client.py,sha256=9aa0jGR4KUd6B-sUrtOKEDQ4tYM8Xr9YBwxkT68obss,59137
eventlet/green/http/cookiejar.py,sha256=Fu16_hV4_6wsOo3W1EQIqvDdQY681ZRmcHJOvx4tIHM,79243
eventlet/green/http/cookies.py,sha256=2XAyogPiyysieelxS7KjOzXQHAXezQmAiEKesh3L4MQ,24189
eventlet/green/http/server.py,sha256=jHfdMtiF8_WQHahLCEspBHpm2cCm7wmBKbBRByn7vQs,46596
eventlet/green/httplib.py,sha256=T9_QVRLiJVBQlVexvnYvf4PXYAZdjclwLzqoX1fbJ38,390
eventlet/green/os.py,sha256=UAlVogW-ZO2ha5ftCs199RtSz3MV3pgTQB_R_VVTb9Q,3774
eventlet/green/profile.py,sha256=D7ij2c7MVLqXbjXoZtqTkVFP7bMspmNEr34XYYw8tfM,9514
eventlet/green/select.py,sha256=wgmGGfUQYg8X8Ov6ayRAikt6v3o-uPL-wPARk-ihqhE,2743
eventlet/green/selectors.py,sha256=C_aeln-t0FsMG2WosmkIBhGst0KfKglcaJG8U50pxQM,948
eventlet/green/socket.py,sha256=np5_HqSjA4_y_kYKdSFyHQN0vjzLW_qi_oLFH8bB0T0,1918
eventlet/green/ssl.py,sha256=BU4mKN5sBnyp6gb7AhCgTYWtl2N9as1ANt9PFFfx94M,19417
eventlet/green/subprocess.py,sha256=Y7UX-_D-L6LIzM6NNwKyBn1sgcfsOUr8e0Lka26367s,5575
eventlet/green/thread.py,sha256=9vT46u-9aznzMhkQ9RKnjVHYG-O3GJxzVIHTahKzcDE,4880
eventlet/green/threading.py,sha256=w00w5yNcpDCUbvnRSiJin1QjUcEt4YUzsSnB9dYVXTM,3882
eventlet/green/time.py,sha256=1W7BKbGrfTI1v2-pDnBvzBn01tbQ8zwyqz458BFrjt0,240
eventlet/green/urllib/__init__.py,sha256=hjlirvvvuVKMnugnX9PVW6-9zy6E_q85hqvXunAjpqU,164
eventlet/green/urllib/__pycache__/__init__.cpython-313.pyc,,
eventlet/green/urllib/__pycache__/error.cpython-313.pyc,,
eventlet/green/urllib/__pycache__/parse.cpython-313.pyc,,
eventlet/green/urllib/__pycache__/request.cpython-313.pyc,,
eventlet/green/urllib/__pycache__/response.cpython-313.pyc,,
eventlet/green/urllib/error.py,sha256=xlpHJIa8U4QTFolAa3NEy5gEVj_nM3oF2bB-FvdhCQg,157
eventlet/green/urllib/parse.py,sha256=uJ1R4rbgqlQgINjKm_-oTxveLvCR9anu7U0i7aRS87k,83
eventlet/green/urllib/request.py,sha256=Upa4bT0-9pSxJOmPuIk3t1rNmGbLEkAOUlpD4aUfCGM,1504
eventlet/green/urllib/response.py,sha256=ytsGn0pXE94tlZh75hl9X1cFGagjGNBWm6k_PRXOBmM,86
eventlet/green/urllib2.py,sha256=Su3dEhDc8VsKK9PqhIXwgFVOOHVI37TTXU_beqzvg44,488
eventlet/green/zmq.py,sha256=xd88Ao4zuq-a6g8RV6_GLOPgZGC9w6OtQeKJ7AhgY4k,18018
eventlet/greenio/__init__.py,sha256=d6_QQqaEAPBpE2vNjU-rHWXmZ94emYuwKjclF3XT2gs,88
eventlet/greenio/__pycache__/__init__.cpython-313.pyc,,
eventlet/greenio/__pycache__/base.cpython-313.pyc,,
eventlet/greenio/__pycache__/py3.cpython-313.pyc,,
eventlet/greenio/base.py,sha256=yHkC_nFF3BDvY0OzmthEAfcdKdGtOWZ42QlQ05r2RzE,17333
eventlet/greenio/py3.py,sha256=If1dCgNr_uWQKNuQfqKPun7JZkUBlV1exJ_mgzlZ-R4,6599
eventlet/greenpool.py,sha256=9st3ZMiN78YYnUKq17otL8NrakGOS9scx3t3hElrBuo,9771
eventlet/greenthread.py,sha256=s1m5fWFN5vm1OnnXKhGGuQaATH6za8YMDt9twz3IpzU,12989
eventlet/hubs/__init__.py,sha256=i9S4ki1aiTJqLxAkDg16xjWX951Rwk2G8SfoQbzLWEs,6013
eventlet/hubs/__pycache__/__init__.cpython-313.pyc,,
eventlet/hubs/__pycache__/asyncio.cpython-313.pyc,,
eventlet/hubs/__pycache__/epolls.cpython-313.pyc,,
eventlet/hubs/__pycache__/hub.cpython-313.pyc,,
eventlet/hubs/__pycache__/kqueue.cpython-313.pyc,,
eventlet/hubs/__pycache__/poll.cpython-313.pyc,,
eventlet/hubs/__pycache__/pyevent.cpython-313.pyc,,
eventlet/hubs/__pycache__/selects.cpython-313.pyc,,
eventlet/hubs/__pycache__/timer.cpython-313.pyc,,
eventlet/hubs/asyncio.py,sha256=C0dL-txjh6eSvmA2aVK_0_sIb0_tA9Q7FNEC_q53hRA,5612
eventlet/hubs/epolls.py,sha256=IkY-yX7shRxVO5LQ8Ysv5FiH6g-XW0XKhtyvorrRFlg,1018
eventlet/hubs/hub.py,sha256=JcfZBQfFuo0dk_PpqKDcIf_9K_Kzzf0vGBxCqOTIy_E,17604
eventlet/hubs/kqueue.py,sha256=-jOGtjNHcJAeIDfZYzFB8ZZeIfYAf4tssHuK_A9Qt1o,3420
eventlet/hubs/poll.py,sha256=qn0qQdvmvKMCQRHr6arvyI027TDVRM1G_kjhx5biLrk,3895
eventlet/hubs/pyevent.py,sha256=PtImWgRlaH9NmglMcAw5BnqYrTnVoy-4VjfRHUSdvyo,156
eventlet/hubs/selects.py,sha256=13R8ueir1ga8nFapuqnjFEpRbsRcda4V1CpNhUwtKt8,1984
eventlet/hubs/timer.py,sha256=Uvo5gxjptEyCtTaeb_X7SpaIvATqLb6ehWX_33Y242c,3185
eventlet/lock.py,sha256=GGrKyItc5a0ANCrB2eS7243g_BiHVAS_ufjy1eWE7Es,1229
eventlet/patcher.py,sha256=o4zJSDWfaU9recx4Ze0GzGmVx5mkzo78uUV7-UO0g7A,22423
eventlet/pools.py,sha256=3JPSudnQP3M-FD0ihc17zS7NPaQZ4cXwwmf1qDDJKuU,6244
eventlet/queue.py,sha256=-v4xWljFBRK2MZfbBm6K8duwJSFnRNwWAdvXQunjBus,18196
eventlet/semaphore.py,sha256=F6aIp2d5uuvYJPTmRAwt9U8sfDIjlT259MtDWKp4SHY,12163
eventlet/support/__init__.py,sha256=Gkqs5h-VXQZc73NIkBXps45uuFdRLrXvme4DNwY3Y3k,1764
eventlet/support/__pycache__/__init__.cpython-313.pyc,,
eventlet/support/__pycache__/greendns.cpython-313.pyc,,
eventlet/support/__pycache__/greenlets.cpython-313.pyc,,
eventlet/support/__pycache__/psycopg2_patcher.cpython-313.pyc,,
eventlet/support/__pycache__/pylib.cpython-313.pyc,,
eventlet/support/__pycache__/stacklesspypys.cpython-313.pyc,,
eventlet/support/__pycache__/stacklesss.cpython-313.pyc,,
eventlet/support/greendns.py,sha256=X1w1INSzAudrdPIVg19MARRmc5o1pkzM4C-gQgWU0Z8,35489
eventlet/support/greenlets.py,sha256=1mxaAJJlZYSBgoWM1EL9IvbtMHTo61KokzScSby1Qy8,133
eventlet/support/psycopg2_patcher.py,sha256=Rzm9GYS7PmrNpKAw04lqJV7KPcxLovnaCUI8CXE328A,2272
eventlet/support/pylib.py,sha256=EvZ1JZEX3wqWtzfga5HeVL-sLLb805_f_ywX2k5BDHo,274
eventlet/support/stacklesspypys.py,sha256=6BwZcnsCtb1m4wdK6GygoiPvYV03v7P7YlBxPIE6Zns,275
eventlet/support/stacklesss.py,sha256=hxen8xtqrHS-bMPP3ThiqRCutNeNlQHjzmW-1DzE0JM,1851
eventlet/timeout.py,sha256=mFW8oEj3wxSFQQhXOejdtOyWYaqFgRK82ccfz5fojQ4,6644
eventlet/tpool.py,sha256=2EXw7sNqfRo7aBPOUxhOV3bHWgmbIoIQyyb9SGAQLQY,10573
eventlet/websocket.py,sha256=b_D4u3NQ04XVLSp_rZ-jApFY0THBsG03z8rcDsKTYjk,34535
eventlet/wsgi.py,sha256=Q5JPVkcUzVcOfF49XpqRmYUQvtJe-ahrWTAh5EwHIlg,42281
eventlet/zipkin/README.rst,sha256=xmt_Mmbtl3apFwYzgrWOtaQdM46AdT1MV11N-dwrLsA,3866
eventlet/zipkin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
eventlet/zipkin/__pycache__/__init__.cpython-313.pyc,,
eventlet/zipkin/__pycache__/api.cpython-313.pyc,,
eventlet/zipkin/__pycache__/client.cpython-313.pyc,,
eventlet/zipkin/__pycache__/greenthread.cpython-313.pyc,,
eventlet/zipkin/__pycache__/http.cpython-313.pyc,,
eventlet/zipkin/__pycache__/log.cpython-313.pyc,,
eventlet/zipkin/__pycache__/patcher.cpython-313.pyc,,
eventlet/zipkin/__pycache__/wsgi.cpython-313.pyc,,
eventlet/zipkin/_thrift/README.rst,sha256=5bZ4doepGQlXdemHzPfvcobc5C0Mwa0lxzuAn_Dm3LY,233
eventlet/zipkin/_thrift/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
eventlet/zipkin/_thrift/__pycache__/__init__.cpython-313.pyc,,
eventlet/zipkin/_thrift/zipkinCore.thrift,sha256=zbV8L5vQUXNngVbI1eXR2gAgenmWRyPGzf7QEb2_wNU,2121
eventlet/zipkin/_thrift/zipkinCore/__init__.py,sha256=YFcZTT8Cm-6Y4oTiCaqq0DT1lw2W09WqoEc5_pTAwW0,34
eventlet/zipkin/_thrift/zipkinCore/__pycache__/__init__.cpython-313.pyc,,
eventlet/zipkin/_thrift/zipkinCore/__pycache__/constants.cpython-313.pyc,,
eventlet/zipkin/_thrift/zipkinCore/__pycache__/ttypes.cpython-313.pyc,,
eventlet/zipkin/_thrift/zipkinCore/constants.py,sha256=cbgWT_mN04BRZbyzjr1LzT40xvotzFyz-vbYp8Q_klo,275
eventlet/zipkin/_thrift/zipkinCore/ttypes.py,sha256=94RG3YtkmpeMmJ-EvKiwnYUtovYlfjrRVnh6sI27cJ0,13497
eventlet/zipkin/api.py,sha256=K9RdTr68ifYVQ28IhQZSOTC82E2y7P_cjIw28ykWJg8,5467
eventlet/zipkin/client.py,sha256=hT6meeP8pM5WDWi-zDt8xXDLwjpfM1vaJ2DRju8MA9I,1691
eventlet/zipkin/example/ex1.png,sha256=tMloQ9gWouUjGhHWTBzzuPQ308JdUtrVFd2ClXHRIBg,53179
eventlet/zipkin/example/ex2.png,sha256=AAIYZig2qVz6RVTj8nlIKju0fYT3DfP-F28LLwYIxwI,40482
eventlet/zipkin/example/ex3.png,sha256=xc4J1WOjKCeAYr4gRSFFggJbHMEk-_C9ukmAKXTEfuk,73175
eventlet/zipkin/greenthread.py,sha256=ify1VnsJmrFneAwfPl6QE8kgHIPJE5fAE9Ks9wQzeVI,843
eventlet/zipkin/http.py,sha256=qe_QMKI9GAV7HDZ6z1k_8rgEbICpCsqa80EdjQLG5Uk,666
eventlet/zipkin/log.py,sha256=jElBHT8H3_vs9T3r8Q-JG30xyajQ7u6wNGWmmMPQ4AA,337
eventlet/zipkin/patcher.py,sha256=t1g5tXcbuEvNix3ICtZyuIWaJKQtUHJ5ZUqsi14j9Dc,1388
eventlet/zipkin/wsgi.py,sha256=IT3d_j2DKRTALf5BRr7IPqWbFwfxH0VUIQ_EyItWfp4,2268

View File

@ -0,0 +1,4 @@
Wheel-Version: 1.0
Generator: hatchling 1.26.3
Root-Is-Purelib: true
Tag: py3-none-any

View File

@ -0,0 +1,188 @@
Maintainer (i.e., Who To Hassle If You Find Bugs)
-------------------------------------------------
The current maintainer(s) are volunteers with unrelated jobs.
We can only pay sporadic attention to responding to your issue and pull request submissions.
Your patience is greatly appreciated!
Active maintainers
~~~~~~~~~~~~~~~~~~
* Itamar Turner-Trauring https://github.com/itamarst
* Tim Burke https://github.com/tipabu
* Hervé Beraud https://github.com/4383
Less active maintainers
~~~~~~~~~~~~~~~~~~~~~~~
* Sergey Shepelev https://github.com/temoto
* Jakub Stasiak https://github.com/jstasiak
* Nat Goodspeed https://github.com/nat-goodspeed
Original Authors
----------------
* Bob Ippolito
* Donovan Preston
Contributors
------------
* AG Projects
* Chris AtLee
* R\. Tyler Ballance
* Denis Bilenko
* Mike Barton
* Patrick Carlisle
* Ben Ford
* Andrew Godwin
* Brantley Harris
* Gregory Holt
* Joe Malicki
* Chet Murthy
* Eugene Oden
* radix
* Scott Robinson
* Tavis Rudd
* Sergey Shepelev
* Chuck Thier
* Nick V
* Daniele Varrazzo
* Ryan Williams
* Geoff Salmon
* Edward George
* Floris Bruynooghe
* Paul Oppenheim
* Jakub Stasiak
* Aldona Majorek
* Victor Sergeyev
* David Szotten
* Victor Stinner
* Samuel Merritt
* Eric Urban
* Miguel Grinberg
* Tuomo Kriikkula
Linden Lab Contributors
-----------------------
* John Beisley
* Tess Chu
* Nat Goodspeed
* Dave Kaprielian
* Kartic Krishnamurthy
* Bryan O'Sullivan
* Kent Quirk
* Ryan Williams
Thanks To
---------
* AdamKG, giving the hint that invalid argument errors were introduced post-0.9.0
* Luke Tucker, bug report regarding wsgi + webob
* Taso Du Val, reproing an exception squelching bug, saving children's lives ;-)
* Luci Stanescu, for reporting twisted hub bug
* Marcus Cavanaugh, for test case code that has been incredibly useful in tracking down bugs
* Brian Brunswick, for many helpful questions and suggestions on the mailing list
* Cesar Alaniz, for uncovering bugs of great import
* the grugq, for contributing patches, suggestions, and use cases
* Ralf Schmitt, for wsgi/webob incompatibility bug report and suggested fix
* Benoit Chesneau, bug report on green.os and patch to fix it
* Slant, better iterator implementation in tpool
* Ambroff, nice pygtk hub example
* Michael Carter, websocket patch to improve location handling
* Marcin Bachry, nice repro of a bug and good diagnosis leading to the fix
* David Ziegler, reporting issue #53
* Favo Yang, twisted hub patch
* Schmir, patch that fixes readline method with chunked encoding in wsgi.py, advice on patcher
* Slide, for open-sourcing gogreen
* Holger Krekel, websocket example small fix
* mikepk, debugging MySQLdb/tpool issues
* Malcolm Cleaton, patch for Event exception handling
* Alexey Borzenkov, for finding and fixing issues with Windows error detection (#66, #69), reducing dependencies in zeromq hub (#71)
* Anonymous, finding and fixing error in websocket chat example (#70)
* Edward George, finding and fixing an issue in the [e]poll hubs (#74), and in convenience (#86)
* Ruijun Luo, figuring out incorrect openssl import for wrap_ssl (#73)
* rfk, patch to get green zmq to respect noblock flag.
* Soren Hansen, finding and fixing issue in subprocess (#77)
* Stefano Rivera, making tests pass in absence of postgres (#78)
* Joshua Kwan, fixing busy-wait in eventlet.green.ssl.
* Nick Vatamaniuc, Windows SO_REUSEADDR patch (#83)
* Clay Gerrard, wsgi handle socket closed by client (#95)
* Eric Windisch, zmq getsockopt(EVENTS) wake correct threads (pull request 22)
* Raymond Lu, fixing busy-wait in eventlet.green.ssl.socket.sendall()
* Thomas Grainger, webcrawler example small fix, "requests" library import bug report, Travis integration
* Peter Portante, save syscalls in socket.dup(), environ[REMOTE_PORT] in wsgi
* Peter Skirko, fixing socket.settimeout(0) bug
* Derk Tegeler, Pre-cache proxied GreenSocket methods (Bitbucket #136)
* David Malcolm, optional "timeout" argument to the subprocess module (Bitbucket #89)
* David Goetz, wsgi: Allow minimum_chunk_size to be overriden on a per request basis
* Dmitry Orlov, websocket: accept Upgrade: websocket (lowercase)
* Zhang Hua, profile: accumulate results between runs (Bitbucket #162)
* Astrum Kuo, python3 compatibility fixes; greenthread.unlink() method
* Davanum Srinivas, Python3 compatibility fixes
* Dmitriy Kruglyak, PyPy 2.3 compatibility fix
* Jan Grant, Michael Kerrin, second simultaneous read (GH-94)
* Simon Jagoe, Python3 octal literal fix
* Tushar Gohad, wsgi: Support optional headers w/ "100 Continue" responses
* raylu, fixing operator precedence bug in eventlet.wsgi
* Christoph Gysin, PEP 8 conformance
* Andrey Gubarev
* Corey Wright
* Deva
* Johannes Erdfelt
* Kevin
* QthCN
* Steven Hardy
* Stuart McLaren
* Tomaz Muraus
* ChangBo Guo(gcb), fixing typos in the documentation (GH-194)
* Marc Abramowitz, fixing the README so it renders correctly on PyPI (GH-183)
* Shaun Stanworth, equal chance to acquire semaphore from different greenthreads (GH-136)
* Lior Neudorfer, Make sure SSL retries are done using the exact same data buffer
* Sean Dague, wsgi: Provide python logging compatibility
* Tim Simmons, Use _socket_nodns and select in dnspython support
* Antonio Cuni, fix fd double close on PyPy
* Seyeong Kim
* Ihar Hrachyshka
* Janusz Harkot
* Fukuchi Daisuke
* Ramakrishnan G
* ashutosh-mishra
* Azhar Hussain
* Josh VanderLinden
* Levente Polyak
* Phus Lu
* Collin Stocks, fixing eventlet.green.urllib2.urlopen() so it accepts cafile, capath, or cadefault arguments
* Alexis Lee
* Steven Erenst
* Piët Delport
* Alex Villacís Lasso
* Yashwardhan Singh
* Tim Burke
* Ondřej Nový
* Jarrod Johnson
* Whitney Young
* Matthew D. Pagel
* Matt Yule-Bennett
* Artur Stawiarski
* Tal Wrii
* Roman Podoliaka
* Gevorg Davoian
* Ondřej Kobližek
* Yuichi Bando
* Feng
* Aayush Kasurde
* Linbing
* Geoffrey Thomas
* Costas Christofi, adding permessage-deflate weboscket extension support
* Peter Kovary, adding permessage-deflate weboscket extension support
* Konstantin Enchant
* James Page
* Stefan Nica
* Haikel Guemar
* Miguel Grinberg
* Chris Kerr
* Anthony Sottile
* Quan Tian
* orishoshan
* Matt Bennett
* Ralf Haferkamp
* Jake Tesler
* Aayush Kasurde

View File

@ -0,0 +1,23 @@
Unless otherwise noted, the files in Eventlet are under the following MIT license:
Copyright (c) 2005-2006, Bob Ippolito
Copyright (c) 2007-2010, Linden Research, Inc.
Copyright (c) 2008-2010, Eventlet Contributors (see AUTHORS)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.