@@ -41,7 +41,7 @@ Backwards-incompatible changes
4141 websockets 13.1 is the last version supporting Python 3.8.
4242
4343.. admonition :: The new :mod:`asyncio` implementation is now the default.
44- :class: caution
44+ :class: danger
4545
4646 The following aliases in the ``websockets `` package were switched to the new
4747 :mod: `asyncio ` implementation::
@@ -64,8 +64,8 @@ Backwards-incompatible changes
6464 The :doc: `upgrade guide <../howto/upgrade >` provides complete instructions
6565 to migrate your application.
6666
67- Aliases for deprecated API were removed from ``__all__ ``. As a consequence,
68- they cannot be imported e.g. with ``from websockets import * `` anymore.
67+ Aliases for deprecated API were removed from ``websockets. __all__ ``, meaning
68+ that they cannot be imported with ``from websockets import * `` anymore.
6969
7070.. admonition :: Several API raise :exc:`ValueError` instead of :exc:`TypeError`
7171 on invalid arguments.
@@ -83,31 +83,25 @@ Backwards-incompatible changes
8383 :class: note
8484
8585 In addition to :class: `bytes `, it may be a :class: `bytearray ` or a
86- :class: `memoryview `.
87-
88- If you wrote an :class: `extension <extensions.Extension> ` that relies on
89- methods not provided by these new types, you may need to update your code.
86+ :class: `memoryview `. If you wrote an :class: `~extensions.Extension ` that
87+ relies on methods not provided by these types, you must update your code.
9088
9189.. admonition :: The signature of :exc:`~exceptions.PayloadTooBig` changed.
9290 :class: note
9391
9492 If you wrote an extension that raises :exc: `~exceptions.PayloadTooBig ` in
95- :meth: `~extensions.Extension.decode `, for example, you must replace::
96-
97- PayloadTooBig(f"over size limit ({size} > {max_size} bytes)")
98-
99- with::
100-
101- PayloadTooBig(size, max_size)
93+ :meth: `~extensions.Extension.decode `, for example, you must replace
94+ ``PayloadTooBig(f"over size limit ({size} > {max_size} bytes)") `` with
95+ ``PayloadTooBig(size, max_size) ``.
10296
10397New features
10498............
10599
106100* Added an option to receive text frames as :class: `bytes `, without decoding,
107101 in the :mod: `threading ` implementation; also binary frames as :class: `str `.
108102
109- * Added an option to send :class: `bytes ` as a text frame in the :mod: `asyncio `
110- and :mod: `threading ` implementations, as well as :class: `str ` a binary frame.
103+ * Added an option to send :class: `bytes ` in a text frame in the :mod: `asyncio `
104+ and :mod: `threading ` implementations; also :class: `str ` in a binary frame.
111105
112106Improvements
113107............
@@ -118,6 +112,21 @@ Improvements
118112
119113* Errors when a fragmented message is too large are clearer.
120114
115+ * Log messages at the :data: `~logging.WARNING ` and :data: `~logging.INFO ` levels
116+ no longer include stack traces.
117+
118+ Bug fixes
119+ .........
120+
121+ * Clients no longer crash when the server rejects the opening handshake and the
122+ HTTP response doesn't Include a ``Content-Length `` header.
123+
124+ * Returning an HTTP response in ``process_request `` or ``process_response ``
125+ doesn't generate a log message at the :data: `~logging.ERROR ` level anymore.
126+
127+ * Connections are closed with code 1007 (invalid data) when receiving invalid
128+ UTF-8 in a text frame.
129+
121130.. _13.1 :
122131
12313213.1
0 commit comments