User-visible changes in fftp 0.8:

None.  Just bug fixes for some platforms, especially Linux/glibc 2.x.


User-visible changes in fftp 0.7:

* You can now build fftp with socks4 support.  When the client is built
  this way, you can select the use of socks proxy connections with the
  --socks (-s) option, or the `socks' interactive command.

  Note that you should not change the value of this toggle while actually
  connected; that will confuse the remote server.


User-visible changes in fftp 0.6:

* This package has officially been renamed to `fftp' to distinguish it from
  other ftp client distributions, though the executable built is still called
  `ftp'.

* By default, the program attempts to use passive connections for file
  transfer.  If the server refuses, the client reverts to using PORT commands.
  This change is meant to be useful behavior for the client mainly when run
  behind firewalls.

  The interactive command `passive only' will cause the client to refuse to
  use PORT commands if passive transfer attempt fails.
  The command-line option `-P' (or `--passive-only') enables this behavior.

  The short option `-p' (`--no-passive') disables passive transfers entirely.
  This is a change from the previous version of fftp.

* Some user options have changed for consistency with the GNU inetutils or
  because they just seemed cleaner:

    The long option `--no-interactive' is now `--no-prompt'.
    The long option `--no-autologin'   is now `--no-login'.
    The short option `-E' is now `-e'.


User-visible changes in fftp 0.5:

* When you retrieve files using `get' or `mget', the modification time of
  the local file is set based on the modification time of the remote file
  (if the remote server supports the MODTIME command).  The new command
  `preserve' can be used to disable this behavior, but it is enabled by
  default.

* Commands which toggle user options now take an optional argument `on' or
  `off', which forces that option on or off.  With no argument, the command
  toggles the current state of the option.

  The commands currently affected include: `bell', `cr', `debug', `edit',
  `glob', `hash', `passive', `preserve', `prompt', `runique', `sendport',
  `sunique', `tick', `trace', and `verbose'.

* Context-sensitive completion and history recall is now available for
  most commands even if you enter them as secondary inputs.
  For example, you can type "get", press return, and when it prompts for
  "(remote-file)" you can press TAB at any time to complete the remote file
  name.

  Completion is now available on macro names.

  You can now complete remote file names that are not in the current
  working directory, if the remote system is a unix system.  (It would not
  be difficult to add this support for other types of file
  systems---e.g. ITS, tenex, and lispms---but there are not many of those
  systems remaining on which support could be tested.)

* If you run ftp on a line without a tty, command prompts and output from
  commands are displayed immmediately (i.e. buffering is disabled).
  However, `verbose' is still off by default.

* The `status' command displays whether passive transfers are enabled.

* New command aliases `..' (cdup), `ftp' (open), `msend' (mput).

A more detailed list of changes is in the file ChangeLog.


New in ftp 0.4:

This is the first public beta test.
Much of the original source code came from NetBSD.
On top of that, the following changes have been made:

* Package now configures and builds using Autoconf-generated `configure'.

* VPATH separate-compilation-directory build support.
  This requires GNU Make or a similar make which supports VPATH.

* Added GNU-style long options.

* GNU `readline' command-line editing support and context-sensitive
  completion available.

* New command `passive' enables passive transfer support.

* New command `iprompt' lets you set the interactive prompt ("ftp>" or
  "Ftp>" by default) globally or on a per-session basis.
  Eventually I hope this be more programmable; see the TODO file for details.

* New command `lpwd' prints the local current working directory.

* New command `exit', a synonym for `quit'.

* The source code has all been re-indented using `indent -gnu'.
  I know some people will object to this, but I find 1TBS impossible to read.

Detailed changes can be found in the file ChangeLog.
