From 9dc5bc95192e4526622c0599aa8fc7602b7859bd Mon Sep 17 00:00:00 2001 From: Byron Adams Date: Sat, 14 Jan 2017 03:46:29 +1300 Subject: [PATCH] fix(electron-updater): Add better error handling for github releases (#1114) Closes #1112 --- .../src/GitHubProvider.ts | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/packages/electron-auto-updater/src/GitHubProvider.ts b/packages/electron-auto-updater/src/GitHubProvider.ts index 586edde11ed..6e6d9bc2da8 100644 --- a/packages/electron-auto-updater/src/GitHubProvider.ts +++ b/packages/electron-auto-updater/src/GitHubProvider.ts @@ -9,21 +9,23 @@ export class GitHubProvider implements Provider { } async getLatestVersion(): Promise { - // do not use API to avoid limit const basePath = this.getBasePath() - let version = (await request( - {hostname: "github.com", path: `${basePath}/latest`}, - null, - null, - "GET", - {"Accept": "application/json"} - )).tag_name + let version = null try { - version = (version.startsWith("v")) ? version.substring(1) : version + // do not use API to avoid limit + const releaseInfo = (await request( + {hostname: "github.com", path: `${basePath}/latest`}, + null, + null, + "GET", + {"Accept": "application/json"} + )) + + version = (releaseInfo.tag_name.startsWith("v")) ? releaseInfo.tag_name.substring(1) : releaseInfo.tag_name } catch (e) { - throw new Error(`Cannot parse determine latest version from github "${version}": ${e.stack || e.message}`) + throw new Error(`Unable to find latest version on github, please ensure a production release exists. \n ${e.stack || e.message}`) } let result: UpdateInfo | null = null