qishibo/AnotherRedisDesktopManager · warning
this.$t('message.mac_not_support_auto_update')
Error message
this.$t('message.mac_not_support_auto_update') What it means
The electron-updater autoUpdater emitted an error whose text contains both 'zip' and 'file'. On macOS, auto-update works by downloading a signed ZIP artifact and swapping the app bundle; when the running build is unsigned, or the published artifacts do not contain the expected signed zip (or the process cannot use it), the updater rejects with messages mentioning the zip file. The app detects this shape and tells macOS users auto-update is unsupported — update manually.
Source
Thrown at src/components/UpdateCheck.vue:89
title: this.$t('message.update_not_available'),
duration: 2000,
});
});
ipcRenderer.on('update-error', (event, arg) => {
this.resetDownloadProcess();
let message = '';
const error = (arg.code ? arg.code : arg.message).toLowerCase();
// auto update check at app init
if (!this.manual || !error) {
return;
}
// mac not support auto update
if (error.includes('zip') && error.includes('file')) {
message = this.$t('message.mac_not_support_auto_update');
}
// err_internet_disconnected err_name_not_resolved err_connection_refused
else {
message = `${this.$t('message.update_error')}: ${error}`;
}
this.$notify.error({
message,
duration: 0,
dangerouslyUseHTMLString: true,
});
});
ipcRenderer.on('download-progress', (event, arg) => {
if (!this.downloadProcessShow) {
const h = this.$createElement;
View on GitHub (pinned to c149855106)
Solutions
- If you are a user: download the new release manually from the project releases page and replace the app
- If you publish the app: build the mac target with electron-builder (dmg + zip) and sign it (CSC_NAME / SIGNING_IDENTITY plus notarization credentials)
- Verify latest-mac.yml, the zip, and its blockmap are uploaded next to the release
- Suppress the auto-update path on macOS builds known to be unsigned instead of surfacing the raw error
Example fix
// before
if (error.includes('zip') && error.includes('file')) {
message = this.$t('message.mac_not_support_auto_update');
}
// after (publisher side: produce a signed zip so auto-update works)
// package.json build config
{
mac: { target: ['dmg', 'zip'], identity: 'Developer ID Application: NAME (TEAMID)' }
}
// CI env: CSC_NAME, APPLE_ID, APPLE_APP_SPECIFIC_PASSWORD for notarization Defensive patterns
Strategy: fallback
Prevention
- On macOS, treat auto-update as best-effort and always link the manual download
- Sign and notarize mac builds before publishing update feeds
- Ship both dmg and zip targets with electron-builder
- Check that latest-mac.yml, the zip, and its blockmap are present in release assets
When it happens
Trigger: Running an unsigned macOS build (zip/dmg without Developer ID signing) and triggering an update check; latest-mac.yml pointing at artifacts without a usable signed zip; CI publish missing the signing identity so the zip cannot be verified.
Common situations: Self-built electron apps without SIGNING_IDENTITY, macOS builds distributed outside the App Store without notarization, incomplete electron-builder publish artifacts (zip or blockmap missing).
Related errors
AI-assisted analysis of qishibo/AnotherRedisDesktopManager@c149855106 (2026-08-22).
Data as JSON: /api/errors/9e7cfbcb722eea0f.
Report an issue: GitHub.