----------------
- Some deep rewrite of the client. Requests and Connections are now
maintened in their own instances, so we don't rely on client instance
to close or release the connection Also we don't pass local variable
to handle a request. At the end each requests are more isolated and we are
fully threadsafe.
- Improve error report.
- Handle case where the connection is closed but the OS still accept
sending. From the man: "When the message does not fit into the send
buffer of the socket, send() normally blocks, unless th socket has
been placed in nonblocking I/O mode.""" . Spotted by loftus on irc.
Thanks.
Breaking changes:
+++++++++++++++++
- Rewrite filters handling. We now pass a request instance to the
on_request filters. If a request filter return a response, we stop to
perform here. response filters accept now the response and request
instances as arguments. There is no more on_connect filters (it was a
bad idea)
- Proxy support. Proxies are now supported by passing the argument
"use_proxy=True" to client, request and resources objects.