Differences

This shows you the differences between the selected revisions of the page.

2017-01-13 2017-01-13
all changes since 5.x (martin) highlighting problematic changes (martin)
Line 4: Line 4:
With some changes, possible remedies are included. With some changes, possible remedies are included.
 +
 +The changes that most commonly causes issues are **highlighted**.
===== General ===== ===== General =====
Line 12: Line 14:
  * 5.8.3: Fallback between [[ui_login_ssh#protocol_options|SSH versions]] is not supported anymore. This should not have any impact, as SSH-1 is not used anymore.   * 5.8.3: Fallback between [[ui_login_ssh#protocol_options|SSH versions]] is not supported anymore. This should not have any impact, as SSH-1 is not used anymore.
  * 5.8.3: Port number is considered for site-specific caches and bookmarks. You will lose bookmarks for sites that use a non-standard port number. [[bug>1411]]   * 5.8.3: Port number is considered for site-specific caches and bookmarks. You will lose bookmarks for sites that use a non-standard port number. [[bug>1411]]
-  * 5.8: Using UTF-8 for strings (such as password) with SSH protocol. If your %%SSH%% password contains non-ASCII characters, and you were able to connect with previous versions of WinSCP, it means that your server does not comply with SSH specification (as older versions of WinSCP did not). You will not be able to login with the new version of WinSCP. Change your password to %%ASCII%% characters only as a workaround. [[bug>1014]]+  * **5.8:** Using UTF-8 for strings (such as password) with SSH protocol. If your %%SSH%% password contains non-ASCII characters, and you were able to connect with previous versions of WinSCP, it means that your server does not comply with SSH specification (as older versions of WinSCP did not). You will not be able to login with the new version of WinSCP. Change your password to %%ASCII%% characters only as a workaround. [[bug>1014]]
  * 5.6.4: Considering directories to have zero size, when matching [[file_mask#size_time|file masks]] or sorting by size, even when the server reports size for the directory, to achieve consistent behavior.   * 5.6.4: Considering directories to have zero size, when matching [[file_mask#size_time|file masks]] or sorting by size, even when the server reports size for the directory, to achieve consistent behavior.
-  * 5.2.5: Using UTF-8 for strings (such as file names) with SFTP protocol by default even for version 3 and lower. If your server does not use %%UTF-8%%, you can revert to the previous behavior by setting the //[[ui_login_environment#utf|UTF-8 encoding for filenames]]// to //Off//. [[bug>1072]]+  * **5.2.5:** Using UTF-8 for strings (such as file names) with SFTP protocol by default even for version 3 and lower. If your server does not use %%UTF-8%%, you can revert to the previous behavior by setting the //[[ui_login_environment#utf|UTF-8 encoding for filenames]]// to //Off//. [[bug>1072]]
  * 5.0.7: Blowfish is preferred [[ui_login_ssh|SSH encryption cipher]]. [[bug>1]]   * 5.0.7: Blowfish is preferred [[ui_login_ssh|SSH encryption cipher]]. [[bug>1]]
  * 5.0.6: File mask that does not end with slash matches only files, not directories anymore.   * 5.0.6: File mask that does not end with slash matches only files, not directories anymore.
Line 42: Line 44:
  * 5.8.3: A complete remote error message is stored into a single instance of ''SessionRemoteException'', instead of separating error details into an inner exception. This should have any impact only, if your code checks for specific error message in inner exception. This is not recommended though.   * 5.8.3: A complete remote error message is stored into a single instance of ''SessionRemoteException'', instead of separating error details into an inner exception. This should have any impact only, if your code checks for specific error message in inner exception. This is not recommended though.
  * 5.8.1: Deprecating ''Session.IniFilePath'' in favor of ''[[library_session_addrawconfiguration|Session.AddRawConfiguration]]''. You can [[ui_generateurl#code|generate a code template]] with the ''AddRawConfiguration'' calls.   * 5.8.1: Deprecating ''Session.IniFilePath'' in favor of ''[[library_session_addrawconfiguration|Session.AddRawConfiguration]]''. You can [[ui_generateurl#code|generate a code template]] with the ''AddRawConfiguration'' calls.
-  * 5.8: [[scripting#using_scripting|Script file]] has to be in UTF-8 encoding. This matter only if you use non-ASCII characters in filenames and/or credentials.+  * **5.8:** [[scripting#using_scripting|Script file]] has to be in UTF-8 encoding. This matter only if you use non-ASCII characters in filenames and/or credentials.
  * 5.8. The ''[[library_remotefileinfo#name|RemoteFileInfo.Name]]'' now contains a name only, even for a ''RemoteFileInfo'' instance returned by the ''[[library_session_getfileinfo|Session.GetFileInfo]]''.   * 5.8. The ''[[library_remotefileinfo#name|RemoteFileInfo.Name]]'' now contains a name only, even for a ''RemoteFileInfo'' instance returned by the ''[[library_session_getfileinfo|Session.GetFileInfo]]''.
  * 5.8: Deprecating ''Session.DefaultConfiguration in'' favor of ''[[library_session_addrawconfiguration|Session.AddRawConfiguration]]''. You can [[ui_generateurl#code|generate a code template]] with the ''AddRawConfiguration'' calls.   * 5.8: Deprecating ''Session.DefaultConfiguration in'' favor of ''[[library_session_addrawconfiguration|Session.AddRawConfiguration]]''. You can [[ui_generateurl#code|generate a code template]] with the ''AddRawConfiguration'' calls.
-  * 5.8: ''SessionOptions.SshPrivateKeyPassphrase'' renamed to ''[[library_sessionoptions#privatekeypassphrase|SessionOptions.PrivateKeyPassphrase]]''.+  * **5.8:** ''SessionOptions.SshPrivateKeyPassphrase'' renamed to ''[[library_sessionoptions#privatekeypassphrase|SessionOptions.PrivateKeyPassphrase]]''.
  * 5.6.5: ''[[library_session_calculatefilechecksum|Session.CalculateFileChecksum]]'' method returns a byte array instead of a string to match .NET framework cryptography functions.   * 5.6.5: ''[[library_session_calculatefilechecksum|Session.CalculateFileChecksum]]'' method returns a byte array instead of a string to match .NET framework cryptography functions.
  * 5.6.3: ''[[scriptcommand_lls|lls]]'' by default only displays a notification that no matching file is found, instead of failing.   * 5.6.3: ''[[scriptcommand_lls|lls]]'' by default only displays a notification that no matching file is found, instead of failing.
-  * 5.6.2: A .NET assembly method ''[[library_session_executecommand|Session.ExecuteCommand]]'' does not throw an exception on error. Instead a ''CommandExecutionResult'' now descends from a ''OperationResultBase''. Use the ''[[library_operationresultbase#check|OperationResultBase.Check]]'' method to reproduce the previous behavior. +  * **5.6.2:** A .NET assembly method ''[[library_session_executecommand|Session.ExecuteCommand]]'' does not throw an exception on error. Instead a ''CommandExecutionResult'' now descends from a ''OperationResultBase''. Use the ''[[library_operationresultbase#check|OperationResultBase.Check]]'' method to reproduce the previous behavior. 
-  * 5.6: When executing script file or script commands provided on command-line, default [[scriptcommand_option#batch|batch mode]] is ''abort'' and [[scriptcommand_option#confirm|confirmations]] are turned off. Use ''option batch off'' and ''option confirm on'' at the beginning of your script to revert to the previous defaults. Though the new defaults were always recommended values to be used in the scripts.+  * **5.6:** When executing script file or script commands provided on command-line, default [[scriptcommand_option#batch|batch mode]] is ''abort'' and [[scriptcommand_option#confirm|confirmations]] are turned off. Use ''option batch off'' and ''option confirm on'' at the beginning of your script to revert to the previous defaults. Though the new defaults were always recommended values to be used in the scripts.
  * 5.6: Enabling batch mode in scripting automatically limits reconnect time to 120 seconds, if it is not limited yet. To revert to the previous behavior, in scripting use ''option reconnecttime 0'', in .NET assembly use ''Session.ReconnectTime = TimeSpan.MaxValue''. [[bug>1173]]   * 5.6: Enabling batch mode in scripting automatically limits reconnect time to 120 seconds, if it is not limited yet. To revert to the previous behavior, in scripting use ''option reconnecttime 0'', in .NET assembly use ''Session.ReconnectTime = TimeSpan.MaxValue''. [[bug>1173]]
  * 5.6: When host key does not match fingerprint specified on command line or in script, user is not prompted to verify the host key and connection is abandoned with meaningful error message. [[bug>1186]]   * 5.6: When host key does not match fingerprint specified on command line or in script, user is not prompted to verify the host key and connection is abandoned with meaningful error message. [[bug>1186]]
  * 5.2.5: Symbol '';'' has special meaning in [[session_url|session URL]] and has to be [[session_url#special|URL-encoded]] to ''%3B'', when used as a literal.   * 5.2.5: Symbol '';'' has special meaning in [[session_url|session URL]] and has to be [[session_url#special|URL-encoded]] to ''%3B'', when used as a literal.
  * 5.2.5: UTF-8 encoded characters in [[session_url|session URL]] are supported. If you were using non-ASCII URL-encoded characters in the session URL, you need to [[session_url#special|re-code them to UTF-8]]. [[bug>1062]]   * 5.2.5: UTF-8 encoded characters in [[session_url|session URL]] are supported. If you were using non-ASCII URL-encoded characters in the session URL, you need to [[session_url#special|re-code them to UTF-8]]. [[bug>1062]]
-  * 5.2.3: In .NET assembly, ''[[library_sessionoptions|SessionOptions]]'' class properties ''SslHostCertificateFingerprint'' and ''GiveUpSecurityAndAcceptAnySslHostCertificate'' renamed to ''[[library_sessionoptions#tlshostcertificatefingerprint|TlsHostCertificateFingerprint]]'' and ''[[library_sessionoptions#giveupsecurityandacceptanytlshostcertificate|GiveUpSecurityAndAcceptAnyTlsHostCertificate]]'', respectively.  +  * **5.2.3:** In .NET assembly, ''[[library_sessionoptions|SessionOptions]]'' class properties ''SslHostCertificateFingerprint'' and ''GiveUpSecurityAndAcceptAnySslHostCertificate'' renamed to ''[[library_sessionoptions#tlshostcertificatefingerprint|TlsHostCertificateFingerprint]]'' and ''[[library_sessionoptions#giveupsecurityandacceptanytlshostcertificate|GiveUpSecurityAndAcceptAnyTlsHostCertificate]]'', respectively.  
-  * 5.0.9: In .NET assembly ''[[library_sessionoptions|SessionOptions]]'' class property ''SshHostKey'' renamed to ''[[library_sessionoptions#sshhostkeyfingerprint|SshHostKeyFingerprint]]'', ''SshPrivateKey'' to ''[[library_sessionoptions#sshprivatekeypath|SshPrivateKeyPath]]'' and ''SslCertificate'' to ''SslHostCertificateFingerprint'' (and later to ''[[library_sessionoptions#tlshostcertificatefingerprint|TlsHostCertificateFingerprint]]'').+  * **5.0.9:** In .NET assembly ''[[library_sessionoptions|SessionOptions]]'' class property ''SshHostKey'' renamed to ''[[library_sessionoptions#sshhostkeyfingerprint|SshHostKeyFingerprint]]'', ''SshPrivateKey'' to ''[[library_sessionoptions#sshprivatekeypath|SshPrivateKeyPath]]'' and ''SslCertificate'' to ''SslHostCertificateFingerprint'' (and later to ''[[library_sessionoptions#tlshostcertificatefingerprint|TlsHostCertificateFingerprint]]'').
  * 5.0.8: Scripting command ''[[scriptcommand_rm|rm]]'' and .NET assembly ''[[library_session_removefiles|Session.RemoveFiles]]'' method can remove directories as well. [[bug>887]]   * 5.0.8: Scripting command ''[[scriptcommand_rm|rm]]'' and .NET assembly ''[[library_session_removefiles|Session.RemoveFiles]]'' method can remove directories as well. [[bug>887]]
  * 5.0.6: Script options ''exclude'' and ''include'' deprecated in favor of ''-filemask=<mask>'' switch of ''get'', ''put'', ''synchronize'' and ''keepuptodate'' commands.   * 5.0.6: Script options ''exclude'' and ''include'' deprecated in favor of ''-filemask=<mask>'' switch of ''get'', ''put'', ''synchronize'' and ''keepuptodate'' commands.

Last modified: by martin