From 9ec1923ae4c0798000172f558ec5a81f575db297 Mon Sep 17 00:00:00 2001 From: johnsoncodehk Date: Sun, 3 Apr 2022 21:29:50 +0800 Subject: [PATCH] fix: web bundle lead to package size greatly increased close #1084 --- .../vscode-vue-language-features/package.json | 14 +++++++++----- .../scripts/build-browser.js | 8 ++++++-- .../scripts/build-node.js | 5 ++++- .../vscode-vue-language-features/scripts/empty.js | 1 + pnpm-lock.yaml | 8 ++++---- 5 files changed, 24 insertions(+), 12 deletions(-) create mode 100644 extensions/vscode-vue-language-features/scripts/empty.js diff --git a/extensions/vscode-vue-language-features/package.json b/extensions/vscode-vue-language-features/package.json index 121b722e9..a6a264640 100644 --- a/extensions/vscode-vue-language-features/package.json +++ b/extensions/vscode-vue-language-features/package.json @@ -13,7 +13,7 @@ "author": "johnsoncodehk", "publisher": "johnsoncodehk", "engines": { - "vscode": "^1.61.0" + "vscode": "^1.63.0" }, "keywords": [ "volar", @@ -635,17 +635,21 @@ } }, "scripts": { - "vscode:prepublish": "npm run build", "prebuild": "cd ../.. && npm run build", "build": "npm run build:node && npm run build:browser", "watch": "npm run build:node -- --watch & npm run build:browser -- --watch", "build:node": "node scripts/build-node", "build:browser": "node scripts/build-browser", - "pack": "vsce package", - "release": "vsce publish" + "prepack:node": "npm run prebuild && npm run build:node -- --minify && npm run build:browser -- --empty", + "prepack:browser": "npm run prebuild && npm run build:browser -- --minify && npm run build:node -- --empty", + "pack:node": "npm run prepack:node && vsce package", + "pack:browser": "npm run prepack:browser && vsce package", + "release:node": "npm run prepack:node && vsce publish --target win32-x64 win32-ia32 win32-arm64 linux-x64 linux-arm64 linux-armhf darwin-x64 darwin-arm64 alpine-x64 alpine-arm64", + "release:browser": "npm run prepack:browser && vsce publish --target web", + "release": "npm run release:node && npm run release:browser" }, "devDependencies": { - "@types/vscode": "1.61.0", + "@types/vscode": "1.63.0", "@types/ws": "^8.5.3", "@volar/shared": "0.33.9", "@volar/vue-language-server": "0.33.9", diff --git a/extensions/vscode-vue-language-features/scripts/build-browser.js b/extensions/vscode-vue-language-features/scripts/build-browser.js index bdfc7d266..d9b2221f7 100644 --- a/extensions/vscode-vue-language-features/scripts/build-browser.js +++ b/extensions/vscode-vue-language-features/scripts/build-browser.js @@ -1,5 +1,7 @@ require('esbuild').build({ - entryPoints: { + entryPoints: process.argv.includes('--empty') ? { + client: './scripts/empty.js', + } : { client: './out/browserClientMain.js', }, bundle: true, @@ -34,7 +36,9 @@ require('esbuild').build({ }).catch(() => process.exit(1)) require('esbuild').build({ - entryPoints: { + entryPoints: process.argv.includes('--empty') ? { + server: './scripts/empty.js', + } : { server: './node_modules/@volar/vue-language-server/out/browser.js', }, bundle: true, diff --git a/extensions/vscode-vue-language-features/scripts/build-node.js b/extensions/vscode-vue-language-features/scripts/build-node.js index 53937a24a..3e9b974ab 100644 --- a/extensions/vscode-vue-language-features/scripts/build-node.js +++ b/extensions/vscode-vue-language-features/scripts/build-node.js @@ -1,5 +1,8 @@ require('esbuild').build({ - entryPoints: { + entryPoints: process.argv.includes('--empty') ? { + client: './scripts/empty.js', + server: './scripts/empty.js', + } : { client: './out/nodeClientMain.js', server: './node_modules/@volar/vue-language-server/out/node.js', }, diff --git a/extensions/vscode-vue-language-features/scripts/empty.js b/extensions/vscode-vue-language-features/scripts/empty.js new file mode 100644 index 000000000..2234b9cae --- /dev/null +++ b/extensions/vscode-vue-language-features/scripts/empty.js @@ -0,0 +1 @@ +export { }; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ebf704803..55e8c2126 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -29,7 +29,7 @@ importers: extensions/vscode-vue-language-features: specifiers: - '@types/vscode': 1.61.0 + '@types/vscode': 1.63.0 '@types/ws': ^8.5.3 '@volar/shared': 0.33.9 '@volar/vue-language-server': 0.33.9 @@ -43,7 +43,7 @@ importers: vscode-nls: 5.0.0 ws: ^8.5.0 devDependencies: - '@types/vscode': 1.61.0 + '@types/vscode': 1.63.0 '@types/ws': 8.5.3 '@volar/shared': link:../../packages/shared '@volar/vue-language-server': link:../../packages/vue-language-server @@ -1300,8 +1300,8 @@ packages: resolution: {integrity: sha512-L/TMpyURfBkf+o/526Zb6kd/tchUP3iBDEPjqjb+U2MAJhVRxxrmr2fwpe08E7QsV7YLcpq0tUaQ9O9x97ZIxQ==} dev: true - /@types/vscode/1.61.0: - resolution: {integrity: sha512-9k5Nwq45hkRwdfCFY+eKXeQQSbPoA114mF7U/4uJXRBJeGIO7MuJdhF1PnaDN+lllL9iKGQtd6FFXShBXMNaFg==} + /@types/vscode/1.63.0: + resolution: {integrity: sha512-iePu1axOi5WSThV6l2TYcciBIpAlMarjBC8H0y8L8ocsZLxh7MttzwFU3pjoItF5fRVGxHS0Hsvje9jO3yJsfw==} dev: true /@types/ws/8.5.3: