ftputil 2.5 is now available from http://ftputil.sschwarzer.net/download .
As announced over a year ago , the
xreadlines method for
FTP file objects has been removed, and exceptions can no longer be
accessed via the
ftputil namespace. Only use
The distribution contains a small tool
scan a directory tree for the deprecated uses. Invoke the program
--help option to see a description.
Upload and download methods now accept a
callback argument to do
things during a transfer. Modification time comparisons in
download_if_newer now consider the
precision of the remote file which may lead to some unnecessary
transfers. These can be avoided by waiting at least a minute between
download_if_newer) for the same
file. See the documentation for details .
FTPHost class got a
keep_alive method. It should be
carefully though, not routinely. Please read the description  in
Several bugs were fixed [4-7].
The source code was restructured. The tests are now in a
subdirectory and are no longer part of the release archive. You can
still get them via the source repository. Licensing matters have
been moved to a common
ftputil is a high-level FTP client library for the Python programming language. ftputil implements a virtual file system for accessing FTP servers, that is, it can generate file-like objects for remote files. The library supports many functions similar to those in the os, os.path and shutil modules. ftputil has convenience functions for conditional uploads and downloads, and handles FTP clients and servers in different timezones.
Read the documentation at http://ftputil.sschwarzer.net/documentation .
ftputil is Open Source software, released under the revised BSD license (see http://www.opensource.org/licenses/bsd-license.php ).
 http://codespeak.net/pipermail/ftputil/2009q1/000256.html  http://ftputil.sschwarzer.net/trac/wiki/Documentation#uploading-and-download...  http://ftputil.sschwarzer.net/trac/wiki/Documentation#keep-alive  http://ftputil.sschwarzer.net/trac/ticket/44  http://ftputil.sschwarzer.net/trac/ticket/46  http://ftputil.sschwarzer.net/trac/ticket/47  http://ftputil.sschwarzer.net/trac/ticket/51