updater full changelog
2.13.x
Section titled “2.13.x”2.13.2
Section titled “2.13.2”2a9c29e0(#3578 by @alii13) On macOS, a failed install no longer deletes the installed app. The bundles are swapped atomically where the file system supports it; otherwise the previous app is restored, or kept as<name> (previous version).appand reported through the newError::PreviousAppNotRestored. Also fixes installing apps on a volume other than the temp directory's, and the bundle root's permissions (0755).
2.13.1
Section titled “2.13.1”-
ecd3273e(#3480 by @renovate) Updatedwindows-rsdependencies:- deep-link: updated
windows-registryto 0.6 andwindows-resultto 0.4. The publicError::Windowsvariant wrapswindows_result::Error; applications using this type directly should update theirwindows-resultdependency. - opener: updated
windowsto 0.62. The publicError::Win32Errorvariant wrapswindows::core::Error; applications using this type directly should update theirwindowsdependency. - single-instance: updated
windows-systo 0.61 - updater: updated
windows-systo 0.61
- deep-link: updated
-
22e286f3(#3501 by @renovate) Updated dependencyinferto 0.22
2.13.0
Section titled “2.13.0”ae3c808e(#3602) The plugin's global API script (used withapp.withGlobalTauri) now resolves the core API fromwindow.__TAURI__instead of bundling its own copy of@tauri-apps/api. Values created with the core API are now accepted by plugin APIs in global mode (e.g. anImagefromwindow.__TAURI__.imagepassed toclipboardManager.writeImage, which previously failed theinstanceofcheck against the plugin's private copy), and the script is considerably smaller.9b29b601Update MSRV to 1.90 to match tauri.a87a3c7dUpdate documentation.
2.12.x
Section titled “2.12.x”2.12.0
Section titled “2.12.0”-
1308bfa3Breaking change: theallowDowngradesoption was removed from thecheckcommand and is now read from the plugin configuration instead.Previously any code running in the webview could pass
allowDowngrades: truetoplugin:updater|checkand relax the version check from "the update must be newer" to "the update must be different", overriding the comparator the application had configured on the Rust side. The flag is now an application-level setting:{"plugins": {"updater": {"allowDowngrades": true}}}It defaults to
false, and is ignored when the application provides its ownBuilder::default_version_comparator, which continues to take precedence.
2.11.x
Section titled “2.11.x”2.11.0
Section titled “2.11.0”f8053e65(#3527 by @Legend-Master) Documented Cargo feature flags in each plugin's crate-level documentation.622f02bf(#3516 by @Legend-Master) On Windows, returns an error if failed to spawn the installer ininstallthroughShellExecuteWab7489c9(#3299 by @Legend-Master) On Windows, add a new optionrestartAfterInstall/restart_after_installto install an update without the installer re-launching the app2371be83(#3526 by @Legend-Master) Addedsystem-proxy(enabled by default) feature flag to controlreqwest/system-proxyfeature (Use Windows and macOS system proxy settings automatically)
2.10.x
Section titled “2.10.x”2.10.1
Section titled “2.10.1”2.10.0
Section titled “2.10.0”4375c98b(#3073) Add no_proxy config to disable system proxy for updater plugin.f122ee98Allow configuring the updater client to accept invalid TLS certificates and hostnames for internal/self-signed update servers. These options are available via the plugin config (dangerousAcceptInvalidCerts,dangerousAcceptInvalidHostnames) and via theUpdaterBuilder(dangerous_accept_invalid_certs,dangerous_accept_invalid_hostnames).f122ee98Updater plugin now supports all bundle types: Deb, Rpm and AppImage for Linux; NSiS, MSI for Windows. This was added in https://github.com/tauri-apps/plugins-workspace/pull/262405c5da07(#3213) Updatedreqwestto 0.13, make sure to update yourreqwestdependency if you're usingUpdaterBuilder::configure_client
735d209d(#2761 by @FabianLars) Fixed an issue preventing updates via the NSIS installer from succeeding when the app was launched with command line arguments containing spaces.
-
87afa23c(#2726) Add allowDowngrades parameter to check commandAdded a new optional
allowDowngradesparameter to the JavaScript check command that allows the updater to consider versions that are lower than the current version as valid updates. When enabled, the version comparator will accept any version that is different from the current version, effectively allowing downgrades. -
73ff15de(#2757) Fix headers option inUpdate.downloadandUpdate.downloadAndInstalldoesn't work withRecord<string, string> | Headerstypes
c5b0f51c(#2621 by @Legend-Master) Fixcheckanddownloadoverrides theacceptheader
12c4537b(#2541 by @lucasfernog) Add support to theriscv64architecture.
6f881293(#2439 by @FabianLars) Fixed an issue that caused the plugin to emit aReleaseNotFounderror instead of aReqwesterror when the http request incheck()failed.
0afc9b6b(#2325 by @FabianLars) TheUpdatestruct/object will now contain araw_json/rawJsonproperty to be able to read parts of server's json response that are not handled by the plugin.
57efb47c(#2235 by @amrbashir) AddBuilder::headerandBuilder::headersmethod to configure default headers for updater.
829b6326(#1919 by @n1ght-hunter) Addtauri_plugin_updater::Builder::default_version_comparatormethod to set the default version comparator for the updater.
3a79266b(#2173 by @FabianLars) Bumped all plugins tov2.2.0. From now, the versions for the Rust and JavaScript packages of each plugin will be in sync with each other.
a1a82208(#1873 by @lucasfernog) Downgrade MSRV to 1.77.2 to support Windows 7.
9501cfa5(#1868 by @lucasfernog) Fix configuration parser incorrectly warning about the endpoint scheme.
e2c4dfb6Update to tauri v2 stable release.
2.0.0-rc.x
Section titled “2.0.0-rc.x”2.0.0-rc.4
Section titled “2.0.0-rc.4”221f50f5(#1816 by @amrbashir) Encode+when making updater requests which can be cause incorrectly interpolating the endpoint when using{{current_version}}in the endpoint where the current version contains a build number, for example1.8.0+1.04a0aea0(#1814 by @amrbashir) Breaking change, ChangedUpdaterBuilder::endpointsmethod to return aResult.04a0aea0(#1814 by @amrbashir) AdddangerousInsecureTransportProtocolconfig option to allow using insecure transport protocols, likehttp
2.0.0-rc.3
Section titled “2.0.0-rc.3”d00519e3(#1735 by @FabianLars) This releases the changes from 2.0.0-rc.2 to crates.io. Please see the links below for the actual changes.
2.0.0-rc.2
Section titled “2.0.0-rc.2”f8255e1d(#1661 by @amrbashir) Add a second argument inUpdate.downloadandUpdate.donloadAndInstallJS APIs to modify headers and timeout when downloading the update.
2.0.0-rc.1
Section titled “2.0.0-rc.1”-
e2e97db5(#1701 by @lucasfernog) Update to tauri 2.0.0-rc.8 -
77013925(#1636 by @lucasfernog) Fixes the updater not preserving AppImage file permissions. -
5d170a54(#1671 by @lucasfernog) Update to tauri 2.0.0-rc.3.
2.0.0-rc.0
Section titled “2.0.0-rc.0”9887d1Update to tauri RC.
2.0.0-beta.x
Section titled “2.0.0-beta.x”2.0.0-beta.11
Section titled “2.0.0-beta.11”-
f83b9e98(#1544 by @Legend-Master) On Windows, use a named tempfile with<app name>-<version>-installer.exe(or.msi) for v2 updaterBreaking Change:
UpdaterBuilder::newnow takes one more argumentapp_name: String
2.0.0-beta.8
Section titled “2.0.0-beta.8”-
99d6ac0f(#1606 by @FabianLars) The JS packages now specify the minimum@tauri-apps/apiversion instead of a single exact version. -
6de87966(#1597 by @Legend-Master) Update to tauri beta.25. -
bf29a72b(#1454 by @amrbashir) Fix regression in updater plugin failing to update using.msiinstaller.
2.0.0-beta.7
Section titled “2.0.0-beta.7”22a17980(#1537 by @lucasfernog) Update to tauri beta.24.
2.0.0-beta.6
Section titled “2.0.0-beta.6”2.0.0-beta.5
Section titled “2.0.0-beta.5”2.0.0-beta.4
Section titled “2.0.0-beta.4”-
43224c5d(#1330) AddUpdate.downloadandUpdate.installfunctions to the JavaScript API -
293f363(#1175) Add aon_before_exithook for cleanup before spawning the updater on Windows, defaults toapp.cleanup_before_exitwhen used throughUpdaterExt -
293f363(#1175) Breaking change: Therustls-tlsfeature flag is now enabled by default. -
e3d41f4(#1191) Internally use the webview scoped resources table instead of the app one, so other webviews can't access other webviews resources. -
7e2fcc5(#1146) Update dependencies to align with tauri 2.0.0-beta.14.
2.0.0-beta.3
Section titled “2.0.0-beta.3”-
4e37316(#1051) Fix deserialization ofwindows > installerArgsconfig field. -
4e37316(#1051) On Windows, fallback topassiveinstall mode when not defined in config. -
a3b5396(#1054) Fix Windows powershell window flashing on update -
a04ea2f(#1071) The global API script is now only added to the binary when thewithGlobalTauriconfig is true.
2.0.0-beta.2
Section titled “2.0.0-beta.2”2.0.0-beta.1
Section titled “2.0.0-beta.1”569defbUpdate to tauri beta.4.
2.0.0-beta.0
Section titled “2.0.0-beta.0”2.0.0-alpha.x
Section titled “2.0.0-alpha.x”2.0.0-alpha.5
Section titled “2.0.0-alpha.5”2.0.0-alpha.4
Section titled “2.0.0-alpha.4”2.0.0-alpha.3
Section titled “2.0.0-alpha.3”2.0.0-alpha.2
Section titled “2.0.0-alpha.2”2.0.0-alpha.1
Section titled “2.0.0-alpha.1”2.0.0-alpha.0
Section titled “2.0.0-alpha.0”© 2026 Tauri Contributors. CC-BY / MIT