Spaces:
Runtime error
Runtime error
Metadata-Version: 2.1 | |
Name: anyio | |
Version: 3.7.0 | |
Summary: High level compatibility layer for multiple asynchronous event loop implementations | |
Author-email: Alex Grönholm <[email protected]> | |
License: MIT | |
Project-URL: Documentation, https://anyio.readthedocs.io/en/latest/ | |
Project-URL: Changelog, https://anyio.readthedocs.io/en/stable/versionhistory.html | |
Project-URL: Source code, https://github.com/agronholm/anyio | |
Project-URL: Issue tracker, https://github.com/agronholm/anyio/issues | |
Classifier: Development Status :: 5 - Production/Stable | |
Classifier: Intended Audience :: Developers | |
Classifier: License :: OSI Approved :: MIT License | |
Classifier: Framework :: AnyIO | |
Classifier: Typing :: Typed | |
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 | |
Requires-Python: >=3.7 | |
Description-Content-Type: text/x-rst | |
License-File: LICENSE | |
Requires-Dist: idna (>=2.8) | |
Requires-Dist: sniffio (>=1.1) | |
Requires-Dist: exceptiongroup ; python_version < "3.11" | |
Requires-Dist: typing-extensions ; python_version < "3.8" | |
Provides-Extra: doc | |
Requires-Dist: packaging ; extra == 'doc' | |
Requires-Dist: Sphinx (>=6.1.0) ; extra == 'doc' | |
Requires-Dist: sphinx-rtd-theme ; extra == 'doc' | |
Requires-Dist: sphinxcontrib-jquery ; extra == 'doc' | |
Requires-Dist: sphinx-autodoc-typehints (>=1.2.0) ; extra == 'doc' | |
Provides-Extra: test | |
Requires-Dist: anyio[trio] ; extra == 'test' | |
Requires-Dist: coverage[toml] (>=4.5) ; extra == 'test' | |
Requires-Dist: hypothesis (>=4.0) ; extra == 'test' | |
Requires-Dist: psutil (>=5.9) ; extra == 'test' | |
Requires-Dist: pytest (>=7.0) ; extra == 'test' | |
Requires-Dist: pytest-mock (>=3.6.1) ; extra == 'test' | |
Requires-Dist: trustme ; extra == 'test' | |
Requires-Dist: uvloop (>=0.17) ; (python_version < "3.12" and platform_python_implementation == "CPython" and platform_system != "Windows") and extra == 'test' | |
Requires-Dist: mock (>=4) ; (python_version < "3.8") and extra == 'test' | |
Provides-Extra: trio | |
Requires-Dist: trio (<0.22) ; extra == 'trio' | |
.. image:: https://github.com/agronholm/anyio/actions/workflows/test.yml/badge.svg | |
:target: https://github.com/agronholm/anyio/actions/workflows/test.yml | |
:alt: Build Status | |
.. image:: https://coveralls.io/repos/github/agronholm/anyio/badge.svg?branch=master | |
:target: https://coveralls.io/github/agronholm/anyio?branch=master | |
:alt: Code Coverage | |
.. image:: https://readthedocs.org/projects/anyio/badge/?version=latest | |
:target: https://anyio.readthedocs.io/en/latest/?badge=latest | |
:alt: Documentation | |
.. image:: https://badges.gitter.im/gitterHQ/gitter.svg | |
:target: https://gitter.im/python-trio/AnyIO | |
:alt: Gitter chat | |
AnyIO is an asynchronous networking and concurrency library that works on top of either asyncio_ or | |
trio_. It implements trio-like `structured concurrency`_ (SC) on top of asyncio and works in harmony | |
with the native SC of trio itself. | |
Applications and libraries written against AnyIO's API will run unmodified on either asyncio_ or | |
trio_. AnyIO can also be adopted into a library or application incrementally – bit by bit, no full | |
refactoring necessary. It will blend in with the native libraries of your chosen backend. | |
Documentation | |
------------- | |
View full documentation at: https://anyio.readthedocs.io/ | |
Features | |
-------- | |
AnyIO offers the following functionality: | |
* Task groups (nurseries_ in trio terminology) | |
* High-level networking (TCP, UDP and UNIX sockets) | |
* `Happy eyeballs`_ algorithm for TCP connections (more robust than that of asyncio on Python | |
3.8) | |
* async/await style UDP sockets (unlike asyncio where you still have to use Transports and | |
Protocols) | |
* A versatile API for byte streams and object streams | |
* Inter-task synchronization and communication (locks, conditions, events, semaphores, object | |
streams) | |
* Worker threads | |
* Subprocesses | |
* Asynchronous file I/O (using worker threads) | |
* Signal handling | |
AnyIO also comes with its own pytest_ plugin which also supports asynchronous fixtures. | |
It even works with the popular Hypothesis_ library. | |
.. _asyncio: https://docs.python.org/3/library/asyncio.html | |
.. _trio: https://github.com/python-trio/trio | |
.. _structured concurrency: https://en.wikipedia.org/wiki/Structured_concurrency | |
.. _nurseries: https://trio.readthedocs.io/en/stable/reference-core.html#nurseries-and-spawning | |
.. _Happy eyeballs: https://en.wikipedia.org/wiki/Happy_Eyeballs | |
.. _pytest: https://docs.pytest.org/en/latest/ | |
.. _Hypothesis: https://hypothesis.works/ | |