'recvline(keepends = True) -> str
Receive a single line from the tube.
A "line" is any sequence of bytes terminated by the byte sequence
set in :attr:`newline`, which defaults to ``\'\n\'``.
If the request is not satisfied before ``timeout`` seconds pass,
all data is buffered and an empty string (``\'\'``) is returned.
Arguments:
keepends(bool): Keep the line ending (:const:`True`).
timeout(int): Timeout
Return:
All bytes received over the tube until the first
newline ``\'\n\'`` is received.  Optionally retains
the ending.
Examples:
>>> t = tube()
>>> t.recv_raw = lambda n: \'Foo\nBar\r\nBaz\n\'
>>> t.recvline()
\'Foo\n\'
>>> t.recvline()
\'Bar\r\n\'
>>> t.recvline(keepends = False)
\'Baz\'
>>> t.newline = \'\r\n\'
>>> t.recvline(keepends = False)
\'Foo\nBar\''

def recvline(self, keepends=True, timeout=default):

    return self.recvuntil(self.newline, drop=(not keepends), timeout=timeout)
