Charles-François Natali added the comment: 1) I really don't like the use_fallback argument: as a user, I don't care if it's using sendfile/splice/whatever WIndows uses. I view this as a channel transfer (like Java's http://docs.oracle.com/javase/7/docs/api/java/nio/channels/FileChannel.html#transferFrom(java.nio.channels.ReadableByteChannel, long, long)), which moves bytes around from one FD to another. If the user want precise control, he can just go ahead and call the syscall itself. Apart from complicating the prototype, what do this bring?
2) Just returning the number of bytes sent is fine 3) I really don't like the blocksize argument. Just use a really large value internally to minimize the number of syscalls, that's all that matters. I've *never* seen code which explicitly uses a blocksize: in 99% of cases, it just uses stat to find out the file size, and call sendfile with it. Trying to be consistent with ftplib is IMO a bad idea, since the API is just completely broken (I mean, just sending/retrieving a file is complex). A useful parameter instead would be to support sending only part of the file, so adding a count argument. You can have a look at http://docs.oracle.com/javase/7/docs/api/java/nio/channels/FileChannel.html#transferFrom(java.nio.channels.ReadableByteChannel, long, long) for an example many people bash Java, but they've designed some great APIs :-) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17552> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com