Merge pull request #7444 from aaronraimist/promise-defer

Fix riot-web Promise.defer warnings (#7409)
This commit is contained in:
Travis Ralston
2018-10-08 21:18:22 -06:00
committed by GitHub
3 changed files with 77 additions and 81 deletions
+6 -8
View File
@@ -33,8 +33,7 @@ export async function getVectorConfig(relativeLocation) {
}
function getConfig(configJsonFilename) {
let deferred = Promise.defer();
return new Promise(function(resolve, reject) {
request(
{ method: "GET", url: configJsonFilename },
(err, response, body) => {
@@ -48,10 +47,10 @@ function getConfig(configJsonFilename) {
// from a file:// URI.
if (response) {
if (response.status == 404 || (response.status == 0 && body == '')) {
deferred.resolve({});
resolve({});
}
}
deferred.reject({err: err, response: response});
reject({err: err, response: response});
return;
}
@@ -59,9 +58,8 @@ function getConfig(configJsonFilename) {
// parameter, since this throws a parse error on empty
// which breaks if there's no config.json and we're
// loading from the filesystem (see above).
deferred.resolve(JSON.parse(body));
}
resolve(JSON.parse(body));
},
);
return deferred.promise;
});
}
+8 -10
View File
@@ -60,12 +60,12 @@ import CallHandler from 'matrix-react-sdk/lib/CallHandler';
import {getVectorConfig} from './getconfig';
let lastLocationHashSet = null;
// Disable warnings for now: we use deprecated bluebird functions
// and need to migrate, but they spam the console with warnings.
Promise.config({warnings: false});
let lastLocationHashSet = null;
function initRageshake() {
rageshake.init().then(() => {
console.log("Initialised rageshake: See https://bugs.chromium.org/p/chromium/issues/detail?id=583193 to fix line numbers on Chrome.");
@@ -179,8 +179,7 @@ function makeRegistrationUrl(params) {
}
function getConfig(configJsonFilename) {
let deferred = Promise.defer();
return new Promise(function(resolve, reject) {
request(
{ method: "GET", url: configJsonFilename },
(err, response, body) => {
@@ -194,10 +193,10 @@ function getConfig(configJsonFilename) {
// from a file:// URI.
if (response) {
if (response.status == 404 || (response.status == 0 && body == '')) {
deferred.resolve({});
resolve({});
}
}
deferred.reject({err: err, response: response});
reject({err: err, response: response});
return;
}
@@ -205,11 +204,10 @@ function getConfig(configJsonFilename) {
// parameter, since this throws a parse error on empty
// which breaks if there's no config.json and we're
// loading from the filesystem (see above).
deferred.resolve(JSON.parse(body));
}
resolve(JSON.parse(body));
},
);
return deferred.promise;
});
}
function onTokenLoginCompleted() {
+8 -8
View File
@@ -68,11 +68,11 @@ export default class WebPlatform extends VectorBasePlatform {
// annoyingly, the latest spec says this returns a
// promise, but this is only supported in Chrome 46
// and Firefox 47, so adapt the callback API.
const defer = Promise.defer();
return new Promise(function(resolve, reject) {
global.Notification.requestPermission((result) => {
defer.resolve(result);
resolve(result);
});
});
return defer.promise;
}
displayNotification(title: string, msg: string, avatarUrl: string, room: Object) {
@@ -103,13 +103,13 @@ export default class WebPlatform extends VectorBasePlatform {
}
_getVersion(): Promise<string> {
const deferred = Promise.defer();
// We add a cachebuster to the request to make sure that we know about
// the most recent version on the origin server. That might not
// actually be the version we'd get on a reload (particularly in the
// presence of intermediate caching proxies), but still: we're trying
// to tell the user that there is a new version.
return new Promise(function(resolve, reject) {
request(
{
method: "GET",
@@ -119,15 +119,15 @@ export default class WebPlatform extends VectorBasePlatform {
(err, response, body) => {
if (err || response.status < 200 || response.status >= 300) {
if (err === null) err = { status: response.status };
deferred.reject(err);
reject(err);
return;
}
const ver = body.trim();
deferred.resolve(ver);
resolve(ver);
},
);
return deferred.promise;
});
}
getAppVersion(): Promise<string> {