From 5f50693d515861eca971174cf9b860059132a58b Mon Sep 17 00:00:00 2001 From: bluwy Date: Sat, 30 Jul 2022 14:48:40 +0800 Subject: [PATCH 1/2] feat(plugin-legacy): make terser optional if renderLegacyChunk false --- packages/plugin-legacy/README.md | 2 +- packages/plugin-legacy/package.json | 5 +++++ packages/plugin-legacy/src/index.ts | 4 +++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/plugin-legacy/README.md b/packages/plugin-legacy/README.md index b5c3631ab2ac60..43b48bab9e440f 100644 --- a/packages/plugin-legacy/README.md +++ b/packages/plugin-legacy/README.md @@ -27,7 +27,7 @@ export default { } ``` -Terser must be installed because plugin-legacy uses Terser for minification. +If `renderLegacyChunks` is not `false`, Terser must be installed because plugin-legacy uses Terser to minify legacy chunks. ```sh npm add -D terser diff --git a/packages/plugin-legacy/package.json b/packages/plugin-legacy/package.json index 6d416fe5e96474..daeb28cb34e8e1 100644 --- a/packages/plugin-legacy/package.json +++ b/packages/plugin-legacy/package.json @@ -45,6 +45,11 @@ "terser": "^5.4.0", "vite": "^3.0.0" }, + "peerDependenciesMeta": { + "terser": { + "optional": true + } + }, "devDependencies": { "@babel/core": "^7.18.9", "vite": "workspace:*" diff --git a/packages/plugin-legacy/src/index.ts b/packages/plugin-legacy/src/index.ts index ca79a56f160146..dc2d3a64f7bea7 100644 --- a/packages/plugin-legacy/src/index.ts +++ b/packages/plugin-legacy/src/index.ts @@ -648,7 +648,9 @@ async function buildPolyfillChunk( excludeSystemJS?: boolean ) { let { minify, assetsDir } = buildOptions - minify = minify ? 'terser' : false + if (format === 'iife') { + minify = minify ? 'terser' : false + } const res = await build({ // so that everything is resolved from here root: path.dirname(fileURLToPath(import.meta.url)), From 22f5658c8ad7c163ba6e8be123efaf2b53f2a638 Mon Sep 17 00:00:00 2001 From: Bjorn Lu Date: Tue, 2 Aug 2022 15:17:08 +0800 Subject: [PATCH 2/2] docs: update text --- packages/plugin-legacy/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/plugin-legacy/README.md b/packages/plugin-legacy/README.md index 43b48bab9e440f..d5e55aa9c663d2 100644 --- a/packages/plugin-legacy/README.md +++ b/packages/plugin-legacy/README.md @@ -27,7 +27,7 @@ export default { } ``` -If `renderLegacyChunks` is not `false`, Terser must be installed because plugin-legacy uses Terser to minify legacy chunks. +If [renderLegacyChunks](#renderlegacychunks) is `true` (default), Terser must be installed because plugin-legacy uses Terser to minify legacy chunks. ```sh npm add -D terser