From 253c5dbb1f5d635052da208cba4d0028ed88ac68 Mon Sep 17 00:00:00 2001 From: Renovate Bot Date: Fri, 3 Jun 2022 18:52:39 +0000 Subject: [PATCH 1/2] fix(deps): update dependency open to v8 --- package-lock.json | 39 +++++++++++++++++++++++++++------------ package.json | 2 +- 2 files changed, 28 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index 473e56b05e..5b743443a5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "multimatch": "5.0.0", "mz": "2.7.0", "node-notifier": "9.0.1", - "open": "7.4.2", + "open": "8.4.0", "parse-json": "5.2.0", "promise-toolbox": "0.20.0", "sign-addon": "3.11.0", @@ -5150,6 +5150,14 @@ "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, "node_modules/define-properties": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", @@ -9741,15 +9749,16 @@ } }, "node_modules/open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", "dependencies": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -17112,6 +17121,11 @@ "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" }, + "define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==" + }, "define-properties": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", @@ -20578,12 +20592,13 @@ } }, "open": { - "version": "7.4.2", - "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", - "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", "requires": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" } }, "optionator": { diff --git a/package.json b/package.json index a0e756b262..ebf6ed7fe8 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,7 @@ "multimatch": "5.0.0", "mz": "2.7.0", "node-notifier": "9.0.1", - "open": "7.4.2", + "open": "8.4.0", "parse-json": "5.2.0", "promise-toolbox": "0.20.0", "sign-addon": "3.11.0", From 4673db1282a5f6b34522e17f6783e80a53121fb7 Mon Sep 17 00:00:00 2001 From: Luca Greco Date: Mon, 6 Jun 2022 14:03:34 +0200 Subject: [PATCH 2/2] chore: Removed unncessary Promise wrapping applied to open v8 dependency --- src/cmd/docs.js | 18 +++++++----------- tests/unit/test-cmd/test.docs.js | 26 ++++++++++++-------------- 2 files changed, 19 insertions(+), 25 deletions(-) diff --git a/src/cmd/docs.js b/src/cmd/docs.js index 49716d26fc..f47012f50e 100644 --- a/src/cmd/docs.js +++ b/src/cmd/docs.js @@ -17,17 +17,13 @@ export type DocsOptions = { // eslint-disable-next-line max-len export const url = 'https://extensionworkshop.com/documentation/develop/getting-started-with-web-ext/'; -export default function docs( +export default async function docs( params: DocsParams, {openUrl = open}: DocsOptions = {} ): Promise { - return new Promise((resolve, reject) => { - openUrl(url, (error) => { - if (error) { - log.debug(`Encountered an error while opening URL ${url}`, error); - reject(error); - } else { - resolve(); - } - }); - }); + try { + await openUrl(url); + } catch (error) { + log.debug(`Encountered an error while opening URL ${url}`, error); + throw error; + } } diff --git a/tests/unit/test-cmd/test.docs.js b/tests/unit/test-cmd/test.docs.js index a83775137a..39d65952eb 100644 --- a/tests/unit/test-cmd/test.docs.js +++ b/tests/unit/test-cmd/test.docs.js @@ -3,24 +3,22 @@ import {it, describe} from 'mocha'; import * as sinon from 'sinon'; import {assert} from 'chai'; -import {makeSureItFails} from '../helpers.js'; import defaultDocsCommand, {url} from '../../../src/cmd/docs.js'; describe('docs', () => { - it('passes the correct url to docs', () => { - const openUrl = sinon.spy((urlToOpen, callback) => callback(null)); - return defaultDocsCommand({}, {openUrl}).then(() => { - sinon.assert.calledWith(openUrl, url); - }); + it('passes the correct url to docs', async () => { + const openUrl = sinon.spy(async () => {}); + await defaultDocsCommand({}, {openUrl}); + sinon.assert.calledWith(openUrl, url); }); - it('throws an error when open fails', () => { - const openUrl = sinon.spy((urlToOpen, callback) => callback( - new Error('pretends this is an error from open()') - )); - return defaultDocsCommand({}, {openUrl}) - .then(makeSureItFails()).catch((error) => { - assert.match(error.message, /error from open()/); - }); + it('throws an error when open fails', async () => { + const openUrl = sinon.spy(async () => { + throw new Error('pretends this is an error from open()'); + }); + await assert.isRejected( + defaultDocsCommand({}, {openUrl}), + /error from open()/ + ); }); });