From dd8453401840862186f991e2d514e0d328a67987 Mon Sep 17 00:00:00 2001 From: Zhiming Guo Date: Fri, 11 Sep 2020 22:53:37 +1000 Subject: [PATCH] perf(compiler): remove `createProgram` for `isolatedModules: true` to boost startup speed (#1941) Since `transpile` API is used for `isolatedModules: true`, `createProgram` does not do anything with it. Therefore we can remove it --- src/compiler/transpiler.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/compiler/transpiler.ts b/src/compiler/transpiler.ts index 90ea928029..fa954025fd 100644 --- a/src/compiler/transpiler.ts +++ b/src/compiler/transpiler.ts @@ -10,9 +10,8 @@ import type { CompilerInstance, SourceOutput } from '../types' export const initializeTranspilerInstance = (configs: ConfigSet, logger: Logger): CompilerInstance => { logger.debug('initializeTranspilerInstance(): create typescript compiler') - const { options, fileNames } = configs.parsedTsConfig + const { options } = configs.parsedTsConfig const ts = configs.compilerModule - const program = ts.createProgram(fileNames, options) return { compileFn: (code: string, fileName: string): SourceOutput => { @@ -31,6 +30,6 @@ export const initializeTranspilerInstance = (configs: ConfigSet, logger: Logger) // eslint-disable-next-line @typescript-eslint/no-non-null-assertion return [result.outputText, result.sourceMapText!] }, - program, + program: undefined, } }