Changelog
Every user-facing change to Wspr. Versions before 5.1.0 predate this changelog — see the full history on GitHub Releases.
5.8.7 — September 5, 2026
Everything you said after a stumble now makes it into the text.
Fixed
- A repeated phrase no longer swallows the end of a dictation. Every speech model has a weak spot: when you hesitate, or start a sentence over, it can lock onto the phrase it just wrote and write it again, and again, and everything you say afterwards gets pulled into the same rut. Wspr already tidied that up by collapsing the repeats and leaving a short note where the loop had been, but the words spoken after the loop were gone. Wspr now notices the loop as it happens and transcribes that stretch of audio a second time with a fresh start, so the rest of what you said comes through as text instead of a note. The note only appears now if the second pass gets stuck too. This applies to hotkey dictation and to file transcription alike; on a two-hour test recording it recovered 42 seconds of speech that previous versions dropped.
5.8.6 — August 30, 2026
A recording you cut short no longer pastes a word nobody said.
Fixed
- Starting and stopping a recording straight away could paste something like *whistling*. Wspr plays a short tone through your speakers the instant recording begins, and your microphone picks that tone up along with everything else in the room. On a normal dictation your voice buries it. On a recording that is over almost as soon as it started, that tone is most of what was captured, and the transcription model writes down what it heard: not a word, but its notation for a noise, which then landed in your text. Wspr now silences that opening sliver of the recording before any transcription happens, so the tone is never part of what the model is given. As a second line of defence it also drops noise descriptions wrapped in asterisks, brackets or parentheses from the finished text, which covers a Bluetooth headset delivering the tone late enough to arrive after that opening window. Words you actually spoke are left untouched, and if you have the sounds turned off, nothing about your recordings changes at all.
5.8.5 — August 21, 2026
The Linux fix from this morning was still not the whole story. This one is.
Fixed
- Links still did nothing on the Linux AppImage, even after 5.8.4. When Wspr updates itself it starts the new version from inside the old one, and each version adds its own folders to the front of the list of places to look for programs. So a computer that has updated in place is carrying two copies of Wspr's packaging at once, not one, and Wspr only knew the name of the current copy. It cleaned that one up and left the previous one sitting at the front of the queue, and that copy contains the same small helper that reports success and opens nothing. The button went quiet again for exactly the same reason as before, one layer further back. Wspr now clears out every copy it can find rather than only its own, and asks your system for its own web-address helper by name and full location instead of searching a list that has been tampered with. It also stops leaving a finished helper process behind after every click. This was checked by planting a decoy copy of the broken helper in Wspr's path and confirming both that the page opens and that the decoy was never touched.
5.8.4 — August 21, 2026
The Linux fix from yesterday only fixed half the problem. This is the other half.
Fixed
- Links still did nothing on the Linux AppImage. Version 5.8.3 stopped your browser crashing on Wspr's bundled libraries, and that was a real cause, but it was not the only one. An AppImage also rewrites the list of places to look for programs so that its own copies come first, and it happens to carry its own copy of the small helper that hands a web address to your desktop. That copy reports success and opens nothing. So the click still went nowhere, quietly instead of noisily, and from the outside nothing had changed. Wspr now removes everything the bundle rewrote before it hands over the address, keeping the parts of each setting that belong to your system, so your desktop's own helper and your own browser are what receive it. This one was checked by watching a page actually load rather than by watching the handover appear to succeed.
5.8.3 — August 20, 2026
On Linux, the buttons that open a web page now open a web page.
Fixed
- Buttons that open a web page did nothing, on the Linux AppImage only. Upgrade to Pro, Manage activations, and the link to the website all did the same thing when you clicked them: nothing at all, with no error and nothing written to the log. An AppImage carries its own copies of the system libraries it needs and points anything it starts at them. That is fine for Wspr itself and wrong for your browser, which then tried to load Wspr's libraries instead of the ones it was built against and stopped before it ever got as far as opening a page. Because the browser was started successfully and only failed afterwards, Wspr had nothing to report and the click simply went nowhere. Wspr now hands the page to your desktop cleanly, with its own libraries left out of the handover. If you installed Wspr from the .deb package, or you are on macOS or Windows, this never affected you.
5.8.2 — August 20, 2026
Your licence stops quietly spending the devices you are allowed to use it on.
Fixed
- Re-entering your licence key used up another of your three devices, even on a computer that already had it. Wspr kept your licence in one place only: the password store your operating system provides. That store is not always available the instant Wspr asks for it. A locked keychain, a login session that has not unlocked it yet, or a security prompt answered the wrong way all produce the same answer as never having bought Wspr at all, and Wspr believed it. It dropped to the free tier and asked for your key. You pasted it back in, everything looked fine, and behind the scenes that counted as activating a brand-new device. Nothing noticed that it was the same computer as last time, because the activation is registered the moment it is asked for and carries no memory of the machine that asked. Do that three times over a few months and you are out of devices, on one laptop, with no way to tell why. Wspr now keeps a second copy of your licence in a private file alongside its settings, readable only by you, and takes whichever copy answers. Existing licences are copied across the first time you open this version, with no internet connection needed. And if you do type your key in again on a computer that already has it, Wspr checks before it asks for anything, and reuses the activation you already hold.
- Freeing up a device in your account made Wspr act as though it had lost its internet connection. When you remove an old activation from your Polar account, the one your computer is holding may be the one that goes. Wspr could not tell that apart from being offline, so it carried on quietly for a week and then dropped to the free tier with no explanation at all. It now recognises what happened, keeps your key, and offers to reactivate in a single click, from the menu bar, from Settings, and from the upgrade window with your key already filled in. Wspr keeps working while you get to it, and if the activation turns out to have been fine all along, the notice clears itself.
- Activation errors said nothing you could act on. Running out of devices produced Activation failed (403), which is a number, not an explanation, and it pointed nowhere. It now tells you that the key is already in use on all three of its devices and links you to the page in your account where you can free one. A mistyped key and a licence server you cannot reach now say so in as many words, too.
- Wspr could freeze on startup when it could not read your stored licence. The code that keeps you on Pro when your licence cannot be read got stuck against itself and never finished, on exactly the computers it was written to protect.
5.8.1 — August 20, 2026
Wspr now picks the right graphics card on machines that have more than one.
Fixed
- Transcription ran on the wrong GPU. Most desktops and many laptops have two graphics processors: a fast dedicated card, and a smaller one built into the CPU. Wspr took whichever of them its graphics driver happened to list first, and that order is not stable. It can differ between machines, and on the same machine it can change from something as ordinary as plugging a monitor into a different port. When the built-in one came first, transcription quietly moved onto it and got several times slower, with nothing to indicate anything had changed. Wspr now looks at every graphics processor available to it and chooses deliberately, preferring a dedicated card and, if there is more than one, the one with the most memory. It also writes its choice to the log, so if a machine ever does end up on the slower path there is now a record saying so.
5.8.0 — August 14, 2026
A shortcut that puts your last transcription back, for the times it lands somewhere it should not have.
Added
- Paste last transcription. An optional shortcut that re-inserts your most recent transcription into whatever app is focused, through the same paste path a live dictation uses. It is for the moments the text does not arrive: the insert lands in the wrong window, the app you were aiming at swallowed it, or you clicked away a second too early and watched a long dictation disappear. Set it under Settings → General; it is empty until you choose a key, and Shift+Alt+V (Shift+Option+V on a Mac) is a good one. A dictation whose paste failed outright is now kept in your history as well, so the shortcut has something to bring back rather than nothing. It fires when you let the keys go, so the shortcut's own modifiers cannot interfere with the paste it is about to send. On Wayland your desktop owns global shortcut keys, so assign it in your desktop's settings alongside the dictation hotkey, or bind a key to
wspr --paste-lastif your compositor does not offer the app's shortcuts.
5.7.1 — August 12, 2026
Recordings no longer stop on their own before you are finished talking.
Fixed
- Push-to-talk recordings stopped after exactly two minutes. Holding the hotkey starts a watchdog whose job is to catch a key release that never arrives, so a stuck key cannot leave your microphone running. It was set to two minutes, and when it fired it cancelled the recording outright, so any push-to-talk dictation longer than that was thrown away and you got nothing back for it. The watchdog now waits an hour, and when it fires it stops the recording and transcribes it instead of discarding it: at that length a held key is far more likely to be someone genuinely talking than a key that stuck, and a key that really did stick records silence, which Wspr already discards on its own. Toggle mode never had this watchdog and was never affected.
- Recordings longer than ten minutes were silently cut short. Wspr held a hard ceiling of ten minutes on a single recording and dropped everything past it without saying so. The ceiling is now sixty minutes. Reaching it behaves as before and on purpose: Wspr transcribes what it captured and tells you the tail was cut, rather than losing the recording.
5.7.0 — August 12, 2026
Wspr now tells you when it is recording, and stops pasting filler text when you did not say anything.
Added
- Start and stop sounds. A short, bright click when recording starts and a softer, lower one when it stops, so you know the recording state without looking at the screen. The two are far apart in pitch, rising for start and falling for stop, so you can tell them apart without thinking about it. Cancelling plays the stop sound too, so a hotkey that did not register is never confused with one that did. The sounds are synthesized rather than sampled: there are no audio files to ship, and the volume slider is a true gain rather than a preset. On by default, with an on/off toggle, a volume slider and a Test button under Settings → General. The start sound plays before Wspr dims your system audio, so dimming or muting can no longer swallow it.
- Empty recordings are discarded instead of transcribed. Starting and stopping without speaking used to hand Whisper pure silence, which it answers with invented filler like “Thank you for watching.” Wspr now checks the audio itself for speech and throws the recording away if it finds none, telling you it did. The check adapts to your own room: it compares against the recording's own noise floor rather than a fixed level, so it works in a quiet office and a cafe alike, and it deliberately errs toward keeping a recording. When the start sound is on it ignores the head of the recording, so the sound picked up by your microphone cannot fool it; with the sound off it weighs the whole recording, so a single short word still gets through. On by default, and switchable off under Settings → General.
Fixed
- Linux: raising a system notification could kill the app. Any message Wspr showed you from a recording, such as telling you the selected model is not downloaded, went through a notification library in a way that is unsafe from inside the app's async runtime, and took the whole app down with it. Linux now raises notifications on its own thread.
5.6.0 — July 31, 2026
Adds Large v3 Turbo — Large-class accuracy at roughly Small's speed — plus a set of licence reliability fixes.
Added
- New model: Large v3 Turbo. A 1.6 GB model that reaches Large v3 accuracy at roughly Small's speed. On a 45-second recording it transcribes in 1.16 s against Large v3's 3.40 s and Medium's 1.93 s (measured warm on an RTX 4060 Ti with Vulkan), and it loads in about half Large v3's time. It is now the best speed-to-accuracy trade in the list, and it beats Medium on both. Turbo is a separate download in Settings → Models; your current model stays selected until you choose it.
Fixed
- Pro is no longer lost when the system credential store can't be read. If your Keychain, wallet or Credential Manager was locked or unavailable when Wspr started — common on Linux desktops with a locked login keyring, and on headless or remote sessions — Wspr treated your licence as absent and quietly dropped you to the free tier. It now keeps Pro active and shows Wspr Pro (unverified) in the tray menu so you know to check on it.
- A refreshed licence check can no longer fail on a full disk. Wspr re-records the date each time it validates; if that write failed, the whole successful check was thrown away and Pro was lost for that session.
- A finished file transcription is never discarded. If Wspr could not write the entry to its history, it threw away the completed transcript along with it — losing hours of work to a bookkeeping error. The transcript is now always returned.
- A clock skewed into the future no longer confuses offline licence checks.
Changed
- Selecting Large v3 Turbo and then downgrading to 5.5.0 or earlier resets the active model to Base, because older versions do not recognise the new value. Custom vocabulary and every other setting are preserved — just re-select your model after a downgrade.
5.5.0 — July 30, 2026
Fixes a defect that silently destroyed parts of long transcriptions, plus the language setting that never worked.
Fixed
- Long recordings no longer get stuck repeating a phrase. Transcribing a long file could make Whisper latch onto a sentence and repeat it dozens or hundreds of times, replacing minutes of real speech — in the worst case we found, 75% of a transcript. Whisper feeds each 30-second window its own previous output as context, so one repeat could reinforce itself for the rest of the file. Audio is now decoded in bounded spans, so a repetition can no longer propagate. Short dictations were never affected.
- "Auto" language detection now actually detects. The Language setting's default "Auto-detect" silently decoded everything as English, so non-English recordings were transcribed as though they were English — which also made the repetition problem more likely. Auto-detect now works, and the language list has grown from 9 to 27.
- A damaged settings file no longer wipes your settings. Any unreadable field in the settings file reset everything — hotkeys, custom vocabulary, rewrite styles — and immediately overwrote the file. Wspr now salvages every field it can read and keeps a backup of the original.
- Custom vocabulary now applies to a whole recording. It previously faded out after the first few minutes of a long file. It is now re-applied throughout.
- Clearer errors for files that can't be read — an unreadable or corrupt media file now explains what went wrong instead of showing an exit code.
Added
- Progress and cancellation for file transcription. File jobs show a live percentage and can be cancelled mid-run instead of being uninterruptible. A cancelled job doesn't count against your usage.
- Automatic repetition guard. If a degenerate repetition ever slips through, Wspr collapses it, marks the spot inline, and keeps the original text in history rather than silently shipping the junk.
Changed
- Decoding now uses Whisper's own default candidate count, which improves its ability to recover from a bad patch of audio. Slightly slower only when a recovery is actually needed.
- Segment boundaries on long files may differ slightly from 5.4.0. Timestamps remain continuous; SRT output may split lines at different points.
5.4.0 — July 12, 2026
A codebase-wide quality-and-hardening pass (internal audit). The focus is reliability, error visibility, and safer releases.
Fixed
- Hardened error handling throughout the engine — silent failures and several reachable crash paths now surface a clear notification instead of failing quietly or aborting.
- Transcribing a WAV file that isn't 16 kHz mono (e.g. a normal 44.1/48 kHz recording) now converts it properly instead of producing garbage output.
- Tightened the recording state machine and webview/download handling for more predictable behaviour under edge cases (rapid hotkey presses, device disconnects mid-recording, very long recordings).
Added
- Errors during dictation ("No speech detected", transcription failures) now show a system notification, so they're visible even with no Wspr window open.
- Log files under the app data directory (
logs/), making problems diagnosable after the fact.
Changed
- Overhauled the release pipeline for safer, more reproducible builds: the macOS build now refuses to sign or ship a partial/stale app bundle, the updater manifest is verified and published as a confirmed step (so a release can't be silently stranded), signing keys are no longer exposed on process command lines, and the Windows cross-compile toolchain is tracked in-repo (with a reproducible fetch step for the Vulkan SDK). Build docs were rewritten to match the actual build system.
5.3.1 — June 26, 2026
Fixed
- Linux AppImage: crash when opening the window on Wayland. On modern Wayland sessions with a recent Mesa (e.g. Fedora 44 / Mesa 26), clicking the tray icon to open the window crashed instantly with
Could not create default EGL display: EGL_BAD_PARAMETER— while hotkey dictation kept working, since that path never creates a window. The AppImage was shipping its own older Wayland client libraries, and the version mismatch against the host's Mesa broke EGL initialisation in the WebKit renderer. Those libraries are now stripped from the AppImage so the host's are used, which is where Wayland client libraries are meant to come from (thanks Nat for the detailed report). - Linux AppImage: SIGABRT on launch on GLib 2.80+ distros. The bundled GLib stack (2.72) shadowed the host's newer GLib while the host's tray libraries expected GLib 2.80+ symbols, aborting the app on startup on Fedora 40+ and Ubuntu 24.04+. The bundled GLib closure is now unbundled so the host's GLib is used.
5.3.0 — June 18, 2026
Fixed
- Linux: glibc-portable bundles and working Wayland global hotkey. Linux release bundles are now built against an older glibc so they launch on current LTS distros, and the global dictation hotkey works correctly under Wayland.
- Settings dropdowns unreadable in light mode. Forced a dark color-scheme so the Settings dropdown menus stay legible regardless of the system light/dark preference.
- Windows: removed the
msvcp140.dlldependency. The MSVC C runtime is now statically linked, so Wspr no longer fails to start on machines without the Visual C++ redistributable installed.
5.2.0 — May 6, 2026
Added
- Custom rewrite styles (Pro). Settings → Rewrite now has a "Custom styles" section where Pro users can create, edit, and delete their own rewrite prompts. Each custom style appears in the Default style dropdown alongside the built-ins (Minimal, Professional, Concise). Custom styles persist across launches and are picked up automatically by the rewrite hotkey and the recording-pill style picker.
This feature was advertised on the pricing page since v5.0 but the UI hadn't been wired up during the Rust+Tauri rewrite — fixed now (thanks Frank Drewett for the report).
5.1.3 — May 5, 2026
Fixed
- macOS: menu-bar-only behaviour. Wspr now installs as an Accessory app (no Dock icon), and the Settings window reliably comes to the front when invoked from the tray menu — matching the behaviour of other menu-bar apps like Rectangle and Bartender.
5.1.2 — May 4, 2026
Fixed
- Linux Wayland (KDE Plasma 6, GNOME 45+): the "Control input devices" permission prompt that appeared on every launch is gone. Wspr now uses the XDG RemoteDesktop portal via libei to inject text, so the compositor remembers the grant. You'll see a single "Started Remote Desktop" toast on first launch (or first paste of a session), then nothing afterwards. Wayland users on wlroots compositors (Sway, Hyprland) and X11 users are unchanged — the previous xdotool path remains as a fallback.
- Linux settings window: widened and lengthened so that on Fedora KDE (and other systems with denser default fonts) the General tab fits without scrollbars and the About tab doesn't clip off the right edge.
5.1.1 — April 29, 2026
Fixed
- Overlay transparency on macOS and Windows. The recording HUD pill was being rendered inside a white window background since v5.0.3 — a transparency setting had been accidentally gated to Linux only during a refactor. Restored to all three platforms.
5.1.0 — April 28, 2026
First release covered by this changelog. Earlier versions are documented in the GitHub Releases history.