Download

Changelog

Every Sally release, newest first. Each entry links to its downloads and full release notes on GitHub.

Sally 1.0.41

· Downloads and full notes on GitHub

<!-- SPDX-FileCopyrightText: 2025-2026 Elias Bachaalany --> <!-- SPDX-License-Identifier: GPL-2.0-or-later -->

Sally remains free, with every feature and update available to everyone.

  • Clicking a server or network root in the Directory Line now opens the Network view. Share and folder links keep their usual navigation. (#155)
  • Choose On every startup in Options → Configuration → General → Check for updates for an immediate background check at each launch. After a failed attempt, the next launch tries again. Existing interval choices keep their previous behavior. (#150)
  • Theme and Icon color are grouped under Application Appearance on the Appearance page. Existing icon choices and saved preferences are retained. (#151)

Sally 1.0.40

· Downloads and full notes on GitHub

Sally remains free, with every feature and update available to everyone. Voluntary support helps keep development going.

  • Choose the application icon colour in Options → Configuration → Main Window. True Blue is available again, and the updater follows your saved choice. (#146)
  • The update confirmation is compact, with a subtle support invitation both after updating and when checking for updates. Current supporters do not see the offer.
  • The updater follows your custom panel font, or the Windows dialog font. (#147, updater scope)
  • Closing Sally cancels its pending scheduled update work cleanly.
  • Accented filenames use Unicode-aware upper/lowercase formatting. (#148)
  • File Comparator applies the horizontal-layout setting to the open comparison and adds toolbar buttons for word wrap and pane orientation. (#137)
Already supported Sally? Claim your supporter badge

Thank you! If you contributed through PayPal or Buy Me a Coffee and haven't yet requested your badge, please email badges [at] get-sally [dot] app. Include the payment provider, the name used for the contribution or transaction reference, and the name or nickname you'd like displayed in Sally. Email from the address where you'd like to receive your supporter key, or tell me the delivery address.

I'll match your contribution and reply with your supporter key. Delivery is usually within one week. Your name stays local to Sally; every feature and update remains free.

Sally 1.0.39

· Downloads and full notes on GitHub

Sally 1.0.39 adds optional supporter acknowledgements, release notes inside the app, and improvements to everyday file and viewer workflows.

Every feature and update remains free. Voluntary support is appreciated; supporter keys acknowledge a contribution and do not unlock features.

  • Import an offline supporter key, check its name and support dates, and optionally show the supporter name in the title bar. Manage the key from the small menu beside Close.
  • Read localized release notes through Help > What's New, including offline, or in the update window alongside authenticated maintainer messages.
  • Enjoy red branding and the new main website: https://get-sally.app/.
  • See clearer selected files in dark mode while preserving custom colours.
  • Use the updated 7-Zip 26.04 library, including ARM64 and RISC-V filters.
  • Choose checkerboard, light or dark backgrounds for SVG previews.
  • Access native operations and registered shell extensions in one right-drag menu.
  • Compare wrapped text with both panes aligned; copying preserves the original text.
  • Use PictView's F shortcut or File > Focus after image navigation to bring Sally forward and focus the displayed file while preserving selections.
  • Start with a fresh profile without premature supporter-title initialization.

Thank you for supporting Sally through donations, bug reports, translations and feedback. https://get-sally.app/support-sally/

Sally 1.0.38

· Downloads and full notes on GitHub

Fixes and improvements

  • Keep dark-mode menus and toolbars visible when moving the window off-screen (#134).
  • Respect Sally's selected updater language, including English on Windows configured for another language (#135).
  • Give the updater Sally's dialog font and blue application icon, with confirmation buttons in the selected language (#136).
  • Scale File Comparator's toolbar icons and buttons with the Windows display setting (#137).
  • Show a readable Web Viewer message for known initialization failures, including the stage, error code and requested file path or URL (#131).
  • Refresh the README's Windows screenshots from the 1.0.38 candidate and identify the older Wine illustration by its actual version.

Continuing work

File Comparator word wrap and a broader plugin DPI audit remain follow-ups for #137. The original SVG failure in #131 still needs the reporter's file; the new diagnostics do not establish its cause. The original thumbnail image/retest for #133 is also pending.

Sally 1.0.37

· Downloads and full notes on GitHub

Sally 1.0.37 checks for new releases by itself and shows them in its own update window: the Check Version plugin is retired. It also fixes drag and drop to network shares that cannot store the "downloaded" mark, Send to › Compressed (zipped) folder, long-path thumbnails, context-menu submenus that fill late, and brings plugins added in later releases to existing configurations.

Changes

  • Contextual Undo. With a file panel focused, Ctrl+Z or Edit › Undo reverses the latest operation recorded by the Windows shell, including Sally's deletes into the Recycle Bin. The menu names the current action, such as Undo Delete. Windows shares this history with Explorer. In the command line and text fields Ctrl+Z retains text undo, including doing nothing when there is no text edit to undo. Permanent deletion cannot be recovered this way; Sally's own copy, move, rename, archive and plugin operations do not all use shell history. Deletion from long directory paths now reaches the shell's recycle handling instead of bypassing it. Windows may still offer permanent deletion for items it cannot recycle.
  • The update window. Help › Check For New Versions opens Sally's updater (utils\salupdate.exe). It shows the installed and the latest version and the release notes, and Install and Restart downloads the release, checks it against its published SHA-256 checksum, closes Sally, replaces the files and starts Sally again, as in 1.0.36. Sally also checks by itself a little after it starts, every week unless you choose otherwise in Configuration › General › Check for updates (every day to every six months, or never). Nothing is shown unless a newer release exists. The window then opens without taking the keyboard from what you are doing. Sally itself no longer goes online for updates; only the updater does.
  • Check Version is retired. Your Check Version schedule and settings are taken over, and the plugin is removed from your configuration and from the Sally folder. A release now lists the files it retires, and the updater removes them (and puts them back if an update fails).
  • Command-line profiles and startup actions. -profile name keeps settings in a separate named configuration. -do view or -do edit opens the active panel's focused item after startup, using its configured viewer or editor. A panel path can name a file: for example, sally.exe -profile preview -l "C:\Pictures\beach.jpg" -p 1 -do view.
  • Drag and drop to a NAS (#118). A dropped file that carries the "downloaded from the internet" mark is copied to a target that cannot store such marks, as F5 does, instead of being skipped without a word. If a drop cannot be carried out, Sally says so.
  • Send to › Compressed (zipped) folder (#20) creates the archive again.
  • Context-menu submenus that fill late (#13, #15). Send To, Include in Library and similar submenus show their items.
  • Thumbnails (#31) are drawn for paths longer than 260 characters, and no longer show red as blue.
  • Plugins added in later releases (Discussion #89) reach configurations created before them. A plugin you removed in the Plugins Manager stays removed.
  • PictView (#130) adds the image formats of your installed codecs (WebP, HEIC, AVIF, camera RAW, JPEG XL) to its viewer list, also for configurations created by 1.0.34–1.0.36.
  • PictView on HiDPI displays (#132). Toolbar, menu and status icons scale with Sally's display sizing, and the status bar reserves enough room for them. The histogram toolbar scales too.
  • Web Viewer (#131) shows an error page when navigation fails. Initialization failures can still leave a blank page; investigation of the reported SVG remains open.
  • Folder suggestions (#51). The target fields of Copy, Move and Change Directory suggest matching folders while you type (Configuration › General).
  • New › Folder opens the new item for renaming in place (Discussion #3); Back and Forward onto a deleted folder go to its nearest existing parent without an error (Discussion #54).

Upgrade notes

  • From 1.0.36: use Plugins › Check Version › Check For New Versions and Install and Restart one last time. Sally 1.0.37 then removes Check Version; from then on it is Help › Check For New Versions.
  • From 1.0.35 and older: there is no updater yet. Close Sally and unpack 1.0.37 over your Sally folder. If Windows says salextx64.dll is in use, rename that file (for example to salextx64.dll.old) and copy again.
  • Offline: drop the release zip onto utils\salupdate.exe (its SHA256SUMS.txt beside it).

Sally 1.0.36

· Downloads and full notes on GitHub

Sally 1.0.36 updates itself. From now on Check Version installs a new release for you, and so does a release zip you downloaded yourself. The shell extension no longer gets in the way of updates, a crash that third-party shell mods could cause is fixed, and crash reports are packed as .zip so you can attach them to GitHub issues.

Changes

  • Install and Restart. When Check Version finds a newer release, its window now offers Install and Restart. Sally downloads the package for your platform and checks it against the SHA-256 checksum published with the release (GitHub's own checksum must agree too). Then it unpacks the package, makes sure it is a Sally build for your processor, and asks you once. Every Sally window started from the same folder closes, the files are replaced, and Sally starts again and tells you how it went. Nothing changes until the new files are ready. If any file cannot be replaced, every file is put back exactly as it was. Your configuration and any files that are not part of the release are never touched. A Sally folder under Program Files asks for administrator permission once.
  • Update from a downloaded zip, also offline. Drop a release zip onto utils\salupdate.exe, or run salupdate.exe Sally-v<version>-<platform>.zip. If the release's SHA256SUMS.txt is next to the zip, the zip must match it. Without it, you are warned and asked. The updater names the installed and the new version (and asks before installing an older one), closes Sally, installs, and starts Sally again. --yes runs it unattended. Run on its own, it undoes an update that was interrupted, for example by a power failure. Its messages follow Sally's language.
  • The shell extension no longer blocks updates (#128). Explorer keeps utils\salextx64.dll loaded, so overwriting the Sally folder failed on that file. The updater renames the loaded file aside instead (Windows allows that), puts the new one in place, and Sally deletes the old copy at a later start once Explorer lets go. Nothing is written to the machine-wide registry, and nothing is scheduled for reboot. Sally's clean-up of shell extensions left registered by other Sally folders (#82) now only removes their registration.
  • Crash on Delete with some shell mods fixed (#129). Sally's dark title bars used a Windows function from dwmapi.dll without keeping that DLL loaded. When another program injected into Sally unloaded it (seen with a Windhawk mod), the next dialog, such as the Delete progress window, crashed. Sally and its plugins now keep it loaded. This was not specific to ARM64.
  • Crash reports as .zip (#129). The bug reporter packs a report as a .zip, which GitHub issues accept as an attachment, and no longer needs the 7-Zip plugin for it. A report also names an execute fault correctly instead of calling it a "write".

Upgrade notes

  • Sally 1.0.35 and older don't have the updater yet: to get 1.0.36, close Sally and unpack it over your Sally folder one last time. If Windows says salextx64.dll is in use, rename that file (for example to salextx64.dll.old) and copy again. From 1.0.36 on, use Install and Restart or salupdate.exe.
  • The updater keeps its downloads and its log in %LOCALAPPDATA%\Sally\Update and removes the downloads once the update is done.

Sally 1.0.35

· Downloads and full notes on GitHub

Sally 1.0.35 fixes the internal viewer on large and Unicode text files, makes Change Attributes work again, restores PictView's selection outline and its Select Source File button, and sends crash reports to GitHub instead of a retired server.

Changes

  • Viewer: large files open at once (#125). Text that the viewer decodes (UTF-8 with non-ASCII characters, or any file with a BOM) is no longer scanned from the start before the first screen appears. A 100 MB UTF-8 file opens in about a tenth of a second (51 seconds in 1.0.34), and moving to the end of a file costs about one screenful.
  • Viewer: the end of the file is reachable again (#124). Decoded text could stop scrolling a few lines before the end, typically when blank lines were near the end of the file. Ctrl+End and scrolling now reach the last line, and line-by-line scrolling moves exactly one line. This was also the real cause behind #64.
  • Change Attributes works again (#126). Ctrl+F2 failed with "Error Building Script" for every file since 1.0.27. It now applies the attributes; on links (junctions, symbolic links) it changes the link itself and never follows it into its target.
  • PictView: the selection outline is visible (#127). The Select and Zoom tools drew an outline that did not show on the image. It is a moving black-and-white outline again ("marching ants"), visible on light, dark and busy images; copying the selection with Ctrl+C works as before.
  • PictView: Select Source File follows the panel. The tool bar button and menu item show whether the viewed file is selected in the panel again, also after Space and Backspace, when the viewer opens on a selected file, and after the selection changes in Sally.
  • PictView: select and go on in one key. Ctrl+Shift+Space selects or unselects the viewed file in the panel and goes to the next file; Ctrl+Shift+Backspace does the same and goes back. This works on laptop and Mac keyboards without an Insert key. Space, Shift+Space, Ctrl+Space and Insert keep their meanings.
  • Crash reports go to GitHub. The crash reporter used to upload to a server that no longer exists. "Report on GitHub" now opens a new issue in your browser with a short summary — Sally and Windows versions, the error, the module and offset, and function names only — plus what you were doing, for you to review before you submit it. The full report and memory dump stay on your computer, packed in one archive; a maintainer may ask you for them privately. The contact e-mail field is gone.
  • Translations. Twelve duplicate keyboard accelerators in translated menus and dialogs are fixed, PictView's About box and the Dutch title-bar option are translated, and support links point to Sally's GitHub issues.

Upgrade notes

  • In the internal viewer, a decoded text file with a line longer than 10,000 characters now offers to switch to hex view, as plain byte text always did.
  • A crash report left from an earlier session is offered once, the same way; reporting it or closing the window removes it from the list.

Sally 1.0.34

· Downloads and full notes on GitHub

Sally 1.0.34 brings PictView back: Sally's image viewer is rebuilt on Windows Imaging Component, with the old plugin's features, look and keyboard, in every built-in language.

Changes

  • PictView is back. The image viewer, converter and thumbnailer is a new implementation that decodes and saves through Windows Imaging Component (WIC), inside Sally and fully Unicode. It replaces the closed-engine plugin that could not ship with the open-source Sally, and keeps what it offered: Sally's menu bar and tool bar in the viewer, the familiar dialogs (Configuration, Image Properties, EXIF, Zoom, Go To Page, Rename, Copy To, Screen Capture, the Save As option panel, Print with page preview), the histogram window, full screen, the color picker, selection and cropping, and the same keyboard shortcuts.
  • More formats. Formats of the WIC codecs installed on your PC — HEIF, AVIF, WebP, camera RAW and others from the Microsoft Store — open in the viewer and get thumbnails in the panels.
  • EXIF in words. The EXIF window names every tag and decodes values such as flash, exposure program, metering and orientation, in your language. Each page of a multi-page TIFF shows its own EXIF, and Image Properties shows comments stored in JPEG, PNG and GIF files.
  • Viewer details. Optimized animated GIFs play correctly; large images get scrollbars and show loading progress; images with non-square pixels (faxes, some scans) are drawn at their real proportions; the color picker shows the palette index of indexed images.
  • Update Thumbnail. The plugin menu command writes a new thumbnail into the selected JPEG files, as cameras store it, without recompressing the photo. For JPEG files without EXIF it offers a JFIF thumbnail instead.
  • Thumbnails of transparent images blend into the panel's background, and a small embedded preview is replaced by a sharp thumbnail.
  • Every language is complete. The last English strings in Sally, the FTP client and Renamer are translated.

Upgrade notes

  • PictView registers itself the first time you start 1.0.34 and becomes the viewer (F3) for the image types it reads. You can change that in Sally's viewer settings.
  • Your settings carry over; settings saved by the old PictView are read where they still apply.

Sally 1.0.33

· Downloads and full notes on GitHub

Sally 1.0.33 builds every language into Sally itself, fixes two Find window problems, and moves plugins to plugin SDK 109.

Changes

  • Languages are built in. All ten translations are now part of sally.exe and its plugins; there are no separate language files any more. Sally applies the chosen language to the core and every plugin together. On first run it uses your Windows language when Sally has it, and asks only when it does not. Select Language lists each language by its own name, with its translators.
  • Translation fixes. Long labels on the Security page, in the Exiting Sally dialog and in the ZIP plugin's Wait For dialog are no longer cut off in some languages. The internal viewer's menu and two FTP menus show their real titles in every language, instead of "Help" or "Others" on every menu.
  • Find window (#120). With "Search file content" off, its hidden Containing box no longer shows up under the "No Advanced Options" line (it made the text look covered and vanish under the pointer). Find's messages, including the Esc "Do you want to close Find?" question, now appear over the Find window instead of the main window.
  • Translating Sally. Translations are ordinary files in the source (src/lang/<language>/lang.rc and src/plugins/<plugin>/lang/<language>/lang.rc). To fix a translation, open an issue or a pull request; see doc/DEV.md.

Upgrade notes

  • Plugins must be built for plugin SDK 109. Older plugins, including ones built for Altap Salamander 4.0, are no longer loaded; Sally shows a message asking for an updated version. All plugins that ship with Sally are already updated.
  • Leftover language files. If you unpack 1.0.33 over an older Sally, the old lang\*.slg files and the lang folders inside plugins\ are no longer used and can be deleted.
  • Your chosen language and other settings carry over.

Sally 1.0.32

· Downloads and full notes on GitHub

Sally 1.0.32 makes https://sally-filemanager.app/ Sally's official home, and Help now opens the online manual.

Changes

  • Official website. The About box shows https://sally-filemanager.app/, and the Help menu has a new Sally Website command. The remaining altap.cz links are gone.
  • Online manual. F1 and the Help menu open the matching page of the manual on the website, instead of the old HTML Help (.chm) file. Context help works from dialogs as before.
  • Manual updates. The manual names Sally throughout and documents the Theme setting, Windows Terminal, the Web Viewer plugin and current Unicode support.
  • Manual sources. The manual's sources move from this repository to the website, which offers them for download. Their history up to 1.0.31 remains in this repository.

Sally 1.0.31

· Downloads and full notes on GitHub

Sally 1.0.31 fixes copying files into an open archive with F5, and Batch Rename renaming nothing.

Fixes

  • Fixed F5/F6 from a disk panel into an archive open in the other panel, which reported "Target path for this operation cannot contain path to a file (archives are not supported here)" (#116). Copying into the archive root, into a folder inside the archive, or onto a bare archive name such as archive.zip adds the files again, the same way drag & drop does. This had been broken since 1.0.27.
  • Fixed Batch Rename renaming nothing and reporting "Duplicate name." for every file (#117). The New name, Search for and Replace with fields lost their text when Rename was clicked, so every file got an empty name. This had been broken since 1.0.27.
  • Two source files whose logic derives from Open Salamander now credit it in their headers.

Thanks to @DavorSikic for the precise F5 report, and to @Andrew19601511 for flagging Batch Rename.

Sally 1.0.30

· Downloads and full notes on GitHub

Sally 1.0.30 fixes executable icons that flickered to the generic icon, and RAR archive dates shown as 1.1.1980 when browsing through the external RAR archiver.

Fixes

  • Fixed executable icons that switched to the generic executable icon while the panel repainted — after sorting, refreshing, or moving around the panel (#115). Since 1.0.27, the icon-cache lookup compared a few bytes past the end of the file name, so files whose names have an even number of characters (such as Inc_Update.exe) could miss their cached icon at random. Only some files were affected, which is why the icons came and went.
  • Fixed RAR archives browsed through the external RAR archiver reporting "The file date and/or time reported by archiver is invalid" and listing every file as 1.1.1980 (#114). RAR 7 prints dates as YYYY-MM-DD; Sally now reads that form as well as the older day-first form.

Opening RAR archives normally goes through the built-in UnRAR plugin, which never had the date problem. If Sally asks you to run Archivers Autoconfiguration to open a .rar, check that UnRAR is listed in Plugins → Plugins Manager.

Thanks to @xmiseggs for the clear before-and-after screenshots of the icon change, and to @vectorrilke for the detailed RAR report.

Sally 1.0.29

· Downloads and full notes on GitHub

Sally 1.0.29 restores archive and plugin-filesystem drag-and-drop on native ARM64 builds.

Fixes

  • Fixed dragging files or directories from ZIP/RAR archives to the archive root's [..] row on ARM64 (#112).
  • Native ARM64 startup now discovers and registers salextARM64.dll; previous builds only searched for the x86 and x64 shell-extension filenames, so archive drag operations exited before a drag cursor appeared.
  • Corrected the ARM64 shell extension's embedded description and original filename.
  • Extended Release CI to continue verifying architecture-specific executable and language-resource identity.

Thanks to @vectorrilke for identifying that the failure was specific to ARM64 and for describing the missing cursor transition.

Sally 1.0.28

· Downloads and full notes on GitHub

Sally 1.0.28 is a focused follow-up to the 1.0.27 Unicode migration release.

Fixes

  • Fixed Copy to Clipboard from the Directory Line and Status Line context menus. Opening the menu cleared the current hot item before the command executed, so Sally now copies the text captured when the menu was opened. Thanks to @xmiseggs for reporting #110 and @vectorrilke for confirming it on ARM64.
  • Made reusable .slt translation archive metadata architecture-neutral. The same translation sources now cleanly produce x86, x64, and ARM64 language packs.
  • Corrected ARM64 executable and language-resource version labels, and strengthened Release CI to reject architecture metadata mismatches.

Sally 1.0.27

· Downloads and full notes on GitHub

Community announcement: https://github.com/0xeb/sally/discussions/109

Multi-platform Release CI: https://github.com/0xeb/sally/actions/runs/35792894558 (x64, x86, and ARM64 passed)

Highlights

  • Native Unicode file names, paths, panel text, dialogs, viewer/search text, registry values, histories, shell integration, and bundled-plugin paths.
  • Long-path-safe dynamic ownership instead of MAX_PATH-bounded semantic path buffers.
  • Unicode-aware search and case folding, including UTF-8 database-viewer searches.
  • Wide-native bundled plugins and explicit codecs at real byte boundaries such as FTP and archive formats.
  • Improved behavior for non-ASCII install paths, UNC/network paths, shell operations, drag/drop, clipboard data, and external viewers/editors.
  • Ten translated language packs rebuilt and versioned for 1.0.27.

Important behavior changes

Unicode sort order

Sorting now compares real Unicode names rather than damaged active-code-page projections. Non-ASCII names may appear in a different order from older Sally versions. This is intentional and there is no option to restore the previous code-page-dependent order.

Unicode clipboard and drag/drop text

Panel, archive, and plugin-filesystem paths use Unicode clipboard text where older paths could publish only CF_TEXT. Legacy text is still co-published where appropriate, but very old external programs that only understand ANSI clipboard data may behave differently.

Configuration Editors/Viewers priority lists (#108)

The blue Up/Down arrows now visibly reorder the Editors and Viewers priority lists. The previous code moved the internal model but left owner-drawn rows in their old order; editing after a move could also update the wrong association.

Fixed by 9930c1f7a.

Other notable fixes

  • Non-ASCII paths work through copy, move, delete, rename, Find, viewers, editors, directory history, archive operations, and startup/configuration paths.
  • UTF-8 regular-expression case folding works by Unicode code point rather than through an ANSI byte table.
  • Database Viewer Find no longer skips UTF-8 cells containing text outside the active Windows code page.
  • External archivers refuse an unrepresentable path instead of silently using a best-fit alias that could name a different file.
  • Multi-volume archive dialogs, password input, shell-extension IPC, overlay icons, configuration persistence, and numerous plugin UI paths retain exact Unicode text.
  • Editor/viewer mask priority changes remain synchronized between the visible list and stored configuration.

Plugin compatibility

  • Bundled plugins are wide-native.
  • Existing pre-v108 binary plugins can still load through an isolated compatibility adapter.
  • Compatibility conversion is exact-or-refuse; it is not an ANSI ownership model inside Sally.
  • A plugin requiring a newer host refuses to load instead of calling an incompatible interface optimistically.

If a third-party plugin behaves differently in 1.0.27, please identify the plugin name and version in the bug report.

Known limitations and risk areas

  • FTP and archive formats remain byte-oriented where their protocols require it; text is encoded/decoded at explicit boundaries.
  • External ANSI-only tools may reject a path they cannot represent. Sally now fails visibly instead of silently changing the path.
  • Old persisted settings are imported for upgrade compatibility, while new values are written in current native formats.
  • Existing pre-v108 third-party plugin binaries remain supported through the frozen compatibility layer.
  • PictView is not included because its image engine source is unavailable.
  • WinSCP integration remains unported.

Before upgrading

1. Keep a copy of Sally 1.0.26. 2. Back up or export your Sally configuration if it is important to you.

Reporting a regression

Please open an issue at: https://github.com/0xeb/sally/issues

Useful details:

  • Sally version and architecture.
  • Windows version and system locale/code page.
  • Whether the problem also occurs in 1.0.26.
  • Exact reproduction steps and expected/actual result.
  • The relevant file/path shape, sanitized if necessary.
  • Whether the path is local, UNC/network, archive-contained, plugin-provided, longer than 260 characters, or contains non-ASCII/emoji characters.
  • Screenshots and Sally’s Help > Report a Bug output when available.

Sally 1.0.26

· Downloads and full notes on GitHub

Fixes

  • Quick Rename preserves non-ASCII overwrite handling. (#104)
  • Alt+F12 shows the empty working-directory history menu consistently. (#105)
  • Ctrl+X publishes cut clipboard formats atomically. (#106)
  • F5 ZIP extraction preserves non-ASCII destination paths. (#107)

Sally 1.0.25

· Downloads and full notes on GitHub

Dark theme

  • Combo boxes on dark dialogs showed an empty box instead of the selected value. Fixed throughout the main window and plugin dialogs — including the theme selector itself on Configuration → Appearance. (#98, #99)
  • Scrollbars are back in multiline text areas on dark dialogs (FTP Logs). (#98)
  • Plugin dialogs no longer stay dark after you switch to the light theme. (#98)
  • Panel scrollbar up/down arrows are visible again.
  • No more light flash when starting in the dark theme. (#95)

File operations

  • Data-loss fix: copying or moving onto an existing archive could destroy it. It could also act on the wrong archive when the name contained non-ASCII characters. (#94)
  • .tar.gz and other multi-part archives are recognised correctly again.
  • Alt+drag creates a shortcut, and the cursor no longer promises one in places where it cannot be created. (#101)
  • Pasting a path containing non-ASCII characters now navigates to the folder and selects the file. (#103)
  • Quick Rename shows non-ASCII names in full instead of .... (#103)

Viewer (F3)

  • Large UTF-16 files open and scroll dramatically faster, and memory use on very large files is now bounded.

Other

  • Find: the "Search file content" label is no longer cut off.
  • Sally restores to a visible size after display changes. (#97)
  • Toolbar bottom-bar key caps are drawn from the font. (#96)
  • The web viewer uses a modern icon. (#100)

Notes for translators and packagers

The application version now renders as three parts (1.0.25) in file properties. Previously the binary resources and the build system carried separate version values that had drifted apart; there is now a single source.

Language packs must be rebuilt for any version change. Sally requires an exact version match and silently rejects packs that do not match — they simply disappear from Select Language with no error.

Sally 1.0.24

· Downloads and full notes on GitHub

Fixes

Icon overlays now appear (#90)

TortoiseSVN, TortoiseGit and any other provider that supplies its overlay icon as a .ico file were being discarded at startup, so their overlays never showed in the panel.

Sally asked Windows for two icons in a single call with both sizes packed into one argument. That form asks for two consecutive icon resources rather than one icon at two sizes — and a standalone .ico holds exactly one, so the second size came back empty. An overlay is only used when every size loads, so the handler was thrown away.

A note if you compare against Explorer: Windows stops loading overlay handlers once roughly fifteen are registered. On a machine with several cloud-storage clients installed, Explorer may show no Tortoise overlays in the very folder where Sally now does. That is a Windows limit, not a difference in the repository state.

Context menus on non-ASCII filenames (#79)

Right-clicking a file whose name contains characters outside your system's ANSI code page produced no menu at all — and no error explaining why.

Menu entries are now built from the full Unicode filename, the containing folder is resolved without narrowing its path, and a name that cannot be resolved is skipped instead of discarding the whole selection. If nothing in the selection can be resolved, you now get an explanation rather than silence.

Scope: this covers non-ASCII filenames. Files inside a folder whose own path contains such characters are a separate, known limitation — see Known issues below.

Opening files inside folders with non-ASCII paths

Pressing Enter did nothing for files inside a folder whose path contains characters outside the ANSI code page — including files with perfectly ordinary ASCII names, because the code path was chosen from the filename alone.

Diagnostics

Help → Report a Bug

Writes a report describing configuration and shell integration state: what happened to each registered icon overlay handler, and the outcome of recent context menu commands.

The existing Help → Task List → Break route needed two running instances and terminated the process. This one needs neither. The report is written to %LOCALAPPDATA%\Open Salamander\ and its location is shown when it completes.

If you hit a shell integration problem, this report is far more useful than a description — it records what Sally handed Windows and what came back.

Localization

All ten shipped languages are now complete. Strings introduced by earlier releases were still displayed in English in every locale:

  • the Light / Dark / System theme names
  • the Find results save and load commands
  • the Paste Shortcut failure message
  • the Windows Terminal and default shell integration

Other

  • Development builds report the correct version again. It had been pinned by cached build configuration, so binaries carried the previous release's number.

Known issues

Actions on files inside folders whose path contains characters outside the system ANSI code page remain unreliable — Properties, Copy Full Name, Paste, packing and others. The folder browses and displays correctly; only the actions fail. This is tracked separately and is being worked through.

Filenames outside the ANSI code page are fine as long as the containing path is representable.

Sally 1.0.23

· Downloads and full notes on GitHub

Sally v1.0.23

A fast, keyboard-first dual-panel file manager for Windows. This release adds Windows Terminal integration, clears a batch of dark-mode and file-operation bugs from user reports, and cleans up licensing and attribution.

Windows Terminal integration (#86)
  • Sally discovers wt.exe and its Stable, Preview, and unpackaged profiles and builds a Commands → Windows Terminal submenu — launch PowerShell, a WSL distribution, or Command Prompt straight into the active panel's folder.
  • New Commands → Default Shell… dialog sets what the Command Shell action (Num /) opens: %COMSPEC%, the Terminal default, or a named profile.
Dark mode (#81, #85)
  • Fixed hard-to-read black text in the copy/move dialog and the Configuration pages under the dark theme.
  • Fixed the command-line repaint and the overlapped search-path text in the Find dialog.
  • Panel selection and focus colors now resolve at render time instead of being written back to the registry.
File operations and shell integration
  • Paste Shortcut works again (#87).
  • Rename: converting a name's case and pressing F2 now shows the updated name (#88).
  • Raised the icon-overlay cap to 31 so more TortoiseGit/TortoiseSVN and cloud overlays show at once (#83).
  • On upgrade, Sally reclaims old shell-extension DLLs that Explorer kept locked, so previous install folders can be removed (#82).
Check Version
  • The release-check parser moved to the vendored yyjson library with a headless decision pipeline.
Copyright, licensing, and localization
  • Restored the Open Salamander copyright alongside the fork's in every binary version resource, the About dialog, and the shipped help, and fixed a code-page bug that rendered the © sign as a replacement character in file properties.
  • Added a repository NOTICE, corrected per-file attribution, and the release archives now ship LICENSE, NOTICE, and AUTHORS.
  • Repaired the translation archives so all ten language packs build again.
Documentation
  • Added a Linux/Wine guide (doc/WINE.md) with a screenshot.
Thanks

Fixes in this release came from reports by @ags1234, @darilek, @thyresias, @ParoTheParrot, and @tormento. Please update and let us know if anything still misbehaves.

Sally 1.0.22

· Downloads and full notes on GitHub

Sally v1.0.22 focuses on Unicode and path-safety hardening, safer Find result handling, FTP reliability, and safer file operations.

Highlights:

  • Fixed an FTP view/download crash caused by unsafe initialization of FTP disk-work state.
  • Added Find result save/load support, including safer reload validation.
  • Preserved Unicode "Look in" paths in saved Find presets.
  • Prevented lossy ANSI fallback from targeting the wrong file in Find result actions.
  • Improved Unicode error reporting in worker copy/delete/create/convert/attribute dialogs.
  • Hardened recursive delete script generation so skipped child directories do not cause parent directory deletes.
  • Fixed a ZIP SFX settings initialization bug.
  • Fixed a Salmon crash reporter static-initialization crash.

Find Improvements:

  • Find results can now be saved and loaded.
  • Loaded Find CSV/TXT rows are validated and re-statted before becoming actionable.
  • Delete from Find results now uses the wide shell path list, avoiding wildcard-like behavior from lossy ANSI names.
  • Actions that still depend on ANSI-backed paths now refuse non-round-trippable Unicode rows instead of risking operations on the wrong file.
  • Saved Find presets now persist Unicode Look in roots.

File Operation And Unicode Hardening:

  • Centralized long-path decoration.
  • Moved more file-system operations behind wide-first interfaces.
  • Routed directory enumeration through IFileEnumerator.
  • Added ADS stream enumeration and wider worker I/O interface coverage.
  • Improved snapshot builder support for directory move/delete/change-attrs/change-case flows.
  • Added opt-in handling for non-empty/system-hidden delete prompts, ADS-loss prompts, fast directory moves, and reparse-point directory deletes.

Reliability Fixes:

  • FTP disk work no longer corrupts CPathBuffer members during initialization.
  • ZIP SFX settings no longer clears a std::string owner with memset.
  • Salmon no longer uses handle-tracked critical-section initialization before the handle system is ready.
  • Recursive delete scripts now respect skipped subtrees all the way up to the parent.

Sally 1.0.21

· Downloads and full notes on GitHub

This release focuses on file-operation correctness, Unicode display fixes, and release build hygiene.

Fixed
  • Fixed Brief view rendering for Unicode filenames that could appear partially clipped or truncated. (#76)
  • Fixed false "not enough space" warnings when moving folders on the same drive. (#74)
  • Fixed external packer/unpacker command handling for list-file based workflows, including legacy PKZIP/PKUNZIP-style configurations. (#47)
  • Added optional preview registry isolation so evaluation builds can use a version-specific settings root without disturbing stable Sally settings. (#11)
Improved
  • Improved Unicode path preservation through copy/move and headless file-operation paths.
  • Improved FTP plugin release build metadata so release packages are built from source state cleanly.

Sally 1.0.20

· Downloads and full notes on GitHub

Sally v1.0.20 focuses on Unicode-path reliability, viewer polish, and safer helper-process plumbing. It also keeps the v1.0.19 copy/move and static UnRAR work on the public main-line release.

Highlights

  • Improved Unicode filename handling in the file panel, safe-file layer, plugin filesystem bridge, shell-extension bridge, and internal viewer.
  • Hardened shell-extension and helper-process IPC namespacing for Sally, FileComp, PictView, PlugCore, and translator helpers.
  • Added exact-wide path handling for file create/reopen flows, reducing lossy ANSI fallback behavior with non-ASCII and long paths.
  • Fixed internal viewer Unicode window handling and decoded-viewer row clipping.
  • Added headless file-operation and script-execution infrastructure for copy/move style workflows.
  • Carried forward static UnRAR packaging: RAR support is built into plugins/unrar/salunrar.dll without shipping a separate unrar.dll.
  • Absorbed upstream translation and workflow cleanup.

GitHub Issues

Thanks to everyone who reported the recent Unicode and viewer problems. This release closes:

  • #64 - viewer end-of-file and row-clipping follow-up.
  • #73 - Unicode filenames and the shell context-menu bridge.
  • #75 - Unicode filename display in the file panel.

If any of these still reproduce with v1.0.20, please reopen the issue or file a fresh report with the exact filename/path and steps.

Sally 1.0.19

· Downloads and full notes on GitHub

Sally v1.0.19 brings the new Unicode-aware copy/move path into the release build and ships RAR archive support without an external UnRAR DLL.

Highlights

  • Added the wide snapshot builder path for disk-panel copy, move, drag/drop, and copy-of operations, including filters, ADS handling, rename masks, and long-path coverage.
  • Preserved legacy file-operation safeguards in the new path, including same-path copy rejection and encrypted source/target behavior.
  • Statically linked the vendored UnRAR engine into plugins/unrar/salunrar.dll, so RAR support no longer depends on a separate unrar.dll next to the plugin.
  • Expanded plugin build and packaging coverage, including release distribution population for the supported plugin set.
  • Added FTP plugin CMake coverage as part of the broader plugin build work.

Sally 1.0.18

· Downloads and full notes on GitHub

Sally v1.0.18

Highlights:

  • Added a Help menu shortcut for checking new Sally and plugin versions through CheckVer when the plugin is available.
  • Preserved Unicode and long-path names in the focused panel info line and command prompt path prefix.
  • Improved Unicode handling for Make File List output and clipboard export, including UTF-8 output when needed.
  • Refreshed the README and screenshot to show Sally's current dark mode, Unicode, and long-path strengths.

Release fixes:

  • Restored localized Sally core language-pack generation for the new update-check menu string, so the release zips include the full translated language set.

Sally 1.0.17

· Downloads and full notes on GitHub

Sally v1.0.17

Bug fixes:

  • Fix mouse navigation regressions in pane path / parent directory handling.
  • Fix startup hangs with unreachable saved network or UNC paths by restoring cancellable path checks.
  • Fix false "Cannot move a file to itself" during drag/drop to parent or same-named folders.
  • Preserve Unicode pane-path text during drag operations.
  • Fix Find dialog active folder seeding from the active panel.
  • Restore Unicode Find status updates and preserve long paths before status-bar path ellipsizing.
  • Fix Find status progress visibility and About dialog dark-mode painting.
  • Widen the Find Type filter dropdown so "All files and folders" is readable.
  • Restore non-English language packs in the release zips.
  • Fix plugin loading when side-by-side plugin dependencies must resolve from the plugin DLL directory.

Full changelog: https://github.com/0xeb/sally/compare/v1.0.16...v1.0.17

Sally 1.0.15

· Downloads and full notes on GitHub

Sally v1.0.15

Bug-fix release. Three issues closed.

Fixed
  • #61 Find dialog: the Type filter (All / Files / Folders) now persists across dialog reopens and Sally restarts. Stored in registry value Find Files Type Filter.
  • #63 Non-ASCII install paths: Sally now starts cleanly when installed under a directory containing characters outside the active ANSI codepage (Cyrillic, Greek, etc.). Three startup paths were wide-ified — language file load, config.reg load, and salmon.exe (crash reporter) launch.
  • #64 Viewer end-of-file: the final line of a text file is now reachable via Ctrl+End regardless of where the line breaks fall relative to the visible window height.
Commits
  • 0xeb/sally@b9454c22 — issue sweep (language load fix + viewer end-of-file fix)
  • 0xeb/sally@69de5a45 — Find dialog Type filter persistence
  • 0xeb/sally@734baf7f — wide config.reg + salmon.exe launch

Sally 1.0.12

· Downloads and full notes on GitHub

Sally v1.0.12 is a focused polish and infrastructure release following the dark mode pre-alpha.

Highlights

  • Polished the dark-mode work in configuration dialogs, continuing the Sally UI modernization beyond Open Salamander.
  • Updated the README to clearly describe what Sally adds over Open Salamander: dark mode, Unicode and long path operations, ARM64 builds, WebView2 Markdown viewing, modern CMake/release tooling, language packs, and legacy plugin consent.

Sally 1.0.11

· Downloads and full notes on GitHub

Sally v1.0.11

Highlights:

  • Pre-Alpha Dark Mode Support is now available for Sally core UI and bundled first-party plugins.
  • To try it, open Options > Configuration... > Appearance > Theme > Mode, then choose Dark.
  • Choose System to follow the Windows app theme, or Light to keep the classic default appearance.
  • Windows High Contrast remains authoritative and disables custom dark painting.
  • This is an early visual pass; most common surfaces are covered, but some legacy or custom plugin UI may still need polish.

Also included:

  • README feature summary refreshed for recent Unicode, viewer, ARM64, localization, and release packaging work.
  • Release builds are now created as drafts first, so notes can be reviewed before publication.

Sally 1.0.10

· Downloads and full notes on GitHub

Sally v1.0.10

Highlights:

  • Fixed viewer support for BOM-marked Unicode text files.
  • UTF-8 BOM, UTF-16LE BOM, and UTF-16BE BOM files now open as decoded text in Auto/Text mode without showing the BOM.
  • Hex mode still shows the original raw BOM bytes.
  • Selection, copy/drag text, and literal find preserve raw byte offsets while returning decoded Unicode text.
  • Fixed disk drag handling for Unicode filenames.
  • Synced upstream translation/comment updates.

Sally 1.0.8

· Downloads and full notes on GitHub

What's new

Language support for all platforms

Sally now ships with 10 languages on all three platforms — x64, x86, and ARM64. Previously, only the x64 build included translated language packs.

Supported languages: Chinese (Simplified), Czech, Dutch, French, German, Hungarian, Romanian, Russian, Slovak, and Spanish.

Translation tools
  • New localization pipeline for building and maintaining language packs
  • Translator workspace package included in this release for community translators

Sally 1.0.7

· Downloads and full notes on GitHub

What's new

Bug fixes
  • Fix Unicode rename text corruption in Quick Rename (#40, #46)
  • ANSI subclass procs were converting Unicode combo edit to ANSI mode
  • Added ? and * to invalid filename character validation
  • Fix Unicode copy-name collision handling
  • Stabilize Unicode rename history and copy/paste paths
  • Correct Unicode name/ext rendering and no-op rename handling
  • Keep Unicode rename edit editable while typing
  • Restore native Unicode combo editing behavior
  • Refactor combo sync to direct method call
Other
  • Merge upstream translations (shexreg, sort, svg, shiconov, stswnd, snooper, shellsup)
  • Enable TRACE_TO_FILE in Debug builds for diagnostics

What's Changed

Sally 1.0.6

· Downloads and full notes on GitHub

Sally v1.0.6

This patch release fixes Markdown preview theming in the F3 WebViewer.

Highlights
  • Fixed Markdown preview to follow Sally's configured theme instead of inheriting Windows or WebView2 dark mode.
  • Restored readable F3 preview rendering when Sally is set to light theme on a system using dark mode.
  • Kept the fix scoped to Markdown rendering so normal WebViewer handling for HTML, XML, SVG, and image files remains unchanged.
Additional Work
  • Bumped the internal build number for the 1.0.6 release.

Sally 1.0.5

· Downloads and full notes on GitHub

Sally v1.0.5

This release focuses on updater reliability, a targeted editor fix, and a small branding refresh.

Highlights
  • Fixed Check for New Versions to use GitHub Releases over HTTPS and correctly detect the latest Sally release.
  • Normalized Sally and plugin homepage links to explicit https:// URLs.
  • Bumped CheckVer resource versions so stale language files are rejected instead of mixing old updater resources with new code.
  • Restored Shift+F4 editor launch after create.
  • Refreshed Sally SVG branding assets.
Additional Work
  • Included small internal cleanup around registry string handling and password buffer lifetime management.
  • Recorded upstream translation-only history sync without taking upstream tree changes into the Sally codebase.

Sally 1.0.3

· Downloads and full notes on GitHub

Sally v1.0.3

This release includes a partial fix for Unicode file operation issues tracked in #38.

Highlights
  • Improved Unicode copy-name generation and collision handling.
  • Added safer ANSI fallback detection to avoid lossy rename/create behavior.
  • Quick Rename retry now preserves the latest Unicode text across retries.
  • Viewer Ctrl+F “not found” prompt is now correctly parented to the viewer window.
Known Remaining Issue
Included Work

Sally 1.0.2

· Downloads and full notes on GitHub

What's Changed

---

Packaging update (v1.0.2 regenerated)
  • Runtime archives were reduced by excluding debug symbols from deploy zips.
  • Example (x64): Sally-v1.0.2-x64.zip dropped from ~47.37 MiB to ~5.79 MiB (about 87.78% smaller).
  • Debug symbols are now provided separately as an optional download: Sally-v1.0.2-pdb.zip.
  • Runtime zips still include deploy content (app binary, plugins, language packs, utilities).