Recent Version History

This is a list of changes for each release of WinSCP. See also project history.

5.14 (not released yet)

  • Local UNC paths can be browsed. 133
  • Toolbar buttons can be hidden. 582
  • Found files can be edited from the Find dialog. 1634
  • Function “Keep remote directory up to date” can be started in a new window
  • Configurable keyboard shortcuts for extensions. 1613
  • Distinguishing multiple sessions opened to the same site by current path. 1635
  • Do not show an error when remembered last used directories do not exist anymore. 1616
  • Optimized loading time in scripting/.NET assembly mode. 1621
  • Allow authentication with empty passwords in scripting. 1638
  • Preventing stall on startup when updating jumplist takes too long. 1625
  • Bug fix: Hangs when clicking directory tree while inline editing file name. 1618
  • Bug fix: Failure when .NET assembly starts reading an XML log file in a short moment when it’s empty yet. 1619
  • Bug fix: Ad-hoc sessions opened with workspace duplicated into a new window had a wrong name.
  • Bug fix: When editing multiple files, opening ends on the first file that is already opened.


5.13.2 (not released yet)

  • Translations completed: Croatian; and updated: Dutch, French and German.
  • Bug fix: ssh:// URL is handled once for every opened instance of WinSCP too much. 1627
  • Bug fix: Icons for local files do not show on some systems. 1628
  • Bug fix: Failure when binary file is attempted to be opened in an internal editor on system with multibyte legacy encoding. 1629
  • Bug fix: Login dialog opens slowly, when there is a lot of stored sites with a color. 1630
  • Bug fix: Extensions were not loaded when configuration is empty.
  • Bug fix: Starts slowly on some systems. 1633
  • Bug fix: Failure when uploading a file larger than 2GB using S3 protocol. 1636


  • Translations completed: Kabyle, Traditional Chinese and Ukrainian; and updated: Bahasa Indonesia.
  • TLS/SSL core upgraded to OpenSSL 1.0.2o.
  • Treating a star as an unset permission for compatibility with Win32-OpenSSH.
  • Bug fix: /refresh parameter with sftp:// URL was not working for SFTP sessions with enabled fallback to SCP protocol.
  • Bug fix: Simple input boxes (like “Edit File” dialog) are broken on multi monitor systems with different DPI. 1614
  • Bug fix: HTTP proxy responses for FTP protocol are logged char by char. 1615
  • Bug fix: Port number box was visible for S3 protocol, even though its value has no effect.
  • Bug fix: Hang when opening a menu with any Paste command, while clipboard contains a large amount of text. 1620
  • Bug fix: Slashes in SHA-256 fingerprints are not encoded in generated URLs. 1622
  • Bug fix: Failure when closing a session with a local proxy command. 1623
  • Bug fix: Failure when closing Find window while finding files. 1624



  • Translations completed: Catalan, Czech, Finnish, French, German, Hungarian, Icelandic, Italian, Japanese, Korean, Norwegian, Polish, Portuguese, Romanian, Slovak, Spanish, Swedish and Turkish.
  • Better error message when trying to upload a file to virtual S3 root “folder”.
  • Displaying server name in network drive label. 1607
  • When using session name as a part of a path to a temporary directory, replace a slash separating a session folder from a session name with a dash instead of %2F. 1608
  • Configurable path to XML log file for the .NET assembly. 942
  • Bug fix: Failure when opening context menu of edit boxes on Login dialog. 1605
  • Bug fix: Failure when processing FileTransferProgress event. 1606
  • Bug fix: It was not possible to open workspace with special characters from a desktop shortcut. 1610
  • Bug fix: Failure when focused panel is changed, while double-clicking a file to edit it. 1611

5.12.2 RC

  • Multiple levels of directories can be created, while synchronizing browsing to a non existing directory. 1601
  • Setting Content Type of files uploaded to S3. 1602
  • Configurable mapping from file extension to Content-Type (using hidden setting). 1604
  • Bug fix: Local directory tree cannot be controlled using keyboard. 1599
  • Bug fix: Alt+Enter keyboard shortcut executed/opened selected file, instead of opening Properties dialog.
  • Bug fix: Session hangs when QueryReceived is set while session is already opened. 1600
  • Bug fix: QueryReceivedEventArgs.Message is empty.
  • Bug fix: Parallel background connections are never started, when queue processing is disabled.
  • Bug fix: Panel column context menus were working incorrectly when panel was horizontally scrolled.
  • Bug fix: Failure when processing results of upload during synchronization in .NET assembly when a directory was created with explicitly set permissions as the first operation. 1603


  • Improvements and changes to .NET assembly and scripting:
    • Custom error handling instead of default abort can be optionally implemented for batch operations in .NET assembly. 1594
    • Change: .NET assembly instance methods Session.EscapeFileMask, Session.CombinePaths, Session.TranslateLocalPathToRemote, Session.TranslateRemotePathToLocal, Session.AddDirectorySeparator, Session.GetDirectoryName, and Session.GetFileName replaced by static methods of the same name in class RemotePath.
    • Change: Session.ScanFingerprint has a new mandatory algorithm parameter.
    • Bug fix: .NET assembly methods GetFileName and GetDirectoryName did not behave correctly when provided a filename without any path.
    • Bug fix: Backtick (`) and dollar ($) signs are not escaped in generated PowerShell code. 1590
  • Displaying both SHA-256 and MD5 fingerprint of SSH host key on Server and protocol information dialog.
  • Choosing right color for background of “selectable” labels.
  • All read-only edit boxes/selectable labels have user friendly context menu for copying contents.
  • Bug fix: Setting hidden raw session setting for “Configurable priority of host key types” overrides host key.
  • Bug fix: Failure when error occurs while another error is already being handled.
  • Bug fix: When connection is lost while deleting source remote file during “Download and Delete” operation, downloaded file may be deleted once connection is resumed. 1592
  • Bug fix: Hidden session settings S3DefaultRegion to create an S3 bucket in a non-default region was not working.
  • Bug fix: It was not possible to work with S3 buckets with a dot in their name. 1597
  • Bug fix: S3 temporary redirect was not handled (consequently it was not possible to work with newly created S3 buckets)
  • Bug fix: HTTP error was displayed instead of a more specific S3 error message in some situations.
  • Bug fix: When viewing stored S3 site with a non-default hostname, the default Amazon S3 hostname was shown instead.
  • Bug fix: Failure when updating jumplist. 1591


5.12 beta

  • Amazon S3 protocol support. 572
  • Bug fix: Stalled connection attempts can be canceled promptly. 1564
  • SHA-256 host key fingerprints are used. 1589
  • Improvements and changes to .NET assembly and scripting:
    • Remote file duplication in scripting, .NET assembly and XML log.
    • Support for PackageReference package management in NuGet package. 1581
    • Help for script commands specifies unit for -speed switch.
    • A SecureString can be used provide a private key passphrase in .NET assembly via property SessionOptions.SecurePrivateKeyPassphrase. 1557
    • Added methods Session.GetDirectoryName, Session.GetFileName and Session.AddDirectorySeparator methods to .NET assembly.
    • Publishing beta releases of NuGet package. 1598
    • Extensions metadata can span multiple lines.
    • Change: XML log tags <modification> and <permisssions> are absent, if their values are not known. Previously they would have value of 1899-12-30T01:00:00.000Z and --------- respectively. Consequently the .NET assembly RemoteFileInfo.LastWriteTime and RemoteFileInfo.FilePermissions have values DateTime.MinValue and null, respectively.
    • File owner and group, if available, are recorded in <stat> tag of XML log and consequently .NET assembly Session.GetFileInfo method is able to retrieve them.
    • .NET assembly timeout for waiting for WinSCP response is always at least as long as session timeout.
    • Scripting command mv and .NET assembly function Session.MoveFile report, when the server does not support file renaming/moving.
    • Masking out passwords in raw settings (proxy and tunnel) when logging command-line. 1578
    • Change: Scripting command mv and .NET assembly function Session.MoveFile tests, if a source file exists, before trying to rename. Consequently, an error message reported has changed significantly, if the source file does not exist.
    • Putting WinSCPnet.dll to net framework subfolder of NuGet package.
  • SSH host key can be verified by pasting the expected key or its fingerprint from the clipboard. 1563
  • Option to turn off Natural order numerical sorting. 1293
  • Wider range of Unicode characters is supported in internal editor. 1580
  • XML parser upgraded to Expat 2.2.5.
  • Skipping loading of files icons when it takes too long. 1556
  • Hidden option to configure priority of host key types. 1562
  • Ctrl-number custom keyboard shortcuts work on numeric keypad too. 1568
  • Allowing download from MVS server using fully qualified dataset name. 1579
  • Optionally displaying authentication banner in a monospaced font. 1588
  • Bug fix: Per-session default encoding configuration for internal editor. 1577
  • Log more information about loading a custom GSSAPI library. 1586
  • Commands to copy hostkey/certificate fingerprint to clipboard has a form of a link, instead of a message button.
  • Changed appearance of background confirmation options link.
  • Logging a complete SSH host key only on Debug log level.
  • Change: Last access time of downloaded files is no longer preserved.
  • Bug fix: Command-line is disabled even for a local panel, if no session is connected or the connected session does support executing remote commands.
  • Bug fix: SSH hostkey/TLS certificate verification prompt in scripting in interactive mode was showing zero timeout.
  • Bug fix: Leaving a folder with a large amount of files takes long. 1565
  • Bug fix: Timeout of auxiliary requests for Microsoft Passport authentication was not set correctly.
  • Bug fix: Operation symbol column on Synchronization checklist does not scale with font size/DPI. 1569
  • Bug fix: Cannot enter subfolders of local drive mapped to WebDAV folder. 1575



  • TLS/SSL core upgraded to OpenSSL 1.0.2n.
  • Translations added: Korean; and updated: Bahasa Indonesia, Finnish and Spanish.
  • Bug fix: Official extension Generate HTTP URL cannot copy multiple URLs to clipboard. 1567
  • Bug fix: Parent directory icon broken on 250% scaling and higher. 1570
  • Bug fix: Resizing of Synchronization checklist window does not stop when mouse button is released. 1571
  • Bug fix: It was not possible to answer prompts with non-ascii answers in 1573
  • Bug fix: Failure when starting with window position configuration, saved on lower DPI, that does not fit anymore on lower resolution caused by higher DPI. 1576
  • Bug fix: Failure when changing remote working directory using directory tree. 1572
  • Bug fix: XML log and .NET assembly API does not use an absolute path for source of SCP download.
  • Bug fix: WinSCP .NET assembly hangs when the XML log cannot be parsed. 1582
  • Bug fix: WinSCP .NET assembly cannot work with files containing control characters. 1583
  • Bug fix: Failure when coping local custom command that works with remote files to clipboard.
  • Bug fix: Failure when using Ctrl+Tab keyboard shortcut with no session opened. 1585
  • Bug fix: When parsing MLSD listing, file name was incorrectly tried to be interpreted against various rare path syntaxes, leading to wrong name being displayed. 1587


  • Translations added: Russian; and updated: Czech, Hungarian, Icelandic, Italian and Spanish.
  • Panel font sample on Preferences dialog is wrapped.
  • Stopping monitoring a drive when a drive removal is announced, to allow removing the drive (particularly required for VeraCrypt drives). 1560
  • Official extension Generate HTTP URL URL-encodes special characters in path.
  • Bug fix: Wrong position of an icon on Login button, when Login dialog monitor DPI does not match system DPI. 1555
  • Bug fix: Failure when creating local directory or deleting local files, while no session is connected. 1558
  • Bug fix: Mouse selection is sometimes incorrectly initiated after inline remote file renaming. 1559


  • Bug fix: Connecting through tunnel to IPv6 does not work. 1553
  • Bug fix: Failure when using translation on monitor with DPI that does not match system DPI. 1554


  • Translation completed: Norwegian.
  • Not closing an application when initial Login dialog is closed without opening session and Keep main window open when the last session is closed is on. 1552


Users upgrading from WinSCP 5.9.6 can read more about WinSCP 5.11 - What's New?

5.10.4 RC

  • Translations completed: Catalan, Czech, Dutch, Finnish, French, German, Hungarian, Icelandic, Italian, Japanese, Lithuanian, Polish, Portuguese, Romanian, Simplified Chinese, Slovak, Spanish, Swedish, Traditional Chinese and Turkish.
  • XML parser upgraded to Expat 2.2.3.
  • Preference option Roll log files after reaching renamed to Rotate log files after reaching.
  • Bug fix: Hang when showing overwrite confirmation prompt if GUI font has zero-width tab character. 1550

5.10.3 beta

  • SSH core and private key tools (PuTTYgen and Pageant) upgraded to PuTTY 0.70. It brings the following change:
    • Fixed yet another instance of Windows DLL hijacking. 1459
  • XML parser upgraded to Expat 2.2.2.
  • Hidden configuration option for SSH bug Replies to requests on closed channels.
  • Do not display error message on start when user documents folder cannot be resolved. 1547
  • Bug fix: SSH bug Replies to requests on closed channels was always enabled.
  • Bug fix: Clicking root folder in path label opens home folder instead of root folder. 1548
  • Bug fix: Unchecking Update subdirectories for Keep remote directory up to date function was not fully working. 1549

5.10.2 beta

  • Host keys can be imported from OpenSSH known_hosts file. 1542
  • Cached host keys are unconditionally imported with PuTTY and FileZilla sites.
  • Cached host keys can be imported from PuTTY/FileZilla even when using INI file as configuration storage.
  • Better error reporting when fails to execute winscp.exe.
  • XML parser upgraded to Expat 2.2.1.
  • Avoiding a short hang of GUI, when waiting for edited file to be saved.
  • On VMS servers, do not use absolute paths with FTP DELE command. 1546
  • Bug fix: Site lists stops working when import source is changed on Windows XP.
  • Bug fix: Generated code uses TransferOptions.Speed instead of TransferOptions.SpeedLimit. 1543
  • Bug fix: Editor font too large on high DPI screens. 1544
  • Bug fix: Uploads of saved edited files can rarely stop working. 1545

5.10.1 beta

  • Official extension Generate HTTP URL displays a generated URL in a message box.
  • Supporting Migrated datasets in IBM z/OS MVS FTP server. 1540
  • Bug fix: Copying extension command with ShowResultsInMsgBox flag to clipboard was not working.
  • Bug fix: Last download target folder in Explorer interface is not remembered when transferring on background. 1538
  • Bug fix: Failure when using parallel background transfers. 1541


5.10 beta

  • Background transfer operations can use multiple connections. 875
  • Provisional implementation of per-monitor DPI awareness. 1521
  • Find dialog is not modal when search finishes and its Focus button does not close the window.
  • Found files can be downloaded and deleted on the Find dialog. 1473
  • Support Microsoft Passport authentication to allow WebDAV access to Microsoft OneDrive. 1465
  • Configurable path to INI file configuration storage.
  • Changes to translations:
    • Translations are installed to Translations subfolder.
    • Unless user customizes language, automatically using the best language match each run.
    • Including all translation (30% at least) in installation, but automatically using only those that are complete (80% at least).
    • Marking the default, incomplete and invalid languages in Preferences dialog.
  • Improvements to custom commands/extensions:
    • Extension output can be displayed in a message box.
    • Local custom console command output can be copied to clipboard.
    • Uploading back files modified by local custom command applied to a folder. 1526
    • The official extensions can be translated.
    • Consistency in handling errors executing local custom command.
    • Holding down Ctrl and Shift keys while running a remote custom command copies the command to clipboard instead of executing it.
  • Improvements and changes to .NET assembly:
    • Using full path in FileTransferProgressEventArgs.FileName. 1531
    • Allow cancelling file transfer. 1532
    • Added Side property to TransferEventArgs. 1470
    • Masking out passwords and passphrases in .NET assembly output log. 1475 1488
    • Change: Deprecating Session.DisableVersionCheck.
    • Bug fix: Internal InvalidOperationException on each call to Session.ListDirectory. 1515
    • Bug fix: Do not invoke Session.Failed when checking for non-existing file with Session.FileExists. 1513
  • SSH core and private key tools (PuTTYgen and Pageant) upgraded to PuTTY 0.69. It brings the following change:
    • WinSCP should work with MIT Kerberos again, after DLL hijacking defences broke it.
  • TLS/SSL core upgraded to OpenSSL 1.0.2l.
  • Session log file rotation. 18
  • It is possible to skip file actually being transferred. 251
  • Not indefinitely retrying transfer with FTP protocol when opening transfer channel is failing. 1169
  • Handling dav:// URL. 1479
  • SSH password change.
  • Duplication is supported with WebDAV protocol. 1508
  • Improved connection time for fast connections.
  • Open filter dialog when clicking the current filter in the path display. 1478
  • The path display shows temporarily an implicit *.* filter when hovering a mouse over it. 1478
  • Importing proxy configuration from FileZilla.
  • Do not terminate path with slash in CWD FTP command for better compatibility with VMS systems. 1535
  • If there is only a single private key configured in FileZilla, import it with session. 1468
  • Added New > File command to the toolbar. 1477
  • Cancelling calculation or errors while calculating size of files to upload does not abort the the actual transfer.
  • Supporting user/group names in MLSD/MLST responses. 1481
  • Allowed downloading file using URL even when listing its source directory is not possible. 1480
  • Button to open Edit file mask dialog on Select and Filters dialogs. 1534
  • Sending Content-Type header with WebDAV uploads. 1507
  • When handling WebDAV file URL, use a display name for target local file. 1486
  • Not aborting “Keep remote directory up to date” when Continue on error (or option batch continue) is enabled and reading a local directory fails, because it was deleted. 1506
  • Not verifying that final path after CWD FTP command matches requested path to allow better compatibility with atypical FTP servers . 1518
  • DLL hijacking protection. 1459
  • Poll edited file timestamps instead of using change notifications. 1500
  • Using WinSCP site name for PuTTY window title. 1482
  • Allow using 64-bit version of PuTTY (and its tools), when available. 1522
  • Option to open downloaded file on operation completion confirmation when transferring file from command-line/URL. 1524
  • Hidden options for Preference order for GSSAPI libraries and User-supplied GSSAPI library path. 578
  • Ctrl+Backspace in path edit boxes deletes the word before cursor. 1469
  • Activating panel, when using file selection commands. 1519
  • Displaying tunnel host name on Authentication dialog. 1528
  • The SFTP server and Shell edit boxes on the Advanced Site settings dialog use path-style word-breaking.
  • Not adding -load switch to PuTTY arguments, if it is configured already. 1493
  • Drop down lists on the Open Directory and Location Profile dialogs are up to 16 entries long.
  • Progress window appears on top of Editor window when reloading an edited file.
  • Not popping up Authentication window when reconnecting while the application is minimized. 1476
  • Hidden session settings for “Logical name of remote host”. 1472
  • Prevent slow startup when there are some special folders. 1533
  • More readable usage statistics display.
  • Update dialog can be displayed by clicking update notification even when the Login dialog is opened.
  • Scaling Color button image on Advanced Site Settings dialog.
  • While downloading, when an SFTP SSH_FXP_FSTAT response does not include timestamps, using known timestamps from directory listing for a local file. 1496
  • Improved file transfer logging, including new progress logging.
  • Change: Failing on invalid size constraint.
  • When opening secondary shell session fails, the main session is not closed.
  • Change: When executing script file or script commands provided on command-line, default reconnect time is set to 120 seconds, if not limited yet by configuration.
  • Bug fix: The /refresh command-line switch was not described in /?.
  • Bug fix: Digits-only file mask constraint was interpreted as time constraint instead of size constraint.
  • Bug fix: Sudden disconnect errors during authentication are randomly ignored. 1489
  • Bug fix: Queue status was not shown on task bar button, when WinSCP was minimized by clicking on the task bar button.
  • Bug fix: Pending background transfers were not considered for progress bar on task bar button.
  • Bug fix: Configuring a PuTTY path with unclosed quotes prevents WinSCP from starting. 1499
  • Bug fix: Never implemented -continueonerror switch was present in keepuptodate help
  • Bug fix: Failure while reloading directory tree after a system colors had changed while the tree was not showing. 1509
  • Bug fix: Clean up application data dialog was showing on wrong monitor.
  • Bug fix: Resuming file upload in active FTP mode does not work on some servers. 1520
  • Bug fix: Failure when INI file cannot be opened. 1523
  • Bug fix: Windows logo key is not working in toolbar input boxes. 1527
  • Bug fix: Toolbar icons were broken with Windows high contrast themes. 1529
  • Bug fix: SFTP transfer stalls when error is received at the same time write buffer needs to be dispatched. 1536
  • Bug fix: SFTP upload errors are silently ignored for small files. 1537
  • Bug fix: Scripting open command without arguments issued irrelevant warning about use of stored site.


5.9.6 (hotfix)

  • German translation updated.
  • Back-propagated some improvements and fixes from 5.10-5.10.2 beta releases:
    • SSH core and private key tools (PuTTYgen and Pageant) upgraded to PuTTY 0.69. It brings the following change:
      • WinSCP should work with MIT Kerberos again, after DLL hijacking defences broke it.
    • TLS/SSL core upgraded to OpenSSL 1.0.2l.
    • Allow using 64-bit version of PuTTY (and its tools), when available. 1522
    • XML parser upgraded to Expat 2.2.1.
    • Bug fix: Scripting open command without arguments issued irrelevant warning about use of stored site.
    • Bug fix: Generated code uses TransferOptions.Speed instead of TransferOptions.SpeedLimit. 1543


  • SSH core and private key tools (PuTTYgen and Pageant) upgraded to PuTTY 0.68. It brings the following change:
  • Translation completed: Traditional Chinese.
  • Translation updated: Icelandic.
  • De-duplicating Duplicate Session and Disconnect accelerators in Session menu. 1512
  • De-duplicating Quit and Queue accelerators in Commands menu. 1516
  • Increased length limit of host name. 1517
  • Bug fix: Failure when reloading non-current directory expanded in remote directory tree. 1514
  • Bug fix: Failure when moving Download and Delete operation to background. 1462

Older versions

Last modified: by martin