From ebd4027292cc5f0b47d17eb53176924dfab10915 Mon Sep 17 00:00:00 2001 From: Artem Khodyush Date: Wed, 27 Oct 2021 04:44:51 -0700 Subject: [PATCH] fix: exclude dependency of optimized dependency (fix: 5410) (#5411) Co-authored-by: Artem Khodyush Co-authored-by: Shinigami --- .../nested-deps/__tests__/nested-deps.spec.ts | 1 + packages/playground/nested-deps/index.html | 6 +++++ packages/playground/nested-deps/package.json | 3 ++- .../nested-deps/test-package-e/index.js | 2 ++ .../nested-deps/test-package-e/package.json | 9 +++++++ .../test-package-e-excluded/index.js | 11 ++++++++ .../test-package-e-excluded/package.json | 5 ++++ .../test-package-e-included/index.js | 5 ++++ .../test-package-e-included/package.json | 8 ++++++ .../playground/nested-deps/vite.config.js | 5 ++-- .../src/node/optimizer/esbuildDepPlugin.ts | 10 +++++++- packages/vite/src/node/optimizer/scan.ts | 3 ++- .../vite/src/node/plugins/importAnalysis.ts | 25 ++++++++++++++++--- packages/vite/src/node/utils.ts | 7 ++++++ pnpm-lock.yaml | 19 ++++++++++++++ 15 files changed, 111 insertions(+), 8 deletions(-) create mode 100644 packages/playground/nested-deps/test-package-e/index.js create mode 100644 packages/playground/nested-deps/test-package-e/package.json create mode 100644 packages/playground/nested-deps/test-package-e/test-package-e-excluded/index.js create mode 100644 packages/playground/nested-deps/test-package-e/test-package-e-excluded/package.json create mode 100644 packages/playground/nested-deps/test-package-e/test-package-e-included/index.js create mode 100644 packages/playground/nested-deps/test-package-e/test-package-e-included/package.json diff --git a/packages/playground/nested-deps/__tests__/nested-deps.spec.ts b/packages/playground/nested-deps/__tests__/nested-deps.spec.ts index dac548d0e4193e..2ef0e191da7b50 100644 --- a/packages/playground/nested-deps/__tests__/nested-deps.spec.ts +++ b/packages/playground/nested-deps/__tests__/nested-deps.spec.ts @@ -7,4 +7,5 @@ test('handle nested package', async () => { expect(await page.textContent('.side-c')).toBe(c) expect(await page.textContent('.d')).toBe('D@1.0.0') expect(await page.textContent('.nested-d')).toBe('D-nested@1.0.0') + expect(await page.textContent('.nested-e')).toBe('1') }) diff --git a/packages/playground/nested-deps/index.html b/packages/playground/nested-deps/index.html index 3467c3d9e425af..3243c1689bf0cd 100644 --- a/packages/playground/nested-deps/index.html +++ b/packages/playground/nested-deps/index.html @@ -19,12 +19,16 @@

direct dependency D

nested dependency nested-D (dep of D)


 
+

exclude dependency of pre-bundled dependency

+
nested module instance count:
+