id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,branch,branch_author,launchpad_bug
4017,Add an IBodyProducer which produces bytes from a file-like object,exarkun,exarkun,"#886 introduces an HTTP client API along with a new interface, `IBodyProducer`, for providing request bodies in a streaming manner.  This interface isn't quite the same as `IProducer`, so existing producers don't quite work with it.

For convenience, we should provide an implementation of this interface based on file-like objects (along the lines of `twisted.protocols.basic.FileSender`).  This will be useful both for the obvious reason (sending files as request bodies), as well as as an example of how to implement these, and will also be usable with `StringIO` instances to send data constructed in memory (eg simple form posts).
",enhancement,closed,normal,,web,fixed,httpclient IBodyProducer,,branches/filebodyproducer-4017-2,exarkun,
