Release Notes: This release improves performance of binary input streams, implements skip(), mark(), and reset() for FTPInputStream, catches tryLock() exceptions and ignores them, adds a flag to avoid using tryLock(), and adds resumeNextDownload(long) to FTPClient so partial downloads can be done.
Release Notes: Support was added for using ACCT in FileTransferClient. FTPFile.getPath() no longer includes the filename. A bug was fixed in MLST parser. An empty array of features is returned if FEAT returns no features (but is implemented by the server). The array is tweaked so that only actual features are returned.
Release Notes: A resume bug introduced in 2.2.0 was fixed. Spaces in front of FTP reply codes are trimmed. An OS/400 directory listing parser was added.
Release Notes: The 232 code can now be returned from the USER command. The ability to abort listings when using a callback was added. RollingFileAppender was added. A system property was added for prefixing all edtFTPj loggers (for use with log4j). Tweaks were made to UnixFileParser for some unusual formats. It is now ensured that "." and ".." don't appear in listings that use wildcards.
Release Notes: A callback was added, allowing each entry returned from dirDetails and listDirectory to be processed one by one, without creating a list of all entries. A resume download bug where if resume() is called twice was fixed. The argument to ACCT is masked in logging.
Release Notes: An end of line terminator bug in FTPInputStream was fixed. If Unix EOL terminators were read, they were stripped, which is incorrect. The exists() method was made more reliable for FTP. Java 1.4 and above are now supported. A problem whereby FTP server errors such as 452 are accepted in non-strict reply checking mode was fixed. The ability to intercept and modify the server response to the PASV command was added (so that a different host or port number can be substituted). FTPTransferCancelledException is now thrown when uploads are cancelled. Minor file parsing bugs were fixed.
Release Notes: A fixe for a bug where the control socket wasn't closed if connect succeeded but initial commands failed. Refactored directory listing parsing. A fix for Korean months in UnixFileParser. FTPFile.isFile(). A fix for a bug in FTPInputStream.read(). A fix for a bug in Logger where the edtftp.log.level property was not set correctly. For resuming uploads, SIZE is sent prior to establishing a data socket. Automatic retry for FTP transfers. A fix for a hang when server replies had embedded \r chars.
Release Notes: A bug was fixed where any strings added to the FileNotFoundStrings, DirectoryEmptyStrings, and TransferCompleteStrings instances obtained via getAdvancedFTPSettings().getFileNotFoundMessages() were not applied. In active mode, the code now cycles through available ports if socket creation fails for a transfer. The "Unexpected null reply" error message was changed to a more informative message.
Release Notes: FTPConnectionClosedException was added, which is thrown when a 421 reply is received. The documentation was fixed.
Release Notes: A bug where the last modified date was always null for the Windows parser was fixed. executeCommand() now returns the entire server string, including any FTP reply codes. A documentation error regardin directory listings was fixed.