Commit 7f75284a authored by Serhiy Storchaka's avatar Serhiy Storchaka

Fix empty strings to empty bytes objects.

parent ef29525b
...@@ -56,8 +56,8 @@ connection requests. ...@@ -56,8 +56,8 @@ connection requests.
have only one method, :meth:`more`, which should return data to be have only one method, :meth:`more`, which should return data to be
transmitted on the channel. transmitted on the channel.
The producer indicates exhaustion (*i.e.* that it contains no more data) by The producer indicates exhaustion (*i.e.* that it contains no more data) by
having its :meth:`more` method return the empty string. At this point the having its :meth:`more` method return the empty bytes object. At this point
:class:`async_chat` object removes the producer from the fifo and starts the :class:`async_chat` object removes the producer from the fifo and starts
using the next producer, if any. When the producer fifo is empty the using the next producer, if any. When the producer fifo is empty the
:meth:`handle_write` method does nothing. You use the channel object's :meth:`handle_write` method does nothing. You use the channel object's
:meth:`set_terminator` method to describe how to recognize the end of, or :meth:`set_terminator` method to describe how to recognize the end of, or
...@@ -221,7 +221,7 @@ any extraneous data sent by the web client are ignored. :: ...@@ -221,7 +221,7 @@ any extraneous data sent by the web client are ignored. ::
def found_terminator(self): def found_terminator(self):
if self.reading_headers: if self.reading_headers:
self.reading_headers = False self.reading_headers = False
self.parse_headers("".join(self.ibuffer)) self.parse_headers(b"".join(self.ibuffer))
self.ibuffer = [] self.ibuffer = []
if self.op.upper() == b"POST": if self.op.upper() == b"POST":
clen = self.headers.getheader("content-length") clen = self.headers.getheader("content-length")
......
...@@ -208,7 +208,8 @@ any that have been added to the map during asynchronous service) is closed. ...@@ -208,7 +208,8 @@ any that have been added to the map during asynchronous service) is closed.
.. method:: recv(buffer_size) .. method:: recv(buffer_size)
Read at most *buffer_size* bytes from the socket's remote end-point. An Read at most *buffer_size* bytes from the socket's remote end-point. An
empty string implies that the channel has been closed from the other end. empty bytes object implies that the channel has been closed from the
other end.
.. method:: listen(backlog) .. method:: listen(backlog)
......
...@@ -113,15 +113,15 @@ instance will fail with a :exc:`EOFError` exception. ...@@ -113,15 +113,15 @@ instance will fail with a :exc:`EOFError` exception.
Read at most *size* bytes from the chunk (less if the read hits the end of Read at most *size* bytes from the chunk (less if the read hits the end of
the chunk before obtaining *size* bytes). If the *size* argument is the chunk before obtaining *size* bytes). If the *size* argument is
negative or omitted, read all data until the end of the chunk. The bytes negative or omitted, read all data until the end of the chunk. An empty
are returned as a string object. An empty string is returned when the end bytes object is returned when the end of the chunk is encountered
of the chunk is encountered immediately. immediately.
.. method:: skip() .. method:: skip()
Skip to the end of the chunk. All further calls to :meth:`read` for the Skip to the end of the chunk. All further calls to :meth:`read` for the
chunk will return ``''``. If you are not interested in the contents of chunk will return ``b''``. If you are not interested in the contents of
the chunk, this method should be called so that the file points to the the chunk, this method should be called so that the file points to the
start of the next chunk. start of the next chunk.
......
...@@ -457,7 +457,7 @@ Functions ...@@ -457,7 +457,7 @@ Functions
is either ``"xml"``, ``"html"`` or ``"text"`` (default is ``"xml"``). is either ``"xml"``, ``"html"`` or ``"text"`` (default is ``"xml"``).
Returns a list of (optionally) encoded strings containing the XML data. Returns a list of (optionally) encoded strings containing the XML data.
It does not guarantee any specific sequence, except that It does not guarantee any specific sequence, except that
``"".join(tostringlist(element)) == tostring(element)``. ``b"".join(tostringlist(element)) == tostring(element)``.
.. versionadded:: 3.2 .. versionadded:: 3.2
......
...@@ -197,7 +197,7 @@ Decompression objects support the following methods and attributes: ...@@ -197,7 +197,7 @@ Decompression objects support the following methods and attributes:
.. attribute:: Decompress.unused_data .. attribute:: Decompress.unused_data
A bytes object which contains any bytes past the end of the compressed data. That is, A bytes object which contains any bytes past the end of the compressed data. That is,
this remains ``""`` until the last byte that contains compression data is this remains ``b""`` until the last byte that contains compression data is
available. If the whole bytestring turned out to contain compressed data, this is available. If the whole bytestring turned out to contain compressed data, this is
``b""``, an empty bytes object. ``b""``, an empty bytes object.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment