Skip to content

Commit 1566f61

Browse files
patak-devpoyoho
andauthored
perf: avoid sourcemap chains during dev (#8796)
Co-authored-by: yoho <panyoho@gmail.com>
1 parent 8bb452d commit 1566f61

File tree

12 files changed

+378
-505
lines changed

12 files changed

+378
-505
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,164 +1,44 @@
11
// Vitest Snapshot v1
22

33
exports[`fixture > transform 1`] = `
4-
"import * as __vite_glob_1_0 from \\"./modules/a.ts\\"
5-
import * as __vite_glob_1_1 from \\"./modules/b.ts\\"
6-
import * as __vite_glob_1_2 from \\"./modules/index.ts\\"
7-
import { name as __vite_glob_3_0 } from \\"./modules/a.ts\\"
8-
import { name as __vite_glob_3_1 } from \\"./modules/b.ts\\"
9-
import { name as __vite_glob_3_2 } from \\"./modules/index.ts\\"
10-
import { default as __vite_glob_5_0 } from \\"./modules/a.ts?raw\\"
11-
import { default as __vite_glob_5_1 } from \\"./modules/b.ts?raw\\"
12-
import \\"../../../../../../types/importMeta\\";
13-
export const basic = Object.assign({
14-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),
15-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),
16-
\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\")
17-
});
18-
export const basicEager = Object.assign({
19-
\\"./modules/a.ts\\": __vite_glob_1_0,
20-
\\"./modules/b.ts\\": __vite_glob_1_1,
21-
\\"./modules/index.ts\\": __vite_glob_1_2
22-
});
23-
export const ignore = Object.assign({
24-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),
25-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\")
26-
});
27-
export const namedEager = Object.assign({
28-
\\"./modules/a.ts\\": __vite_glob_3_0,
29-
\\"./modules/b.ts\\": __vite_glob_3_1,
30-
\\"./modules/index.ts\\": __vite_glob_3_2
31-
});
32-
export const namedDefault = Object.assign({
33-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\").then(m => m[\\"default\\"]),
34-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\").then(m => m[\\"default\\"]),
35-
\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\").then(m => m[\\"default\\"])
36-
});
37-
export const eagerAs = Object.assign({
38-
\\"./modules/a.ts\\": __vite_glob_5_0,
39-
\\"./modules/b.ts\\": __vite_glob_5_1
40-
});
41-
export const rawImportModule = Object.assign({
42-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts?raw\\"),
43-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts?raw\\")
44-
});
45-
export const excludeSelf = Object.assign({
46-
\\"./sibling.ts\\": () => import(\\"./sibling.ts\\")
47-
});
48-
export const customQueryString = Object.assign({
49-
\\"./sibling.ts\\": () => import(\\"./sibling.ts?custom\\")
50-
});
51-
export const customQueryObject = Object.assign({
52-
\\"./sibling.ts\\": () => import(\\"./sibling.ts?foo=bar&raw=true\\")
53-
});
54-
export const parent = Object.assign({
55-
56-
});
57-
export const rootMixedRelative = Object.assign({
58-
\\"/css.spec.ts\\": () => import(\\"../../css.spec.ts?url\\").then(m => m[\\"default\\"]),
59-
\\"/define.spec.ts\\": () => import(\\"../../define.spec.ts?url\\").then(m => m[\\"default\\"]),
60-
\\"/esbuild.spec.ts\\": () => import(\\"../../esbuild.spec.ts?url\\").then(m => m[\\"default\\"]),
61-
\\"/import.spec.ts\\": () => import(\\"../../import.spec.ts?url\\").then(m => m[\\"default\\"]),
62-
\\"/importGlob/fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts?url\\").then(m => m[\\"default\\"]),
63-
\\"/importGlob/fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts?url\\").then(m => m[\\"default\\"]),
64-
\\"/importGlob/fixture-b/index.ts\\": () => import(\\"../fixture-b/index.ts?url\\").then(m => m[\\"default\\"])
65-
});
66-
export const cleverCwd1 = Object.assign({
67-
\\"./node_modules/framework/pages/hello.page.js\\": () => import(\\"./node_modules/framework/pages/hello.page.js\\")
68-
});
69-
export const cleverCwd2 = Object.assign({
70-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),
71-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),
72-
\\"../fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts\\"),
73-
\\"../fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts\\")
74-
});
4+
"import * as __vite_glob_1_0 from \\"./modules/a.ts\\";import * as __vite_glob_1_1 from \\"./modules/b.ts\\";import * as __vite_glob_1_2 from \\"./modules/index.ts\\";import { name as __vite_glob_3_0 } from \\"./modules/a.ts\\";import { name as __vite_glob_3_1 } from \\"./modules/b.ts\\";import { name as __vite_glob_3_2 } from \\"./modules/index.ts\\";import { default as __vite_glob_5_0 } from \\"./modules/a.ts?raw\\";import { default as __vite_glob_5_1 } from \\"./modules/b.ts?raw\\";import \\"../../../../../../types/importMeta\\";
5+
export const basic = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\")});
6+
export const basicEager = Object.assign({\\"./modules/a.ts\\": __vite_glob_1_0,\\"./modules/b.ts\\": __vite_glob_1_1,\\"./modules/index.ts\\": __vite_glob_1_2});
7+
export const ignore = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\")});
8+
export const namedEager = Object.assign({\\"./modules/a.ts\\": __vite_glob_3_0,\\"./modules/b.ts\\": __vite_glob_3_1,\\"./modules/index.ts\\": __vite_glob_3_2});
9+
export const namedDefault = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\").then(m => m[\\"default\\"]),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\").then(m => m[\\"default\\"]),\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\").then(m => m[\\"default\\"])});
10+
export const eagerAs = Object.assign({\\"./modules/a.ts\\": __vite_glob_5_0,\\"./modules/b.ts\\": __vite_glob_5_1});
11+
export const rawImportModule = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts?raw\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts?raw\\")});
12+
export const excludeSelf = Object.assign({\\"./sibling.ts\\": () => import(\\"./sibling.ts\\")});
13+
export const customQueryString = Object.assign({\\"./sibling.ts\\": () => import(\\"./sibling.ts?custom\\")});
14+
export const customQueryObject = Object.assign({\\"./sibling.ts\\": () => import(\\"./sibling.ts?foo=bar&raw=true\\")});
15+
export const parent = Object.assign({});
16+
export const rootMixedRelative = Object.assign({\\"/css.spec.ts\\": () => import(\\"../../css.spec.ts?url\\").then(m => m[\\"default\\"]),\\"/define.spec.ts\\": () => import(\\"../../define.spec.ts?url\\").then(m => m[\\"default\\"]),\\"/esbuild.spec.ts\\": () => import(\\"../../esbuild.spec.ts?url\\").then(m => m[\\"default\\"]),\\"/import.spec.ts\\": () => import(\\"../../import.spec.ts?url\\").then(m => m[\\"default\\"]),\\"/importGlob/fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts?url\\").then(m => m[\\"default\\"]),\\"/importGlob/fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts?url\\").then(m => m[\\"default\\"]),\\"/importGlob/fixture-b/index.ts\\": () => import(\\"../fixture-b/index.ts?url\\").then(m => m[\\"default\\"])});
17+
export const cleverCwd1 = Object.assign({\\"./node_modules/framework/pages/hello.page.js\\": () => import(\\"./node_modules/framework/pages/hello.page.js\\")});
18+
export const cleverCwd2 = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),\\"../fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts\\"),\\"../fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts\\")});
7519
"
7620
`;
7721

7822
exports[`fixture > transform with restoreQueryExtension 1`] = `
79-
"import * as __vite_glob_1_0 from \\"./modules/a.ts\\"
80-
import * as __vite_glob_1_1 from \\"./modules/b.ts\\"
81-
import * as __vite_glob_1_2 from \\"./modules/index.ts\\"
82-
import { name as __vite_glob_3_0 } from \\"./modules/a.ts\\"
83-
import { name as __vite_glob_3_1 } from \\"./modules/b.ts\\"
84-
import { name as __vite_glob_3_2 } from \\"./modules/index.ts\\"
85-
import { default as __vite_glob_5_0 } from \\"./modules/a.ts?raw\\"
86-
import { default as __vite_glob_5_1 } from \\"./modules/b.ts?raw\\"
87-
import \\"../../../../../../types/importMeta\\";
88-
export const basic = Object.assign({
89-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),
90-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),
91-
\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\")
92-
});
93-
export const basicEager = Object.assign({
94-
\\"./modules/a.ts\\": __vite_glob_1_0,
95-
\\"./modules/b.ts\\": __vite_glob_1_1,
96-
\\"./modules/index.ts\\": __vite_glob_1_2
97-
});
98-
export const ignore = Object.assign({
99-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),
100-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\")
101-
});
102-
export const namedEager = Object.assign({
103-
\\"./modules/a.ts\\": __vite_glob_3_0,
104-
\\"./modules/b.ts\\": __vite_glob_3_1,
105-
\\"./modules/index.ts\\": __vite_glob_3_2
106-
});
107-
export const namedDefault = Object.assign({
108-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\").then(m => m[\\"default\\"]),
109-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\").then(m => m[\\"default\\"]),
110-
\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\").then(m => m[\\"default\\"])
111-
});
112-
export const eagerAs = Object.assign({
113-
\\"./modules/a.ts\\": __vite_glob_5_0,
114-
\\"./modules/b.ts\\": __vite_glob_5_1
115-
});
116-
export const rawImportModule = Object.assign({
117-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts?raw\\"),
118-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts?raw\\")
119-
});
120-
export const excludeSelf = Object.assign({
121-
\\"./sibling.ts\\": () => import(\\"./sibling.ts\\")
122-
});
123-
export const customQueryString = Object.assign({
124-
\\"./sibling.ts\\": () => import(\\"./sibling.ts?custom&lang.ts\\")
125-
});
126-
export const customQueryObject = Object.assign({
127-
\\"./sibling.ts\\": () => import(\\"./sibling.ts?foo=bar&raw=true&lang.ts\\")
128-
});
129-
export const parent = Object.assign({
130-
131-
});
132-
export const rootMixedRelative = Object.assign({
133-
\\"/css.spec.ts\\": () => import(\\"../../css.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),
134-
\\"/define.spec.ts\\": () => import(\\"../../define.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),
135-
\\"/esbuild.spec.ts\\": () => import(\\"../../esbuild.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),
136-
\\"/import.spec.ts\\": () => import(\\"../../import.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),
137-
\\"/importGlob/fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts?url&lang.ts\\").then(m => m[\\"default\\"]),
138-
\\"/importGlob/fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts?url&lang.ts\\").then(m => m[\\"default\\"]),
139-
\\"/importGlob/fixture-b/index.ts\\": () => import(\\"../fixture-b/index.ts?url&lang.ts\\").then(m => m[\\"default\\"])
140-
});
141-
export const cleverCwd1 = Object.assign({
142-
\\"./node_modules/framework/pages/hello.page.js\\": () => import(\\"./node_modules/framework/pages/hello.page.js\\")
143-
});
144-
export const cleverCwd2 = Object.assign({
145-
\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),
146-
\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),
147-
\\"../fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts\\"),
148-
\\"../fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts\\")
149-
});
23+
"import * as __vite_glob_1_0 from \\"./modules/a.ts\\";import * as __vite_glob_1_1 from \\"./modules/b.ts\\";import * as __vite_glob_1_2 from \\"./modules/index.ts\\";import { name as __vite_glob_3_0 } from \\"./modules/a.ts\\";import { name as __vite_glob_3_1 } from \\"./modules/b.ts\\";import { name as __vite_glob_3_2 } from \\"./modules/index.ts\\";import { default as __vite_glob_5_0 } from \\"./modules/a.ts?raw\\";import { default as __vite_glob_5_1 } from \\"./modules/b.ts?raw\\";import \\"../../../../../../types/importMeta\\";
24+
export const basic = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\")});
25+
export const basicEager = Object.assign({\\"./modules/a.ts\\": __vite_glob_1_0,\\"./modules/b.ts\\": __vite_glob_1_1,\\"./modules/index.ts\\": __vite_glob_1_2});
26+
export const ignore = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\")});
27+
export const namedEager = Object.assign({\\"./modules/a.ts\\": __vite_glob_3_0,\\"./modules/b.ts\\": __vite_glob_3_1,\\"./modules/index.ts\\": __vite_glob_3_2});
28+
export const namedDefault = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\").then(m => m[\\"default\\"]),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\").then(m => m[\\"default\\"]),\\"./modules/index.ts\\": () => import(\\"./modules/index.ts\\").then(m => m[\\"default\\"])});
29+
export const eagerAs = Object.assign({\\"./modules/a.ts\\": __vite_glob_5_0,\\"./modules/b.ts\\": __vite_glob_5_1});
30+
export const rawImportModule = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts?raw\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts?raw\\")});
31+
export const excludeSelf = Object.assign({\\"./sibling.ts\\": () => import(\\"./sibling.ts\\")});
32+
export const customQueryString = Object.assign({\\"./sibling.ts\\": () => import(\\"./sibling.ts?custom&lang.ts\\")});
33+
export const customQueryObject = Object.assign({\\"./sibling.ts\\": () => import(\\"./sibling.ts?foo=bar&raw=true&lang.ts\\")});
34+
export const parent = Object.assign({});
35+
export const rootMixedRelative = Object.assign({\\"/css.spec.ts\\": () => import(\\"../../css.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),\\"/define.spec.ts\\": () => import(\\"../../define.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),\\"/esbuild.spec.ts\\": () => import(\\"../../esbuild.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),\\"/import.spec.ts\\": () => import(\\"../../import.spec.ts?url&lang.ts\\").then(m => m[\\"default\\"]),\\"/importGlob/fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts?url&lang.ts\\").then(m => m[\\"default\\"]),\\"/importGlob/fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts?url&lang.ts\\").then(m => m[\\"default\\"]),\\"/importGlob/fixture-b/index.ts\\": () => import(\\"../fixture-b/index.ts?url&lang.ts\\").then(m => m[\\"default\\"])});
36+
export const cleverCwd1 = Object.assign({\\"./node_modules/framework/pages/hello.page.js\\": () => import(\\"./node_modules/framework/pages/hello.page.js\\")});
37+
export const cleverCwd2 = Object.assign({\\"./modules/a.ts\\": () => import(\\"./modules/a.ts\\"),\\"./modules/b.ts\\": () => import(\\"./modules/b.ts\\"),\\"../fixture-b/a.ts\\": () => import(\\"../fixture-b/a.ts\\"),\\"../fixture-b/b.ts\\": () => import(\\"../fixture-b/b.ts\\")});
15038
"
15139
`;
15240

15341
exports[`fixture > virtual modules 1`] = `
154-
"Object.assign({
155-
\\"/modules/a.ts\\": () => import(\\"/modules/a.ts\\"),
156-
\\"/modules/b.ts\\": () => import(\\"/modules/b.ts\\"),
157-
\\"/modules/index.ts\\": () => import(\\"/modules/index.ts\\")
158-
})
159-
Object.assign({
160-
\\"/../fixture-b/a.ts\\": () => import(\\"/../fixture-b/a.ts\\"),
161-
\\"/../fixture-b/b.ts\\": () => import(\\"/../fixture-b/b.ts\\"),
162-
\\"/../fixture-b/index.ts\\": () => import(\\"/../fixture-b/index.ts\\")
163-
})"
42+
"Object.assign({\\"/modules/a.ts\\": () => import(\\"/modules/a.ts\\"),\\"/modules/b.ts\\": () => import(\\"/modules/b.ts\\"),\\"/modules/index.ts\\": () => import(\\"/modules/index.ts\\")})
43+
Object.assign({\\"/../fixture-b/a.ts\\": () => import(\\"/../fixture-b/a.ts\\"),\\"/../fixture-b/b.ts\\": () => import(\\"/../fixture-b/b.ts\\"),\\"/../fixture-b/index.ts\\": () => import(\\"/../fixture-b/index.ts\\")})"
16444
`;

packages/vite/src/node/plugins/assetImportMetaUrl.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import MagicString from 'magic-string'
33
import { stripLiteral } from 'strip-literal'
44
import type { Plugin } from '../plugin'
55
import type { ResolvedConfig } from '../config'
6-
import { transformResult } from '../utils'
6+
import { transformStableResult } from '../utils'
77
import { fileToUrl } from './asset'
88
import { preloadHelperId } from './importAnalysisBuild'
99

@@ -81,7 +81,7 @@ export function assetImportMetaUrlPlugin(config: ResolvedConfig): Plugin {
8181
)
8282
}
8383
if (s) {
84-
return transformResult(s, id, config)
84+
return transformStableResult(s, id, config)
8585
}
8686
}
8787
return null

packages/vite/src/node/plugins/define.ts

+2-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import MagicString from 'magic-string'
2-
import type { TransformResult } from 'rollup'
32
import type { ResolvedConfig } from '../config'
43
import type { Plugin } from '../plugin'
4+
import { transformStableResult } from '../utils'
55
import { isCSSRequest } from './css'
66
import { isHTMLRequest } from './html'
77

@@ -144,11 +144,7 @@ export function definePlugin(config: ResolvedConfig): Plugin {
144144
return null
145145
}
146146

147-
const result: TransformResult = { code: s.toString() }
148-
if (config.build.sourcemap) {
149-
result.map = s.generateMap({ hires: true })
150-
}
151-
return result
147+
return transformStableResult(s, id, config)
152148
}
153149
}
154150
}

packages/vite/src/node/plugins/dynamicImportVars.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import {
1111
normalizePath,
1212
parseRequest,
1313
requestQuerySplitRE,
14-
transformResult
14+
transformStableResult
1515
} from '../utils'
1616

1717
export const dynamicImportHelperId = '/@vite/dynamic-import-helper'
@@ -209,7 +209,7 @@ export function dynamicImportVarsPlugin(config: ResolvedConfig): Plugin {
209209
`import __variableDynamicImportRuntimeHelper from "${dynamicImportHelperId}";`
210210
)
211211
}
212-
return transformResult(s, importer, config)
212+
return transformStableResult(s, importer, config)
213213
}
214214
}
215215
}

packages/vite/src/node/plugins/importAnalysis.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ import {
4040
removeImportQuery,
4141
stripBomTag,
4242
timeFrom,
43-
transformResult,
43+
transformStableResult,
4444
unwrapId
4545
} from '../utils'
4646
import type { ResolvedConfig } from '../config'
@@ -711,7 +711,7 @@ export function importAnalysisPlugin(config: ResolvedConfig): Plugin {
711711
}
712712

713713
if (s) {
714-
return transformResult(s, importer, config)
714+
return transformStableResult(s, importer, config)
715715
} else {
716716
return source
717717
}

packages/vite/src/node/plugins/importMetaGlob.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import type { Plugin } from '../plugin'
1717
import type { ViteDevServer } from '../server'
1818
import type { ModuleNode } from '../server/moduleGraph'
1919
import type { ResolvedConfig } from '../config'
20-
import { normalizePath, slash, transformResult } from '../utils'
20+
import { normalizePath, slash, transformStableResult } from '../utils'
2121

2222
const { isMatch, scan } = micromatch
2323

@@ -75,7 +75,7 @@ export function importGlobPlugin(config: ResolvedConfig): Plugin {
7575
server!.watcher.add(dirname(file))
7676
})
7777
}
78-
return transformResult(result.s, id, config)
78+
return transformStableResult(result.s, id, config)
7979
}
8080
}
8181
}
@@ -426,7 +426,7 @@ export async function transformGlobImport(
426426

427427
files.forEach((i) => matchedFiles.add(i))
428428

429-
const replacement = `Object.assign({\n${objectProps.join(',\n')}\n})`
429+
const replacement = `Object.assign({${objectProps.join(',')}})`
430430
s.overwrite(start, end, replacement)
431431

432432
return staticImports
@@ -435,7 +435,7 @@ export async function transformGlobImport(
435435
)
436436
).flat()
437437

438-
if (staticImports.length) s.prepend(`${staticImports.join('\n')}\n`)
438+
if (staticImports.length) s.prepend(`${staticImports.join(';')};`)
439439

440440
return {
441441
s,

packages/vite/src/node/plugins/workerImportMetaUrl.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import {
1010
injectQuery,
1111
normalizePath,
1212
parseRequest,
13-
transformResult
13+
transformStableResult
1414
} from '../utils'
1515
import { getDepsOptimizer } from '../optimizer'
1616
import type { WorkerType } from './worker'
@@ -136,7 +136,7 @@ export function workerImportMetaUrlPlugin(config: ResolvedConfig): Plugin {
136136
}
137137

138138
if (s) {
139-
return transformResult(s, id, config)
139+
return transformStableResult(s, id, config)
140140
}
141141

142142
return null

packages/vite/src/node/utils.ts

+9-4
Original file line numberDiff line numberDiff line change
@@ -1028,16 +1028,21 @@ function normalizeSingleAlias({
10281028
return alias
10291029
}
10301030

1031-
export function transformResult(
1031+
/**
1032+
* Transforms transpiled code result where line numbers aren't altered,
1033+
* so we can skip sourcemap generation during dev
1034+
*/
1035+
export function transformStableResult(
10321036
s: MagicString,
10331037
id: string,
10341038
config: ResolvedConfig
10351039
): TransformResult {
1036-
const isBuild = config.command === 'build'
1037-
const needSourceMap = !isBuild || config.build.sourcemap
10381040
return {
10391041
code: s.toString(),
1040-
map: needSourceMap ? s.generateMap({ hires: true, source: id }) : null
1042+
map:
1043+
config.command === 'build' && config.build.sourcemap
1044+
? s.generateMap({ hires: true, source: id })
1045+
: null
10411046
}
10421047
}
10431048

0 commit comments

Comments
 (0)