(id, script, urls, opts)
| 78 | }); |
| 79 | |
| 80 | async function doCheckUpdate(id, script, urls, opts) { |
| 81 | let res; |
| 82 | let msgOk; |
| 83 | let msgErr; |
| 84 | try { |
| 85 | const { update } = await parseScript({ |
| 86 | id, |
| 87 | code: await downloadUpdate(script, urls, opts), |
| 88 | bumpDate: true, |
| 89 | update: { [kChecking]: false }, |
| 90 | ...opts, |
| 91 | }); |
| 92 | msgOk = i18n('msgScriptUpdated', [getScriptName(update)]); |
| 93 | res = true; |
| 94 | } catch (update) { |
| 95 | msgErr = update.error |
| 96 | || !update[kChecking] && await fetchResources(script, opts); |
| 97 | if (process.env.DEBUG) console.error(update); |
| 98 | } finally { |
| 99 | if (canNotify(script) && (msgOk || msgErr)) { |
| 100 | res = { |
| 101 | script, |
| 102 | text: [msgOk, msgErr]::trueJoin('\n'), |
| 103 | err: !!msgErr, |
| 104 | }; |
| 105 | } |
| 106 | delete processes[id]; |
| 107 | } |
| 108 | return res; |
| 109 | } |
| 110 | |
| 111 | async function downloadUpdate(script, urls, opts) { |
| 112 | let errorMessage; |
no test coverage detected