From ab5067bd4387eeb358846d72cd1502f83baad788 Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Thu, 2 Feb 2023 12:37:35 -0800 Subject: [PATCH] Always respect preserveSymlinks (#51842) --- src/compiler/moduleNameResolver.ts | 73 ++++++++++++++----- ...olutionWithExtensions_withPaths.trace.json | 2 + ...es_one_externalModule_withPaths.trace.json | 3 + ...cksTypesVersions(module=node16).trace.json | 3 +- ...sTypesVersions(module=nodenext).trace.json | 3 +- ...ithExtension_MapedToNodeModules.trace.json | 1 + .../requireOfJsonFile_PathMapping.trace.json | 1 + ...stic1(moduleresolution=bundler).trace.json | 6 +- ...ostic1(moduleresolution=node16).trace.json | 6 +- .../scopedPackagesClassic.trace.json | 1 + .../reference/typingsLookupAmd.trace.json | 2 + 11 files changed, 69 insertions(+), 32 deletions(-) diff --git a/src/compiler/moduleNameResolver.ts b/src/compiler/moduleNameResolver.ts index a503e3202dd..bd1d554ad2d 100644 --- a/src/compiler/moduleNameResolver.ts +++ b/src/compiler/moduleNameResolver.ts @@ -206,6 +206,38 @@ function resolvedTypeScriptOnly(resolved: Resolved | undefined): PathAndPackageI return { fileName: resolved.path, packageId: resolved.packageId }; } +function createResolvedModuleWithFailedLookupLocationsHandlingSymlink( + moduleName: string, + resolved: Resolved | undefined, + isExternalLibraryImport: boolean | undefined, + failedLookupLocations: string[], + affectingLocations: string[], + diagnostics: Diagnostic[], + state: ModuleResolutionState, + legacyResult?: string, +): ResolvedModuleWithFailedLookupLocations { + // If this is from node_modules for non relative name, always respect preserveSymlinks + if (!state.resultFromCache && + !state.compilerOptions.preserveSymlinks && + resolved && + isExternalLibraryImport && + !resolved.originalPath && + !isExternalModuleNameRelative(moduleName) + ) { + const { resolvedFileName, originalPath } = getOriginalAndResolvedFileName(resolved.path, state.host, state.traceEnabled); + if (originalPath) resolved = { ...resolved, path: resolvedFileName, originalPath }; + } + return createResolvedModuleWithFailedLookupLocations( + resolved, + isExternalLibraryImport, + failedLookupLocations, + affectingLocations, + diagnostics, + state.resultFromCache, + legacyResult, + ); +} + function createResolvedModuleWithFailedLookupLocations( resolved: Resolved | undefined, isExternalLibraryImport: boolean | undefined, @@ -450,6 +482,16 @@ function arePathsEqual(path1: string, path2: string, host: ModuleResolutionHost) return comparePaths(path1, path2, !useCaseSensitiveFileNames) === Comparison.EqualTo; } +function getOriginalAndResolvedFileName(fileName: string, host: ModuleResolutionHost, traceEnabled: boolean) { + const resolvedFileName = realPath(fileName, host, traceEnabled); + const pathsAreEqual = arePathsEqual(fileName, resolvedFileName, host); + return { + // If the fileName and realpath are differing only in casing prefer fileName so that we can issue correct errors for casing under forceConsistentCasingInFileNames + resolvedFileName: pathsAreEqual ? fileName : resolvedFileName, + originalPath: pathsAreEqual ? undefined : fileName, + }; +} + /** * @param {string | undefined} containingFile - file that contains type reference directive, can be undefined if containing file is unknown. * This is possible in case if resolution is performed for directives specified via 'types' parameter. In this case initial path for secondary lookups @@ -541,13 +583,12 @@ export function resolveTypeReferenceDirective(typeReferenceDirectiveName: string let resolvedTypeReferenceDirective: ResolvedTypeReferenceDirective | undefined; if (resolved) { const { fileName, packageId } = resolved; - const resolvedFileName = options.preserveSymlinks ? fileName : realPath(fileName, host, traceEnabled); - const pathsAreEqual = arePathsEqual(fileName, resolvedFileName, host); + let resolvedFileName = fileName, originalPath: string | undefined; + if (!options.preserveSymlinks) ({ resolvedFileName, originalPath } = getOriginalAndResolvedFileName(fileName, host, traceEnabled)); resolvedTypeReferenceDirective = { primary, - // If the fileName and realpath are differing only in casing prefer fileName so that we can issue correct errors for casing under forceConsistentCasingInFileNames - resolvedFileName: pathsAreEqual ? fileName : resolvedFileName, - originalPath: pathsAreEqual ? undefined : fileName, + resolvedFileName, + originalPath, packageId, isExternalLibraryImport: pathContainsNodeModules(fileName), }; @@ -1702,13 +1743,14 @@ function nodeModuleNameResolverWorker(features: NodeResolutionFeatures, moduleNa } } - return createResolvedModuleWithFailedLookupLocations( + return createResolvedModuleWithFailedLookupLocationsHandlingSymlink( + moduleName, result?.value?.resolved, result?.value?.isExternalLibraryImport, failedLookupLocations, affectingLocations, diagnostics, - state.resultFromCache, + state, legacyResult, ); @@ -1733,18 +1775,8 @@ function nodeModuleNameResolverWorker(features: NodeResolutionFeatures, moduleNa } resolved = loadModuleFromNearestNodeModulesDirectory(extensions, moduleName, containingDirectory, state, cache, redirectedReference); } - if (!resolved) return undefined; - - let resolvedValue = resolved.value; - if (!compilerOptions.preserveSymlinks && resolvedValue && !resolvedValue.originalPath) { - const path = realPath(resolvedValue.path, host, traceEnabled); - const pathsAreEqual = arePathsEqual(path, resolvedValue.path, host); - const originalPath = pathsAreEqual ? undefined : resolvedValue.path; - // If the path and realpath are differing only in casing prefer path so that we can issue correct errors for casing under forceConsistentCasingInFileNames - resolvedValue = { ...resolvedValue, path: pathsAreEqual ? resolvedValue.path : path, originalPath }; - } // For node_modules lookups, get the real path so that multiple accesses to an `npm link`-ed module do not create duplicate files. - return { value: resolvedValue && { resolved: resolvedValue, isExternalLibraryImport: true } }; + return resolved && { value: resolved.value && { resolved: resolved.value, isExternalLibraryImport: true } }; } else { const { path: candidate, parts } = normalizePathForCJSResolution(containingDirectory, moduleName); @@ -2991,13 +3023,14 @@ export function classicNameResolver(moduleName: string, containingFile: string, tryResolve(Extensions.TypeScript | Extensions.Declaration) || tryResolve(Extensions.JavaScript | (compilerOptions.resolveJsonModule ? Extensions.Json : 0)); // No originalPath because classic resolution doesn't resolve realPath - return createResolvedModuleWithFailedLookupLocations( + return createResolvedModuleWithFailedLookupLocationsHandlingSymlink( + moduleName, resolved && resolved.value, resolved?.value && pathContainsNodeModules(resolved.value.path), failedLookupLocations, affectingLocations, diagnostics, - state.resultFromCache + state, ); function tryResolve(extensions: Extensions): SearchResult { diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_withPaths.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_withPaths.trace.json index 7b21069a139..c4928020ad0 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_withPaths.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_withPaths.trace.json @@ -11,6 +11,7 @@ "File '/node_modules/foo/lib/test.tsx' does not exist.", "File '/node_modules/foo/lib/test.d.ts' exists - use it as a name resolution result.", "File '/node_modules/foo/package.json' does not exist.", + "Resolving real path for '/node_modules/foo/lib/test.d.ts', result '/node_modules/foo/lib/test.d.ts'.", "======== Module name 'foo/test.js' was successfully resolved to '/node_modules/foo/lib/test.d.ts'. ========", "======== Resolving module 'foo/test' from '/test.ts'. ========", "Explicitly specified module resolution kind: 'Node10'.", @@ -23,6 +24,7 @@ "File '/node_modules/foo/lib/test.tsx' does not exist.", "File '/node_modules/foo/lib/test.d.ts' exists - use it as a name resolution result.", "File '/node_modules/foo/package.json' does not exist according to earlier cached lookups.", + "Resolving real path for '/node_modules/foo/lib/test.d.ts', result '/node_modules/foo/lib/test.d.ts'.", "======== Module name 'foo/test' was successfully resolved to '/node_modules/foo/lib/test.d.ts'. ========", "======== Resolving module './relative.js' from '/test.ts'. ========", "Explicitly specified module resolution kind: 'Node10'.", diff --git a/tests/baselines/reference/moduleResolutionWithSuffixes_one_externalModule_withPaths.trace.json b/tests/baselines/reference/moduleResolutionWithSuffixes_one_externalModule_withPaths.trace.json index 39f0d3445a3..11add5388dd 100644 --- a/tests/baselines/reference/moduleResolutionWithSuffixes_one_externalModule_withPaths.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSuffixes_one_externalModule_withPaths.trace.json @@ -13,6 +13,7 @@ "File '/node_modules/some-library/lib/index.ios.ts' does not exist.", "File '/node_modules/some-library/lib/index.ios.tsx' does not exist.", "File '/node_modules/some-library/lib/index.ios.d.ts' exists - use it as a name resolution result.", + "Resolving real path for '/node_modules/some-library/lib/index.ios.d.ts', result '/node_modules/some-library/lib/index.ios.d.ts'.", "======== Module name 'some-library' was successfully resolved to '/node_modules/some-library/lib/index.ios.d.ts'. ========", "======== Resolving module 'some-library/index' from '/test.ts'. ========", "Explicitly specified module resolution kind: 'Node10'.", @@ -25,6 +26,7 @@ "File '/node_modules/some-library/lib/index.ios.tsx' does not exist.", "File '/node_modules/some-library/lib/index.ios.d.ts' exists - use it as a name resolution result.", "File '/node_modules/some-library/package.json' does not exist.", + "Resolving real path for '/node_modules/some-library/lib/index.ios.d.ts', result '/node_modules/some-library/lib/index.ios.d.ts'.", "======== Module name 'some-library/index' was successfully resolved to '/node_modules/some-library/lib/index.ios.d.ts'. ========", "======== Resolving module 'some-library/index.js' from '/test.ts'. ========", "Explicitly specified module resolution kind: 'Node10'.", @@ -38,5 +40,6 @@ "File '/node_modules/some-library/lib/index.ios.tsx' does not exist.", "File '/node_modules/some-library/lib/index.ios.d.ts' exists - use it as a name resolution result.", "File '/node_modules/some-library/package.json' does not exist according to earlier cached lookups.", + "Resolving real path for '/node_modules/some-library/lib/index.ios.d.ts', result '/node_modules/some-library/lib/index.ios.d.ts'.", "======== Module name 'some-library/index.js' was successfully resolved to '/node_modules/some-library/lib/index.ios.d.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=node16).trace.json b/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=node16).trace.json index 0d6bc61258e..a4d5f1584f9 100644 --- a/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=node16).trace.json +++ b/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=node16).trace.json @@ -98,7 +98,6 @@ "Using 'exports' subpath './foo' with target './dist/foo.js'.", "File name '/node_modules/exports-and-types-versions/dist/foo.js' has a '.js' extension - stripping it.", "File '/node_modules/exports-and-types-versions/dist/foo.js' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/exports-and-types-versions/dist/foo.js', result '/node_modules/exports-and-types-versions/dist/foo.js'.", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update.", "File '/package.json' does not exist according to earlier cached lookups.", "Loading module 'exports-and-types-versions/foo' from 'node_modules' folder, target file types: TypeScript, Declaration.", @@ -108,7 +107,7 @@ "Module name 'foo', matched pattern 'foo'.", "Trying substitution './types/foo.d.ts', candidate module location: './types/foo.d.ts'.", "File '/node_modules/exports-and-types-versions/types/foo.d.ts' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/exports-and-types-versions/types/foo.d.ts', result '/node_modules/exports-and-types-versions/types/foo.d.ts'.", + "Resolving real path for '/node_modules/exports-and-types-versions/dist/foo.js', result '/node_modules/exports-and-types-versions/dist/foo.js'.", "======== Module name 'exports-and-types-versions/foo' was successfully resolved to '/node_modules/exports-and-types-versions/dist/foo.js' with Package ID 'exports-and-types-versions/dist/foo.js@1.0.0'. ========", "======== Resolving module 'exports-and-types-versions/nope' from '/main.mts'. ========", "Module resolution kind is not specified, using 'Node16'.", diff --git a/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=nodenext).trace.json b/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=nodenext).trace.json index 9edc0b7b866..c3b4275e49c 100644 --- a/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=nodenext).trace.json +++ b/tests/baselines/reference/nodeModulesExportsBlocksTypesVersions(module=nodenext).trace.json @@ -98,7 +98,6 @@ "Using 'exports' subpath './foo' with target './dist/foo.js'.", "File name '/node_modules/exports-and-types-versions/dist/foo.js' has a '.js' extension - stripping it.", "File '/node_modules/exports-and-types-versions/dist/foo.js' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/exports-and-types-versions/dist/foo.js', result '/node_modules/exports-and-types-versions/dist/foo.js'.", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update.", "File '/package.json' does not exist according to earlier cached lookups.", "Loading module 'exports-and-types-versions/foo' from 'node_modules' folder, target file types: TypeScript, Declaration.", @@ -108,7 +107,7 @@ "Module name 'foo', matched pattern 'foo'.", "Trying substitution './types/foo.d.ts', candidate module location: './types/foo.d.ts'.", "File '/node_modules/exports-and-types-versions/types/foo.d.ts' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/exports-and-types-versions/types/foo.d.ts', result '/node_modules/exports-and-types-versions/types/foo.d.ts'.", + "Resolving real path for '/node_modules/exports-and-types-versions/dist/foo.js', result '/node_modules/exports-and-types-versions/dist/foo.js'.", "======== Module name 'exports-and-types-versions/foo' was successfully resolved to '/node_modules/exports-and-types-versions/dist/foo.js' with Package ID 'exports-and-types-versions/dist/foo.js@1.0.0'. ========", "======== Resolving module 'exports-and-types-versions/nope' from '/main.mts'. ========", "Module resolution kind is not specified, using 'NodeNext'.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_MapedToNodeModules.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_MapedToNodeModules.trace.json index b1d3b687f28..fc68242af5f 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_MapedToNodeModules.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_MapedToNodeModules.trace.json @@ -35,5 +35,6 @@ "File name '/node_modules/foo/bar/foobar.js' has a '.js' extension - stripping it.", "File '/node_modules/foo/bar/foobar.js' exists - use it as a name resolution result.", "File '/node_modules/foo/package.json' does not exist according to earlier cached lookups.", + "Resolving real path for '/node_modules/foo/bar/foobar.js', result '/node_modules/foo/bar/foobar.js'.", "======== Module name 'foo/bar/foobar.js' was successfully resolved to '/node_modules/foo/bar/foobar.js'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/requireOfJsonFile_PathMapping.trace.json b/tests/baselines/reference/requireOfJsonFile_PathMapping.trace.json index 17b2d9a9218..7cf8417dfb2 100644 --- a/tests/baselines/reference/requireOfJsonFile_PathMapping.trace.json +++ b/tests/baselines/reference/requireOfJsonFile_PathMapping.trace.json @@ -31,5 +31,6 @@ "File name '/node_modules/foo/bar/foobar.json' has a '.json' extension - stripping it.", "File '/node_modules/foo/bar/foobar.json' exists - use it as a name resolution result.", "File '/node_modules/foo/package.json' does not exist according to earlier cached lookups.", + "Resolving real path for '/node_modules/foo/bar/foobar.json', result '/node_modules/foo/bar/foobar.json'.", "======== Module name 'foo/bar/foobar.json' was successfully resolved to '/node_modules/foo/bar/foobar.json'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=bundler).trace.json b/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=bundler).trace.json index 5a7ce317b2f..86b684ebdf5 100644 --- a/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=bundler).trace.json +++ b/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=bundler).trace.json @@ -16,7 +16,6 @@ "Using 'exports' subpath '.' with target './index.mjs'.", "File name '/node_modules/foo/index.mjs' has a '.mjs' extension - stripping it.", "File '/node_modules/foo/index.mjs' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/foo/index.mjs', result '/node_modules/foo/index.mjs'.", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update.", "File '/package.json' does not exist according to earlier cached lookups.", "Loading module 'foo' from 'node_modules' folder, target file types: TypeScript, Declaration.", @@ -28,7 +27,7 @@ "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'index.d.ts' that references '/node_modules/foo/index.d.ts'.", "File '/node_modules/foo/index.d.ts' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/foo/index.d.ts', result '/node_modules/foo/index.d.ts'.", + "Resolving real path for '/node_modules/foo/index.mjs', result '/node_modules/foo/index.mjs'.", "======== Module name 'foo' was successfully resolved to '/node_modules/foo/index.mjs' with Package ID 'foo/index.mjs@1.0.0'. ========", "======== Resolving module 'bar' from '/index.mts'. ========", "Explicitly specified module resolution kind: 'Bundler'.", @@ -48,7 +47,6 @@ "Using 'exports' subpath '.' with target './index.mjs'.", "File name '/node_modules/bar/index.mjs' has a '.mjs' extension - stripping it.", "File '/node_modules/bar/index.mjs' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/bar/index.mjs', result '/node_modules/bar/index.mjs'.", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update.", "File '/package.json' does not exist according to earlier cached lookups.", "Loading module 'bar' from 'node_modules' folder, target file types: TypeScript, Declaration.", @@ -80,7 +78,7 @@ "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'index.d.ts' that references '/node_modules/@types/bar/index.d.ts'.", "File '/node_modules/@types/bar/index.d.ts' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/@types/bar/index.d.ts', result '/node_modules/@types/bar/index.d.ts'.", + "Resolving real path for '/node_modules/bar/index.mjs', result '/node_modules/bar/index.mjs'.", "======== Module name 'bar' was successfully resolved to '/node_modules/bar/index.mjs' with Package ID 'bar/index.mjs@1.0.0'. ========", "======== Resolving type reference directive 'bar', containing file '__inferred type names__.ts', root directory '/node_modules/@types'. ========", "Resolving with primary search path '/node_modules/@types'.", diff --git a/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=node16).trace.json b/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=node16).trace.json index d75700393ca..93123343545 100644 --- a/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=node16).trace.json +++ b/tests/baselines/reference/resolvesWithoutExportsDiagnostic1(moduleresolution=node16).trace.json @@ -18,7 +18,6 @@ "Using 'exports' subpath '.' with target './index.mjs'.", "File name '/node_modules/foo/index.mjs' has a '.mjs' extension - stripping it.", "File '/node_modules/foo/index.mjs' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/foo/index.mjs', result '/node_modules/foo/index.mjs'.", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update.", "File '/package.json' does not exist according to earlier cached lookups.", "Loading module 'foo' from 'node_modules' folder, target file types: TypeScript, Declaration.", @@ -27,7 +26,7 @@ "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'index.d.ts' that references '/node_modules/foo/index.d.ts'.", "File '/node_modules/foo/index.d.ts' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/foo/index.d.ts', result '/node_modules/foo/index.d.ts'.", + "Resolving real path for '/node_modules/foo/index.mjs', result '/node_modules/foo/index.mjs'.", "======== Module name 'foo' was successfully resolved to '/node_modules/foo/index.mjs' with Package ID 'foo/index.mjs@1.0.0'. ========", "======== Resolving module 'bar' from '/index.mts'. ========", "Explicitly specified module resolution kind: 'Node16'.", @@ -48,7 +47,6 @@ "Using 'exports' subpath '.' with target './index.mjs'.", "File name '/node_modules/bar/index.mjs' has a '.mjs' extension - stripping it.", "File '/node_modules/bar/index.mjs' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/bar/index.mjs', result '/node_modules/bar/index.mjs'.", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update.", "File '/package.json' does not exist according to earlier cached lookups.", "Loading module 'bar' from 'node_modules' folder, target file types: TypeScript, Declaration.", @@ -73,7 +71,7 @@ "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'index.d.ts' that references '/node_modules/@types/bar/index.d.ts'.", "File '/node_modules/@types/bar/index.d.ts' exists - use it as a name resolution result.", - "Resolving real path for '/node_modules/@types/bar/index.d.ts', result '/node_modules/@types/bar/index.d.ts'.", + "Resolving real path for '/node_modules/bar/index.mjs', result '/node_modules/bar/index.mjs'.", "======== Module name 'bar' was successfully resolved to '/node_modules/bar/index.mjs' with Package ID 'bar/index.mjs@1.0.0'. ========", "======== Resolving type reference directive 'bar', containing file '__inferred type names__.ts', root directory '/node_modules/@types'. ========", "Resolving with primary search path '/node_modules/@types'.", diff --git a/tests/baselines/reference/scopedPackagesClassic.trace.json b/tests/baselines/reference/scopedPackagesClassic.trace.json index 0df0725692b..8269737774a 100644 --- a/tests/baselines/reference/scopedPackagesClassic.trace.json +++ b/tests/baselines/reference/scopedPackagesClassic.trace.json @@ -5,5 +5,6 @@ "File '/node_modules/@types/see__saw/package.json' does not exist.", "File '/node_modules/@types/see__saw.d.ts' does not exist.", "File '/node_modules/@types/see__saw/index.d.ts' exists - use it as a name resolution result.", + "Resolving real path for '/node_modules/@types/see__saw/index.d.ts', result '/node_modules/@types/see__saw/index.d.ts'.", "======== Module name '@see/saw' was successfully resolved to '/node_modules/@types/see__saw/index.d.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/typingsLookupAmd.trace.json b/tests/baselines/reference/typingsLookupAmd.trace.json index 0d8b1ed9ff1..3c6dc240422 100644 --- a/tests/baselines/reference/typingsLookupAmd.trace.json +++ b/tests/baselines/reference/typingsLookupAmd.trace.json @@ -14,6 +14,7 @@ "File '/x/node_modules/@types/b/package.json' does not exist.", "File '/x/node_modules/@types/b.d.ts' does not exist.", "File '/x/node_modules/@types/b/index.d.ts' exists - use it as a name resolution result.", + "Resolving real path for '/x/node_modules/@types/b/index.d.ts', result '/x/node_modules/@types/b/index.d.ts'.", "======== Module name 'b' was successfully resolved to '/x/node_modules/@types/b/index.d.ts'. ========", "======== Resolving module 'a' from '/x/node_modules/@types/b/index.d.ts'. ========", "Module resolution kind is not specified, using 'Classic'.", @@ -38,6 +39,7 @@ "File '/node_modules/@types/a/package.json' does not exist.", "File '/node_modules/@types/a.d.ts' does not exist.", "File '/node_modules/@types/a/index.d.ts' exists - use it as a name resolution result.", + "Resolving real path for '/node_modules/@types/a/index.d.ts', result '/node_modules/@types/a/index.d.ts'.", "======== Module name 'a' was successfully resolved to '/node_modules/@types/a/index.d.ts'. ========", "======== Resolving type reference directive 'a', containing file '/__inferred type names__.ts', root directory '/node_modules/@types'. ========", "Resolving with primary search path '/node_modules/@types'.",