diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2018-09-13 11:15:50 -0300 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2018-09-13 11:15:50 -0300 |
| commit | c0ca97c298e93475a49dea549cc33c970b03eee7 (patch) | |
| tree | 00daa8454001204907aebc914acbc0c498cb3994 | |
| parent | 32be6c60e8a742214c3f092b31721b181902a73f (diff) | |
| parent | 78c299c471f441207b7f8598276a426f46b413bd (diff) | |
| download | mullvadvpn-c0ca97c298e93475a49dea549cc33c970b03eee7.tar.xz mullvadvpn-c0ca97c298e93475a49dea549cc33c970b03eee7.zip | |
Merge branch 'show-version-asap'
| -rw-r--r-- | gui/packages/desktop/src/renderer/app.js | 20 | ||||
| -rw-r--r-- | gui/packages/desktop/src/renderer/redux/version/reducers.js | 14 |
2 files changed, 22 insertions, 12 deletions
diff --git a/gui/packages/desktop/src/renderer/app.js b/gui/packages/desktop/src/renderer/app.js index 6b310613da..fa1c1b0d21 100644 --- a/gui/packages/desktop/src/renderer/app.js +++ b/gui/packages/desktop/src/renderer/app.js @@ -334,14 +334,18 @@ export default class AppRenderer { actions.settings.updateAutoConnect(autoConnect); } - async _fetchVersionInfo() { + async _fetchCurrentVersion() { const actions = this._reduxActions; - const latestVersionInfo = await this._daemonRpc.getVersionInfo(); const versionFromDaemon = await this._daemonRpc.getCurrentVersion(); const versionFromGui = remote.app.getVersion().replace('.0', ''); actions.version.updateVersion(versionFromDaemon, versionFromDaemon === versionFromGui); - actions.version.updateLatest(latestVersionInfo); + } + + async _fetchLatestVersionInfo() { + // fetching the latest version info has a higher latency because the daemon communicates with + // the API server + this._reduxActions.version.updateLatest(await this._daemonRpc.getVersionInfo()); } async _onOpenConnection() { @@ -373,6 +377,12 @@ export default class AppRenderer { // fetch the rest of data try { + await this._fetchCurrentVersion(); + } catch (error) { + log.error(`Cannot fetch the current version: ${error.message}`); + } + + try { await this._fetchRelayLocations(); } catch (error) { log.error(`Cannot fetch the relay locations: ${error.message}`); @@ -394,9 +404,9 @@ export default class AppRenderer { } try { - await this._fetchVersionInfo(); + await this._fetchLatestVersionInfo(); } catch (error) { - log.error(`Cannot fetch the version information: ${error.message}`); + log.error(`Cannot fetch the latest version information: ${error.message}`); } // auto connect the tunnel on startup diff --git a/gui/packages/desktop/src/renderer/redux/version/reducers.js b/gui/packages/desktop/src/renderer/redux/version/reducers.js index 97e99f0c3e..4463d1cd5b 100644 --- a/gui/packages/desktop/src/renderer/redux/version/reducers.js +++ b/gui/packages/desktop/src/renderer/redux/version/reducers.js @@ -4,22 +4,22 @@ import type { ReduxAction } from '../store'; export type VersionReduxState = { current: string, - latest: string, - latestStable: string, + latest: ?string, + latestStable: ?string, upToDate: boolean, consistent: boolean, }; const initialState: VersionReduxState = { current: '', - latest: '', - latestStable: '', - upToDate: false, + latest: null, + latestStable: null, + upToDate: true, consistent: true, }; -const checkIfLatest = (current: string, latest: string, latestStable: string): boolean => { - return current === latest || current === latestStable; +const checkIfLatest = (current: string, latest: ?string, latestStable: ?string): boolean => { + return latest === null || latestStable === null || current === latest || current === latestStable; }; export default function( |
