fix: errors when offline with auto-check-update

Massimo Melina committed Aug 1, 2024 at 16:50 UTC 815b6431c68a74348caf15f7b3e4e9439a9b779c
1 file changed +9 -6
src/update.ts
+9 -6
@@ -4,7 +4,7 @@ import { getProjectInfo, getRepoInfo } from './github'
4 import { argv, HFS_REPO, IS_BINARY, IS_WINDOWS, RUNNING_BETA } from './const'
5 import { dirname, join } from 'path'
6 import { spawn, spawnSync } from 'child_process'
7 -import { DAY, MINUTE, exists, debounceAsync, httpStream, unzip, prefix, xlate } from './misc'
7 +import { DAY, exists, debounceAsync, httpStream, unzip, prefix, xlate, HOUR } from './misc'
8 import { createReadStream, renameSync, unlinkSync } from 'fs'
9 import { pluginsWatcher } from './plugins'
10 import { chmod, stat } from 'fs/promises'
@@ -33,11 +33,14 @@ setInterval(debounceAsync(async () => {
33 if (!autoCheckUpdate.get()) return
34 if (Date.now() < lastCheckUpdate.get() + AUTO_CHECK_EVERY) return
35 console.log("checking for updates")
36 - const u = (await getUpdates(true))[0]
37 - if (u) console.log("new version available", u.name)
38 - autoCheckUpdateResult.set(u)
39 - lastCheckUpdate.set(Date.now())
40 -}), MINUTE / 30)
36 + try {
37 + const u = (await getUpdates(true))[0]
38 + if (u) console.log("new version available", u.name)
39 + autoCheckUpdateResult.set(u)
40 + lastCheckUpdate.set(Date.now())
41 + }
42 + catch {}
43 +}), HOUR)
44
45 export type Release = { // not using interface, as it will not work with kvstorage.Jsonable
46 prerelease: boolean,