diff --git a/src/compiler/builder.ts b/src/compiler/builder.ts index b0277cf53d2..4990df61ceb 100644 --- a/src/compiler/builder.ts +++ b/src/compiler/builder.ts @@ -38,11 +38,14 @@ import { emitSkippedWithNoDiagnostics, emptyArray, ensurePathIsNonModuleName, + Extension, + extensionFromPath, filterSemanticDiagnostics, forEach, forEachEntry, forEachKey, generateDjb2Hash, + GetCanonicalFileName, getDirectoryPath, getEmitDeclarations, getNormalizedAbsolutePath, @@ -62,6 +65,7 @@ import { map, mapDefined, maybeBind, + memoize, ModeAwareCache, noop, notImplemented, @@ -174,9 +178,8 @@ export interface ReusableBuilderProgramState extends BuilderState { typeRefs: Map> | undefined; }; resuableCacheResolutions?: { - resolutions: ProgramBuildInfoCacheResolutions; - fileNames: readonly string[]; - buildInfoPath: string; + cache: ProgramBuildInfoCacheResolutions; + getProgramBuildInfoFilePathDecoder: () => ProgramBuildInfoPathDecoder; } } @@ -491,11 +494,11 @@ function convertToDiagnostics(diagnostics: readonly ReusableDiagnostic[], newPro } } -function convertToDiagnosticRelatedInformation(diagnostic: ReusableDiagnosticRelatedInformation, newProgram: Program, toPath: (path: string) => Path): DiagnosticRelatedInformation { +function convertToDiagnosticRelatedInformation(diagnostic: ReusableDiagnosticRelatedInformation, newProgram: Program | undefined, toPath: (path: string) => Path): DiagnosticRelatedInformation { const { file } = diagnostic; return { ...diagnostic, - file: file ? newProgram.getSourceFileByPath(toPath(file)) : undefined + file: file ? newProgram!.getSourceFileByPath(toPath(file)) : undefined }; } @@ -1225,11 +1228,12 @@ function getBuildInfo(state: BuilderProgramState, bundle: BundleBuildInfo | unde function toProgramBuildInfoCompilerOptions(options: CompilerOptions) { let result: CompilerOptions | undefined; + const considerModuleResolution = options.cacheResolutions; const { optionsNameMap } = getOptionsNameMap(); for (const name of getOwnKeys(options).sort(compareStringsCaseSensitive)) { const optionInfo = optionsNameMap.get(name.toLowerCase()); - if (optionInfo?.affectsBuildInfo) { - (result ||= {})[name] = toReusableCompilerOptionValue( + if (optionInfo?.affectsBuildInfo || considerModuleResolution && optionInfo?.affectsModuleResolution) { + (result ??= {})[name] = toReusableCompilerOptionValue( optionInfo, options[name] as CompilerOptionsValue, ); @@ -1283,17 +1287,21 @@ function getBuildInfo(state: BuilderProgramState, bundle: BundleBuildInfo | unde Debug.assertIsDefined(names); Debug.assertIsDefined(resolutionEntries); state.resuableCacheResolutions = { - resolutions: { + cache: { resolutions, names, resolutionEntries, modules, typeRefs, }, - fileNames, - buildInfoPath, + getProgramBuildInfoFilePathDecoder: memoize(() => getProgramBuildInfoFilePathDecoder( + fileNames, + buildInfoPath, + currentDirectory, + state.program!.getCanonicalFileName + )), }; - return state.resuableCacheResolutions.resolutions; + return state.resuableCacheResolutions.cache; } function toProgramBuildInfoResolutionCache( @@ -1856,10 +1864,15 @@ export function toProgramEmitPending(value: ProgramBuildInfoBundlePendingEmit, o return !value ? getBuilderFileEmit(options || {}) : value; } -function getProgramBuildInfoFilePathDecoder(fileNames: readonly string[], buildInfoPath: string, host: ReadBuildProgramHost) { - const buildInfoDirectory = getDirectoryPath(getNormalizedAbsolutePath(buildInfoPath, host.getCurrentDirectory())); - const getCanonicalFileName = createGetCanonicalFileName(host.useCaseSensitiveFileNames()); +/** @internal */ +export interface ProgramBuildInfoPathDecoder { + toAbsolutePath(path: string): string; + toFilePath(fileId: ProgramBuildInfoFileId): Path; + toFileAbsolutePath(fileId: ProgramBuildInfoAbsoluteFileId): string; +} +function getProgramBuildInfoFilePathDecoder(fileNames: readonly string[], buildInfoPath: string, currentDirectory: string, getCanonicalFileName: GetCanonicalFileName): ProgramBuildInfoPathDecoder { + const buildInfoDirectory = getDirectoryPath(getNormalizedAbsolutePath(buildInfoPath, currentDirectory)); let filePaths: Path[] | undefined; let fileAbsolutePaths: string[] | undefined; return { toAbsolutePath, toFilePath, toFileAbsolutePath }; @@ -1884,9 +1897,15 @@ function getProgramBuildInfoFilePathDecoder(fileNames: readonly string[], buildI } /** @internal */ -export function createBuilderProgramUsingProgramBuildInfo(buildInfo: BuildInfo, buildInfoPath: string, host: ReadBuildProgramHost): EmitAndSemanticDiagnosticsBuilderProgram { +export function createBuilderProgramUsingProgramBuildInfo( + buildInfo: BuildInfo, + buildInfoPath: string, + host: ReadBuildProgramHost, + configFilePath: string | undefined, +): EmitAndSemanticDiagnosticsBuilderProgram { const program = buildInfo.program!; - const { toFilePath, toAbsolutePath } = getProgramBuildInfoFilePathDecoder(program.fileNames, buildInfoPath, host); + const buildInfoFilePathDecoder = getProgramBuildInfoFilePathDecoder(program.fileNames, buildInfoPath, host.getCurrentDirectory(), createGetCanonicalFileName(host.useCaseSensitiveFileNames())); + const { toFilePath, toAbsolutePath } = buildInfoFilePathDecoder; let state: ReusableBuilderProgramState; let filePathsSetList: Set[] | undefined; const latestChangedDtsFile = program.latestChangedDtsFile ? toAbsolutePath(program.latestChangedDtsFile) : undefined; @@ -1942,7 +1961,7 @@ export function createBuilderProgramUsingProgramBuildInfo(buildInfo: BuildInfo, resuableCacheResolutions: toResuableCacheResolutions(), }; } - + state.compilerOptions.configFilePath = configFilePath; return { getState: () => state, saveEmitState: noop as BuilderProgram["saveEmitState"], @@ -1988,9 +2007,8 @@ export function createBuilderProgramUsingProgramBuildInfo(buildInfo: BuildInfo, function toResuableCacheResolutions(): BuilderProgramState["resuableCacheResolutions"] { return program.cacheResolutions && { - resolutions: program.cacheResolutions, - fileNames: program.fileNames, - buildInfoPath, + cache: program.cacheResolutions, + getProgramBuildInfoFilePathDecoder: () => buildInfoFilePathDecoder, }; } } @@ -2011,15 +2029,148 @@ function createGetProgramOrOldBuildInfoProgramUndefined(state: ReusableBuilderPr /** @internal */ export function createOldBuildInfoProgram( - _host: OldBuildInfoProgramHost, + host: OldBuildInfoProgramHost, compilerOptions: CompilerOptions, cacheResolutions: ReusableBuilderProgramState["cacheResolutions"], resuableCacheResolutions: ReusableBuilderProgramState["resuableCacheResolutions"], ): OldBuildInfoProgram | undefined { if (!cacheResolutions && !resuableCacheResolutions) return undefined; + const fileExistsMap = new Map(); + + type Resolution = ResolvedModuleWithFailedLookupLocations & ResolvedTypeReferenceDirectiveWithFailedLookupLocations; + type ResolutionEntry = [name: string, resolutionId: ProgramBuildInfoResolutionId, mode: ResolutionMode]; + interface ReusableResolutionsCache { + reusable?: ProgramBuildInfoResolutionCache; + decoded?: Map>; + } + const reusableResolvedModules = intializeReusableResolutionsCache(resuableCacheResolutions?.cache.modules); + const reusableResolvedTypeRefs = intializeReusableResolutionsCache(resuableCacheResolutions?.cache.typeRefs); + let resolutions: (Resolution | false)[] | undefined; + let resolutionEntries: ResolutionEntry[] | undefined; return { getCompilerOptions: () => compilerOptions, + getResolvedModule: (name, mode, dirPath) => getResolvedFromCache( + cacheResolutions?.modules, + getOriginalOrResolvedModuleFileName, + reusableResolvedModules, + name, + mode, + dirPath, + ), + getResolvedTypeReferenceDirective: (name, mode, dirPath) => getResolvedFromCache( + cacheResolutions?.typeRefs, + getOriginalOrResolvedTypeReferenceFileName, + reusableResolvedTypeRefs, + name, + mode, + dirPath, + ), }; + + function intializeReusableResolutionsCache(reusable: ProgramBuildInfoResolutionCache | undefined): ReusableResolutionsCache | undefined { + return reusable ? { reusable } : undefined; + } + + function fileExists(fileName: string) { + let result = fileExistsMap.get(fileName); + if (result === undefined) fileExistsMap.set(fileName, result = host.fileExists(fileName)); + return result; + } + + function getResolvedFromCache( + cache: Map> | undefined, + getResolvedFileName: (resolution: T) => string | undefined, + reusableResolutionsCache: ReusableResolutionsCache | undefined, + name: string, + mode: ResolutionMode, + dirPath: Path, + ): T | undefined { + const fromCache = cache?.get(dirPath)?.get(name, mode); + if (fromCache) { + // TODO:: symlinks + const resolvedFileName = getResolvedFileName(fromCache); + return resolvedFileName && fileExists(resolvedFileName) ? fromCache : undefined; + } + if (!reusableResolutionsCache) return undefined; + if (!reusableResolutionsCache.decoded) { + if (!reusableResolutionsCache.reusable) return undefined; + for (const [dirId, entryId] of reusableResolutionsCache.reusable) { + (reusableResolutionsCache.decoded ??= new Map()).set( + resuableCacheResolutions!.getProgramBuildInfoFilePathDecoder().toFilePath(dirId), + entryId + ); + } + reusableResolutionsCache.reusable = undefined; + if (!reusableResolutionsCache.decoded) return undefined; + } + let cacheForDir = reusableResolutionsCache.decoded.get(dirPath); + if (!cacheForDir) return undefined; + if (isArray(cacheForDir)) reusableResolutionsCache.decoded.set(dirPath, cacheForDir = toModeAwareCache(cacheForDir)); + const resolutionId = cacheForDir.get(name, mode); + return resolutionId ? toResolution(resolutionId) as T : undefined; + } + + function toModeAwareCache(entries: readonly ProgramBuildInfoResolutionEntryId[]) { + const modeAwareCache = createModeAwareCache(); + for (const entryId of entries) { + const [name, resolutionId, mode] = toResolutionEntry(entryId); + modeAwareCache.set(name, mode, resolutionId); + } + return modeAwareCache; + } + + function toResolutionEntry(entryId: ProgramBuildInfoResolutionEntryId): ResolutionEntry { + const existing = resolutionEntries?.[entryId - 1]; + if (existing) return existing; + resolutionEntries ??= new Array(resuableCacheResolutions!.cache.resolutionEntries.length); + const [nameId, resolutionId, mode] = resuableCacheResolutions!.cache.resolutionEntries[entryId - 1]; + return resolutionEntries[entryId - 1] = [ + toName(nameId), + resolutionId, + mode + ]; + } + + function toName(nameId: ProgramBuildInfoResolutionNameId): string { + return resuableCacheResolutions!.cache.names[nameId - 1]; + } + + function toResolution(resolutionId: ProgramBuildInfoResolutionId): Resolution | undefined { + const existing = resolutions?.[resolutionId - 1]; + if (existing !== undefined) return existing || undefined; + resolutions ??= new Array(resuableCacheResolutions!.cache.resolutions.length); + const resolution = resuableCacheResolutions!.cache.resolutions[resolutionId - 1]; + const resolvedFileName = resuableCacheResolutions!.getProgramBuildInfoFilePathDecoder().toFileAbsolutePath( + resolution.resolvedModule?.resolvedFileName || resolution.resolvedTypeReferenceDirective!.resolvedFileName + ); + if (fileExists(resolvedFileName)) { + // Type Ref doesnt need extension + const extenstion = resolution.resolvedModule ? extensionFromPath(resolvedFileName) : undefined!; + return resolutions[resolutionId - 1] = { + resolvedModule: toResolved(resolution.resolvedModule, resolvedFileName, extenstion), + resolvedTypeReferenceDirective: toResolved(resolution.resolvedTypeReferenceDirective, resolvedFileName, extenstion), + failedLookupLocations: resolution.failedLookupLocations?.map(resuableCacheResolutions!.getProgramBuildInfoFilePathDecoder().toFileAbsolutePath) || [], + affectingLocations: resolution.affectingLocations?.map(resuableCacheResolutions!.getProgramBuildInfoFilePathDecoder().toFileAbsolutePath), + resolutionDiagnostics: resolution.resolutionDiagnostics?.length ? convertToDiagnostics(resolution.resolutionDiagnostics, /*newProgram*/ undefined!) as Diagnostic[] : undefined + }; + } + resolutions[resolutionId - 1] = false; + return undefined; + } + + function toResolved( + resolved: ProgramBuildInfoResolvedModuleFull & ProgramBuildInfoResolvedTypeReferenceDirective | undefined, + resolvedFileName: string, + extension: Extension, + ): (ResolvedModuleFull & ResolvedTypeReferenceDirective) | undefined { + if (!resolved) return undefined; + return { + ...resolved, + resolvedFileName, + originalPath: resolved.originalPath ? resuableCacheResolutions!.getProgramBuildInfoFilePathDecoder().toFileAbsolutePath(resolved.originalPath) : undefined, + extension, + }; + } } /** @internal */ diff --git a/src/compiler/moduleNameResolver.ts b/src/compiler/moduleNameResolver.ts index 4cb3a4388f9..d96eec0ddac 100644 --- a/src/compiler/moduleNameResolver.ts +++ b/src/compiler/moduleNameResolver.ts @@ -555,10 +555,10 @@ export function resolveTypeReferenceDirective(typeReferenceDirectiveName: string trace(host, Diagnostics.Type_reference_directive_0_was_not_resolved, typeReferenceDirectiveName); } else if (result.resolvedTypeReferenceDirective.packageId) { - trace(host, Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3, typeReferenceDirectiveName, result.resolvedTypeReferenceDirective.resolvedFileName, packageIdToString(result.resolvedTypeReferenceDirective.packageId), result.resolvedTypeReferenceDirective.primary); + trace(host, Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3, typeReferenceDirectiveName, result.resolvedTypeReferenceDirective.resolvedFileName, packageIdToString(result.resolvedTypeReferenceDirective.packageId), !!result.resolvedTypeReferenceDirective.primary); } else { - trace(host, Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2, typeReferenceDirectiveName, result.resolvedTypeReferenceDirective.resolvedFileName, result.resolvedTypeReferenceDirective.primary); + trace(host, Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2, typeReferenceDirectiveName, result.resolvedTypeReferenceDirective.resolvedFileName, !!result.resolvedTypeReferenceDirective.primary); } } diff --git a/src/compiler/program.ts b/src/compiler/program.ts index cd6a4f39298..d90c71cff2f 100644 --- a/src/compiler/program.ts +++ b/src/compiler/program.ts @@ -2025,20 +2025,37 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg for (let i = 0; i < moduleNames.length; i++) { const moduleName = moduleNames[i]; // If the source file is unchanged and doesnt have invalidated resolution, reuse the module resolutions - if (file === oldSourceFile && !hasInvalidatedResolutions(oldSourceFile.path)) { + if (oldBuildInfoProgram || file === oldSourceFile && !hasInvalidatedResolutions(oldSourceFile.path)) { const mode = getModeForUsageLocation(file, moduleName); - const oldResolution = oldSourceFile.resolvedModules?.get(moduleName.text, mode); + const oldResolution = !oldBuildInfoProgram ? + oldSourceFile?.resolvedModules?.get(moduleName.text, mode) : + oldBuildInfoProgram.getResolvedModule(moduleName.text, mode, getDirectoryPath(file.path)); if (oldResolution?.resolvedModule) { if (isTraceEnabled(options, host)) { - trace(host, - oldResolution.resolvedModule.packageId ? - Diagnostics.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : - Diagnostics.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2, - moduleName.text, - getNormalizedAbsolutePath(file.originalFileName, currentDirectory), - oldResolution.resolvedModule.resolvedFileName, - oldResolution.resolvedModule.packageId && packageIdToString(oldResolution.resolvedModule.packageId) - ); + const fileLocation = getNormalizedAbsolutePath(file.originalFileName, currentDirectory); + if (!oldBuildInfoProgram) { + trace(host, + oldResolution.resolvedModule.packageId ? + Diagnostics.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : + Diagnostics.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2, + moduleName.text, + fileLocation, + oldResolution.resolvedModule.resolvedFileName, + oldResolution.resolvedModule.packageId && packageIdToString(oldResolution.resolvedModule.packageId) + ); + } + else { + trace(host, + oldResolution.resolvedModule.packageId ? + Diagnostics.Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4 : + Diagnostics.Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3, + moduleName.text, + fileLocation, + getDirectoryPath(fileLocation), + oldResolution.resolvedModule.resolvedFileName, + oldResolution.resolvedModule.packageId && packageIdToString(oldResolution.resolvedModule.packageId) + ); + } } (result ??= new Array(moduleNames.length))[i] = oldResolution; (reusedNames ??= []).push(moduleName); @@ -2153,26 +2170,43 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg let result: ResolvedTypeReferenceDirectiveWithFailedLookupLocations[] | undefined; let reusedNames: T[] | undefined; const containingSourceFile = !isString(containingFile) ? containingFile : undefined; - const canReuseResolutions = !isString(containingFile) ? + const canReuseResolutions = oldBuildInfoProgram || (!isString(containingFile) ? containingFile === oldSourceFile && !hasInvalidatedResolutions(oldSourceFile.path) : - !hasInvalidatedResolutions(toPath(containingFile)); + !hasInvalidatedResolutions(toPath(containingFile))); for (let i = 0; i < typeDirectiveNames.length; i++) { const entry = typeDirectiveNames[i]; if (canReuseResolutions) { const typeDirectiveName = getTypeReferenceResolutionName(entry); const mode = getModeForFileReference(entry, containingSourceFile?.impliedNodeFormat); - const oldResolution = (!isString(containingFile) ? oldSourceFile?.resolvedTypeReferenceDirectiveNames : oldProgram?.getAutomaticTypeDirectiveResolutions())?.get(typeDirectiveName, mode); + const oldResolution = !oldBuildInfoProgram ? + (!isString(containingFile) ? oldSourceFile?.resolvedTypeReferenceDirectiveNames : oldProgram?.getAutomaticTypeDirectiveResolutions())?.get(typeDirectiveName, mode) : + oldBuildInfoProgram.getResolvedTypeReferenceDirective(typeDirectiveName, mode, getDirectoryPath(!isString(containingFile) ? containingFile.path : toPath(containingFile))); if (oldResolution?.resolvedTypeReferenceDirective) { if (isTraceEnabled(options, host)) { - trace(host, - oldResolution.resolvedTypeReferenceDirective.packageId ? - Diagnostics.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : - Diagnostics.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2, - typeDirectiveName, - !isString(containingFile) ? getNormalizedAbsolutePath(containingFile.originalFileName, currentDirectory) : containingFile, - oldResolution.resolvedTypeReferenceDirective.resolvedFileName, - oldResolution.resolvedTypeReferenceDirective.packageId && packageIdToString(oldResolution.resolvedTypeReferenceDirective.packageId) - ); + const fileLocation = !isString(containingFile) ? getNormalizedAbsolutePath(containingFile.originalFileName, currentDirectory) : containingFile; + if (!oldBuildInfoProgram) { + trace(host, + oldResolution.resolvedTypeReferenceDirective.packageId ? + Diagnostics.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3 : + Diagnostics.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2, + typeDirectiveName, + fileLocation, + oldResolution.resolvedTypeReferenceDirective.resolvedFileName, + oldResolution.resolvedTypeReferenceDirective.packageId && packageIdToString(oldResolution.resolvedTypeReferenceDirective.packageId) + ); + } + else { + trace(host, + oldResolution.resolvedTypeReferenceDirective.packageId ? + Diagnostics.Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4 : + Diagnostics.Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3, + typeDirectiveName, + fileLocation, + getDirectoryPath(fileLocation), + oldResolution.resolvedTypeReferenceDirective.resolvedFileName, + oldResolution.resolvedTypeReferenceDirective.packageId && packageIdToString(oldResolution.resolvedTypeReferenceDirective.packageId) + ); + } } (result ??= new Array(typeDirectiveNames.length))[i] = oldResolution; (reusedNames ??= []).push(entry); diff --git a/src/compiler/types.ts b/src/compiler/types.ts index d538ceeeb4a..49a22bf862b 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -6972,6 +6972,8 @@ export interface CreateProgramOptions { /** @internal */ export interface OldBuildInfoProgram { getCompilerOptions(): CompilerOptions; + getResolvedModule(name: string, mode: ResolutionMode, dirPath: Path): ResolvedModuleWithFailedLookupLocations | undefined; + getResolvedTypeReferenceDirective(name: string, mode: ResolutionMode, dirPath: Path): ResolvedTypeReferenceDirectiveWithFailedLookupLocations | undefined; } /** @internal */ @@ -7311,7 +7313,7 @@ export interface ResolvedModuleWithFailedLookupLocations { export interface ResolvedTypeReferenceDirective { // True if the type declaration file was found in a primary lookup location - primary: boolean; + primary: boolean | undefined; // The location of the .d.ts file we located, or undefined if resolution failed resolvedFileName: string | undefined; /** diff --git a/src/compiler/watchPublic.ts b/src/compiler/watchPublic.ts index 9da08decb51..9797e90ece0 100644 --- a/src/compiler/watchPublic.ts +++ b/src/compiler/watchPublic.ts @@ -115,7 +115,7 @@ export function readBuilderProgram(compilerOptions: CompilerOptions, host: ReadB buildInfo = getBuildInfo(buildInfoPath, content); } if (!buildInfo || buildInfo.version !== version || !buildInfo.program) return undefined; - return createBuilderProgramUsingProgramBuildInfo(buildInfo, buildInfoPath, host); + return createBuilderProgramUsingProgramBuildInfo(buildInfo, buildInfoPath, host, compilerOptions.configFilePath); } export function createIncrementalCompilerHost(options: CompilerOptions, system = sys): CompilerHost { diff --git a/tests/baselines/reference/api/tsserverlibrary.d.ts b/tests/baselines/reference/api/tsserverlibrary.d.ts index 5a8b898a0b3..d8f1b45d6a4 100644 --- a/tests/baselines/reference/api/tsserverlibrary.d.ts +++ b/tests/baselines/reference/api/tsserverlibrary.d.ts @@ -7309,7 +7309,7 @@ declare namespace ts { readonly resolvedModule: ResolvedModuleFull | undefined; } interface ResolvedTypeReferenceDirective { - primary: boolean; + primary: boolean | undefined; resolvedFileName: string | undefined; packageId?: PackageId; /** True if `resolvedFileName` comes from `node_modules`. */ diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts index dd8bc6573ef..0c0e56adc61 100644 --- a/tests/baselines/reference/api/typescript.d.ts +++ b/tests/baselines/reference/api/typescript.d.ts @@ -3375,7 +3375,7 @@ declare namespace ts { readonly resolvedModule: ResolvedModuleFull | undefined; } interface ResolvedTypeReferenceDirective { - primary: boolean; + primary: boolean | undefined; resolvedFileName: string | undefined; packageId?: PackageId; /** True if `resolvedFileName` comes from `node_modules`. */ diff --git a/tests/baselines/reference/tsbuild/cacheResolutions/bundle-emit.js b/tests/baselines/reference/tsbuild/cacheResolutions/bundle-emit.js index 1f6c9c7fb8c..d1f95f8b36d 100644 --- a/tests/baselines/reference/tsbuild/cacheResolutions/bundle-emit.js +++ b/tests/baselines/reference/tsbuild/cacheResolutions/bundle-emit.js @@ -1202,43 +1202,12 @@ export const x = 10; Output:: /lib/tsc -b /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg3/package.json' does not exist. -File '/src/project/node_modules/pkg3.d.ts' does not exist. -File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. lib/lib.d.ts Default library for target 'es5' src/project/pkg0.d.ts @@ -1266,8 +1235,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1277,8 +1245,7 @@ pkg0: { pkg1: { "resolvedModule": { "resolvedFileName": "/src/project/pkg1.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg1.ts", @@ -1290,7 +1257,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -1303,7 +1269,6 @@ pkg2: { } pkg3: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg3/index.d.ts", "isExternalLibraryImport": true }, @@ -1320,8 +1285,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1752,46 +1716,13 @@ export const x = 10; Output:: /lib/tsc -b /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg3/package.json' does not exist. -File '/src/project/node_modules/pkg3.d.ts' does not exist. -File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. lib/lib.d.ts Default library for target 'es5' src/project/pkg0.d.ts @@ -1819,8 +1750,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1830,8 +1760,7 @@ pkg0: { pkg1: { "resolvedModule": { "resolvedFileName": "/src/project/pkg1.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg1.ts", @@ -1843,7 +1772,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -1856,7 +1784,6 @@ pkg2: { } pkg3: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg3/index.d.ts", "isExternalLibraryImport": true }, @@ -1873,8 +1800,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1886,7 +1812,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, diff --git a/tests/baselines/reference/tsbuild/cacheResolutions/multi-file.js b/tests/baselines/reference/tsbuild/cacheResolutions/multi-file.js index f0c9b6bbb35..7d3da6baa5f 100644 --- a/tests/baselines/reference/tsbuild/cacheResolutions/multi-file.js +++ b/tests/baselines/reference/tsbuild/cacheResolutions/multi-file.js @@ -385,7 +385,7 @@ pkg4: { //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -498,7 +498,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -844,7 +845,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 3256 + "size": 3277 } @@ -858,22 +859,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -902,20 +888,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -929,20 +906,15 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -1012,13 +984,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1100,7 +1072,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1169,22 +1140,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -1202,21 +1158,12 @@ File '/src/project/node_modules/pkg1/require.tsx' does not exist. File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. ======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1230,20 +1177,15 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -1326,13 +1268,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1387,7 +1329,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1443,7 +1384,7 @@ pkg4: { //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5]],"referencedMap":[[4,1],[6,2]],"exportedModulesMap":[[6,2]],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"affectedFilesPendingEmit":[4,6,7,8],"emitSignatures":[4,6,7,8],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5]],"referencedMap":[[4,1],[6,2]],"exportedModulesMap":[[6,2]],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"affectedFilesPendingEmit":[4,6,7,8],"emitSignatures":[4,6,7,8],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1571,7 +1512,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2007,7 +1949,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 3584 + "size": 3605 } @@ -2028,54 +1970,14 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -2087,7 +1989,7 @@ File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - st File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. @@ -2095,13 +1997,8 @@ File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -2174,13 +2071,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2196,13 +2093,13 @@ pkg0: esnext: { pkg1: commonjs: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg1/require.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg1", "subModuleName": "require.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2250,7 +2147,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -2342,7 +2238,7 @@ exports.x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6]],"referencedMap":[[4,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6]],"referencedMap":[[4,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2489,7 +2385,8 @@ exports.x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2979,7 +2876,7 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 4126 + "size": 4147 } @@ -2997,83 +2894,26 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. Found 'package.json' at '/src/project/node_modules/pkg3/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -3147,13 +2987,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3169,13 +3009,13 @@ pkg0: esnext: { pkg1: commonjs: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg1/require.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg1", "subModuleName": "require.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3223,7 +3063,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3241,7 +3080,6 @@ pkg2: esnext: { } pkg3: commonjs: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg3/require.d.ts", "packageId": { "name": "pkg3", @@ -3264,13 +3102,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3299,7 +3137,7 @@ pkg4: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2]],"referencedMap":[[4,1],[7,2],[8,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2]],"referencedMap":[[4,1],[7,2],[8,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -3449,7 +3287,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -3942,7 +3781,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 4227 + "size": 4248 } @@ -3960,86 +3799,27 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. Found 'package.json' at '/src/project/node_modules/pkg3/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -4113,13 +3893,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -4135,13 +3915,13 @@ pkg0: esnext: { pkg1: commonjs: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg1/require.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg1", "subModuleName": "require.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -4189,7 +3969,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4207,7 +3986,6 @@ pkg2: esnext: { } pkg3: commonjs: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg3/require.d.ts", "packageId": { "name": "pkg3", @@ -4230,13 +4008,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -4254,7 +4032,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4293,7 +4070,7 @@ exports.x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -4446,7 +4223,8 @@ exports.x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -4942,6 +4720,6 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 4296 + "size": 4317 } diff --git a/tests/baselines/reference/tsbuild/sample1/cacheResolutions.js b/tests/baselines/reference/tsbuild/sample1/cacheResolutions.js index fa6d5e5fc50..cd291f589ce 100644 --- a/tests/baselines/reference/tsbuild/sample1/cacheResolutions.js +++ b/tests/baselines/reference/tsbuild/sample1/cacheResolutions.js @@ -315,7 +315,7 @@ exports.m = mod; {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,iCAAmC;AACnC,SAAgB,eAAe;IAC3B,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9B,CAAC;AAFD,0CAEC;AACD,2CAA6C;AAChC,QAAA,CAAC,GAAG,GAAG,CAAC"} //// [/src/logic/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","./index.ts","./","../core/index.ts","../core/anotherModule.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"1874987148-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\n","-8396256275-export declare const World = \"hello\";\r\n",{"version":"-5786964698-import * as c from '../core/index';\r\nexport function getSecondsInDay() {\r\n return c.multiply(10, 15);\r\n}\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"skipDefaultLibCheck":true,"sourceMap":true},"fileIdsList":[[2,3],[3]],"referencedMap":[[4,1]],"exportedModulesMap":[[4,2]],"semanticDiagnosticsPerFile":[1,3,2,4],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":6}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/index","../core/anotherModule"],"resolutionEntries":[[1,1],[2,2]],"modules":[[5,[1,2]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","./index.ts","./","../core/index.ts","../core/anotherModule.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"1874987148-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\n","-8396256275-export declare const World = \"hello\";\r\n",{"version":"-5786964698-import * as c from '../core/index';\r\nexport function getSecondsInDay() {\r\n return c.multiply(10, 15);\r\n}\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true,"sourceMap":true},"fileIdsList":[[2,3],[3]],"referencedMap":[[4,1]],"exportedModulesMap":[[4,2]],"semanticDiagnosticsPerFile":[1,3,2,4],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":6}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/index","../core/anotherModule"],"resolutionEntries":[[1,1],[2,2]],"modules":[[5,[1,2]]]}},"version":"FakeTSVersion"} //// [/src/logic/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -369,6 +369,7 @@ exports.m = mod; "cacheResolutions": true, "composite": true, "declaration": true, + "forceConsistentCasingInFileNames": true, "skipDefaultLibCheck": true, "sourceMap": true }, @@ -479,7 +480,7 @@ exports.m = mod; } }, "version": "FakeTSVersion", - "size": 1816 + "size": 1856 } //// [/src/tests/index.d.ts] @@ -500,7 +501,7 @@ exports.m = mod; //// [/src/tests/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts","../logic","../core/anotherModule.ts","./","../core/index.ts","../logic/index.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"1874987148-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\n","-8396256275-export declare const World = \"hello\";\r\n","-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9209611-import * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":7}},{"resolvedModule":{"resolvedFileName":9}},{"resolvedModule":{"resolvedFileName":10}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/anotherModule","../core/index","../logic/index"],"resolutionEntries":[[1,1],[2,2],[3,3],[1,4]],"modules":[[6,[1]],[8,[2,3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts","../logic","../core/anotherModule.ts","./","../core/index.ts","../logic/index.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"1874987148-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\n","-8396256275-export declare const World = \"hello\";\r\n","-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9209611-import * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":7}},{"resolvedModule":{"resolvedFileName":9}},{"resolvedModule":{"resolvedFileName":10}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/anotherModule","../core/index","../logic/index"],"resolutionEntries":[[1,1],[2,2],[3,3],[1,4]],"modules":[[6,[1]],[8,[2,3,4]]]}},"version":"FakeTSVersion"} //// [/src/tests/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -562,6 +563,7 @@ exports.m = mod; "cacheResolutions": true, "composite": true, "declaration": true, + "forceConsistentCasingInFileNames": true, "skipDefaultLibCheck": true }, "referencedMap": { @@ -755,7 +757,7 @@ exports.m = mod; } }, "version": "FakeTSVersion", - "size": 2118 + "size": 2158 } @@ -791,7 +793,7 @@ Shape signatures in builder refreshed for:: Program root files: ["/src/logic/index.ts"] Program options: {"composite":true,"declaration":true,"sourceMap":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true,"cacheResolutions":true,"configFilePath":"/src/logic/tsconfig.json"} -Program structureReused: Not +Program structureReused: SafeModuleCache Program files:: /lib/lib.d.ts /src/core/index.d.ts @@ -808,7 +810,7 @@ Shape signatures in builder refreshed for:: Program root files: ["/src/tests/index.ts"] Program options: {"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true,"cacheResolutions":true,"configFilePath":"/src/tests/tsconfig.json"} -Program structureReused: Not +Program structureReused: SafeModuleCache Program files:: /lib/lib.d.ts /src/core/index.d.ts @@ -925,7 +927,7 @@ exports.someClass = someClass; //// [/src/logic/index.js] file written with same contents //// [/src/logic/index.js.map] file written with same contents //// [/src/logic/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","./index.ts","./","../core/index.ts","../core/anotherModule.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-14636110300-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\nexport declare class someClass {\r\n}\r\n","-8396256275-export declare const World = \"hello\";\r\n",{"version":"-5786964698-import * as c from '../core/index';\r\nexport function getSecondsInDay() {\r\n return c.multiply(10, 15);\r\n}\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"skipDefaultLibCheck":true,"sourceMap":true},"fileIdsList":[[2,3],[3]],"referencedMap":[[4,1]],"exportedModulesMap":[[4,2]],"semanticDiagnosticsPerFile":[1,3,2,4],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":6}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/index","../core/anotherModule"],"resolutionEntries":[[1,1],[2,2]],"modules":[[5,[1,2]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","./index.ts","./","../core/index.ts","../core/anotherModule.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-14636110300-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\nexport declare class someClass {\r\n}\r\n","-8396256275-export declare const World = \"hello\";\r\n",{"version":"-5786964698-import * as c from '../core/index';\r\nexport function getSecondsInDay() {\r\n return c.multiply(10, 15);\r\n}\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true,"sourceMap":true},"fileIdsList":[[2,3],[3]],"referencedMap":[[4,1]],"exportedModulesMap":[[4,2]],"semanticDiagnosticsPerFile":[1,3,2,4],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":6}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/index","../core/anotherModule"],"resolutionEntries":[[1,1],[2,2]],"modules":[[5,[1,2]]]}},"version":"FakeTSVersion"} //// [/src/logic/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -979,6 +981,7 @@ exports.someClass = someClass; "cacheResolutions": true, "composite": true, "declaration": true, + "forceConsistentCasingInFileNames": true, "skipDefaultLibCheck": true, "sourceMap": true }, @@ -1089,12 +1092,12 @@ exports.someClass = someClass; } }, "version": "FakeTSVersion", - "size": 1859 + "size": 1899 } //// [/src/tests/index.js] file written with same contents //// [/src/tests/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts","../logic","../core/anotherModule.ts","./","../core/index.ts","../logic/index.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-14636110300-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\nexport declare class someClass {\r\n}\r\n","-8396256275-export declare const World = \"hello\";\r\n","-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9209611-import * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":7}},{"resolvedModule":{"resolvedFileName":9}},{"resolvedModule":{"resolvedFileName":10}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/anotherModule","../core/index","../logic/index"],"resolutionEntries":[[1,1],[2,2],[3,3],[1,4]],"modules":[[6,[1]],[8,[2,3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts","../logic","../core/anotherModule.ts","./","../core/index.ts","../logic/index.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"-14636110300-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\nexport declare class someClass {\r\n}\r\n","-8396256275-export declare const World = \"hello\";\r\n","-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9209611-import * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":7}},{"resolvedModule":{"resolvedFileName":9}},{"resolvedModule":{"resolvedFileName":10}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/anotherModule","../core/index","../logic/index"],"resolutionEntries":[[1,1],[2,2],[3,3],[1,4]],"modules":[[6,[1]],[8,[2,3,4]]]}},"version":"FakeTSVersion"} //// [/src/tests/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1156,6 +1159,7 @@ exports.someClass = someClass; "cacheResolutions": true, "composite": true, "declaration": true, + "forceConsistentCasingInFileNames": true, "skipDefaultLibCheck": true }, "referencedMap": { @@ -1349,7 +1353,7 @@ exports.someClass = someClass; } }, "version": "FakeTSVersion", - "size": 2161 + "size": 2201 } diff --git a/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit-already-built.js b/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit-already-built.js index 0452b8e3e62..08f107f0ae6 100644 --- a/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit-already-built.js +++ b/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit-already-built.js @@ -357,12 +357,7 @@ Output:: >> Screen clear [12:00:41 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -384,14 +379,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -400,15 +388,8 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -615,12 +596,7 @@ Output:: >> Screen clear [12:00:45 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -642,14 +618,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -658,18 +627,9 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -895,26 +855,14 @@ Output:: >> Screen clear [12:00:51 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. File '/src/project/pkg1.tsx' does not exist. File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. ======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -923,18 +871,9 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. fileWithTypeRefs.ts:2:23 - error TS2688: Cannot find type definition file for 'pkg3'. 2 /// @@ -1145,26 +1084,9 @@ Output:: >> Screen clear [12:01:00 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1173,18 +1095,9 @@ File '/src/project/node_modules/pkg3.d.ts' does not exist. File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. ../../a/lib/lib.d.ts Default library for target 'es5' pkg0.d.ts @@ -1860,46 +1773,13 @@ Output:: >> Screen clear [12:01:15 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg3/package.json' does not exist. -File '/src/project/node_modules/pkg3.d.ts' does not exist. -File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. ../../a/lib/lib.d.ts Default library for target 'es5' pkg0.d.ts diff --git a/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit.js b/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit.js index 3d8105f9baf..f75b41a5c32 100644 --- a/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit.js +++ b/tests/baselines/reference/tsbuildWatch/cacheResolutions/bundle-emit.js @@ -292,12 +292,7 @@ Output:: >> Screen clear [12:00:41 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -319,14 +314,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -335,15 +323,8 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -550,12 +531,7 @@ Output:: >> Screen clear [12:00:45 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -577,14 +553,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -593,18 +562,9 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -830,26 +790,14 @@ Output:: >> Screen clear [12:00:51 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. File '/src/project/pkg1.tsx' does not exist. File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. ======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -858,18 +806,9 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. fileWithTypeRefs.ts:2:23 - error TS2688: Cannot find type definition file for 'pkg3'. 2 /// @@ -1080,26 +1019,9 @@ Output:: >> Screen clear [12:01:00 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1108,18 +1030,9 @@ File '/src/project/node_modules/pkg3.d.ts' does not exist. File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. ../../a/lib/lib.d.ts Default library for target 'es5' pkg0.d.ts @@ -1795,46 +1708,13 @@ Output:: >> Screen clear [12:01:15 AM] File change detected. Starting incremental compilation... -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg3/package.json' does not exist. -File '/src/project/node_modules/pkg3.d.ts' does not exist. -File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. ../../a/lib/lib.d.ts Default library for target 'es5' pkg0.d.ts diff --git a/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file-already-built.js b/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file-already-built.js index 3feea5d9bb7..f6a22a2fc1b 100644 --- a/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file-already-built.js +++ b/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file-already-built.js @@ -79,7 +79,7 @@ interface String { charAt: any; } interface Array { length: number; [n: number]: T; } //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -192,7 +192,8 @@ interface Array { length: number; [n: number]: T; } }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -538,7 +539,7 @@ interface Array { length: number; [n: number]: T; } } }, "version": "FakeTSVersion", - "size": 3178 + "size": 3199 } @@ -662,22 +663,7 @@ File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -706,20 +692,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -733,20 +710,15 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -799,7 +771,7 @@ node_modules/@types/pkg4/index.d.ts Program root files: ["/src/project/fileWithImports.ts","/src/project/fileWithTypeRefs.ts","/src/project/randomFileForImport.ts","/src/project/randomFileForTypeRef.ts"] Program options: {"moduleResolution":3,"composite":true,"cacheResolutions":true,"traceResolution":true,"watch":true,"explainFiles":true,"configFilePath":"/src/project/tsconfig.json"} -Program structureReused: Not +Program structureReused: SafeModuleCache Program files:: /a/lib/lib.d.ts /src/project/node_modules/pkg0/import.d.ts @@ -834,13 +806,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -922,7 +894,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -985,8 +956,6 @@ PolledWatches:: {"pollingInterval":2000} /src/project/node_modules/@types/pkg1/package.json: {"pollingInterval":2000} -/src/project/node_modules/@types/pkg2/package.json: - {"pollingInterval":2000} /src/project/node_modules/@types/pkg3/package.json: {"pollingInterval":2000} /src/project/node_modules/@types/pkg4/package.json: @@ -1013,14 +982,14 @@ FsWatches:: {} /src/project/randomfilefortyperef.ts: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: +/src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: @@ -1042,22 +1011,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -1086,20 +1040,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1113,23 +1058,16 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -1220,13 +1158,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1308,7 +1246,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1355,13 +1292,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1396,8 +1333,6 @@ PolledWatches:: {"pollingInterval":2000} /src/project/node_modules/@types/pkg1/package.json: {"pollingInterval":2000} -/src/project/node_modules/@types/pkg2/package.json: - {"pollingInterval":2000} /src/project/node_modules/@types/pkg3/package.json: {"pollingInterval":2000} /src/project/node_modules/@types/pkg4/package.json: @@ -1424,21 +1359,21 @@ FsWatches:: {} /src/project/randomfilefortyperef.ts: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: +/src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1552,7 +1487,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -1901,7 +1837,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3332 + "size": 3353 } @@ -1920,22 +1856,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -1964,20 +1885,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1991,26 +1903,17 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -2101,13 +2004,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2189,7 +2092,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -2236,13 +2138,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2260,7 +2162,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -2298,8 +2199,6 @@ PolledWatches:: {"pollingInterval":2000} /src/project/node_modules/@types/pkg1/package.json: {"pollingInterval":2000} -/src/project/node_modules/@types/pkg2/package.json: - {"pollingInterval":2000} /src/project/node_modules/@types/pkg3/package.json: {"pollingInterval":2000} /src/project/node_modules/@types/pkg4/package.json: @@ -2326,21 +2225,21 @@ FsWatches:: {} /src/project/randomfilefortyperef.ts: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: +/src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2455,7 +2354,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2807,7 +2707,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3454 + "size": 3475 } @@ -2829,22 +2729,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -2862,21 +2747,12 @@ File '/src/project/node_modules/pkg1/require.tsx' does not exist. File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. ======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -2890,26 +2766,17 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -3018,13 +2885,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3079,7 +2946,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3126,13 +2992,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3150,7 +3016,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3188,8 +3053,6 @@ PolledWatches:: {"pollingInterval":2000} /src/project/node_modules/@types/pkg1/package.json: {"pollingInterval":2000} -/src/project/node_modules/@types/pkg2/package.json: - {"pollingInterval":2000} /src/project/node_modules/@types/pkg3/package.json: {"pollingInterval":2000} /src/project/node_modules/@types/pkg4/package.json: @@ -3216,21 +3079,21 @@ FsWatches:: {} /src/project/randomfilefortyperef.ts: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: +/src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-11409094169-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;","signature":"-18799098802-export declare const x = 10;\nexport declare const y = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[[6,2]],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"affectedFilesPendingEmit":[4,6,7,8],"emitSignatures":[4,6,7,8],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-11409094169-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;","signature":"-18799098802-export declare const x = 10;\nexport declare const y = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[[6,2]],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"affectedFilesPendingEmit":[4,6,7,8],"emitSignatures":[4,6,7,8],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -3363,7 +3226,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -3805,7 +3669,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3836 + "size": 3857 } @@ -3831,54 +3695,14 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -3890,27 +3714,18 @@ File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - st File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -4026,13 +3841,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -4102,7 +3917,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4143,13 +3957,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -4167,7 +3981,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4205,8 +4018,6 @@ PolledWatches:: {"pollingInterval":2000} /src/project/node_modules/@types/pkg1/package.json: {"pollingInterval":2000} -/src/project/node_modules/@types/pkg2/package.json: - {"pollingInterval":2000} /src/project/node_modules/@types/pkg3/package.json: {"pollingInterval":2000} /src/project/node_modules/@types/pkg4/package.json: @@ -4233,21 +4044,21 @@ FsWatches:: {} /src/project/randomfilefortyperef.ts: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: +/src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"2513033443-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;","signature":"-26065391196-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"2513033443-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;","signature":"-26065391196-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -4400,7 +4211,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -4896,7 +4708,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 4310 + "size": 4331 } //// [/src/project/fileWithImports.js] @@ -4962,86 +4774,27 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. Found 'package.json' at '/src/project/node_modules/pkg3/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -5140,13 +4893,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -5216,7 +4969,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -5257,13 +5009,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -5281,7 +5033,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -5319,8 +5070,6 @@ PolledWatches:: {"pollingInterval":2000} /src/project/node_modules/@types/pkg1/package.json: {"pollingInterval":2000} -/src/project/node_modules/@types/pkg2/package.json: - {"pollingInterval":2000} /src/project/node_modules/@types/pkg3/package.json: {"pollingInterval":2000} /src/project/node_modules/@types/pkg4/package.json: @@ -5347,21 +5096,21 @@ FsWatches:: {} /src/project/randomfilefortyperef.ts: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: +/src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-6303207792-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;export const k = 10;","signature":"-22914839157-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\nexport declare const k = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-6303207792-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;export const k = 10;","signature":"-22914839157-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\nexport declare const k = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5514,7 +5263,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -6010,7 +5760,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 4360 + "size": 4381 } //// [/src/project/randomFileForImport.js] diff --git a/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file.js b/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file.js index 08c413c2270..4386f9d753d 100644 --- a/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file.js +++ b/tests/baselines/reference/tsbuildWatch/cacheResolutions/multi-file.js @@ -468,7 +468,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -581,7 +581,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -927,7 +928,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3178 + "size": 3199 } @@ -946,22 +947,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -990,20 +976,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1017,23 +994,16 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -1342,7 +1312,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1456,7 +1426,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -1805,7 +1776,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3332 + "size": 3353 } @@ -1824,22 +1795,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -1868,20 +1824,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1895,26 +1842,17 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -2244,7 +2182,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2359,7 +2297,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2711,7 +2650,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3454 + "size": 3475 } @@ -2733,22 +2672,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -2766,21 +2690,12 @@ File '/src/project/node_modules/pkg1/require.tsx' does not exist. File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. ======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -2794,26 +2709,17 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -3134,7 +3040,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-11409094169-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;","signature":"-18799098802-export declare const x = 10;\nexport declare const y = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[[6,2]],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"affectedFilesPendingEmit":[4,6,7,8],"emitSignatures":[4,6,7,8],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-11409094169-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;","signature":"-18799098802-export declare const x = 10;\nexport declare const y = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[[6,2]],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"affectedFilesPendingEmit":[4,6,7,8],"emitSignatures":[4,6,7,8],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -3267,7 +3173,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -3709,7 +3616,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3836 + "size": 3857 } @@ -3735,54 +3642,14 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -3794,27 +3661,18 @@ File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - st File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -4151,7 +4009,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"2513033443-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;","signature":"-26065391196-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"2513033443-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;","signature":"-26065391196-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -4304,7 +4162,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -4800,7 +4659,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 4310 + "size": 4331 } //// [/src/project/fileWithImports.js] @@ -4866,86 +4725,27 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. Found 'package.json' at '/src/project/node_modules/pkg3/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -5265,7 +5065,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-6303207792-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;export const k = 10;","signature":"-22914839157-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\nexport declare const k = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-6303207792-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;export const y = 10;export const z = 10;export const k = 10;","signature":"-22914839157-export declare const x = 10;\nexport declare const y = 10;\nexport declare const z = 10;\nexport declare const k = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5418,7 +5218,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -5914,7 +5715,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 4360 + "size": 4381 } //// [/src/project/randomFileForImport.js] diff --git a/tests/baselines/reference/tsc/cacheResolutions/bundle-emit.js b/tests/baselines/reference/tsc/cacheResolutions/bundle-emit.js index d5228d56416..5bdb83066e6 100644 --- a/tests/baselines/reference/tsc/cacheResolutions/bundle-emit.js +++ b/tests/baselines/reference/tsc/cacheResolutions/bundle-emit.js @@ -596,12 +596,7 @@ Input:: Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -623,14 +618,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -639,12 +627,7 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. src/project/fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -688,8 +671,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -729,7 +711,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -790,12 +771,7 @@ export const x = 10; Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -817,14 +793,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -833,15 +802,8 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. src/project/fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -886,8 +848,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -927,7 +888,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -968,8 +928,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1274,12 +1233,7 @@ export const x = 10; Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. @@ -1301,14 +1255,7 @@ File '/src/pkg1.jsx' does not exist. File '/pkg1.js' does not exist. File '/pkg1.jsx' does not exist. ======== Module name 'pkg1' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1317,18 +1264,9 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. src/project/fileWithImports.ts:2:40 - error TS2792: Cannot find module 'pkg1'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 2 import type { RequireInterface1 } from "pkg1"; @@ -1373,8 +1311,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1414,7 +1351,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -1455,8 +1391,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1468,7 +1403,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -1847,26 +1781,14 @@ export interface RequireInterface1 {} Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Module resolution kind is not specified, using 'Classic'. File '/src/project/pkg1.ts' does not exist. File '/src/project/pkg1.tsx' does not exist. File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. ======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1875,18 +1797,9 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. src/project/fileWithTypeRefs.ts:2:23 - error TS2688: Cannot find type definition file for 'pkg3'. 2 /// @@ -1925,8 +1838,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -1949,7 +1861,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -1990,8 +1901,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -2003,7 +1913,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -2371,26 +2280,9 @@ declare global { Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg1.ts' does not exist. -File '/src/project/pkg1.tsx' does not exist. -File '/src/project/pkg1.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg1' was successfully resolved to '/src/project/pkg1.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg1.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -2399,18 +2291,9 @@ File '/src/project/node_modules/pkg3.d.ts' does not exist. File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. lib/lib.d.ts Default library for target 'es5' src/project/pkg0.d.ts @@ -2438,8 +2321,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -2449,8 +2331,7 @@ pkg0: { pkg1: { "resolvedModule": { "resolvedFileName": "/src/project/pkg1.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg1.ts", @@ -2462,7 +2343,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -2492,8 +2372,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -2505,7 +2384,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -2937,37 +2815,11 @@ Input:: Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg3/package.json' does not exist. -File '/src/project/node_modules/pkg3.d.ts' does not exist. -File '/src/project/node_modules/pkg3/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/index.d.ts', result '/src/project/node_modules/pkg3/index.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts', primary: false. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. lib/lib.d.ts Default library for target 'es5' src/project/node_modules/pkg2/index.d.ts @@ -2989,7 +2841,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -3002,7 +2853,6 @@ pkg2: { } pkg3: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg3/index.d.ts", "isExternalLibraryImport": true }, @@ -3019,8 +2869,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -3032,7 +2881,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -3479,26 +3327,9 @@ Input:: Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Module resolution kind is not specified, using 'Classic'. -File '/src/project/pkg0.ts' does not exist. -File '/src/project/pkg0.tsx' does not exist. -File '/src/project/pkg0.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/pkg0.d.ts'. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/pkg0.d.ts'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. lib/lib.d.ts Default library for target 'es5' src/project/pkg0.d.ts @@ -3517,8 +3348,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/pkg0.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/pkg0.ts", @@ -3530,7 +3360,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -3907,20 +3736,8 @@ File '/src/pkg0.jsx' does not exist. File '/pkg0.js' does not exist. File '/pkg0.jsx' does not exist. ======== Module name 'pkg0' was not resolved. ======== -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -File '/src/project/node_modules/pkg2/package.json' does not exist. -File '/src/project/node_modules/pkg2.d.ts' does not exist. -File '/src/project/node_modules/pkg2/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/index.d.ts', result '/src/project/node_modules/pkg2/index.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/index.d.ts'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. src/project/randomFileForImport.ts:1:39 - error TS2792: Cannot find module 'pkg0'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 1 import type { ImportInterface0 } from "pkg0"; @@ -3975,7 +3792,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/index.d.ts", "isExternalLibraryImport": true }, @@ -4243,12 +4059,7 @@ File '/src/project/node_modules/@types/pkg2.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg2' was not resolved. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. src/project/randomFileForImport.ts:1:39 - error TS2792: Cannot find module 'pkg0'. Did you mean to set the 'moduleResolution' option to 'node', or to add aliases to the 'paths' option? 1 import type { ImportInterface0 } from "pkg0"; diff --git a/tests/baselines/reference/tsc/cacheResolutions/diagnostics-from-cache.js b/tests/baselines/reference/tsc/cacheResolutions/diagnostics-from-cache.js index d5efeb074bf..9c5f8736d59 100644 --- a/tests/baselines/reference/tsc/cacheResolutions/diagnostics-from-cache.js +++ b/tests/baselines/reference/tsc/cacheResolutions/diagnostics-from-cache.js @@ -165,7 +165,7 @@ exports.x = 10; //// [/src/project/dist/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../../lib/lib.d.ts","../index.ts","../index2.ts","../randomfileforimport.ts","..","../package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"5618920854-import * as me from \"@this/package\";\nme.thing()\nexport function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"5871974342-export function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":99}],"options":{"cacheResolutions":true,"declaration":true,"declarationDir":"../types","outDir":"./"},"fileIdsList":[[2]],"referencedMap":[[2,1]],"exportedModulesMap":[],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true},"affectingLocations":[6],"resolutionDiagnostics":[{"messageText":"The project root is ambiguous, but is required to resolve export map entry '.' in file '/src/project/package.json'. Supply the `rootDir` compiler option to disambiguate.","category":1,"code":2209}]}],"names":["@this/package"],"resolutionEntries":[[1,1,99]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../../lib/lib.d.ts","../index.ts","../index2.ts","../randomfileforimport.ts","..","../package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"5618920854-import * as me from \"@this/package\";\nme.thing()\nexport function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"5871974342-export function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":99}],"options":{"cacheResolutions":true,"declaration":true,"declarationDir":"../types","moduleResolution":99,"outDir":"./"},"fileIdsList":[[2]],"referencedMap":[[2,1]],"exportedModulesMap":[],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true},"affectingLocations":[6],"resolutionDiagnostics":[{"messageText":"The project root is ambiguous, but is required to resolve export map entry '.' in file '/src/project/package.json'. Supply the `rootDir` compiler option to disambiguate.","category":1,"code":2209}]}],"names":["@this/package"],"resolutionEntries":[[1,1,99]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/dist/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -230,6 +230,7 @@ exports.x = 10; "cacheResolutions": true, "declaration": true, "declarationDir": "../types", + "moduleResolution": 99, "outDir": "./" }, "referencedMap": { @@ -338,7 +339,7 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 1758 + "size": 1780 } //// [/src/project/types/index.d.ts] @@ -366,20 +367,10 @@ export const x = 10; Output:: /lib/tsc -p /src/project --incremental --explainFiles Found 'package.json' at '/src/project/package.json'. -======== Resolving module '@this/package' from '/src/project/index.ts'. ======== -Explicitly specified module resolution kind: 'NodeNext'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' exists according to earlier cached lookups. -Matched 'exports' condition 'default'. -Using 'exports' subpath '.' with target './dist/index.js'. -File '/src/project/index.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/index.ts', result '/src/project/index.ts'. -======== Module name '@this/package' was successfully resolved to '/src/project/index.ts'. ======== +Reusing resolution of module '@this/package' from '/src/project/index.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/index.ts'. File '/src/project/package.json' exists according to earlier cached lookups. File '/src/project/package.json' exists according to earlier cached lookups. -======== Resolving module '@this/package' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module '@this/package' was found in cache from location '/src/project'. -======== Module name '@this/package' was successfully resolved to '/src/project/index.ts'. ======== +Reusing resolution of module '@this/package' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/index.ts'. File '/lib/package.json' does not exist. File '/package.json' does not exist. error TS2209: The project root is ambiguous, but is required to resolve export map entry '.' in file '/src/project/package.json'. Supply the `rootDir` compiler option to disambiguate. @@ -421,9 +412,10 @@ resolvedModules: @this/package: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/index.ts", - "extension": ".ts", - "isExternalLibraryImport": true + "isExternalLibraryImport": true, + "extension": ".ts" }, + "failedLookupLocations": [], "affectingLocations": [ "/src/project/package.json" ], @@ -473,9 +465,10 @@ resolvedModules: @this/package: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/index.ts", - "extension": ".ts", - "isExternalLibraryImport": true + "isExternalLibraryImport": true, + "extension": ".ts" }, + "failedLookupLocations": [], "affectingLocations": [ "/src/project/package.json" ], @@ -491,7 +484,7 @@ resolvedModules: //// [/src/project/dist/randomFileForImport.js] file written with same contents //// [/src/project/dist/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../../lib/lib.d.ts","../index.ts","../index2.ts","../randomfileforimport.ts","..","../package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"5618920854-import * as me from \"@this/package\";\nme.thing()\nexport function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"5871974342-export function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"4314805146-import * as me from \"@this/package\";\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":99}],"options":{"cacheResolutions":true,"declaration":true,"declarationDir":"../types","outDir":"./"},"fileIdsList":[[2]],"referencedMap":[[2,1],[4,1]],"exportedModulesMap":[],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true},"affectingLocations":[6],"resolutionDiagnostics":[{"messageText":"The project root is ambiguous, but is required to resolve export map entry '.' in file '/src/project/package.json'. Supply the `rootDir` compiler option to disambiguate.","category":1,"code":2209}]}],"names":["@this/package"],"resolutionEntries":[[1,1,99]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../../lib/lib.d.ts","../index.ts","../index2.ts","../randomfileforimport.ts","..","../package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"5618920854-import * as me from \"@this/package\";\nme.thing()\nexport function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"5871974342-export function thing(): void {}\n","signature":"-4018078458-export declare function thing(): void;\r\n","impliedFormat":99},{"version":"4314805146-import * as me from \"@this/package\";\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":99}],"options":{"cacheResolutions":true,"declaration":true,"declarationDir":"../types","moduleResolution":99,"outDir":"./"},"fileIdsList":[[2]],"referencedMap":[[2,1],[4,1]],"exportedModulesMap":[],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true},"affectingLocations":[6],"resolutionDiagnostics":[{"messageText":"The project root is ambiguous, but is required to resolve export map entry '.' in file '/src/project/package.json'. Supply the `rootDir` compiler option to disambiguate.","category":1,"code":2209}]}],"names":["@this/package"],"resolutionEntries":[[1,1,99]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/dist/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -556,6 +549,7 @@ resolvedModules: "cacheResolutions": true, "declaration": true, "declarationDir": "../types", + "moduleResolution": 99, "outDir": "./" }, "referencedMap": { @@ -667,7 +661,7 @@ resolvedModules: } }, "version": "FakeTSVersion", - "size": 1802 + "size": 1824 } //// [/src/project/types/randomFileForImport.d.ts] file written with same contents diff --git a/tests/baselines/reference/tsc/cacheResolutions/multi-file.js b/tests/baselines/reference/tsc/cacheResolutions/multi-file.js index a325a1041fc..b3782c5c97d 100644 --- a/tests/baselines/reference/tsc/cacheResolutions/multi-file.js +++ b/tests/baselines/reference/tsc/cacheResolutions/multi-file.js @@ -430,7 +430,7 @@ exports.x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -547,7 +547,8 @@ exports.x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -863,7 +864,7 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 3434 + "size": 3455 } @@ -877,22 +878,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -921,20 +907,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -948,20 +925,15 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -1034,13 +1006,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1122,7 +1094,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1192,22 +1163,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -1236,20 +1192,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -1263,23 +1210,16 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -1353,13 +1293,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1441,7 +1381,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1488,13 +1427,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1523,7 +1462,7 @@ pkg4: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1640,7 +1579,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -1959,7 +1899,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 3531 + "size": 3552 } @@ -1977,22 +1917,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -2021,20 +1946,11 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -2048,26 +1964,17 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -2141,13 +2048,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2229,7 +2136,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -2276,13 +2182,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2300,7 +2206,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -2339,7 +2244,7 @@ exports.x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2456,7 +2361,8 @@ exports.x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2778,7 +2684,7 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 3596 + "size": 3617 } @@ -2795,22 +2701,7 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -2828,21 +2719,12 @@ File '/src/project/node_modules/pkg1/require.tsx' does not exist. File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. ======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -2856,26 +2738,17 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -2959,13 +2832,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3020,7 +2893,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3067,13 +2939,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3091,7 +2963,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3123,7 +2994,7 @@ pkg4: { //// [/src/project/fileWithImports.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -3257,7 +3128,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -3672,7 +3544,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 3893 + "size": 3914 } @@ -3693,54 +3565,14 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +Reusing resolution of module 'pkg1' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in CJS mode with conditions 'node', 'require', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg1' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. Found 'package.json' at '/src/project/node_modules/pkg1/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg1/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg1/require.ts' does not exist. -File '/src/project/node_modules/pkg1/require.tsx' does not exist. -File '/src/project/node_modules/pkg1/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg1/require.d.ts', result '/src/project/node_modules/pkg1/require.d.ts'. -======== Module name 'pkg1' was successfully resolved to '/src/project/node_modules/pkg1/require.d.ts' with Package ID 'pkg1/require.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg1/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -3752,27 +3584,18 @@ File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - st File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. ======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -3846,13 +3669,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3868,13 +3691,13 @@ pkg0: esnext: { pkg1: commonjs: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg1/require.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg1", "subModuleName": "require.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3922,7 +3745,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3963,13 +3785,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -3987,7 +3809,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4022,7 +3843,7 @@ pkg4: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/randomFileForTypeRef.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -4175,7 +3996,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -4671,7 +4493,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 4296 + "size": 4317 } @@ -4686,62 +4508,21 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg3' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. Found 'package.json' at '/src/project/node_modules/pkg3/package.json'. -Saw non-matching condition 'import'. -Matched 'exports' condition 'require'. -Using 'exports' subpath '.' with target './require.js'. -File name '/src/project/node_modules/pkg3/require.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg3/require.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg3/require.d.ts', result '/src/project/node_modules/pkg3/require.d.ts'. -======== Type reference directive 'pkg3' was successfully resolved to '/src/project/node_modules/pkg3/require.d.ts' with Package ID 'pkg3/require.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -File '/src/project/node_modules/pkg3/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts'. ======== -Resolution for type reference directive 'pkg2' was found in cache from location '/src/project'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -4807,7 +4588,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4825,7 +4605,6 @@ pkg2: esnext: { } pkg3: commonjs: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg3/require.d.ts", "packageId": { "name": "pkg3", @@ -4863,13 +4642,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -4887,7 +4666,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -4918,7 +4696,7 @@ pkg4: { //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,8,5,2,3,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":5,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":2,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[21]}],"names":["pkg0","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3,1],[4,4]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-4882119183-export {};\r\n","impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,8,5,2,3,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":5,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":2,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[21]}],"names":["pkg0","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3,1],[4,4]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5043,7 +4821,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithtyperefs.ts": [ @@ -5430,7 +5209,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 3529 + "size": 3550 } @@ -5445,44 +5224,15 @@ Output:: File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -5528,13 +5278,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -5567,7 +5317,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -5600,7 +5349,7 @@ pkg4: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/randomFileForTypeRef.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,6,2,4,3,5],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[8,9,10,11,12],"affectingLocations":[13]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":6,"isExternalLibraryImport":true},"failedLookupLocations":[16]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[7,[1]]],"typeRefs":[[7,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,6,2,4,3,5],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[8,9,10,11,12],"affectingLocations":[13]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":6,"isExternalLibraryImport":true},"failedLookupLocations":[16]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[7,[1]]],"typeRefs":[[7,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5695,7 +5444,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./randomfileforimport.ts": [ @@ -5985,7 +5735,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 2662 + "size": 2683 } @@ -6030,24 +5780,10 @@ Directory '/node_modules' does not exist, skipping all lookups in it. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -======== Resolving type reference directive 'pkg2', containing file '/src/project/randomFileForTypeRef.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. +Reusing resolution of type reference directive 'pkg2' from '/src/project/randomFileForTypeRef.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -6123,7 +5859,6 @@ File: /src/project/randomFileForTypeRef.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -6155,7 +5890,7 @@ pkg4: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[3]],"referencedMap":[[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,5,3,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],4],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[7],"affectingLocations":[8]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":5,"isExternalLibraryImport":true},"failedLookupLocations":[9]}],"names":["pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2]],"typeRefs":[[6,[1,2]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[3]],"referencedMap":[[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,5,3,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],4],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[7],"affectingLocations":[8]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":5,"isExternalLibraryImport":true},"failedLookupLocations":[9]}],"names":["pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2]],"typeRefs":[[6,[1,2]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -6231,7 +5966,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./randomfilefortyperef.ts": [ @@ -6419,7 +6155,7 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 2297 + "size": 2318 } @@ -6476,13 +6212,8 @@ Saw non-matching condition 'require'. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg2' was not resolved. ======== -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -6577,7 +6308,7 @@ pkg4: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/randomFileForTypeRef.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"referencedMap":[],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],3],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":4,"isExternalLibraryImport":true},"failedLookupLocations":[6]}],"names":["pkg4"],"resolutionEntries":[[1,1]],"typeRefs":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"referencedMap":[],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],3],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":4,"isExternalLibraryImport":true},"failedLookupLocations":[6]}],"names":["pkg4"],"resolutionEntries":[[1,1]],"typeRefs":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -6634,7 +6365,8 @@ pkg4: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": {}, "exportedModulesMap": {}, @@ -6730,6 +6462,6 @@ pkg4: { } }, "version": "FakeTSVersion", - "size": 1785 + "size": 1806 } diff --git a/tests/baselines/reference/tsc/cacheResolutions/pathsBasePath.js b/tests/baselines/reference/tsc/cacheResolutions/pathsBasePath.js index 9e706c2b65d..f0e8e612282 100644 --- a/tests/baselines/reference/tsc/cacheResolutions/pathsBasePath.js +++ b/tests/baselines/reference/tsc/cacheResolutions/pathsBasePath.js @@ -94,7 +94,7 @@ exports.x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./lib/pkg0/index.d.ts","./main.ts","./randomfileforimport.ts","./","./lib/pkg0.ts","./lib/pkg0.tsx","./lib/pkg0.d.ts","./lib/pkg0/package.json","./lib/pkg0/index.ts","./lib/pkg0/index.tsx"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"769951468-export interface ImportInterface0 {}",{"version":"7372004325-import type { ImportInterface0 } from \"pkg0\";\n","signature":"-4882119183-export {};\r\n"},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n"}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2]],"referencedMap":[[3,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,2,3,4],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2},"failedLookupLocations":[6,7,8,9,10,11]}],"names":["pkg0"],"resolutionEntries":[[1,1]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./lib/pkg0/index.d.ts","./main.ts","./randomfileforimport.ts","./","./lib/pkg0.ts","./lib/pkg0.tsx","./lib/pkg0.d.ts","./lib/pkg0/package.json","./lib/pkg0/index.ts","./lib/pkg0/index.tsx"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"769951468-export interface ImportInterface0 {}",{"version":"7372004325-import type { ImportInterface0 } from \"pkg0\";\n","signature":"-4882119183-export {};\r\n"},{"version":"-10726455937-export const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"paths":{"*":["./lib/*"]}},"fileIdsList":[[2]],"referencedMap":[[3,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,2,3,4],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2},"failedLookupLocations":[6,7,8,9,10,11]}],"names":["pkg0"],"resolutionEntries":[[1,1]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -150,7 +150,12 @@ exports.x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "paths": { + "*": [ + "./lib/*" + ] + } }, "referencedMap": { "./main.ts": [ @@ -250,7 +255,7 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 1425 + "size": 1451 } @@ -265,23 +270,8 @@ export const x = 10; Output:: /lib/tsc -p /src/project --explainFiles -======== Resolving module 'pkg0' from '/src/project/main.ts'. ======== -Module resolution kind is not specified, using 'NodeJs'. -'paths' option is specified, looking for a pattern to match module name 'pkg0'. -Module name 'pkg0', matched pattern '*'. -Trying substitution './lib/*', candidate module location: './lib/pkg0'. -Loading module as file / folder, candidate module location '/src/project/lib/pkg0', target file types: TypeScript, Declaration. -File '/src/project/lib/pkg0.ts' does not exist. -File '/src/project/lib/pkg0.tsx' does not exist. -File '/src/project/lib/pkg0.d.ts' does not exist. -File '/src/project/lib/pkg0/package.json' does not exist. -File '/src/project/lib/pkg0/index.ts' does not exist. -File '/src/project/lib/pkg0/index.tsx' does not exist. -File '/src/project/lib/pkg0/index.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/main.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. lib/lib.d.ts Default library for target 'es5' src/project/lib/pkg0/index.d.ts @@ -297,8 +287,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/lib/pkg0/index.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/lib/pkg0.ts", @@ -315,8 +304,7 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/lib/pkg0/index.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": false + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/lib/pkg0.ts", @@ -331,7 +319,7 @@ pkg0: { //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../lib/lib.d.ts","./lib/pkg0/index.d.ts","./main.ts","./randomfileforimport.ts","./","./lib/pkg0.ts","./lib/pkg0.tsx","./lib/pkg0.d.ts","./lib/pkg0/package.json","./lib/pkg0/index.ts","./lib/pkg0/index.tsx"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"769951468-export interface ImportInterface0 {}",{"version":"7372004325-import type { ImportInterface0 } from \"pkg0\";\n","signature":"-4882119183-export {};\r\n"},{"version":"10580737119-import type { ImportInterface0 } from \"pkg0\";\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n"}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2]],"referencedMap":[[3,1],[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,2,3,4],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2},"failedLookupLocations":[6,7,8,9,10,11]}],"names":["pkg0"],"resolutionEntries":[[1,1]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../lib/lib.d.ts","./lib/pkg0/index.d.ts","./main.ts","./randomfileforimport.ts","./","./lib/pkg0.ts","./lib/pkg0.tsx","./lib/pkg0.d.ts","./lib/pkg0/package.json","./lib/pkg0/index.ts","./lib/pkg0/index.tsx"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"769951468-export interface ImportInterface0 {}",{"version":"7372004325-import type { ImportInterface0 } from \"pkg0\";\n","signature":"-4882119183-export {};\r\n"},{"version":"10580737119-import type { ImportInterface0 } from \"pkg0\";\nexport const x = 10;","signature":"-6057683066-export declare const x = 10;\r\n"}],"options":{"cacheResolutions":true,"composite":true,"paths":{"*":["./lib/*"]}},"fileIdsList":[[2]],"referencedMap":[[3,1],[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,2,3,4],"latestChangedDtsFile":"./randomFileForImport.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2},"failedLookupLocations":[6,7,8,9,10,11]}],"names":["pkg0"],"resolutionEntries":[[1,1]],"modules":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -387,7 +375,12 @@ pkg0: { }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "paths": { + "*": [ + "./lib/*" + ] + } }, "referencedMap": { "./main.ts": [ @@ -490,6 +483,6 @@ pkg0: { } }, "version": "FakeTSVersion", - "size": 1479 + "size": 1505 } diff --git a/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks-with-preserveSymlinks.js b/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks-with-preserveSymlinks.js index 3ea7a0040a4..157939b81bd 100644 --- a/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks-with-preserveSymlinks.js +++ b/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks-with-preserveSymlinks.js @@ -214,20 +214,8 @@ export declare const x = 10; /a/lib/tsc.js -p /src/project --explainFiles Output:: -======== Resolving module 'pkg0' from '/src/project/main.ts'. ======== -Module resolution kind is not specified, using 'NodeJs'. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, Declaration. -File '/src/project/node_modules/pkg0/package.json' does not exist. -File '/src/project/node_modules/pkg0.ts' does not exist. -File '/src/project/node_modules/pkg0.tsx' does not exist. -File '/src/project/node_modules/pkg0.d.ts' does not exist. -File '/src/project/node_modules/pkg0/index.ts' does not exist. -File '/src/project/node_modules/pkg0/index.tsx' does not exist. -File '/src/project/node_modules/pkg0/index.d.ts' exist - use it as a name resolution result. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/index.d.ts'. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/index.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/main.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/index.d.ts'. a/lib/lib.d.ts Default library for target 'es5' src/project/node_modules/pkg0/index.d.ts @@ -241,7 +229,7 @@ src/project/randomFileForImport.ts Program root files: ["/src/project/main.ts","/src/project/randomFileForImport.ts"] Program options: {"composite":true,"cacheResolutions":true,"traceResolution":true,"preserveSymlinks":true,"project":"/src/project","explainFiles":true,"configFilePath":"/src/project/tsconfig.json"} -Program structureReused: Not +Program structureReused: SafeModuleCache Program files:: /a/lib/lib.d.ts /src/project/node_modules/pkg0/index.d.ts @@ -259,8 +247,8 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/index.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": true + "isExternalLibraryImport": true, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/node_modules/pkg0/package.json", @@ -277,8 +265,8 @@ resolvedModules: pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/index.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": true + "isExternalLibraryImport": true, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/node_modules/pkg0/package.json", diff --git a/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks.js b/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks.js index ebd5b55243a..e72741a4f54 100644 --- a/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks.js +++ b/tests/baselines/reference/tsc/cacheResolutions/resolutions-with-symlinks.js @@ -219,21 +219,8 @@ export declare const x = 10; /a/lib/tsc.js -p /src/project --explainFiles Output:: -======== Resolving module 'pkg0' from '/src/project/main.ts'. ======== -Module resolution kind is not specified, using 'NodeJs'. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, Declaration. -File '/src/project/node_modules/pkg0/package.json' does not exist. -File '/src/project/node_modules/pkg0.ts' does not exist. -File '/src/project/node_modules/pkg0.tsx' does not exist. -File '/src/project/node_modules/pkg0.d.ts' does not exist. -File '/src/project/node_modules/pkg0/index.ts' does not exist. -File '/src/project/node_modules/pkg0/index.tsx' does not exist. -File '/src/project/node_modules/pkg0/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/index.d.ts', result '/src/project/lib/pkg0/index.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. ======== -======== Resolving module 'pkg0' from '/src/project/randomFileForImport.ts'. ======== -Resolution for module 'pkg0' was found in cache from location '/src/project'. -======== Module name 'pkg0' was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. ======== +Reusing resolution of module 'pkg0' from '/src/project/main.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. +Reusing resolution of module 'pkg0' from '/src/project/randomFileForImport.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/lib/pkg0/index.d.ts'. a/lib/lib.d.ts Default library for target 'es5' src/project/lib/pkg0/index.d.ts @@ -247,7 +234,7 @@ src/project/randomFileForImport.ts Program root files: ["/src/project/main.ts","/src/project/randomFileForImport.ts"] Program options: {"composite":true,"cacheResolutions":true,"traceResolution":true,"preserveSymlinks":false,"project":"/src/project","explainFiles":true,"configFilePath":"/src/project/tsconfig.json"} -Program structureReused: Not +Program structureReused: SafeModuleCache Program files:: /a/lib/lib.d.ts /src/project/lib/pkg0/index.d.ts @@ -266,8 +253,8 @@ pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/lib/pkg0/index.d.ts", "originalPath": "/src/project/node_modules/pkg0/index.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": true + "isExternalLibraryImport": true, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/node_modules/pkg0/package.json", @@ -285,8 +272,8 @@ pkg0: { "resolvedModule": { "resolvedFileName": "/src/project/lib/pkg0/index.d.ts", "originalPath": "/src/project/node_modules/pkg0/index.d.ts", - "extension": ".d.ts", - "isExternalLibraryImport": true + "isExternalLibraryImport": true, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/node_modules/pkg0/package.json", diff --git a/tests/baselines/reference/tscWatch/cacheResolutions/multi-file-already-built.js b/tests/baselines/reference/tscWatch/cacheResolutions/multi-file-already-built.js index bccf2c6e97c..c8440347dbf 100644 --- a/tests/baselines/reference/tscWatch/cacheResolutions/multi-file-already-built.js +++ b/tests/baselines/reference/tscWatch/cacheResolutions/multi-file-already-built.js @@ -79,7 +79,7 @@ interface String { charAt: any; } interface Array { length: number; [n: number]: T; } //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -192,7 +192,8 @@ interface Array { length: number; [n: number]: T; } }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -538,7 +539,7 @@ interface Array { length: number; [n: number]: T; } } }, "version": "FakeTSVersion", - "size": 3178 + "size": 3199 } @@ -667,22 +668,7 @@ File '/src/project/package.json' does not exist. File '/src/package.json' does not exist. File '/package.json' does not exist. FileWatcher:: Added:: WatchInfo: /src/project/fileWithImports.ts 250 undefined Source file -======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== -Explicitly specified module resolution kind: 'Node16'. -Resolving in ESM mode with conditions 'node', 'import', 'types'. -File '/src/project/package.json' does not exist according to earlier cached lookups. -File '/src/package.json' does not exist according to earlier cached lookups. -File '/package.json' does not exist according to earlier cached lookups. -Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. -Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg0/import.ts' does not exist. -File '/src/project/node_modules/pkg0/import.tsx' does not exist. -File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. -======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== +Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -711,22 +697,13 @@ File '/src/project/node_modules/pkg1/require.jsx' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Module name 'pkg1' was not resolved. ======== -File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg0/package.json'. FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg0/import.d.ts 250 undefined Source file File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. FileWatcher:: Added:: WatchInfo: /src/project/fileWithTypeRefs.ts 250 undefined Source file -======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. -Looking up in 'node_modules' folder, initial location '/src/project'. -Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. -Matched 'exports' condition 'import'. -Using 'exports' subpath '.' with target './import.js'. -File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. -File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. -======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== +Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -740,7 +717,7 @@ File '/src/project/node_modules/@types/pkg3.d.ts' does not exist. Directory '/src/node_modules' does not exist, skipping all lookups in it. Directory '/node_modules' does not exist, skipping all lookups in it. ======== Type reference directive 'pkg3' was not resolved. ======== -File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Found 'package.json' at '/src/project/node_modules/pkg2/package.json'. FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg2/import.d.ts 250 undefined Source file File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. @@ -750,13 +727,8 @@ File '/src/project/package.json' does not exist according to earlier cached look File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. FileWatcher:: Added:: WatchInfo: /src/project/randomFileForTypeRef.ts 250 undefined Source file -======== Resolving type reference directive 'pkg4', containing file '/src/project/__inferred type names__.ts', root directory '/src/project/node_modules/@types'. ======== -Resolving with primary search path '/src/project/node_modules/@types'. +Reusing resolution of type reference directive 'pkg4' from '/src/project/__inferred type names__.ts' found in cache from location '/src/project', it was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts'. File '/src/project/node_modules/@types/pkg4/package.json' does not exist. -File '/src/project/node_modules/@types/pkg4/index.d.ts' exist - use it as a name resolution result. -Resolving real path for '/src/project/node_modules/@types/pkg4/index.d.ts', result '/src/project/node_modules/@types/pkg4/index.d.ts'. -======== Type reference directive 'pkg4' was successfully resolved to '/src/project/node_modules/@types/pkg4/index.d.ts', primary: true. ======== -File '/src/project/node_modules/@types/pkg4/package.json' does not exist according to earlier cached lookups. File '/src/project/node_modules/@types/package.json' does not exist. File '/src/project/node_modules/package.json' does not exist. File '/src/project/package.json' does not exist according to earlier cached lookups. @@ -771,10 +743,10 @@ DirectoryWatcher:: Added:: WatchInfo: /src/project/node_modules 1 undefined Fail Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /src/project/node_modules 1 undefined Failed Lookup Locations DirectoryWatcher:: Added:: WatchInfo: /src/project 0 undefined Failed Lookup Locations Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /src/project 0 undefined Failed Lookup Locations -FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg0/package.json 2000 undefined File location affecting resolution FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg1/package.json 2000 undefined File location affecting resolution -FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg2/package.json 2000 undefined File location affecting resolution FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg3/package.json 2000 undefined File location affecting resolution +FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg0/package.json 2000 undefined File location affecting resolution +FileWatcher:: Added:: WatchInfo: /src/project/node_modules/pkg2/package.json 2000 undefined File location affecting resolution FileWatcher:: Added:: WatchInfo: /src/project/node_modules/@types/pkg4/package.json 2000 undefined File location affecting resolution FileWatcher:: Added:: WatchInfo: /src/project/node_modules/@types/package.json 2000 undefined File location affecting resolution FileWatcher:: Added:: WatchInfo: /src/project/node_modules/package.json 2000 undefined File location affecting resolution @@ -842,7 +814,7 @@ Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /src/project 0 undefined Wil Program root files: ["/src/project/fileWithImports.ts","/src/project/fileWithTypeRefs.ts","/src/project/randomFileForImport.ts","/src/project/randomFileForTypeRef.ts"] Program options: {"moduleResolution":3,"composite":true,"cacheResolutions":true,"traceResolution":true,"watch":true,"explainFiles":true,"extendedDiagnostics":true,"configFilePath":"/src/project/tsconfig.json"} -Program structureReused: Not +Program structureReused: SafeModuleCache Program files:: /a/lib/lib.d.ts /src/project/node_modules/pkg0/import.d.ts @@ -877,13 +849,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -965,7 +937,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1048,14 +1019,14 @@ FsWatches:: {} /src/project: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: - {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg0/package.json: + {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: /src/project/node_modules: @@ -1066,7 +1037,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1183,7 +1154,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -1499,7 +1471,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3348 + "size": 3369 } //// [/src/project/fileWithImports.js] @@ -1712,13 +1684,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -1800,7 +1772,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -1908,14 +1879,14 @@ FsWatches:: {} /src/project: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: - {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg0/package.json: + {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: /src/project/node_modules: @@ -1926,7 +1897,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2043,7 +2014,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2362,7 +2334,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3445 + "size": 3466 } //// [/src/project/randomFileForImport.js] file written with same contents @@ -2529,13 +2501,13 @@ resolvedModules: pkg0: esnext: { "resolvedModule": { "resolvedFileName": "/src/project/node_modules/pkg0/import.d.ts", - "extension": ".d.ts", "isExternalLibraryImport": true, "packageId": { "name": "pkg0", "subModuleName": "import.d.ts", "version": "0.0.1" - } + }, + "extension": ".d.ts" }, "failedLookupLocations": [ "/src/project/package.json", @@ -2617,7 +2589,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -2746,14 +2717,14 @@ FsWatches:: {} /src/project: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: - {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg0/package.json: + {} +/src/project/node_modules/pkg2/package.json: + {} FsWatchesRecursive:: /src/project/node_modules: @@ -2764,7 +2735,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2881,7 +2852,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -3203,7 +3175,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3510 + "size": 3531 } //// [/src/project/randomFileForTypeRef.js] @@ -3259,7 +3231,22 @@ File '/package.json' does not exist according to earlier cached lookups. File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -Reusing resolution of module 'pkg0' from '/src/project/fileWithImports.ts' of old program, it was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. +======== Resolving module 'pkg0' from '/src/project/fileWithImports.ts'. ======== +Explicitly specified module resolution kind: 'Node16'. +Resolving in ESM mode with conditions 'node', 'import', 'types'. +File '/src/project/package.json' does not exist according to earlier cached lookups. +File '/src/package.json' does not exist according to earlier cached lookups. +File '/package.json' does not exist according to earlier cached lookups. +Loading module 'pkg0' from 'node_modules' folder, target file types: TypeScript, JavaScript, Declaration. +File '/src/project/node_modules/pkg0/package.json' exists according to earlier cached lookups. +Matched 'exports' condition 'import'. +Using 'exports' subpath '.' with target './import.js'. +File name '/src/project/node_modules/pkg0/import.js' has a '.js' extension - stripping it. +File '/src/project/node_modules/pkg0/import.ts' does not exist. +File '/src/project/node_modules/pkg0/import.tsx' does not exist. +File '/src/project/node_modules/pkg0/import.d.ts' exist - use it as a name resolution result. +Resolving real path for '/src/project/node_modules/pkg0/import.d.ts', result '/src/project/node_modules/pkg0/import.d.ts'. +======== Module name 'pkg0' was successfully resolved to '/src/project/node_modules/pkg0/import.d.ts' with Package ID 'pkg0/import.d.ts@0.0.1'. ======== ======== Resolving module 'pkg1' from '/src/project/fileWithImports.ts'. ======== Explicitly specified module resolution kind: 'Node16'. Resolving in CJS mode with conditions 'node', 'require', 'types'. @@ -3463,7 +3450,6 @@ File: /src/project/fileWithTypeRefs.ts resolvedTypeReferenceDirectiveNames: pkg2: esnext: { "resolvedTypeReferenceDirective": { - "primary": false, "resolvedFileName": "/src/project/node_modules/pkg2/import.d.ts", "packageId": { "name": "pkg2", @@ -3592,14 +3578,14 @@ FsWatches:: {} /src/project: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: - {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg0/package.json: + {} +/src/project/node_modules/pkg2/package.json: + {} /src/project/node_modules/pkg1/require.d.ts: {} @@ -3612,7 +3598,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -3746,7 +3732,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -4161,7 +4148,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3807 + "size": 3828 } //// [/src/project/fileWithImports.js] file written with same contents @@ -4222,7 +4209,16 @@ File '/src/project/node_modules/pkg1/package.json' exists according to earlier c File '/src/project/package.json' does not exist according to earlier cached lookups. File '/src/package.json' does not exist according to earlier cached lookups. File '/package.json' does not exist according to earlier cached lookups. -Reusing resolution of type reference directive 'pkg2' from '/src/project/fileWithTypeRefs.ts' of old program, it was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1'. +======== Resolving type reference directive 'pkg2', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== +Resolving with primary search path '/src/project/node_modules/@types'. +Looking up in 'node_modules' folder, initial location '/src/project'. +File '/src/project/node_modules/pkg2/package.json' exists according to earlier cached lookups. +Matched 'exports' condition 'import'. +Using 'exports' subpath '.' with target './import.js'. +File name '/src/project/node_modules/pkg2/import.js' has a '.js' extension - stripping it. +File '/src/project/node_modules/pkg2/import.d.ts' exist - use it as a name resolution result. +Resolving real path for '/src/project/node_modules/pkg2/import.d.ts', result '/src/project/node_modules/pkg2/import.d.ts'. +======== Type reference directive 'pkg2' was successfully resolved to '/src/project/node_modules/pkg2/import.d.ts' with Package ID 'pkg2/import.d.ts@0.0.1', primary: false. ======== ======== Resolving type reference directive 'pkg3', containing file '/src/project/fileWithTypeRefs.ts', root directory '/src/project/node_modules/@types'. ======== Resolving with primary search path '/src/project/node_modules/@types'. Looking up in 'node_modules' folder, initial location '/src/project'. @@ -4561,14 +4557,14 @@ FsWatches:: {} /src/project: {} -/src/project/node_modules/pkg0/package.json: - {} /src/project/node_modules/pkg1/package.json: {} -/src/project/node_modules/pkg2/package.json: - {} /src/project/node_modules/pkg3/package.json: {} +/src/project/node_modules/pkg0/package.json: + {} +/src/project/node_modules/pkg2/package.json: + {} /src/project/node_modules/pkg1/require.d.ts: {} /src/project/node_modules/pkg3/require.d.ts: @@ -4583,7 +4579,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -4736,7 +4732,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -5232,7 +5229,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 4210 + "size": 4231 } //// [/src/project/fileWithImports.js] file written with same contents @@ -5505,12 +5502,12 @@ FsWatches:: {} /src/project: {} +/src/project/node_modules/pkg3/package.json: + {} /src/project/node_modules/pkg0/package.json: {} /src/project/node_modules/pkg2/package.json: {} -/src/project/node_modules/pkg3/package.json: - {} /src/project/node_modules/pkg3/require.d.ts: {} @@ -5523,7 +5520,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,8,5,2,3,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":5,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":2,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[21]}],"names":["pkg0","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3,1],[4,4]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,8,5,2,3,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":5,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":2,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[21]}],"names":["pkg0","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3,1],[4,4]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5648,7 +5645,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithtyperefs.ts": [ @@ -6035,7 +6033,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3445 + "size": 3466 } @@ -6257,7 +6255,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,6,2,4,3,5],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[8,9,10,11,12],"affectingLocations":[13]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":6,"isExternalLibraryImport":true},"failedLookupLocations":[16]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[7,[1]]],"typeRefs":[[7,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,6,2,4,3,5],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[8,9,10,11,12],"affectingLocations":[13]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":6,"isExternalLibraryImport":true},"failedLookupLocations":[16]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[7,[1]]],"typeRefs":[[7,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -6352,7 +6350,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./randomfileforimport.ts": [ @@ -6642,7 +6641,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 2580 + "size": 2601 } //// [/src/project/randomFileForImport.js] file written with same contents @@ -6866,7 +6865,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[3]],"referencedMap":[[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,5,3,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],4],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[7],"affectingLocations":[8]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":5,"isExternalLibraryImport":true},"failedLookupLocations":[9]}],"names":["pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2]],"typeRefs":[[6,[1,2]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[3]],"referencedMap":[[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,5,3,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],4],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[7],"affectingLocations":[8]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":5,"isExternalLibraryImport":true},"failedLookupLocations":[9]}],"names":["pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2]],"typeRefs":[[6,[1,2]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -6942,7 +6941,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./randomfilefortyperef.ts": [ @@ -7130,7 +7130,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 2215 + "size": 2236 } //// [/src/project/randomFileForImport.js] file written with same contents @@ -7324,7 +7324,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"referencedMap":[],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],3],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":4,"isExternalLibraryImport":true},"failedLookupLocations":[6]}],"names":["pkg4"],"resolutionEntries":[[1,1]],"typeRefs":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"referencedMap":[],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],3],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":4,"isExternalLibraryImport":true},"failedLookupLocations":[6]}],"names":["pkg4"],"resolutionEntries":[[1,1]],"typeRefs":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -7381,7 +7381,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": {}, "exportedModulesMap": {}, @@ -7477,7 +7478,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 1703 + "size": 1724 } //// [/src/project/randomFileForImport.js] file written with same contents diff --git a/tests/baselines/reference/tscWatch/cacheResolutions/multi-file.js b/tests/baselines/reference/tscWatch/cacheResolutions/multi-file.js index 9721fe013a9..8bc98131d79 100644 --- a/tests/baselines/reference/tscWatch/cacheResolutions/multi-file.js +++ b/tests/baselines/reference/tscWatch/cacheResolutions/multi-file.js @@ -554,7 +554,7 @@ export declare const x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -671,7 +671,8 @@ export declare const x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -987,7 +988,7 @@ export declare const x = 10; } }, "version": "FakeTSVersion", - "size": 3348 + "size": 3369 } @@ -1373,7 +1374,7 @@ exitCode:: ExitStatus.undefined //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -1490,7 +1491,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -1809,7 +1811,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3445 + "size": 3466 } @@ -2218,7 +2220,7 @@ exports.x = 10; //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2],[6,1],[7,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -2335,7 +2337,8 @@ exports.x = 10; }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -2657,7 +2660,7 @@ exports.x = 10; } }, "version": "FakeTSVersion", - "size": 3510 + "size": 3531 } @@ -3059,7 +3062,7 @@ exitCode:: ExitStatus.undefined //// [/src/project/fileWithImports.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3],[8,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[6,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],9,2,3,5,7,8],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,14,15],"affectingLocations":[16]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[11,12,13,17,18],"affectingLocations":[19]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[20],"affectingLocations":[21]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":9,"isExternalLibraryImport":true},"failedLookupLocations":[22]}],"names":["pkg0","pkg1","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4]],"modules":[[10,[1,2]]],"typeRefs":[[10,[3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -3193,7 +3196,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -3608,7 +3612,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3807 + "size": 3828 } @@ -4033,7 +4037,7 @@ exitCode:: ExitStatus.undefined //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/randomFileForTypeRef.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./node_modules/pkg1/require.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/pkg1/require.ts","./node_modules/pkg1/require.tsx","./node_modules/pkg1/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-3547817137-export interface RequireInterface1 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5,6],[2],[5]],"referencedMap":[[4,1],[7,2],[8,3],[9,4]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,7,10,2,3,5,6,8,9],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,15,16],"affectingLocations":[17]},{"resolvedModule":{"resolvedFileName":3,"isExternalLibraryImport":true,"packageId":{"name":"pkg1","subModuleName":"require.d.ts","version":"0.0.1"}},"failedLookupLocations":[12,13,14,18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"resolvedFileName":5,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[21],"affectingLocations":[22]},{"resolvedTypeReferenceDirective":{"resolvedFileName":6,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[23,24],"affectingLocations":[25]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":10,"isExternalLibraryImport":true},"failedLookupLocations":[26]}],"names":["pkg0","pkg1","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,1],[3,3,99],[4,4,1],[5,5]],"modules":[[11,[1,2]]],"typeRefs":[[11,[3,4,5]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -4186,7 +4190,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -4682,7 +4687,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 4210 + "size": 4231 } @@ -4969,7 +4974,7 @@ FsWatchesRecursive:: exitCode:: ExitStatus.undefined //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,8,5,2,3,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":5,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":2,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[21]}],"names":["pkg0","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3,1],[4,4]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg2/import.d.ts","./node_modules/pkg3/require.d.ts","./filewithtyperefs.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg3/package.json","./node_modules/@types/pkg3/index.d.ts","./node_modules/pkg3/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-6568745979-export {};\ndeclare global {\n interface RequireInterface3 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2,3],[5],[2]],"referencedMap":[[4,1],[6,2],[7,3]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,8,5,2,3,6,7],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":5,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":2,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg3","subModuleName":"require.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[18,19],"affectingLocations":[20]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[21]}],"names":["pkg0","pkg2","pkg3","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3,1],[4,4]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3,4]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5094,7 +5099,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithtyperefs.ts": [ @@ -5481,7 +5487,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 3445 + "size": 3466 } @@ -5705,7 +5711,7 @@ exitCode:: ExitStatus.undefined //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/randomFileForTypeRef.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,6,2,4,3,5],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[8,9,10,11,12],"affectingLocations":[13]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":6,"isExternalLibraryImport":true},"failedLookupLocations":[16]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[7,[1]]],"typeRefs":[[7,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,6,2,4,3,5],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[8,9,10,11,12],"affectingLocations":[13]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":6,"isExternalLibraryImport":true},"failedLookupLocations":[16]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[7,[1]]],"typeRefs":[[7,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -5800,7 +5806,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./randomfileforimport.ts": [ @@ -6090,7 +6097,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 2580 + "size": 2601 } @@ -6313,7 +6320,7 @@ exitCode:: ExitStatus.undefined //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[3]],"referencedMap":[[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,5,3,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],4],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[7],"affectingLocations":[8]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":5,"isExternalLibraryImport":true},"failedLookupLocations":[9]}],"names":["pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2]],"typeRefs":[[6,[1,2]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./node_modules/pkg2/import.d.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[3]],"referencedMap":[[4,1]],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,5,3,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],4],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"resolvedFileName":3,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[7],"affectingLocations":[8]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":5,"isExternalLibraryImport":true},"failedLookupLocations":[9]}],"names":["pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2]],"typeRefs":[[6,[1,2]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -6389,7 +6396,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./randomfilefortyperef.ts": [ @@ -6577,7 +6585,7 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 2215 + "size": 2236 } @@ -6772,7 +6780,7 @@ exitCode:: ExitStatus.undefined //// [/src/project/randomFileForImport.js] file written with same contents //// [/src/project/randomFileForTypeRef.js] file written with same contents //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"referencedMap":[],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],3],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":4,"isExternalLibraryImport":true},"failedLookupLocations":[6]}],"names":["pkg4"],"resolutionEntries":[[1,1]],"typeRefs":[[5,[1]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-8633945300-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-8191038086-/// \nexport const x = 10;","signature":"-6821242887-export declare const x = 10;\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"referencedMap":[],"exportedModulesMap":[],"semanticDiagnosticsPerFile":[1,4,[2,[{"file":"./randomfileforimport.ts","start":38,"length":6,"messageText":"Cannot find module 'pkg0' or its corresponding type declarations.","category":1,"code":2307}]],3],"latestChangedDtsFile":"./randomFileForTypeRef.d.ts","cacheResolutions":{"resolutions":[{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":4,"isExternalLibraryImport":true},"failedLookupLocations":[6]}],"names":["pkg4"],"resolutionEntries":[[1,1]],"typeRefs":[[5,[1]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -6829,7 +6837,8 @@ exitCode:: ExitStatus.undefined }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": {}, "exportedModulesMap": {}, @@ -6925,6 +6934,6 @@ exitCode:: ExitStatus.undefined } }, "version": "FakeTSVersion", - "size": 1703 + "size": 1724 } diff --git a/tests/baselines/reference/tsserver/cacheResolutions/multi-file.js b/tests/baselines/reference/tsserver/cacheResolutions/multi-file.js index 3afe13b7999..e4599731451 100644 --- a/tests/baselines/reference/tsserver/cacheResolutions/multi-file.js +++ b/tests/baselines/reference/tsserver/cacheResolutions/multi-file.js @@ -89,7 +89,7 @@ interface String { charAt: any; } interface Array { length: number; [n: number]: T; } //// [/src/project/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../a/lib/lib.d.ts","./node_modules/pkg0/import.d.ts","./filewithimports.ts","./node_modules/pkg2/import.d.ts","./filewithtyperefs.ts","./randomfileforimport.ts","./randomfilefortyperef.ts","./node_modules/@types/pkg4/index.d.ts","./","./package.json","../package.json","../../package.json","./node_modules/pkg0/import.ts","./node_modules/pkg0/import.tsx","./node_modules/pkg0/package.json","./node_modules/@types/pkg2/package.json","./node_modules/pkg2/package.json","./node_modules/@types/pkg4/package.json"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"769951468-export interface ImportInterface0 {}","impliedFormat":1},{"version":"4079531109-import type { ImportInterface0 } from \"pkg0\" assert { \"resolution-mode\": \"import\" };\nimport type { RequireInterface1 } from \"pkg1\" assert { \"resolution-mode\": \"require\" };\n","impliedFormat":1},{"version":"1714206242-export {};\ndeclare global {\n interface ImportInterface2 {}\n}\n","affectsGlobalScope":true,"impliedFormat":1},{"version":"-20622778057-/// \n/// \ninterface LocalInterface extends ImportInterface2, RequireInterface3 {}\nexport {}\n","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1},{"version":"-10726455937-export const x = 10;","impliedFormat":1}],"options":{"cacheResolutions":true,"composite":true,"moduleResolution":3},"fileIdsList":[[2],[4]],"referencedMap":[[3,1],[5,2]],"exportedModulesMap":[[3,1],[5,2]],"semanticDiagnosticsPerFile":[1,[3,[{"file":"./filewithimports.ts","start":124,"length":6,"messageText":"Cannot find module 'pkg1' or its corresponding type declarations.","category":1,"code":2307}]],[5,[{"file":"./filewithtyperefs.ts","start":162,"length":17,"messageText":"Cannot find name 'RequireInterface3'.","category":1,"code":2304}]],8,2,4,6,7],"affectedFilesPendingEmit":[3,5,6,7],"emitSignatures":[3,5,6,7],"cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":2,"isExternalLibraryImport":true,"packageId":{"name":"pkg0","subModuleName":"import.d.ts","version":"0.0.1"}},"failedLookupLocations":[10,11,12,13,14],"affectingLocations":[15]},{"resolvedTypeReferenceDirective":{"resolvedFileName":4,"packageId":{"name":"pkg2","subModuleName":"import.d.ts","version":"0.0.1"},"isExternalLibraryImport":true},"failedLookupLocations":[16],"affectingLocations":[17]},{"resolvedTypeReferenceDirective":{"primary":true,"resolvedFileName":8,"isExternalLibraryImport":true},"failedLookupLocations":[18]}],"names":["pkg0","pkg2","pkg4"],"resolutionEntries":[[1,1,99],[2,2,99],[3,3]],"modules":[[9,[1]]],"typeRefs":[[9,[2,3]]]}},"version":"FakeTSVersion"} //// [/src/project/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -202,7 +202,8 @@ interface Array { length: number; [n: number]: T; } }, "options": { "cacheResolutions": true, - "composite": true + "composite": true, + "moduleResolution": 3 }, "referencedMap": { "./filewithimports.ts": [ @@ -548,7 +549,7 @@ interface Array { length: number; [n: number]: T; } } }, "version": "FakeTSVersion", - "size": 3178 + "size": 3199 } diff --git a/tests/baselines/reference/tsserver/cacheResolutions/sample-project.js b/tests/baselines/reference/tsserver/cacheResolutions/sample-project.js index 2d5cd304754..a069db8f44b 100644 --- a/tests/baselines/reference/tsserver/cacheResolutions/sample-project.js +++ b/tests/baselines/reference/tsserver/cacheResolutions/sample-project.js @@ -235,7 +235,7 @@ export declare const m: typeof mod; //// [/user/username/projects/sample1/logic/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","./index.ts","./","../core/index.ts","../core/anotherModule.ts"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true},"-7362568283-export declare const someString: string;\nexport declare function leftPad(s: string, n: number): string;\nexport declare function multiply(a: number, b: number): number;\n","-9234818176-export declare const World = \"hello\";\n",{"version":"-5786964698-import * as c from '../core/index';\r\nexport function getSecondsInDay() {\r\n return c.multiply(10, 15);\r\n}\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9659407152-export declare function getSecondsInDay(): number;\nimport * as mod from '../core/anotherModule';\nexport declare const m: typeof mod;\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"skipDefaultLibCheck":true,"sourceMap":true},"fileIdsList":[[2,3],[3]],"referencedMap":[[4,1]],"exportedModulesMap":[[4,2]],"semanticDiagnosticsPerFile":[1,3,2,4],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":6}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/index","../core/anotherModule"],"resolutionEntries":[[1,1],[2,2]],"modules":[[5,[1,2]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","./index.ts","./","../core/index.ts","../core/anotherModule.ts"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true},"-7362568283-export declare const someString: string;\nexport declare function leftPad(s: string, n: number): string;\nexport declare function multiply(a: number, b: number): number;\n","-9234818176-export declare const World = \"hello\";\n",{"version":"-5786964698-import * as c from '../core/index';\r\nexport function getSecondsInDay() {\r\n return c.multiply(10, 15);\r\n}\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9659407152-export declare function getSecondsInDay(): number;\nimport * as mod from '../core/anotherModule';\nexport declare const m: typeof mod;\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true,"sourceMap":true},"fileIdsList":[[2,3],[3]],"referencedMap":[[4,1]],"exportedModulesMap":[[4,2]],"semanticDiagnosticsPerFile":[1,3,2,4],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":6}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/index","../core/anotherModule"],"resolutionEntries":[[1,1],[2,2]],"modules":[[5,[1,2]]]}},"version":"FakeTSVersion"} //// [/user/username/projects/sample1/logic/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -289,6 +289,7 @@ export declare const m: typeof mod; "cacheResolutions": true, "composite": true, "declaration": true, + "forceConsistentCasingInFileNames": true, "skipDefaultLibCheck": true, "sourceMap": true }, @@ -399,7 +400,7 @@ export declare const m: typeof mod; } }, "version": "FakeTSVersion", - "size": 1734 + "size": 1774 } //// [/user/username/projects/sample1/tests/index.js] @@ -420,7 +421,7 @@ export declare const m: typeof mod; //// [/user/username/projects/sample1/tests/tsconfig.tsbuildinfo] -{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts","../logic","../core/anotherModule.ts","./","../core/index.ts","../logic/index.ts"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true},"-7362568283-export declare const someString: string;\nexport declare function leftPad(s: string, n: number): string;\nexport declare function multiply(a: number, b: number): number;\n","-9234818176-export declare const World = \"hello\";\n","-9659407152-export declare function getSecondsInDay(): number;\nimport * as mod from '../core/anotherModule';\nexport declare const m: typeof mod;\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"2702201019-import * as mod from '../core/anotherModule';\nexport declare const m: typeof mod;\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":7}},{"resolvedModule":{"resolvedFileName":9}},{"resolvedModule":{"resolvedFileName":10}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/anotherModule","../core/index","../logic/index"],"resolutionEntries":[[1,1],[2,2],[3,3],[1,4]],"modules":[[6,[1]],[8,[2,3,4]]]}},"version":"FakeTSVersion"} +{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts","../logic","../core/anotherModule.ts","./","../core/index.ts","../logic/index.ts"],"fileInfos":[{"version":"-7698705165-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }","affectsGlobalScope":true},"-7362568283-export declare const someString: string;\nexport declare function leftPad(s: string, n: number): string;\nexport declare function multiply(a: number, b: number): number;\n","-9234818176-export declare const World = \"hello\";\n","-9659407152-export declare function getSecondsInDay(): number;\nimport * as mod from '../core/anotherModule';\nexport declare const m: typeof mod;\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"2702201019-import * as mod from '../core/anotherModule';\nexport declare const m: typeof mod;\n"}],"options":{"cacheResolutions":true,"composite":true,"declaration":true,"forceConsistentCasingInFileNames":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts","cacheResolutions":{"resolutions":[{"resolvedModule":{"resolvedFileName":7}},{"resolvedModule":{"resolvedFileName":9}},{"resolvedModule":{"resolvedFileName":10}},{"resolvedModule":{"resolvedFileName":7}}],"names":["../core/anotherModule","../core/index","../logic/index"],"resolutionEntries":[[1,1],[2,2],[3,3],[1,4]],"modules":[[6,[1]],[8,[2,3,4]]]}},"version":"FakeTSVersion"} //// [/user/username/projects/sample1/tests/tsconfig.tsbuildinfo.readable.baseline.txt] { @@ -482,6 +483,7 @@ export declare const m: typeof mod; "cacheResolutions": true, "composite": true, "declaration": true, + "forceConsistentCasingInFileNames": true, "skipDefaultLibCheck": true }, "referencedMap": { @@ -675,7 +677,7 @@ export declare const m: typeof mod; } }, "version": "FakeTSVersion", - "size": 2034 + "size": 2074 }