METADATA 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. Metadata-Version: 2.0
  2. Name: hyperframe
  3. Version: 3.2.0
  4. Summary: HTTP/2 framing layer for Python
  5. Home-page: http://hyper.rtfd.org
  6. Author: Cory Benfield
  7. Author-email: cory@lukasa.co.uk
  8. License: MIT License
  9. Platform: UNKNOWN
  10. Classifier: Development Status :: 5 - Production/Stable
  11. Classifier: Intended Audience :: Developers
  12. Classifier: License :: OSI Approved :: MIT License
  13. Classifier: Programming Language :: Python
  14. Classifier: Programming Language :: Python :: 2
  15. Classifier: Programming Language :: Python :: 2.7
  16. Classifier: Programming Language :: Python :: 3
  17. Classifier: Programming Language :: Python :: 3.3
  18. Classifier: Programming Language :: Python :: 3.4
  19. Classifier: Programming Language :: Python :: 3.5
  20. Classifier: Programming Language :: Python :: Implementation :: CPython
  21. ======================================
  22. hyperframe: Pure-Python HTTP/2 framing
  23. ======================================
  24. .. image:: https://travis-ci.org/python-hyper/hyperframe.png?branch=master
  25. :target: https://travis-ci.org/python-hyper/hyperframe
  26. This library contains the HTTP/2 framing code used in the `hyper`_ project. It
  27. provides a pure-Python codebase that is capable of decoding a binary stream
  28. into HTTP/2 frames.
  29. This library is used directly by `hyper`_ and a number of other projects to
  30. provide HTTP/2 frame decoding logic.
  31. Contributing
  32. ============
  33. hyperframe welcomes contributions from anyone! Unlike many other projects we
  34. are happy to accept cosmetic contributions and small contributions, in addition
  35. to large feature requests and changes.
  36. Before you contribute (either by opening an issue or filing a pull request),
  37. please `read the contribution guidelines`_.
  38. .. _read the contribution guidelines: http://hyper.readthedocs.org/en/development/contributing.html
  39. License
  40. =======
  41. hyperframe is made available under the MIT License. For more details, see the
  42. ``LICENSE`` file in the repository.
  43. Authors
  44. =======
  45. hyperframe is maintained by Cory Benfield, with contributions from others. For
  46. more details about the contributors, please see ``CONTRIBUTORS.rst``.
  47. .. _hyper: http://python-hyper.org/
  48. Release History
  49. ===============
  50. dev
  51. ---
  52. **API Changes (Backward-compatible)**
  53. - Invalid PING frame bodies now raise ``InvalidFrameError``, not
  54. ``ValueError``. Note that ``InvalidFrameError`` is a ``ValueError`` subclass.
  55. - Invalid RST_STREAM frame bodies now raise ``InvalidFramError``, not
  56. ``ValueError``. Note that ``InvalidFrameError`` is a ``ValueError`` subclass.
  57. - Canonicalized the names of ``SettingsFrame.SETTINGS_MAX_FRAME_SIZE`` and
  58. ``SettingsFrame.SETTINGS_MAX_HEADER_LIST_SIZE`` to match their peers, by
  59. adding new properties ``SettingsFrame.MAX_FRAME_SIZE`` and
  60. ``SettingsFrame.SETTINGS_MAX_HEADER_LIST_SIZE``. The old names are still
  61. present, but will be deprecated in 4.0.0.
  62. **Bugfixes**
  63. - The change in ``3.1.0`` that ensured that ``InvalidFrameError`` would be
  64. thrown did not affect certain invalid values in ALT_SVC frames. This has been
  65. fixed: ``ValueError`` will no longer be thrown from invalid ALT_SVC bodies.
  66. 3.1.1 (2016-01-18)
  67. ------------------
  68. **Bugfixes**
  69. - Correctly error when receiving Ping frames that have insufficient data.
  70. 3.1.0 (2016-01-13)
  71. ------------------
  72. **API Changes**
  73. - Added new ``InvalidFrameError`` that is thrown instead of ``struct.error``
  74. when parsing a frame.
  75. **Bugfixes**
  76. - Fixed error when trying to serialize frames that use Priority information
  77. with the defaults for that information.
  78. - Fixed errors when displaying the repr of frames with non-printable bodies.
  79. 3.0.1 (2016-01-08)
  80. ------------------
  81. **Bugfixes**
  82. - Fix issue where unpadded DATA, PUSH_PROMISE and HEADERS frames that had empty
  83. bodies would raise ``InvalidPaddingError`` exceptions when parsed.
  84. 3.0.0 (2016-01-08)
  85. ------------------
  86. **Backwards Incompatible API Changes**
  87. - Parsing padded frames that have invalid padding sizes now throws an
  88. ``InvalidPaddingError``.
  89. 2.2.0 (2015-10-15)
  90. ------------------
  91. **API Changes**
  92. - When an unknown frame is encountered, ``parse_frame_header`` now throws a
  93. ``ValueError`` subclass: ``UnknownFrameError``. This subclass contains the
  94. frame type and the length of the frame body.
  95. 2.1.0 (2015-10-06)
  96. ------------------
  97. **API Changes**
  98. - Frames parsed from binary data now carry a ``body_len`` attribute that
  99. matches the frame length (minus the frame header).
  100. 2.0.0 (2015-09-21)
  101. ------------------
  102. **API Changes**
  103. - Attempting to parse unrecognised frames now throws ``ValueError`` instead of
  104. ``KeyError``. Thanks to @Kriechi!
  105. - Flags are now validated for correctness, preventing setting flags that
  106. ``hyperframe`` does not recognise and that would not serialize. Thanks to
  107. @mhils!
  108. - Frame properties can now be initialized in the constructors. Thanks to @mhils
  109. and @Kriechi!
  110. - Frames that cannot be sent on a stream now have their stream ID defaulted
  111. to ``0``. Thanks to @Kriechi!
  112. **Other Changes**
  113. - Frames have a more useful repr. Thanks to @mhils!
  114. 1.1.1 (2015-07-20)
  115. ------------------
  116. - Fix a bug where ``FRAME_MAX_LEN`` was one byte too small.
  117. 1.1.0 (2015-06-28)
  118. ------------------
  119. - Add ``body_len`` property to frames to enable introspection of the actual
  120. frame length. Thanks to @jdecuyper!
  121. 1.0.1 (2015-06-27)
  122. ------------------
  123. - Fix bug where the frame header would have an incorrect length added to it.
  124. 1.0.0 (2015-04-12)
  125. ------------------
  126. - Initial extraction from `hyper`_.
  127. .. _hyper: http://hyper.readthedocs.org/