From 96ba02f568eb1567058abf88ca9119117aff1dd2 Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Fri, 19 Mar 2021 02:55:02 +0100 Subject: [PATCH 1/7] Add built-in support for TypeScript This relies on esbuild to strip out types during import. Esbuild was chosen for its performance. The official tsc compiler is very slow in comparison. This means there is no built-in type checking yet. The plan is to have a non emitting tsc process running in parallel just for type checking. --- package-lock.json | 43 ++++++++++++++++++++++++++++++++++++ package.json | 2 ++ src/index.js | 5 +++++ tests/selftest_ts_esbuild.js | 24 ++++++++++++++++++++ tests/ts_node/run | 3 ++- 5 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 tests/selftest_ts_esbuild.js diff --git a/package-lock.json b/package-lock.json index 1dd4dfce..7c187472 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,6 +18,8 @@ "emailjs-imap-client": "^3.0.7", "emailjs-mime-parser": "^2.0.5", "errorstacks": "^1.1.5", + "esbuild": "^0.9.3", + "esbuild-register": "^2.3.0", "form-data": "^2.3.3", "glob": "^7.1.6", "he": "^1.2.0", @@ -2043,6 +2045,23 @@ "resolved": "https://registry.npmjs.org/errorstacks/-/errorstacks-1.1.5.tgz", "integrity": "sha512-ANB+6I4d0oULE2lEEXOJNvH0mpZ5YhFUhzEhJRB2v+FJzmJYRFei2fHS755gsJ+F20exLVNS2ND9xvZ2oYGhvQ==" }, + "node_modules/esbuild": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.3.tgz", + "integrity": "sha512-G8k0olucZp3LJ7I/p8y388t+IEyb2Y78nHrLeIxuqZqh6TYqDYP/B/7drAvYKfh83CGwKal9txVP+FTypsPJug==", + "bin": { + "esbuild": "bin/esbuild" + } + }, + "node_modules/esbuild-register": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-2.3.0.tgz", + "integrity": "sha512-uT3WXEQGAqzrI0SLy1Jz39BzIBiLWd5La9zFZ+FUSCPGqJbE+ZJHUTE8yHP1GVfyHKrrAFCZqLieaHkSprIRDQ==", + "dependencies": { + "esbuild": "^0.9.2", + "jsonc-parser": "^3.0.0" + } + }, "node_modules/escape-goat": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", @@ -3651,6 +3670,11 @@ "node": ">=6" } }, + "node_modules/jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" + }, "node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", @@ -8019,6 +8043,20 @@ "resolved": "https://registry.npmjs.org/errorstacks/-/errorstacks-1.1.5.tgz", "integrity": "sha512-ANB+6I4d0oULE2lEEXOJNvH0mpZ5YhFUhzEhJRB2v+FJzmJYRFei2fHS755gsJ+F20exLVNS2ND9xvZ2oYGhvQ==" }, + "esbuild": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.3.tgz", + "integrity": "sha512-G8k0olucZp3LJ7I/p8y388t+IEyb2Y78nHrLeIxuqZqh6TYqDYP/B/7drAvYKfh83CGwKal9txVP+FTypsPJug==" + }, + "esbuild-register": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-2.3.0.tgz", + "integrity": "sha512-uT3WXEQGAqzrI0SLy1Jz39BzIBiLWd5La9zFZ+FUSCPGqJbE+ZJHUTE8yHP1GVfyHKrrAFCZqLieaHkSprIRDQ==", + "requires": { + "esbuild": "^0.9.2", + "jsonc-parser": "^3.0.0" + } + }, "escape-goat": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", @@ -9294,6 +9332,11 @@ "minimist": "^1.2.5" } }, + "jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" + }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", diff --git a/package.json b/package.json index 01831e7a..65f0f7d7 100644 --- a/package.json +++ b/package.json @@ -104,6 +104,8 @@ "emailjs-imap-client": "^3.0.7", "emailjs-mime-parser": "^2.0.5", "errorstacks": "^1.1.5", + "esbuild": "^0.9.3", + "esbuild-register": "^2.3.0", "form-data": "^2.3.3", "glob": "^7.1.6", "he": "^1.2.0", diff --git a/src/index.js b/src/index.js index cea8d92c..d77d728d 100644 --- a/src/index.js +++ b/src/index.js @@ -1,3 +1,8 @@ +const { register } = require('esbuild-register/dist/node'); +register({ + sourcemap:true +}); + const {main} = require('./main'); module.exports = { diff --git a/tests/selftest_ts_esbuild.js b/tests/selftest_ts_esbuild.js new file mode 100644 index 00000000..ba56791a --- /dev/null +++ b/tests/selftest_ts_esbuild.js @@ -0,0 +1,24 @@ +const assert = require('assert').strict; +const path = require('path'); +const child_process = require('child_process'); + +async function run() { + const script = path.join(__dirname, '..', 'bin', 'cli.js'); + const {stderr} = await new Promise((resolve, reject) => { + child_process.execFile( + 'node', + [script, '--exit-zero', '--no-screenshots', '--no-pdf'], + (err, stdout, stderr) => { + if (err) reject(err); + else resolve({stdout, stderr}); + } + ); + }); + + assert(/1 tests passed/.test(stderr), 'Did run any tests'); +} + +module.exports = { + description: 'Support node require hooks', + run, +}; diff --git a/tests/ts_node/run b/tests/ts_node/run index e7d164bf..012e4f15 100644 --- a/tests/ts_node/run +++ b/tests/ts_node/run @@ -4,4 +4,5 @@ const pentf = require('../../src/index.js'); pentf.main({ rootDir: __dirname, -}); + testsGlob: '*.ts' +}); \ No newline at end of file From 2dfeae689023737334278b23eb30cf3c2a7e21f7 Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Sun, 21 Mar 2021 09:55:50 +0100 Subject: [PATCH 2/7] Fix binary node not found in child_process This happens because child processes are not executed in the same shell the main process was started in --- tests/selftest_ts_esbuild.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/selftest_ts_esbuild.js b/tests/selftest_ts_esbuild.js index ba56791a..d65e4dd9 100644 --- a/tests/selftest_ts_esbuild.js +++ b/tests/selftest_ts_esbuild.js @@ -6,7 +6,7 @@ async function run() { const script = path.join(__dirname, '..', 'bin', 'cli.js'); const {stderr} = await new Promise((resolve, reject) => { child_process.execFile( - 'node', + process.execPath, [script, '--exit-zero', '--no-screenshots', '--no-pdf'], (err, stdout, stderr) => { if (err) reject(err); From af32fa96f0788aef18e83f9021985e5811c49a3d Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Sun, 21 Mar 2021 09:58:13 +0100 Subject: [PATCH 3/7] Fix wrong test path in ts_node test --- tests/selftest_ts_esbuild.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/selftest_ts_esbuild.js b/tests/selftest_ts_esbuild.js index d65e4dd9..ba56791a 100644 --- a/tests/selftest_ts_esbuild.js +++ b/tests/selftest_ts_esbuild.js @@ -6,7 +6,7 @@ async function run() { const script = path.join(__dirname, '..', 'bin', 'cli.js'); const {stderr} = await new Promise((resolve, reject) => { child_process.execFile( - process.execPath, + 'node', [script, '--exit-zero', '--no-screenshots', '--no-pdf'], (err, stdout, stderr) => { if (err) reject(err); From 3092d4463f4e64cb17373b2ec03e03e2c0c08f05 Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Sun, 21 Mar 2021 09:58:13 +0100 Subject: [PATCH 4/7] Fix wrong test path in ts_node test --- tests/selftest_ts_node.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/selftest_ts_node.js b/tests/selftest_ts_node.js index c47d246f..b8120dda 100644 --- a/tests/selftest_ts_node.js +++ b/tests/selftest_ts_node.js @@ -3,7 +3,7 @@ const path = require('path'); const child_process = require('child_process'); async function run() { - const script = path.join(__dirname, '..', 'bin', 'cli.js'); + const script = path.join(__dirname, 'ts_node', 'run'); const {stderr} = await new Promise((resolve, reject) => { child_process.execFile( process.execPath, From a804f02dd6214cc60350a6b136a3d78bf94a3511 Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Sun, 21 Mar 2021 10:00:32 +0100 Subject: [PATCH 5/7] Ignore brace formatting in exception test --- tests/selftest_strange_exceptions.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/selftest_strange_exceptions.js b/tests/selftest_strange_exceptions.js index 19aa1ae3..8481d452 100644 --- a/tests/selftest_strange_exceptions.js +++ b/tests/selftest_strange_exceptions.js @@ -72,7 +72,7 @@ async function run() { assert(output.some(line => line.includes('Non-error object thrown by throw_promise: [object Promise]'))); assert(output.some(line => line.includes('Non-error object thrown by throw_array: ["test"]'))); assert(output.some(line => line.includes('Non-error object thrown by throw_object: [object Object]'))); - assert(output.some(line => line.includes('Non-error object thrown by throw_class: class Strange { }'))); + assert(output.some(line => line.includes('Non-error object thrown by throw_class: class Strange {'))); // Not crashing is sufficient for us const results = render.craftResults(runnerConfig, testInfo); From 8746c8aa35d0c4676efa58bbca4a91cfa861524d Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Sun, 21 Mar 2021 10:52:26 +0100 Subject: [PATCH 6/7] WIP --- package-lock.json | 63 ++++++++++++++++++------------------ package.json | 5 ++- src/index.js | 6 ++-- tests/selftest_ts_esbuild.js | 24 -------------- tsconfig.json | 1 + 5 files changed, 39 insertions(+), 60 deletions(-) delete mode 100644 tests/selftest_ts_esbuild.js diff --git a/package-lock.json b/package-lock.json index 7c187472..5bb49e9e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,6 @@ "dependencies": { "@sentry/node": "^5.15.5", "@types/glob": "^7.1.1", - "@types/puppeteer": "^5.4.0", "argparse": "^1.0.10", "axe-core": "^4.1.1", "chokidar": "^3.4.2", @@ -18,7 +17,7 @@ "emailjs-imap-client": "^3.0.7", "emailjs-mime-parser": "^2.0.5", "errorstacks": "^1.1.5", - "esbuild": "^0.9.3", + "esbuild": "^0.9.6", "esbuild-register": "^2.3.0", "form-data": "^2.3.3", "glob": "^7.1.6", @@ -53,7 +52,7 @@ "prettier": "^2.0.5", "puppeteer": "^8.0.0", "rimraf": "^3.0.2", - "ts-node": "^9.0.0", + "ts-node": "^9.1.1", "typedoc": "^0.17.4", "typescript": "^4.2.3" }, @@ -831,14 +830,6 @@ "@types/node": "*" } }, - "node_modules/@types/puppeteer": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.0.tgz", - "integrity": "sha512-zTYDLjnHjgzokrwKt7N0rgn7oZPYo1J0m8Ghu+gXqzLCEn8RWbELa2uprE2UFJ0jU/Sk0x9jXXdOH/5QQLFHhQ==", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/sharp": { "version": "0.27.1", "resolved": "https://registry.npmjs.org/@types/sharp/-/sharp-0.27.1.tgz", @@ -1704,6 +1695,12 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, "node_modules/cross-spawn": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", @@ -2046,9 +2043,10 @@ "integrity": "sha512-ANB+6I4d0oULE2lEEXOJNvH0mpZ5YhFUhzEhJRB2v+FJzmJYRFei2fHS755gsJ+F20exLVNS2ND9xvZ2oYGhvQ==" }, "node_modules/esbuild": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.3.tgz", - "integrity": "sha512-G8k0olucZp3LJ7I/p8y388t+IEyb2Y78nHrLeIxuqZqh6TYqDYP/B/7drAvYKfh83CGwKal9txVP+FTypsPJug==", + "version": "0.9.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.7.tgz", + "integrity": "sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==", + "hasInstallScript": true, "bin": { "esbuild": "bin/esbuild" } @@ -5792,12 +5790,13 @@ } }, "node_modules/ts-node": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.0.0.tgz", - "integrity": "sha512-/TqB4SnererCDR/vb4S/QvSZvzQMJN8daAslg7MeaiHvD8rDZsSfXmNeNumyZZzMned72Xoq/isQljYSt8Ynfg==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", + "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", "dev": true, "dependencies": { "arg": "^4.1.0", + "create-require": "^1.1.0", "diff": "^4.0.1", "make-error": "^1.1.1", "source-map-support": "^0.5.17", @@ -5811,6 +5810,9 @@ }, "engines": { "node": ">=10.0.0" + }, + "peerDependencies": { + "typescript": ">=2.7" } }, "node_modules/tslib": { @@ -7024,14 +7026,6 @@ "@types/node": "*" } }, - "@types/puppeteer": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@types/puppeteer/-/puppeteer-5.4.0.tgz", - "integrity": "sha512-zTYDLjnHjgzokrwKt7N0rgn7oZPYo1J0m8Ghu+gXqzLCEn8RWbELa2uprE2UFJ0jU/Sk0x9jXXdOH/5QQLFHhQ==", - "requires": { - "@types/node": "*" - } - }, "@types/sharp": { "version": "0.27.1", "resolved": "https://registry.npmjs.org/@types/sharp/-/sharp-0.27.1.tgz", @@ -7756,6 +7750,12 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, "cross-spawn": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", @@ -8044,9 +8044,9 @@ "integrity": "sha512-ANB+6I4d0oULE2lEEXOJNvH0mpZ5YhFUhzEhJRB2v+FJzmJYRFei2fHS755gsJ+F20exLVNS2ND9xvZ2oYGhvQ==" }, "esbuild": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.3.tgz", - "integrity": "sha512-G8k0olucZp3LJ7I/p8y388t+IEyb2Y78nHrLeIxuqZqh6TYqDYP/B/7drAvYKfh83CGwKal9txVP+FTypsPJug==" + "version": "0.9.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.7.tgz", + "integrity": "sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==" }, "esbuild-register": { "version": "2.3.0", @@ -11070,12 +11070,13 @@ } }, "ts-node": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.0.0.tgz", - "integrity": "sha512-/TqB4SnererCDR/vb4S/QvSZvzQMJN8daAslg7MeaiHvD8rDZsSfXmNeNumyZZzMned72Xoq/isQljYSt8Ynfg==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", + "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", "dev": true, "requires": { "arg": "^4.1.0", + "create-require": "^1.1.0", "diff": "^4.0.1", "make-error": "^1.1.1", "source-map-support": "^0.5.17", diff --git a/package.json b/package.json index 65f0f7d7..1f3c6690 100644 --- a/package.json +++ b/package.json @@ -96,7 +96,6 @@ "dependencies": { "@sentry/node": "^5.15.5", "@types/glob": "^7.1.1", - "@types/puppeteer": "^5.4.0", "argparse": "^1.0.10", "axe-core": "^4.1.1", "chokidar": "^3.4.2", @@ -104,7 +103,7 @@ "emailjs-imap-client": "^3.0.7", "emailjs-mime-parser": "^2.0.5", "errorstacks": "^1.1.5", - "esbuild": "^0.9.3", + "esbuild": "^0.9.6", "esbuild-register": "^2.3.0", "form-data": "^2.3.3", "glob": "^7.1.6", @@ -136,7 +135,7 @@ "prettier": "^2.0.5", "puppeteer": "^8.0.0", "rimraf": "^3.0.2", - "ts-node": "^9.0.0", + "ts-node": "^9.1.1", "typedoc": "^0.17.4", "typescript": "^4.2.3" }, diff --git a/src/index.js b/src/index.js index d77d728d..e3cea4bd 100644 --- a/src/index.js +++ b/src/index.js @@ -1,6 +1,8 @@ -const { register } = require('esbuild-register/dist/node'); +const {register} = require('esbuild-register/dist/node'); register({ - sourcemap:true + sourcemap: true, + minify: false, + keepNames: false, }); const {main} = require('./main'); diff --git a/tests/selftest_ts_esbuild.js b/tests/selftest_ts_esbuild.js deleted file mode 100644 index ba56791a..00000000 --- a/tests/selftest_ts_esbuild.js +++ /dev/null @@ -1,24 +0,0 @@ -const assert = require('assert').strict; -const path = require('path'); -const child_process = require('child_process'); - -async function run() { - const script = path.join(__dirname, '..', 'bin', 'cli.js'); - const {stderr} = await new Promise((resolve, reject) => { - child_process.execFile( - 'node', - [script, '--exit-zero', '--no-screenshots', '--no-pdf'], - (err, stdout, stderr) => { - if (err) reject(err); - else resolve({stdout, stderr}); - } - ); - }); - - assert(/1 tests passed/.test(stderr), 'Did run any tests'); -} - -module.exports = { - description: 'Support node require hooks', - run, -}; diff --git a/tsconfig.json b/tsconfig.json index 7122f428..5b48b2a9 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,6 +1,7 @@ { "compilerOptions": { "module": "CommonJS", + "moduleResolution": "Node", "allowJs": true, "alwaysStrict": true, "strict": true, From cb4ea70080669b32cf7f69e86eafb5e4acbe715d Mon Sep 17 00:00:00 2001 From: Marvin Hagemeister Date: Thu, 25 Mar 2021 18:27:34 +0100 Subject: [PATCH 7/7] Update to esbuild 0.10.0 --- package-lock.json | 30 +++++++++++++++++++++++------- package.json | 2 +- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5bb49e9e..7496873e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "emailjs-imap-client": "^3.0.7", "emailjs-mime-parser": "^2.0.5", "errorstacks": "^1.1.5", - "esbuild": "^0.9.6", + "esbuild": "^0.10.0", "esbuild-register": "^2.3.0", "form-data": "^2.3.3", "glob": "^7.1.6", @@ -2043,9 +2043,9 @@ "integrity": "sha512-ANB+6I4d0oULE2lEEXOJNvH0mpZ5YhFUhzEhJRB2v+FJzmJYRFei2fHS755gsJ+F20exLVNS2ND9xvZ2oYGhvQ==" }, "node_modules/esbuild": { - "version": "0.9.7", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.7.tgz", - "integrity": "sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.10.0.tgz", + "integrity": "sha512-g+/Fk18bP7GAx0eG2RTfvjbsdB6RSchvvrrokFX8UexrTtPo0ZF0R1KViUu5v0A4Uu8m3I7pZhEyZveiOk0/JA==", "hasInstallScript": true, "bin": { "esbuild": "bin/esbuild" @@ -2060,6 +2060,15 @@ "jsonc-parser": "^3.0.0" } }, + "node_modules/esbuild-register/node_modules/esbuild": { + "version": "0.9.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.7.tgz", + "integrity": "sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + } + }, "node_modules/escape-goat": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", @@ -8044,9 +8053,9 @@ "integrity": "sha512-ANB+6I4d0oULE2lEEXOJNvH0mpZ5YhFUhzEhJRB2v+FJzmJYRFei2fHS755gsJ+F20exLVNS2ND9xvZ2oYGhvQ==" }, "esbuild": { - "version": "0.9.7", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.7.tgz", - "integrity": "sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==" + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.10.0.tgz", + "integrity": "sha512-g+/Fk18bP7GAx0eG2RTfvjbsdB6RSchvvrrokFX8UexrTtPo0ZF0R1KViUu5v0A4Uu8m3I7pZhEyZveiOk0/JA==" }, "esbuild-register": { "version": "2.3.0", @@ -8055,6 +8064,13 @@ "requires": { "esbuild": "^0.9.2", "jsonc-parser": "^3.0.0" + }, + "dependencies": { + "esbuild": { + "version": "0.9.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.9.7.tgz", + "integrity": "sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==" + } } }, "escape-goat": { diff --git a/package.json b/package.json index 1f3c6690..f37c45aa 100644 --- a/package.json +++ b/package.json @@ -103,7 +103,7 @@ "emailjs-imap-client": "^3.0.7", "emailjs-mime-parser": "^2.0.5", "errorstacks": "^1.1.5", - "esbuild": "^0.9.6", + "esbuild": "^0.10.0", "esbuild-register": "^2.3.0", "form-data": "^2.3.3", "glob": "^7.1.6",