diff --git a/package-lock.json b/package-lock.json index f7e9c9e4..a9011901 100644 --- a/package-lock.json +++ b/package-lock.json @@ -244,6 +244,12 @@ "once": "^1.3.0", "path-is-absolute": "^1.0.0" } + }, + "typescript": { + "version": "3.9.9", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.9.tgz", + "integrity": "sha512-kdMjTiekY+z/ubJCATUPlRDl39vXYiMV9iyeMuEuXZh2we6zz80uovNN2WlAxmmdE/Z/YQe+EbOEXB5RHEED3w==", + "dev": true } } }, @@ -1564,7 +1570,7 @@ }, "blinking": { "version": "0.0.3", - "resolved": "http://registry.npmjs.org/blinking/-/blinking-0.0.3.tgz", + "resolved": "https://registry.npmjs.org/blinking/-/blinking-0.0.3.tgz", "integrity": "sha1-c6LX+J2z2lSzYFxJiqXYYGv8Hnc=", "dev": true, "requires": { @@ -10112,9 +10118,9 @@ } }, "typescript": { - "version": "3.9.7", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz", - "integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.2.4.tgz", + "integrity": "sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==", "dev": true }, "uglify-js": { diff --git a/package.json b/package.json index d74a3e7c..8c2fb835 100644 --- a/package.json +++ b/package.json @@ -129,7 +129,7 @@ "ts-loader": "^7.0.5", "ts-node": "^8.10.2", "typed-error": "^3.2.1", - "typescript": "^3.9.7", + "typescript": "^4.2.4", "webpack": "^4.44.1", "webpack-cli": "^3.3.12", "winston": "^3.3.3", diff --git a/src/compose/images.ts b/src/compose/images.ts index 3312ae8f..3d2d0018 100644 --- a/src/compose/images.ts +++ b/src/compose/images.ts @@ -609,7 +609,7 @@ async function markAsSupervised(image: Image): Promise { ); } -function format(image: Image): Omit { +function format(image: Image): Partial> { return _(image) .defaults({ serviceId: null, diff --git a/src/config/backends/backend.ts b/src/config/backends/backend.ts index 45aa0375..0665127a 100644 --- a/src/config/backends/backend.ts +++ b/src/config/backends/backend.ts @@ -23,7 +23,7 @@ export async function remountAndWriteAtomic( export abstract class ConfigBackend { // Does this config backend support the given device type? - public abstract async matches( + public abstract matches( deviceType: string, metaRelease?: string, ): Promise; diff --git a/src/device-state.ts b/src/device-state.ts index 3990c1b6..9ab41f5e 100644 --- a/src/device-state.ts +++ b/src/device-state.ts @@ -468,7 +468,7 @@ function emitAsync( : Array ) { if (_.isArray(args)) { - return setImmediate(() => events.emit(ev as any, ...args)); + return setImmediate(() => events.emit(ev as any, ...(args as any))); } else { return setImmediate(() => events.emit(ev as any, args)); } diff --git a/src/migrations/M00001.js b/src/migrations/M00001.js index 5430c974..eeebcfa4 100644 --- a/src/migrations/M00001.js +++ b/src/migrations/M00001.js @@ -21,7 +21,7 @@ exports.up = function (knex) { console.log( 'Unable to locate config.json! Things may fail unexpectedly!', ); - resolve(); + resolve(false); return; } fs.readFile(configJsonPath, (err, data) => { @@ -29,7 +29,7 @@ exports.up = function (knex) { console.log( 'Failed to read config.json! Things may fail unexpectedly!', ); - resolve(); + resolve(false); return; } try { @@ -44,13 +44,13 @@ exports.up = function (knex) { ); return; } - resolve(); + resolve(false); }); } catch (e) { console.log( 'Failed to parse config.json! Things may fail unexpectedly!', ); - resolve(); + resolve(false); } }); }).then(() => { diff --git a/src/migrations/M00002.js b/src/migrations/M00002.js index cf99e18c..46d670ca 100644 --- a/src/migrations/M00002.js +++ b/src/migrations/M00002.js @@ -17,7 +17,7 @@ exports.up = function (knex) { console.log( 'Failed to read config.json! Things may fail unexpectedly!', ); - return resolve(); + return resolve(false); } try { const parsed = JSON.parse(data.toString());