Change Log for Robo-FTP v3.9.0 (Released: 2013-03-20)
Enhancements
- SETEVENT command can be used to signal a named win32 event
- SETREPLACE command can replace substrings in one string with another string
- DIFF and FTPDIFF now support the /timeout= option to wait for new or changed files
- GETDIFF and FTPGETDIFF now support the /commitlast option to commit the previous difference
- Added support for APACHE web server default directory listings
- Added new /cipher option for the PGPENCRYPT command
- Added support for *.txt|*.zip style wildcard specifications to select multiple match patterns
- Added %programdatadir system variable to provide path to writable data directory
- FTPLOGON returns meaningful error messages on failure
- SENDFILE or RCVFILE with /subdirs accepts a directory name as the argument
- MOVE now supports moving directories
- COPY now supports the /copydirs option
- MAKEDIR now creates paths recursively
- WORKINGDIR now supports the /create option to make it try to create the directory if it doesn't exist
- Added "Test Connection" button in the Configurator Managed Site dialog
- DIFF and FTPDIFF now support the /append option to add new diffs found to the current list of differences
- DIFF and FTPDIFF improved performance with large file sets
- Added password protection for settings files; EXPORT and IMPORT now support the /pw option
- FTPLIST returns meaningful error messages on failure
- Add LOWER and UPPER commands
- UNZIP /flat will unzip the contents of a zip file ingoring any path information stored within.
- Debug messages removed from Trace Log
- Dashboard status icons now have different shapes for increased legibility
- Debug logging now supports extra debug information on request
- Added new /cc and /bcc options to SENDMAIL command
- DBUSE now supports /sqlce as a db type as well as /type=[sqlite|sqlce|odbc] sqlite is default
- Licensing actions and errors are now written to the Debug Log
- Logging line timestamps enhanced with timezone offset
Bug Fixes
- Diff database could be altered by failed DIFF or FTPDIFF command
- Memory leak on error in several commands
- WORKINGDIR could report success on permission denied
- Setting remote file time was not done correctly
- %lasterrormsg could be set to an incorrect value after an FTPLOGON failure
- Progress dialogs could get out of sync with robo-ftp commands
- SSL ceritificate can't be deleted after viewing
- Deleting SSL certificates did not ask for confirmation
- HTTP MOVE could fail on some servers
- Unhandled exception when admin user can't signal Debug Logging
- Upgrade to new release of same major version no longer asks if you want a custom or complete install. It just upgrades whatever is installed
- Configurator could configure current user when you intended to configure system wide settings
- Importing an SSH key with the wrong passphrase just silently failed. No error was generated
- Settings importer crash at end of import when importing as administrator
- Scheduler creates full path to My Documents folder in case it doesn't already exist
- SET command did not validate input variable names correctly
- Incorrect file timestamps on HTTP connection re: daylight saving time conversion
- LISTDIR command returns before output file is ready
- SENDFILE /localdate stamps remote file without GST offset
- Robo-FTP could hang in FTPLOGON if the site hostname did not resolve
- FTPMAKDIR didn't work with paths ending in / on HTTP(S) Connections
- DBGETRESULTS returning last rows value for column with NULL value on this row
- LOOPIF could alter %lasterror
- GETSITEFILE could erroneously report file not found on HTTP with wildcards
- HTTP Internal file size checks got incorrect file size. Affected transactions and /iflarger
- Settings import could result in misreporting an eval license as an activated license
- Configurator crashes when user enters invalid max transfer rate
- Expired eval extension causes license activation problem
- LOOPIF was resetting LOOPCOUNT when no error found
- CRON command locked the crontab.txt
- CRON command broken by % signs in %nextcmd
- CRON could skip runs between midnight and 1 AM on the day after a DST spring forward
- INSERT statement destroys ODBC SQL result set
- Removing *EVAL* extension reported invalid serial number
- /timeout option could never timeout under rare circumstances