You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

107 lines
4.6 KiB

  1. Metadata-Version: 2.1
  2. Name: anyio
  3. Version: 3.5.0
  4. Summary: High level compatibility layer for multiple asynchronous event loop implementations
  5. Home-page: UNKNOWN
  6. Author: Alex Grönholm
  7. Author-email: alex.gronholm@nextday.fi
  8. License: MIT
  9. Project-URL: Documentation, https://anyio.readthedocs.io/en/latest/
  10. Project-URL: Source code, https://github.com/agronholm/anyio
  11. Project-URL: Issue tracker, https://github.com/agronholm/anyio/issues
  12. Platform: UNKNOWN
  13. Classifier: Development Status :: 5 - Production/Stable
  14. Classifier: Intended Audience :: Developers
  15. Classifier: License :: OSI Approved :: MIT License
  16. Classifier: Framework :: AnyIO
  17. Classifier: Programming Language :: Python
  18. Classifier: Programming Language :: Python :: 3
  19. Classifier: Programming Language :: Python :: 3.6
  20. Classifier: Programming Language :: Python :: 3.7
  21. Classifier: Programming Language :: Python :: 3.8
  22. Classifier: Programming Language :: Python :: 3.9
  23. Classifier: Programming Language :: Python :: 3.10
  24. Requires-Python: >=3.6.2
  25. License-File: LICENSE
  26. Requires-Dist: idna (>=2.8)
  27. Requires-Dist: sniffio (>=1.1)
  28. Requires-Dist: contextvars ; python_version < "3.7"
  29. Requires-Dist: dataclasses ; python_version < "3.7"
  30. Requires-Dist: typing-extensions ; python_version < "3.8"
  31. Provides-Extra: doc
  32. Requires-Dist: packaging ; extra == 'doc'
  33. Requires-Dist: sphinx-rtd-theme ; extra == 'doc'
  34. Requires-Dist: sphinx-autodoc-typehints (>=1.2.0) ; extra == 'doc'
  35. Provides-Extra: test
  36. Requires-Dist: coverage[toml] (>=4.5) ; extra == 'test'
  37. Requires-Dist: hypothesis (>=4.0) ; extra == 'test'
  38. Requires-Dist: pytest (>=6.0) ; extra == 'test'
  39. Requires-Dist: pytest-mock (>=3.6.1) ; extra == 'test'
  40. Requires-Dist: trustme ; extra == 'test'
  41. Requires-Dist: contextlib2 ; (python_version < "3.7") and extra == 'test'
  42. Requires-Dist: uvloop (<0.15) ; (python_version < "3.7" and (platform_python_implementation == "CPython" and platform_system != "Windows")) and extra == 'test'
  43. Requires-Dist: mock (>=4) ; (python_version < "3.8") and extra == 'test'
  44. Requires-Dist: uvloop (>=0.15) ; (python_version >= "3.7" and (platform_python_implementation == "CPython" and platform_system != "Windows")) and extra == 'test'
  45. Provides-Extra: trio
  46. Requires-Dist: trio (>=0.16) ; extra == 'trio'
  47. .. image:: https://github.com/agronholm/anyio/actions/workflows/test.yml/badge.svg
  48. :target: https://github.com/agronholm/anyio/actions/workflows/test.yml
  49. :alt: Build Status
  50. .. image:: https://coveralls.io/repos/github/agronholm/anyio/badge.svg?branch=master
  51. :target: https://coveralls.io/github/agronholm/anyio?branch=master
  52. :alt: Code Coverage
  53. .. image:: https://readthedocs.org/projects/anyio/badge/?version=latest
  54. :target: https://anyio.readthedocs.io/en/latest/?badge=latest
  55. :alt: Documentation
  56. .. image:: https://badges.gitter.im/gitterHQ/gitter.svg
  57. :target: https://gitter.im/python-trio/AnyIO
  58. :alt: Gitter chat
  59. AnyIO is an asynchronous networking and concurrency library that works on top of either asyncio_ or
  60. trio_. It implements trio-like `structured concurrency`_ (SC) on top of asyncio, and works in harmony
  61. with the native SC of trio itself.
  62. Applications and libraries written against AnyIO's API will run unmodified on either asyncio_ or
  63. trio_. AnyIO can also be adopted into a library or application incrementally – bit by bit, no full
  64. refactoring necessary. It will blend in with native libraries of your chosen backend.
  65. Documentation
  66. -------------
  67. View full documentation at: https://anyio.readthedocs.io/
  68. Features
  69. --------
  70. AnyIO offers the following functionality:
  71. * Task groups (nurseries_ in trio terminology)
  72. * High level networking (TCP, UDP and UNIX sockets)
  73. * `Happy eyeballs`_ algorithm for TCP connections (more robust than that of asyncio on Python
  74. 3.8)
  75. * async/await style UDP sockets (unlike asyncio where you still have to use Transports and
  76. Protocols)
  77. * A versatile API for byte streams and object streams
  78. * Inter-task synchronization and communication (locks, conditions, events, semaphores, object
  79. streams)
  80. * Worker threads
  81. * Subprocesses
  82. * Asynchronous file I/O (using worker threads)
  83. * Signal handling
  84. AnyIO also comes with its own pytest_ plugin which also supports asynchronous fixtures.
  85. It even works with the popular Hypothesis_ library.
  86. .. _asyncio: https://docs.python.org/3/library/asyncio.html
  87. .. _trio: https://github.com/python-trio/trio
  88. .. _structured concurrency: https://en.wikipedia.org/wiki/Structured_concurrency
  89. .. _nurseries: https://trio.readthedocs.io/en/stable/reference-core.html#nurseries-and-spawning
  90. .. _Happy eyeballs: https://en.wikipedia.org/wiki/Happy_Eyeballs
  91. .. _pytest: https://docs.pytest.org/en/latest/
  92. .. _Hypothesis: https://hypothesis.works/