~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ FAR 1.70 beta 6                                                           ~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[27.11.03]

  - bug: after manually change directory using CWD plugin still use old
         current directory;
  - chg: Ctrl+R now reread files listing and reasks current directory from server;
  - bug: on ftp file or directory rename plugin sends name for rename to using
         incorrect characters table;
  - bug: plugin do not duplicate FF character (russian '') on output commands;
  - add: added new sub-plugin type: Notify, which called for every uploaded
         or downloaded file;
  - bug: Plugin does not allow to execute command line commands from
         hosts panel;
  - bug: Plugin does not unquote strings entered as name of directory;
         Now plugin:
           1. removes trailing spaces
           2. unquote string (only in case FAR version is >= 1.7)
           3. removes trailing spaces
  - bug: Plugin does not recognize quoted urls or urls started from spaces
         entered in host edit dialog;
         Now plugin:
           1. removes trailing spaces
           2. unquote string (only in case FAR version is >= 1.7)
           3. removes trailing spaces
  - bug: Plugin fails to upload files from panel of "TEMP panel" plugin with:
         Error uploading: /incoming/E:/directory/file.ext
  - chg: Menu items in "Utilities menu" are grayed if item operation impossible;
  - chg: date/time information moved to Utilities Menu (accessible by pressing
         Shift+F1 on plugin panel);
  - add: file "BugReport_rus.txt" changed and now contains all info need to
         report usefull bug reports;
  - bug: procedure used to wait server reply to ABOR command corrected.
  - bug: APPE on upload still does not work. Sorry.
  - bug: unix parser does not parse listing with C and B files
         (in /dev directory) because of additional numeric column;
  - chg: download files using full pathname because some servers (GuildFTPd)
         does not supports names relative to current directory;
  - bug: if upload file with zero size plugin yells "can not create" error
         because reads zero bytes from source file :)
  - chg: problem: plugin can not resume on upload on servers which does not
                  support resuming but support APPE;
           solve: plugin is now at first use APPE, if fail and resuming
                  supported it use REST and PUT as usual;
  - chg: Sub plugin developers: !!MK_ID macro changed, so you must use
         new library to compile plugins.
  - chg: plugin hosts panel attributes changed. Now all user highlight groups
         applied to hosts; To set special color on host items use an "*.ftp"
         file mask;
  - bug: unix parser dos not know 'l' file attribute;
  - add: special directory parsing in: "Komut", "PC/TCP";
  - chg: remove \n, \r characters from end of PWD reply;
  - add: added new callback to custom parsers which used to parse PWD reply to
         get name of current directory;
  - add: new parser type by Oleg Hohloff (PC/TCP v 2.11 ftpsrv.exe);
  - bug: plugin does not correctly work with files and directories contains
         symbols like: *, ?, \, /.
  - add: new techinfo N16 to define characters replacement in name of
         downloaded files;
         Plugin uses default values, so you can use this techinfo only
         if you wish to change replacement sets.
  - bug: OS/2 parser parses size of files in right to left order;
   - bug: on download file, if plugin can not send REST command plugin deletes
          currently downloaded part;
          Now checks size of part and delete only if it 0;
   - bug: unix parser does not parse times before 1970 year;
   - add: unix parser can parse names with only space characters
          (Note: there is no way to define how many spaces actually file
                 contains so plugin allways set such files to the " " name);
   - bug: bug in MS parser;
   - add: added parser for VxWorks ftp server;
  - bug: progress dialog draws all month names if several month strings
         is set;
  - bug: SIZE command send before file upload does not translate file
         name from OEM and upload resume fail;
  - chg: small reformat in "known*" files;
  - bug: unix parser fail to parse time in format " X:XX" (not start
         with 0). Sorry.
  - bug: unix parser does not recognize listings with ACL permissions;
  - add: Added techinfo N15 "UseBackups" to disable ftp sites list
         manipulation;
  - bug: techinfo parameter "UseBackups" is set to "disable" by default;
  - bug: unix parser fail with links;
  - bug: netware parser fail in some cases;
  - bug: parser fail if system reports unix compatibility but send
         non unix listing;
  - bug: unix parser fail with file names looks like "02:15:40"
  - add: possible to parse listings contains month names on many languages
         (see changes in "TechInfo*.reg".N3, see TechInfo_rus.reg for
         full sample);
  - bug: VMS parser does not work;
  - bug: plugin draw "no more files" on idle message as error while
         scaning directories;
  - add: russian and english help files translated and corrected;
  - bug: plugin does not enter to hosts folders in russian language;
  - bug: plugin wrongly switch to unix parser on DIR listings;
  - bug: download to UNC shares not work;
  - add: added basic support for Netware file listings;
  - bug: files list saved without host name;
  - add: clear queue;
  - add: add panels selection to queue (menu on queue insertion);
  - bug: plugin removes locel source if upload cancelled;
  - bug: does not parse simple (LIST without parameters) unix listings
         because of no "number of links" column.
  - add: some servers do not return information on (LIST <filename>), so
         plugin does not ask overwrite on this servers.
         Now, if plugin can not find file using LIST command it try to
         use SIZE and, if success, show overwrite dialog (but only size
         valid where...).
         NOTE: Some servers returns total bullshit on size command, so
               you must be ready to receive size for directory and
               reports of bigger sizes for single files...
  - chg: some servers does not understand "LIST <params> <file>", so if
         plugin filed to request using extended command it try to use LIST
         without parameters.
  - bug: screen update bugs;
  - bug: plugin does not change directory if executed full
         qualified url from command line;
         (Now actions with full qualified url the same in all plugin modes)
  - bug: copy|move to devices (NUL) does not work;
  - add: if command line url contains filename plugin sets cursor on panel
         to this file;
  - add: plugin parse url string before show QueueItem dialog in first time,
         so all fields filled correctly;
  - add: plugin can download files lays in directories not allow listing;
  - bug: plugin ask password on anonymous connection if connection lost;
  - bug: unix parser fixed (for all types of listings i have);
  - add: added russian help for all new futures;
  - chg: Changes and corrections processing queue;
  - add: release of FARFtp use ExcDump to rollout assertions;
  - add: assertions stay in release version;
  - add: if plugin called by prefix and urls is not ends with '/'
         plugin try to download given file;
  - add: commands to operate with queue from command line;
  - bug: error creating data connection with some server;
  - chg: plugin does not lock log file any more;
  - bug: sometimes plugin does not truncate log file on init;
  - add: F6 enabled in viewer opened with plugin log file;
  - chg: utilities menu changed (number of menu items decreased);
  - add: possible to change any host parameter without reconnect;
  - add: possible to connect to different server without return to host mode
         (change host, user name, or password in hosts connection parameters)
  - add: possible to switch to hosts mode without reopen plugin using
         utilities menu;
  - bug: possible memory overrun in log functions;
  - bug: some minor bugs fixed with files upload;
  - bug: queue downloading sometimes not work with download files from server
         other than currently connected;
  - bug: queue processing: draw files from wrong ftp directory on return from
         other server;
  - bug: sometimes plugin does not allow to terminate connection until
         timeout finish;
  - add: plugin set CreationTime and AccessTime to same value as ModificationTime
         so sorting by this dates works correctly;
  - bug: plugin does not split unix listings with short date format ("F 10:12");
  - add: plugin can execute special command line commands.
         To see commands description type in FAR command line "ftp:HELP".
  - add: queue processing options dialog instead of Yes\No warning;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ FAR 1.70 beta 5                                                           ~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ The greatest thanks to the all people help me to create plugin as it is.
~ Special thanks to:
~   "Alexander Lishansky", "Wesha the Leopard", "Vadim Yegorov"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[24.02.03]
[+] Plugin allow next futures with links:
      - sets "Symbolic link" attribute to file on panel;
      - if link text ends with '/' character sets "Directory" attribute;
      - if Enter pressed plugin tries to change directory using link text.
        The default file action took place only if change directory failed.

[+] Added files upload/download queue. instead of real copying you can
    add files to queue and later perform all operations at once.

[+] Plugin allow to perform operations with files and directories with
    DOS-specific names like "com1", "lpt2".

[+] Message at tp of screen can contain two lines.
    In the second line plugin draws error description.

[+] Plugin panel modes configurable through LNG files.

[!] Changed listing decode mechanism. Plugin more correctly use character
    tables for decode national characters in files and directories.

[!] Plugin does not allow download files to network shares.

[+] Added special command line command: "DIRFILE". See file "dirlist_rus.txt"
    for details.

[!] Plugin retry operation on local errors such as "not enough space" instead
    show error message.

[!] If you change FAR language after plugin loaded plugin may show incorrect
    text strings.

[+] Added support for multiply connections looks like WindowsCommander used.
    See "Utilities menu" description in plugin help file for details.

[!] Plugin try to reget file even server does not support resuming.

[+] Plugin show directory listing parser errors. See "dirlist_rus.txt" for
    details and descriptions.

[+] Plugin still do not split links, but it link text ends with '/' character
    plugin show it as directory.

[!] now CreateDirectory first create directory by full path, if fail try
    to use relative path.

[!] if connection terminated by timeout during file uploading but file was
    not created, after restore connection plugin failed to upload because
    of SIZE command fail;

[!] creates wrong or unreadable (under Windows 9x) key names in registry
    looking like:
      Software\Far\Plugins\FTP\Hosts\\Item0\

[!] plugin forget last used column mode.

[!] several errors on copy and move operations on hosts panel.

[!] plugin correctly perform ABOR operation (some severs close command
    connection with old plugin because of wrong ABOR sequence).

[!] strips trailing spaces during process command line.

[+] date and time of plugin compilation added to name of plugin in text
    drawn in configuration, plugins and disks menus.

[+] plugin can draw current actions and idle messages into console caption.

[-] inserts default login and password into URL on url creation
    procedure. (Used on copy URL to clipboard and drop pathname to command
    line).

[*] "Ask overwrite" message created as dialog with two buttons rows.

[+] added future to manipulate with multiply connections. See help for
    utilities menu (Shift+F1) for details.

[+] draws number of received bytes on receive directory listing.

[+] plugin does not use FAR procedures to scan directories and draw total size
    of scanned files.

[+] If you set "Show upload dialog" ON you can use new futures:
     - show list of scanned files before downloading;
     - set default overwrite action;
     - set pattern for files to include and to exclude from list to download;

[*] if "CD .." (any way) do not change directory on FTP - plugin closes
    connection and switches to hosts mode.
    If other words: you can close connection by Ctrl+PgUp or selecting ".."
    in ftp root folder.

[+] Set of new techinfos.
      PwdSecurity           - to disable show passwords;
      WaitCounter, WaitIdle - to tune CPU usage;
      RetryTimeout          - to set pause for auto-retry;
      ...
    See "TechInfo.reg" file for details.

[+] plugin quotes url contains quotable characters before place it to
    clipboard or command line.

[+] you can use 'M' and 'K' chars to specify size multiplier in
    IO buffer size.

[+] on return from connection plugin set cursor to host from where you return.

[+] added a warning message if plugin find old format hosts records.
    You must convert

[+] debug plugin version uses ExcDump library to trace errors.
    Please go to:
      http://194.226.246.49/Users/JouriM/html/ExcDump.html
    and get last library if you wish to use debug version and want to
    send full bug-reports to me.

[+] If you set user name but not set password plugin will ask login information
    before connect.

[*] default size of IO buffer set to bigger (800K) value.

[+] Plugin defines two column modes:
      C0 - file rights;
      C1 - name of link (if available);
    Column modes can be customized through LNG files (starting at
    third string) and set by default to:
      9 - "N,S,C0" (Name, Size, Rights) with sizes "0,0,10";
      0 - "N,C1" (Name, Link ) with sizes ("0,0");

[+] Added sub-plugins support.
    Currently used sub-plugins are not the same sort FAR use.
    FTP sub-plugins designed to customize FTP actions by replacing it.
    Plugin currently use two plugins:
      1. DirList - for parse directory listings received from server;
      2. Progress - to draw copy progress dialog;
    All sources for sub-plugins accessible from developer site.

[+] You may set type of server for each host entry to command plugin use
    specified directory listing parser.
    Type of server is set to "auto-detect" by default, but not all types can
    be detected correctly and you can manually select correctly type of server.
    See "dirlist.txt" file for description how to interpret and report parser
    errors.

[+] Ctrl+Z on hosts panel open host editor and set cursor to description field.

[!] wrong sorting on hosts panels by description.
    Now sorts:
      NAME  - by host name
      EXT   - by host path
      DESC  - by description
      OWNER - by user name

[*] techinfo set amount decreased. All removed options moved to configuration
    dialogs.

[+] copy dialog:
      - totally changed (See plugin help for details).
      - may be fully customized (See reg files in LIB directory).

[+] hosts panel:
     - Ctrl+F inserts url into command line.
       Plugin inserts it just as it entered to url field.
     - Ctrl+Enter inserts into command line name of host.

[!] host name not fully visible in hosts mode.
    Now name of host has a maximum priority and will be always fully
    visible.

[!] do not understand urls with user name contains '@' symbol

[+] hosts "ftp" files contains version of creation

[!] screen shake while FAR Find File operation on FTP panel

[!] hosts copy problems:
      - do not copy between two hosts panel;
      - delete exported host after overwrite confirm;

[!] do not show error message if directory creation fail

[+] plugin configuration dialog totally changed

[+] host edit dialog extended with new options.
    Note: do not bother me any more with problems of uploading speed.
          Plugin works fine, tune it by yourself !

[!] plugin uses '\' instead '/' in file paths then delete files after move
    operation so deletion fails

[+] if login fail plugin can re-ask name and password from user.
    See techinfo N7 for disable this feature.

[*] plugin now process F5, F6, Shift+F5, Shift+F6 keys by itself.
    + no more annoying additional dialogs.
    + you enter real FTP paths.
    + you can move files from one plugin panel to another in case
      the both panels on the same FTP site.
      !! Warning: not all FTP server software correctly execute
                  move operation. See "Known.txt" for details.
    + rename of file work correctly.

[!] wrong filenames encoding then autodetect table selected in host options

[!] plugin displays wrong message then files IO errors occurred on local disk
    during up|download operations (f.e. disk full).

[*] plugin processes CD command itself.
    As a result you can correctly change FTP directory using CD command-line
    command to directories looking like MS-DOS paths (f.e. "C:").

[+] "utilities menu" with set of options available when plugin is in connected
    state. See plugin help for details.

[+] plugin remembers last used hosts path and start there next time hosts
    panel shown.

[!] some "specific" old-style hosts files not understood by plugin
    and will be invisible on hosts panel.

[!] plugin exports hosts entries with plain password. Now export crypted.
    !! Warning:
      If you import "*.ftp" files created with old version of plugin you lost
      passwords.
      To solve this potential problem:
         - do not delete old entries before update to new version.
         - Leave it as is.
         - Plugin correctly reads it from registry.

[!] Copy\Move problems:
      - copy files instead rename if plugin opened on both panels
      - file rename fails silently
      - Now plugin correctly move between FTP panels or to path you enter in
        move destination dialog.
    See Known.txt for specifics.

[*] annoying "" line drawn at top left corner of screen removed

[!] shows assertion message then plugin activated on both panels

[+] continue all operations after connection recovered

[!] do not sets cursor to directory name after exit from it

[+] customize all FTP commands plugin use. See FtpCmds.txt for details.

[!] drops connection on upload

[!] do not restore current FTP directory and file then connection restored

[!] shows log window in silent operations such as F3/F4

[+] customizable month names for use with localized FTP server software

[+] customize date-time format for nonstandard FTP servers

[!] optimized upload speed. Plugin upload with the same speed as other
    windows clients with the same options.

[!] forgets selected plugin panel mode chosen for hosts panel

[!] plugin traps instead correct display assertion message


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ FAR 1.70 beta 4                                                           ~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[!] New advanced options configurable through the Windows registry
    (see "TechInfoFTP.txt")

[!] A new feature "resume all", and a corresponding button in the
    overwrite dialog. (The button "resume" is shown only if the server
    supports resuming. The possibility of resuming is now shown in the
    information window.)

[!] Changed the mechanism for editing and using the data in host records.
    The username and password now have separate edit fields in the dialog,
    and the data entered in those fields takes precedence over the username
    and password specified in the host name string.

[!] Changed the mechanism for saving host records to the registry:
     - if a record with a duplicate host name is entered, it no longer
       silently overwrites the old record;
     - there is no limit on the number of records with the same host
       name;
     - all existing records will be automatically converted to the new
       format as soon as the user confirms the change (presses OK in the
       host parameters dialog)
     - changed/improved the mechanism for exporting records
     - exporting a folder with a description from the plugin panel
       to a file causes the description to be lost

[!] The plugin does not work in passive mode all the time.

[!] Any operation can be interrupted by pressing Esc at any time.
    Ctrl-Break can no longer be used to interrupt operations. It is
    also possible to show an interrupt confirmation (see TechInfoFTP.txt
    #4).

[+] Advanced FTP command window. The size of the window is
    configurable (see TechInfoFTP.txt #5, #6)

[+] Possibility of keeping a log of the FTP server commands and
    responses (see TechInfoFTP.txt #8, #9, #16).

[+] Possibility to beep after long operations (see TechInfoFTP.txt#11).

[+] Pressing Ctrl+F on a file in the FTP panel now generates a full
    URL with all information about the file, including the username and
    the password.

[+] It is now possible to specify descriptions also for folders
    in the hosts panel. (There is a new field in the "Make folder" dialog,
    and it is disabled when a directory on the FTP server is created.)
    The description can be added or edited by pressing F4 on the folder
    name.

[+] Two new columns in the hosts list: path and username.

[+] Added display of the current and total bytes copied in the copy dialog
    (can be turned off by the rule TechInfoFTP.txt #18)

[*] All possible text messages have been moved from the plugin code
    to language files.

[*] Possibility to configure the digits separator in the copy dialog
    (see TechInfoFTP.txt#1, #2). If the separator is set to 0, its value
    is taken from the locale settings for the current user.

[*] The password text is never shown in the panel caption, log or the
    command window. It is replaced with the string "*hidden*".

[*] Changed the algorithm for sorting host records: now the records are
    compared by server name, then by user name, then by description, and
    so on (that is, if the server names are equal, the user names are
    compared, and so on).

[*] The entry ".." is now shown in the hosts panel.

[*] Changed the algorithm for displaying numbers when copying: the size
    of the copy dialog is now selected automatically based on the size
    of the largest number, and the maximum value that can be correctly
    displayed is 2^64.

[*] When counting the size of files to be copied, the message "Scanning..."
    is no longer shown.

[*] The status of the active scanning operation is now displayed in the
    lower part of the FTP command window.

[*] The plugin version information now contains the version of the
    plugin in the FileVersion field and the version of FAR in the
    ProductVersion field.

[*] Numbers displaying the current CPS are abbreviated to Mbytes and Kbytes.

[*] Idle mode information can be displayed in the console title or on the
    screen (TechInfoFTP.txt#19)

[*] The plugin panel mode is saved and restored when the plugin is next
    activated.

[*] All settings are saved to the registry when the configuration dialog
    is closed by pressing "Ok"

[*] A correct error message is shown if the socket library initialization
    fails.

[-] Could not connect to some sites (for example, to those that showed
    greetings with Cyrillic characters).

[-] Did not work correctly with the "Advanced Compare" plugin.

[-] If an operation is interrupted by the user, breaks the connection.

[-] Does not continue download or upload operations if the previous
    operation was interrupted by the user.

[-] Entered data was lost if the host name was left empty in the host
    parameters dialog.

[-] Copying to/from the hosts panel handles directories correctly.

[-] The plugin no longer crashes when getting the URL of the current
    element.

[-] Does not delete files from FTP if the server does not support
    relative file paths.

[-] When the connection is cancelled, the plugin does not close altogether,
    but returns to the hosts panel instead.

[-] Directory shortcuts pointing to the hosts panel of the plugin did not
    work.

[-] Copying host records from one instance of the plugin to another instance
    opened on the passive panel did not work.

[-] The plugin crashed when trying to upload a file through a symbolic link.

[-] Does not connect if the file "services" is removed or renamed in the
    Windows system directory.
