METADATA 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. Metadata-Version: 2.4
  2. Name: h2
  3. Version: 4.3.0
  4. Summary: Pure-Python HTTP/2 protocol implementation
  5. Author-email: Cory Benfield <cory@lukasa.co.uk>
  6. Maintainer-email: Thomas Kriechbaumer <thomas@kriechbaumer.name>
  7. License: The MIT License (MIT)
  8. Copyright (c) 2015-2020 Cory Benfield and contributors
  9. Permission is hereby granted, free of charge, to any person obtaining a copy
  10. of this software and associated documentation files (the "Software"), to deal
  11. in the Software without restriction, including without limitation the rights
  12. to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  13. copies of the Software, and to permit persons to whom the Software is
  14. furnished to do so, subject to the following conditions:
  15. The above copyright notice and this permission notice shall be included in
  16. all copies or substantial portions of the Software.
  17. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  18. IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  19. FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  20. AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  21. LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  22. OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  23. THE SOFTWARE.
  24. Project-URL: Homepage, https://github.com/python-hyper/h2/
  25. Project-URL: Bug Reports, https://github.com/python-hyper/h2/issues
  26. Project-URL: Source, https://github.com/python-hyper/h2/
  27. Project-URL: Documentation, https://python-hyper.org/
  28. Classifier: Development Status :: 5 - Production/Stable
  29. Classifier: Intended Audience :: Developers
  30. Classifier: License :: OSI Approved :: MIT License
  31. Classifier: Programming Language :: Python
  32. Classifier: Programming Language :: Python :: 3 :: Only
  33. Classifier: Programming Language :: Python :: 3
  34. Classifier: Programming Language :: Python :: 3.9
  35. Classifier: Programming Language :: Python :: 3.10
  36. Classifier: Programming Language :: Python :: 3.11
  37. Classifier: Programming Language :: Python :: 3.12
  38. Classifier: Programming Language :: Python :: 3.13
  39. Classifier: Programming Language :: Python :: Implementation :: CPython
  40. Classifier: Programming Language :: Python :: Implementation :: PyPy
  41. Requires-Python: >=3.9
  42. Description-Content-Type: text/x-rst
  43. License-File: LICENSE
  44. Requires-Dist: hyperframe<7,>=6.1
  45. Requires-Dist: hpack<5,>=4.1
  46. Dynamic: license-file
  47. =========================
  48. h2: HTTP/2 Protocol Stack
  49. =========================
  50. .. image:: https://github.com/python-hyper/h2/workflows/CI/badge.svg
  51. :target: https://github.com/python-hyper/h2/actions
  52. :alt: Build Status
  53. .. image:: https://codecov.io/gh/python-hyper/h2/branch/master/graph/badge.svg
  54. :target: https://codecov.io/gh/python-hyper/h2
  55. :alt: Code Coverage
  56. .. image:: https://readthedocs.org/projects/h2/badge/?version=latest
  57. :target: https://h2.readthedocs.io/en/latest/
  58. :alt: Documentation Status
  59. .. image:: https://img.shields.io/badge/chat-join_now-brightgreen.svg
  60. :target: https://gitter.im/python-hyper/community
  61. :alt: Chat community
  62. .. image:: https://raw.github.com/python-hyper/documentation/master/source/logo/hyper-black-bg-white.png
  63. This repository contains a pure-Python implementation of a HTTP/2 protocol
  64. stack. It's written from the ground up to be embeddable in whatever program you
  65. choose to use, ensuring that you can speak HTTP/2 regardless of your
  66. programming paradigm.
  67. You use it like this:
  68. .. code-block:: python
  69. import h2.connection
  70. import h2.config
  71. config = h2.config.H2Configuration()
  72. conn = h2.connection.H2Connection(config=config)
  73. conn.send_headers(stream_id=stream_id, headers=headers)
  74. conn.send_data(stream_id, data)
  75. socket.sendall(conn.data_to_send())
  76. events = conn.receive_data(socket_data)
  77. This repository does not provide a parsing layer, a network layer, or any rules
  78. about concurrency. Instead, it's a purely in-memory solution, defined in terms
  79. of data actions and HTTP/2 frames. This is one building block of a full Python
  80. HTTP implementation.
  81. To install it, just run:
  82. .. code-block:: console
  83. $ python -m pip install h2
  84. Documentation
  85. =============
  86. Documentation is available at https://h2.readthedocs.io .
  87. Contributing
  88. ============
  89. ``h2`` welcomes contributions from anyone! Unlike many other projects we
  90. are happy to accept cosmetic contributions and small contributions, in addition
  91. to large feature requests and changes.
  92. Before you contribute (either by opening an issue or filing a pull request),
  93. please `read the contribution guidelines`_.
  94. .. _read the contribution guidelines: https://python-hyper.org/en/latest/contributing.html
  95. License
  96. =======
  97. ``h2`` is made available under the MIT License. For more details, see the
  98. ``LICENSE`` file in the repository.
  99. Authors
  100. =======
  101. ``h2`` was authored by Cory Benfield and is maintained
  102. by the members of `python-hyper <https://github.com/orgs/python-hyper/people>`_.