Warn when building a TS project with composite: true and fallback to incremental (#35270)
* Warn when building a TS project with composite: true and fallback to incremental * lint-fix Co-authored-by: JJ Kasper <jj@jjsweb.site>
This commit is contained in:
parent
fb23f7b642
commit
0d80b113a3
1 changed files with 10 additions and 1 deletions
|
@ -7,6 +7,7 @@ import { getTypeScriptConfiguration } from './getTypeScriptConfiguration'
|
|||
import { getRequiredConfiguration } from './writeConfigurationDefaults'
|
||||
|
||||
import { CompileError } from '../compile-error'
|
||||
import { warn } from '../../build/output/log'
|
||||
|
||||
export interface TypeCheckResult {
|
||||
hasWarnings: boolean
|
||||
|
@ -40,6 +41,8 @@ export async function runTypeCheck(
|
|||
const options = {
|
||||
...effectiveConfiguration.options,
|
||||
...requiredConfig,
|
||||
declarationMap: false,
|
||||
emitDeclarationOnly: false,
|
||||
noEmit: true,
|
||||
}
|
||||
|
||||
|
@ -47,12 +50,18 @@ export async function runTypeCheck(
|
|||
| import('typescript').Program
|
||||
| import('typescript').BuilderProgram
|
||||
let incremental = false
|
||||
if (options.incremental && cacheDir) {
|
||||
if ((options.incremental || options.composite) && cacheDir) {
|
||||
if (options.composite) {
|
||||
warn(
|
||||
'TypeScript project references are not fully supported. Attempting to build in incremental mode.'
|
||||
)
|
||||
}
|
||||
incremental = true
|
||||
program = ts.createIncrementalProgram({
|
||||
rootNames: effectiveConfiguration.fileNames,
|
||||
options: {
|
||||
...options,
|
||||
composite: false,
|
||||
incremental: true,
|
||||
tsBuildInfoFile: path.join(cacheDir, '.tsbuildinfo'),
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue