From dcb720a909f382d1be603ef6c034079d8d7157ea Mon Sep 17 00:00:00 2001 From: undefined Date: Thu, 28 Jul 2022 22:01:46 +0800 Subject: [PATCH 1/3] resolve currentPath --- src/Chunk.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Chunk.ts b/src/Chunk.ts index 11e6e3035dd..bb7fdee3484 100644 --- a/src/Chunk.ts +++ b/src/Chunk.ts @@ -464,7 +464,7 @@ export default class Chunk { }); const currentPath = `${currentDir}/${fileName}`; const { preserveModulesRoot } = options; - if (preserveModulesRoot && currentPath.startsWith(preserveModulesRoot)) { + if (preserveModulesRoot && resolve(currentPath).startsWith(preserveModulesRoot)) { path = currentPath.slice(preserveModulesRoot.length).replace(/^[\\/]/, ''); } else { path = relative(preserveModulesRelativeDir, currentPath); From 4ab4a86921f72d44b837b464dc2176d18c3cada9 Mon Sep 17 00:00:00 2001 From: Lukas Taegert-Atkinson Date: Thu, 11 Aug 2022 06:51:43 +0200 Subject: [PATCH 2/3] Try modified test --- .../samples/preserve-modules-root/_config.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/test/chunking-form/samples/preserve-modules-root/_config.js b/test/chunking-form/samples/preserve-modules-root/_config.js index 61ff285d344..dcd2634d482 100644 --- a/test/chunking-form/samples/preserve-modules-root/_config.js +++ b/test/chunking-form/samples/preserve-modules-root/_config.js @@ -2,11 +2,20 @@ const commonjs = require('@rollup/plugin-commonjs'); const resolve = require('@rollup/plugin-node-resolve').default; module.exports = { + solo: true, description: 'confirm preserveModulesRoot restructures src appropriately', expectedWarnings: ['MIXED_EXPORTS'], options: { input: ['src/under-build.js', 'src/below/module.js'], plugins: [ + { + name: 'convert-slashes', + // This simulates converted slashes as used by e.g. Vite + async resolveId(source, importer, options) { + const resolved = await this.resolve(source, importer, { ...options, skipSelf: true }); + return { ...resolved, id: resolved.id.replace(/\\/g, '/') }; + } + }, resolve({ moduleDirectories: ['custom_modules'] }), From 42c3697ff3a9aef74168dd3f126dc2e2b4ee8c43 Mon Sep 17 00:00:00 2001 From: Lukas Taegert-Atkinson Date: Thu, 11 Aug 2022 07:02:45 +0200 Subject: [PATCH 3/3] Add test --- test/chunking-form/samples/preserve-modules-root/_config.js | 1 - 1 file changed, 1 deletion(-) diff --git a/test/chunking-form/samples/preserve-modules-root/_config.js b/test/chunking-form/samples/preserve-modules-root/_config.js index dcd2634d482..5518c9c5483 100644 --- a/test/chunking-form/samples/preserve-modules-root/_config.js +++ b/test/chunking-form/samples/preserve-modules-root/_config.js @@ -2,7 +2,6 @@ const commonjs = require('@rollup/plugin-commonjs'); const resolve = require('@rollup/plugin-node-resolve').default; module.exports = { - solo: true, description: 'confirm preserveModulesRoot restructures src appropriately', expectedWarnings: ['MIXED_EXPORTS'], options: {