diff --git a/ts/updater/updater.ts b/ts/updater/updater.ts index 5c57d7f69..ec48ffafc 100644 --- a/ts/updater/updater.ts +++ b/ts/updater/updater.ts @@ -38,9 +38,11 @@ autoUpdater.on(DOWNLOAD_PROGRESS, eventDownloadProgress => { }); autoUpdater.on(UPDATE_DOWNLOADED, () => { + isUpdating = true; console.log('[updater] update downloaded'); console.info('[updater] calling quitAndInstall...'); autoUpdater.quitAndInstall(); + isUpdating = true; }); export async function start( @@ -113,16 +115,17 @@ async function checkForUpdates( try { const [updateVersionFromFsFromRenderer, releaseChannelFromFsFromRenderer] = getLatestRelease(); - logger.info( - `[updater] checkForUpdates updateVersionFromFsFromRenderer ${updateVersionFromFsFromRenderer} releaseChannelFromFsFromRenderer ${releaseChannelFromFsFromRenderer}` - ); if (!updateVersionFromFsFromRenderer || !updateVersionFromFsFromRenderer?.length) { logger.info( - '[updater] checkForUpdates updateVersionFromFsFromRenderer has not updated yet by the renderer process yet. Skipping update check' + '[updater] checkForUpdates getLatestRelease() has not been called by the renderer process yet. Skipping update check' ); return; } + logger.info( + `[updater] checkForUpdates updateVersionFromFsFromRenderer ${updateVersionFromFsFromRenderer} releaseChannelFromFsFromRenderer ${releaseChannelFromFsFromRenderer}` + ); + if (releaseChannelFromFsFromRenderer !== 'latest') { // we only allow pre-release updates if the release channel is alpha autoUpdater.allowPrerelease = releaseChannelFromFsFromRenderer === 'alpha'; @@ -145,13 +148,15 @@ async function checkForUpdates( // Get the update using electron-updater, this fetches from github const result = await autoUpdater.checkForUpdates(); - logger.info('[updater] checkForUpdates got github response back', result); - if (!result?.updateInfo) { - logger.info('[updater] no update info received'); + logger.info('[updater] received no updateInfo in response from GitHub'); return; } + logger.info( + `[updater] checkForUpdates received response from GitHub at ${new Date().toISOString()} version: ${result?.updateInfo?.version}` + ); + try { const hasUpdate = isUpdateAvailable(result.updateInfo); logger.info('[updater] hasUpdate:', hasUpdate); @@ -187,6 +192,7 @@ async function checkForUpdates( await showCannotUpdateDialog(mainWindow, i18n); throw error; } + const window = getMainWindow(); if (!window) { logger.error('[updater] cannot showDownloadUpdateDialog, mainWindow is unset'); @@ -201,6 +207,7 @@ async function checkForUpdates( logger.info('[updater] calling windowMarkShouldQuit...'); windowMarkShouldQuit(); + logger.info('[updater] UPDATE_DOWNLOADED event should be emitted soon...', UPDATE_DOWNLOADED); } finally { isUpdating = false; }