From a316827ee657bd9ce673eb661197080c355c0f07 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Thu, 15 Jun 2017 11:18:56 -0700 Subject: [PATCH 1/3] Reduce file lookups in node_modules module resolution --- src/compiler/moduleNameResolver.ts | 49 +++++++++---- src/harness/unittests/moduleResolution.ts | 70 ++++--------------- .../unittests/reuseProgramStructure.ts | 19 +---- .../unittests/tsserverProjectSystem.ts | 4 +- .../reference/cachedModuleResolution1.js | 2 +- .../reference/cachedModuleResolution1.symbols | 4 +- .../cachedModuleResolution1.trace.json | 13 ++-- .../reference/cachedModuleResolution1.types | 2 +- .../reference/cachedModuleResolution2.js | 2 +- .../reference/cachedModuleResolution2.symbols | 4 +- .../cachedModuleResolution2.trace.json | 13 ++-- .../reference/cachedModuleResolution2.types | 2 +- .../reference/cachedModuleResolution5.js | 2 +- .../reference/cachedModuleResolution5.symbols | 4 +- .../cachedModuleResolution5.trace.json | 13 ++-- .../reference/cachedModuleResolution5.types | 2 +- .../reference/library-reference-11.trace.json | 1 - .../reference/library-reference-12.trace.json | 1 - .../reference/library-reference-3.trace.json | 1 - .../reference/library-reference-4.trace.json | 4 -- .../reference/library-reference-5.trace.json | 4 -- .../reference/library-reference-7.trace.json | 1 - ...brary-reference-scoped-packages.trace.json | 1 - ...NodeModuleJsDepthDefaultsToZero.trace.json | 7 +- ...lutionWithExtensions_unexpected.trace.json | 7 +- ...utionWithExtensions_unexpected2.trace.json | 13 ++-- ...thExtensions_withAmbientPresent.trace.json | 7 +- .../moduleResolutionWithSymlinks.trace.json | 4 +- ...tionWithSymlinks_referenceTypes.trace.json | 6 -- ...solutionWithSymlinks_withOutDir.trace.json | 4 +- tests/baselines/reference/nodeResolution2.js | 2 +- .../reference/nodeResolution2.symbols | 4 +- .../baselines/reference/nodeResolution2.types | 2 +- tests/baselines/reference/nodeResolution5.js | 4 +- .../reference/nodeResolution5.symbols | 6 +- .../baselines/reference/nodeResolution5.types | 4 +- tests/baselines/reference/nodeResolution6.js | 17 ----- .../reference/nodeResolution6.symbols | 14 ---- .../baselines/reference/nodeResolution6.types | 15 ---- .../reference/packageJsonMain.trace.json | 21 +----- .../packageJsonMain_isNonRecursive.trace.json | 7 +- ...pingBasedModuleResolution3_node.trace.json | 5 -- ...pingBasedModuleResolution4_node.trace.json | 5 -- .../pathMappingBasedModuleResolution5_node.js | 4 +- ...MappingBasedModuleResolution5_node.symbols | 4 +- ...pingBasedModuleResolution5_node.trace.json | 8 ++- ...thMappingBasedModuleResolution5_node.types | 2 +- .../pathMappingBasedModuleResolution7_node.js | 2 +- ...MappingBasedModuleResolution7_node.symbols | 4 +- ...pingBasedModuleResolution7_node.trace.json | 9 ++- ...thMappingBasedModuleResolution7_node.types | 2 +- tests/baselines/reference/scopedPackages.js | 2 +- .../reference/scopedPackages.symbols | 4 +- .../reference/scopedPackages.trace.json | 13 ++-- .../baselines/reference/scopedPackages.types | 2 +- .../scopedPackagesClassic.trace.json | 1 - ...mMultipleNodeModulesDirectories.trace.json | 36 ---------- ...romNodeModulesInParentDirectory.trace.json | 6 -- .../reference/typingsLookup4.trace.json | 16 ----- .../reference/typingsLookupAmd.trace.json | 3 - .../cases/compiler/cachedModuleResolution1.ts | 2 +- .../cases/compiler/cachedModuleResolution2.ts | 2 +- .../cases/compiler/cachedModuleResolution5.ts | 2 +- tests/cases/compiler/nodeResolution2.ts | 2 +- tests/cases/compiler/nodeResolution5.ts | 4 +- tests/cases/compiler/nodeResolution6.ts | 13 ---- .../pathMappingBasedModuleResolution5_node.ts | 2 +- .../pathMappingBasedModuleResolution7_node.ts | 2 +- .../moduleResolution/scopedPackages.ts | 2 +- 69 files changed, 141 insertions(+), 380 deletions(-) delete mode 100644 tests/baselines/reference/nodeResolution6.js delete mode 100644 tests/baselines/reference/nodeResolution6.symbols delete mode 100644 tests/baselines/reference/nodeResolution6.types delete mode 100644 tests/cases/compiler/nodeResolution6.ts diff --git a/src/compiler/moduleNameResolver.ts b/src/compiler/moduleNameResolver.ts index 4ea590977e173..6c9b903e4a468 100644 --- a/src/compiler/moduleNameResolver.ts +++ b/src/compiler/moduleNameResolver.ts @@ -32,10 +32,27 @@ namespace ts { * Kinds of file that we are currently looking for. * Typically there is one pass with Extensions.TypeScript, then a second pass with Extensions.JavaScript. */ - enum Extensions { - TypeScript, /** '.ts', '.tsx', or '.d.ts' */ - JavaScript, /** '.js' or '.jsx' */ - DtsOnly /** Only '.d.ts' */ + const enum Extensions { + /** + * '.ts', '.tsx', or '.d.ts' + * This is for regular imports of TypeScript code. + */ + TypeScript = "TypeScript", + /** + * Same as TypeScript, but look for a '.d.ts' file first. + * This is used inside node_modules (in the first phase, before we look for '.js') + */ + TypeScriptDtsFirst = "TypeScript ('.d.ts' preferred)", + /** + * '.js' or '.jsx' + * This is done only after either TypeScript or TypeScriptDtsFirst has been tried. + */ + JavaScript = "JavaScript", + /** + * Only '.d.ts' + * This is used for lookups in '@types' + */ + DtsOnly = "'.d.ts' only" } /** Used with `Extensions.DtsOnly` to extract the path from TypeScript results. */ @@ -717,7 +734,7 @@ namespace ts { if (moduleHasNonRelativeName(moduleName)) { if (traceEnabled) { - trace(host, Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1, moduleName, Extensions[extensions]); + trace(host, Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1, moduleName, extensions); } const resolved = loadModuleFromNodeModules(extensions, moduleName, containingDirectory, failedLookupLocations, state, cache); // For node_modules lookups, get the real path so that multiple accesses to an `npm link`-ed module do not create duplicate files. @@ -745,7 +762,7 @@ namespace ts { function nodeLoadModuleByRelativeName(extensions: Extensions, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState, considerPackageJson: boolean): Resolved | undefined { if (state.traceEnabled) { - trace(state.host, Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1, candidate, Extensions[extensions]); + trace(state.host, Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1, candidate, extensions); } if (!pathEndsWithDirectorySeparator(candidate)) { if (!onlyRecordFailures) { @@ -818,6 +835,8 @@ namespace ts { return tryExtension(Extension.Dts); case Extensions.TypeScript: return tryExtension(Extension.Ts) || tryExtension(Extension.Tsx) || tryExtension(Extension.Dts); + case Extensions.TypeScriptDtsFirst: + return tryExtension(Extension.Dts) || tryExtension(Extension.Ts) || tryExtension(Extension.Tsx); case Extensions.JavaScript: return tryExtension(Extension.Js) || tryExtension(Extension.Jsx); } @@ -920,22 +939,26 @@ namespace ts { return combinePaths(directory, "package.json"); } - function loadModuleFromNodeModulesFolder(extensions: Extensions, moduleName: string, nodeModulesFolder: string, nodeModulesFolderExists: boolean, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { - const candidate = normalizePath(combinePaths(nodeModulesFolder, moduleName)); + // Inside of node_modules we should be looking for '.d.ts' files before '.ts' files. + type NodeModulesExtensions = Extensions.TypeScriptDtsFirst | Extensions.JavaScript | Extensions.DtsOnly; - return loadModuleFromFile(extensions, candidate, failedLookupLocations, !nodeModulesFolderExists, state) || - loadNodeModuleFromDirectory(extensions, candidate, failedLookupLocations, !nodeModulesFolderExists, state); + function loadModuleFromNodeModulesFolder(extensions: NodeModulesExtensions, moduleName: string, nodeModulesFolder: string, nodeModulesFolderExists: boolean, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { + const packageDir = normalizePath(combinePaths(nodeModulesFolder, moduleName)); + return loadNodeModuleFromDirectory(extensions, packageDir, failedLookupLocations, !nodeModulesFolderExists, state); } function loadModuleFromNodeModules(extensions: Extensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, cache: NonRelativeModuleNameResolutionCache): SearchResult { - return loadModuleFromNodeModulesWorker(extensions, moduleName, directory, failedLookupLocations, state, /*typesOnly*/ false, cache); + // In node_modules, we will look for a '.d.ts' file first. + const ext = extensions === Extensions.TypeScript ? Extensions.TypeScriptDtsFirst : extensions; + return loadModuleFromNodeModulesWorker(ext, moduleName, directory, failedLookupLocations, state, /*typesOnly*/ false, cache); } + function loadModuleFromNodeModulesAtTypes(moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState): SearchResult { // Extensions parameter here doesn't actually matter, because typesOnly ensures we're just doing @types lookup, which is always DtsOnly. return loadModuleFromNodeModulesWorker(Extensions.DtsOnly, moduleName, directory, failedLookupLocations, state, /*typesOnly*/ true, /*cache*/ undefined); } - function loadModuleFromNodeModulesWorker(extensions: Extensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly: boolean, cache: NonRelativeModuleNameResolutionCache): SearchResult { + function loadModuleFromNodeModulesWorker(extensions: NodeModulesExtensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly: boolean, cache: NonRelativeModuleNameResolutionCache): SearchResult { const perModuleNameCache = cache && cache.getOrCreateCacheForModuleName(moduleName); return forEachAncestorDirectory(normalizeSlashes(directory), ancestorDirectory => { if (getBaseFileName(ancestorDirectory) !== "node_modules") { @@ -949,7 +972,7 @@ namespace ts { } /** Load a module from a single node_modules directory, but not from any ancestors' node_modules directories. */ - function loadModuleFromNodeModulesOneLevel(extensions: Extensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly = false): Resolved | undefined { + function loadModuleFromNodeModulesOneLevel(extensions: NodeModulesExtensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly = false): Resolved | undefined { const nodeModulesFolder = combinePaths(directory, "node_modules"); const nodeModulesFolderExists = directoryProbablyExists(nodeModulesFolder, state.host); if (!nodeModulesFolderExists && state.traceEnabled) { diff --git a/src/harness/unittests/moduleResolution.ts b/src/harness/unittests/moduleResolution.ts index 87ec4ea81494f..a6e8e70ebd823 100644 --- a/src/harness/unittests/moduleResolution.ts +++ b/src/harness/unittests/moduleResolution.ts @@ -182,36 +182,26 @@ namespace ts { function test(hasDirectoryExists: boolean) { const containingFile = { name: "/a/b/c/d/e.ts" }; - const moduleFile = { name: "/a/b/node_modules/foo.ts" }; + const moduleFile = { name: "/a/b/node_modules/foo/index.d.ts" }; const resolution = nodeModuleNameResolver("foo", containingFile.name, {}, createModuleResolutionHost(hasDirectoryExists, containingFile, moduleFile)); checkResolvedModuleWithFailedLookupLocations(resolution, createResolvedModule(moduleFile.name, /*isExternalLibraryImport*/ true), [ - "/a/b/c/d/node_modules/foo.ts", - "/a/b/c/d/node_modules/foo.tsx", - "/a/b/c/d/node_modules/foo.d.ts", "/a/b/c/d/node_modules/foo/package.json", - + "/a/b/c/d/node_modules/foo/index.d.ts", "/a/b/c/d/node_modules/foo/index.ts", "/a/b/c/d/node_modules/foo/index.tsx", - "/a/b/c/d/node_modules/foo/index.d.ts", - "/a/b/c/d/node_modules/@types/foo.d.ts", "/a/b/c/d/node_modules/@types/foo/package.json", - "/a/b/c/d/node_modules/@types/foo/index.d.ts", - "/a/b/c/node_modules/foo.ts", - "/a/b/c/node_modules/foo.tsx", - "/a/b/c/node_modules/foo.d.ts", "/a/b/c/node_modules/foo/package.json", - + "/a/b/c/node_modules/foo/index.d.ts", "/a/b/c/node_modules/foo/index.ts", "/a/b/c/node_modules/foo/index.tsx", - "/a/b/c/node_modules/foo/index.d.ts", - "/a/b/c/node_modules/@types/foo.d.ts", "/a/b/c/node_modules/@types/foo/package.json", - "/a/b/c/node_modules/@types/foo/index.d.ts", + + "/a/b/node_modules/foo/package.json", ]); } }); @@ -237,55 +227,31 @@ namespace ts { const moduleFile = { name: "/a/node_modules/foo/index.d.ts" }; const resolution = nodeModuleNameResolver("foo", containingFile.name, {}, createModuleResolutionHost(hasDirectoryExists, containingFile, moduleFile)); checkResolvedModuleWithFailedLookupLocations(resolution, createResolvedModule(moduleFile.name, /*isExternalLibraryImport*/ true), [ - "/a/node_modules/b/c/node_modules/d/node_modules/foo.ts", - "/a/node_modules/b/c/node_modules/d/node_modules/foo.tsx", - "/a/node_modules/b/c/node_modules/d/node_modules/foo.d.ts", "/a/node_modules/b/c/node_modules/d/node_modules/foo/package.json", - + "/a/node_modules/b/c/node_modules/d/node_modules/foo/index.d.ts", "/a/node_modules/b/c/node_modules/d/node_modules/foo/index.ts", "/a/node_modules/b/c/node_modules/d/node_modules/foo/index.tsx", - "/a/node_modules/b/c/node_modules/d/node_modules/foo/index.d.ts", - "/a/node_modules/b/c/node_modules/d/node_modules/@types/foo.d.ts", "/a/node_modules/b/c/node_modules/d/node_modules/@types/foo/package.json", - "/a/node_modules/b/c/node_modules/d/node_modules/@types/foo/index.d.ts", - "/a/node_modules/b/c/node_modules/foo.ts", - "/a/node_modules/b/c/node_modules/foo.tsx", - "/a/node_modules/b/c/node_modules/foo.d.ts", "/a/node_modules/b/c/node_modules/foo/package.json", - + "/a/node_modules/b/c/node_modules/foo/index.d.ts", "/a/node_modules/b/c/node_modules/foo/index.ts", "/a/node_modules/b/c/node_modules/foo/index.tsx", - "/a/node_modules/b/c/node_modules/foo/index.d.ts", - "/a/node_modules/b/c/node_modules/@types/foo.d.ts", "/a/node_modules/b/c/node_modules/@types/foo/package.json", - "/a/node_modules/b/c/node_modules/@types/foo/index.d.ts", - "/a/node_modules/b/node_modules/foo.ts", - "/a/node_modules/b/node_modules/foo.tsx", - "/a/node_modules/b/node_modules/foo.d.ts", "/a/node_modules/b/node_modules/foo/package.json", - + "/a/node_modules/b/node_modules/foo/index.d.ts", "/a/node_modules/b/node_modules/foo/index.ts", "/a/node_modules/b/node_modules/foo/index.tsx", - "/a/node_modules/b/node_modules/foo/index.d.ts", - "/a/node_modules/b/node_modules/@types/foo.d.ts", "/a/node_modules/b/node_modules/@types/foo/package.json", - "/a/node_modules/b/node_modules/@types/foo/index.d.ts", - "/a/node_modules/foo.ts", - "/a/node_modules/foo.tsx", - "/a/node_modules/foo.d.ts", "/a/node_modules/foo/package.json", - - "/a/node_modules/foo/index.ts", - "/a/node_modules/foo/index.tsx" ]); } }); @@ -574,7 +540,7 @@ import b = require("./moduleB"); const file4Typings: File = { name: "/root/generated/folder2/file4/package.json", content: JSON.stringify({ typings: "dist/types.d.ts" }) }; const file4: File = { name: "/root/generated/folder2/file4/dist/types.d.ts" }; // load file pointed by typings const file5: File = { name: "/root/someanotherfolder/file5/index.d.ts" }; // load remapped module from folder - const file6: File = { name: "/root/node_modules/file6.ts" }; // fallback to node + const file6: File = { name: "/root/node_modules/file6/index.ts" }; // fallback to node const host = createModuleResolutionHost(hasDirectoryExists, file1, file2, file3, file4, file4Typings, file5, file6); const options: CompilerOptions = { @@ -681,22 +647,19 @@ import b = require("./moduleB"); "/root/generated/file6/index.d.ts", // fallback to standard node behavior - // load from file - "/root/folder1/node_modules/file6.ts", - "/root/folder1/node_modules/file6.tsx", - "/root/folder1/node_modules/file6.d.ts", // load from folder "/root/folder1/node_modules/file6/package.json", + "/root/folder1/node_modules/file6/index.d.ts", "/root/folder1/node_modules/file6/index.ts", "/root/folder1/node_modules/file6/index.tsx", - "/root/folder1/node_modules/file6/index.d.ts", - - "/root/folder1/node_modules/@types/file6.d.ts", "/root/folder1/node_modules/@types/file6/package.json", "/root/folder1/node_modules/@types/file6/index.d.ts", - // success on /root/node_modules/file6.ts + + "/root/node_modules/file6/package.json", + "/root/node_modules/file6/index.d.ts", + // success on /root/node_modules/file6/index.ts ], /*isExternalLibraryImport*/ true); function check(name: string, expected: File, expectedFailedLookups: string[], isExternalLibraryImport = false) { @@ -977,11 +940,6 @@ import b = require("./moduleB"); } }); it("Can be resolved from secondary location", () => { - { - const f1 = { name: "/root/src/app.ts" }; - const f2 = { name: "/root/node_modules/lib.d.ts" }; - test(/*typesRoot*/"/root/src/types", /* typeDirective */"lib", /*primary*/ false, f1, f2); - } { const f1 = { name: "/root/src/app.ts" }; const f2 = { name: "/root/node_modules/lib/index.d.ts" }; diff --git a/src/harness/unittests/reuseProgramStructure.ts b/src/harness/unittests/reuseProgramStructure.ts index 2eb3d1f08902e..6b208e4faec51 100644 --- a/src/harness/unittests/reuseProgramStructure.ts +++ b/src/harness/unittests/reuseProgramStructure.ts @@ -408,19 +408,13 @@ namespace ts { "======== Resolving module 'a' from 'file1.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'a' from 'node_modules' folder, target file type 'TypeScript'.", - "File 'node_modules/a.ts' does not exist.", - "File 'node_modules/a.tsx' does not exist.", - "File 'node_modules/a.d.ts' does not exist.", "File 'node_modules/a/package.json' does not exist.", + "File 'node_modules/a/index.d.ts' does not exist.", "File 'node_modules/a/index.ts' does not exist.", "File 'node_modules/a/index.tsx' does not exist.", - "File 'node_modules/a/index.d.ts' does not exist.", - "File 'node_modules/@types/a.d.ts' does not exist.", "File 'node_modules/@types/a/package.json' does not exist.", "File 'node_modules/@types/a/index.d.ts' does not exist.", "Loading module 'a' from 'node_modules' folder, target file type 'JavaScript'.", - "File 'node_modules/a.js' does not exist.", - "File 'node_modules/a.jsx' does not exist.", "File 'node_modules/a/package.json' does not exist.", "File 'node_modules/a/index.js' does not exist.", "File 'node_modules/a/index.jsx' does not exist.", @@ -441,12 +435,7 @@ namespace ts { "======== Resolving module 'a' from 'file1.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'a' from 'node_modules' folder, target file type 'TypeScript'.", - "File 'node_modules/a.ts' does not exist.", - "File 'node_modules/a.tsx' does not exist.", - "File 'node_modules/a.d.ts' does not exist.", "File 'node_modules/a/package.json' does not exist.", - "File 'node_modules/a/index.ts' does not exist.", - "File 'node_modules/a/index.tsx' does not exist.", "File 'node_modules/a/index.d.ts' exist - use it as a name resolution result.", "======== Module name 'a' was successfully resolved to 'node_modules/a/index.d.ts'. ========" ], @@ -477,13 +466,10 @@ namespace ts { "File '/fs.ts' does not exist.", "File '/fs.tsx' does not exist.", "File '/fs.d.ts' does not exist.", - "File '/a/b/node_modules/@types/fs.d.ts' does not exist.", "File '/a/b/node_modules/@types/fs/package.json' does not exist.", "File '/a/b/node_modules/@types/fs/index.d.ts' does not exist.", - "File '/a/node_modules/@types/fs.d.ts' does not exist.", "File '/a/node_modules/@types/fs/package.json' does not exist.", "File '/a/node_modules/@types/fs/index.d.ts' does not exist.", - "File '/node_modules/@types/fs.d.ts' does not exist.", "File '/node_modules/@types/fs/package.json' does not exist.", "File '/node_modules/@types/fs/index.d.ts' does not exist.", "File '/a/b/fs.js' does not exist.", @@ -519,13 +505,10 @@ namespace ts { "File '/fs.ts' does not exist.", "File '/fs.tsx' does not exist.", "File '/fs.d.ts' does not exist.", - "File '/a/b/node_modules/@types/fs.d.ts' does not exist.", "File '/a/b/node_modules/@types/fs/package.json' does not exist.", "File '/a/b/node_modules/@types/fs/index.d.ts' does not exist.", - "File '/a/node_modules/@types/fs.d.ts' does not exist.", "File '/a/node_modules/@types/fs/package.json' does not exist.", "File '/a/node_modules/@types/fs/index.d.ts' does not exist.", - "File '/node_modules/@types/fs.d.ts' does not exist.", "File '/node_modules/@types/fs/package.json' does not exist.", "File '/node_modules/@types/fs/index.d.ts' does not exist.", "File '/a/b/fs.js' does not exist.", diff --git a/src/harness/unittests/tsserverProjectSystem.ts b/src/harness/unittests/tsserverProjectSystem.ts index d0ef78ad39dc9..71f7d792bd560 100644 --- a/src/harness/unittests/tsserverProjectSystem.ts +++ b/src/harness/unittests/tsserverProjectSystem.ts @@ -967,7 +967,7 @@ namespace ts.projectSystem { content: `import { T } from "module1";` }; const nodeModuleFile: FileOrFolder = { - path: "/a/b/node_modules/module1.ts", + path: "/a/b/node_modules/module1/index.ts", content: `export interface T {}` }; const classicModuleFile: FileOrFolder = { @@ -2414,8 +2414,6 @@ namespace ts.projectSystem { "Directory '/node_modules' does not exist, skipping all lookups in it.", "======== Module name 'lib' was not resolved. ========", `Auto discovery for typings is enabled in project '${proj.getProjectName()}'. Running extra resolution pass for module 'lib' using cache location '/a/cache'.`, - "File '/a/cache/node_modules/lib.d.ts' does not exist.", - "File '/a/cache/node_modules/@types/lib.d.ts' does not exist.", "File '/a/cache/node_modules/@types/lib/package.json' does not exist.", "File '/a/cache/node_modules/@types/lib/index.d.ts' exist - use it as a name resolution result.", ]); diff --git a/tests/baselines/reference/cachedModuleResolution1.js b/tests/baselines/reference/cachedModuleResolution1.js index cd83308f922cf..1d828ca0333f1 100644 --- a/tests/baselines/reference/cachedModuleResolution1.js +++ b/tests/baselines/reference/cachedModuleResolution1.js @@ -1,6 +1,6 @@ //// [tests/cases/compiler/cachedModuleResolution1.ts] //// -//// [foo.d.ts] +//// [index.d.ts] export declare let x: number //// [app.ts] diff --git a/tests/baselines/reference/cachedModuleResolution1.symbols b/tests/baselines/reference/cachedModuleResolution1.symbols index 87685f4f14739..84a503569c05c 100644 --- a/tests/baselines/reference/cachedModuleResolution1.symbols +++ b/tests/baselines/reference/cachedModuleResolution1.symbols @@ -1,6 +1,6 @@ -=== /a/b/node_modules/foo.d.ts === +=== /a/b/node_modules/foo/index.d.ts === export declare let x: number ->x : Symbol(x, Decl(foo.d.ts, 0, 18)) +>x : Symbol(x, Decl(index.d.ts, 0, 18)) === /a/b/c/d/e/app.ts === import {x} from "foo"; diff --git a/tests/baselines/reference/cachedModuleResolution1.trace.json b/tests/baselines/reference/cachedModuleResolution1.trace.json index c9f40c567969b..9822b64f9d82e 100644 --- a/tests/baselines/reference/cachedModuleResolution1.trace.json +++ b/tests/baselines/reference/cachedModuleResolution1.trace.json @@ -5,15 +5,14 @@ "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", - "File '/a/b/node_modules/foo.ts' does not exist.", - "File '/a/b/node_modules/foo.tsx' does not exist.", - "File '/a/b/node_modules/foo.d.ts' exist - use it as a name resolution result.", - "Resolving real path for '/a/b/node_modules/foo.d.ts', result '/a/b/node_modules/foo.d.ts'.", - "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo.d.ts'. ========", + "File '/a/b/node_modules/foo/package.json' does not exist.", + "File '/a/b/node_modules/foo/index.d.ts' exist - use it as a name resolution result.", + "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", + "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========", "======== Resolving module 'foo' from '/a/b/c/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", "Resolution for module 'foo' was found in cache.", - "Resolving real path for '/a/b/node_modules/foo.d.ts', result '/a/b/node_modules/foo.d.ts'.", - "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo.d.ts'. ========" + "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", + "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/cachedModuleResolution1.types b/tests/baselines/reference/cachedModuleResolution1.types index ccc9e1311c83b..fd769552cb7f0 100644 --- a/tests/baselines/reference/cachedModuleResolution1.types +++ b/tests/baselines/reference/cachedModuleResolution1.types @@ -1,4 +1,4 @@ -=== /a/b/node_modules/foo.d.ts === +=== /a/b/node_modules/foo/index.d.ts === export declare let x: number >x : number diff --git a/tests/baselines/reference/cachedModuleResolution2.js b/tests/baselines/reference/cachedModuleResolution2.js index 8ecb42a32ae04..5ac124e02f807 100644 --- a/tests/baselines/reference/cachedModuleResolution2.js +++ b/tests/baselines/reference/cachedModuleResolution2.js @@ -1,6 +1,6 @@ //// [tests/cases/compiler/cachedModuleResolution2.ts] //// -//// [foo.d.ts] +//// [index.d.ts] export declare let x: number //// [lib.ts] diff --git a/tests/baselines/reference/cachedModuleResolution2.symbols b/tests/baselines/reference/cachedModuleResolution2.symbols index b9080b03cbfa2..3d39e8f2c2072 100644 --- a/tests/baselines/reference/cachedModuleResolution2.symbols +++ b/tests/baselines/reference/cachedModuleResolution2.symbols @@ -1,6 +1,6 @@ -=== /a/b/node_modules/foo.d.ts === +=== /a/b/node_modules/foo/index.d.ts === export declare let x: number ->x : Symbol(x, Decl(foo.d.ts, 0, 18)) +>x : Symbol(x, Decl(index.d.ts, 0, 18)) === /a/b/c/lib.ts === import {x} from "foo"; diff --git a/tests/baselines/reference/cachedModuleResolution2.trace.json b/tests/baselines/reference/cachedModuleResolution2.trace.json index a7fc2414f037f..3bfc0c425439b 100644 --- a/tests/baselines/reference/cachedModuleResolution2.trace.json +++ b/tests/baselines/reference/cachedModuleResolution2.trace.json @@ -3,17 +3,16 @@ "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", - "File '/a/b/node_modules/foo.ts' does not exist.", - "File '/a/b/node_modules/foo.tsx' does not exist.", - "File '/a/b/node_modules/foo.d.ts' exist - use it as a name resolution result.", - "Resolving real path for '/a/b/node_modules/foo.d.ts', result '/a/b/node_modules/foo.d.ts'.", - "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo.d.ts'. ========", + "File '/a/b/node_modules/foo/package.json' does not exist.", + "File '/a/b/node_modules/foo/index.d.ts' exist - use it as a name resolution result.", + "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", + "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========", "======== Resolving module 'foo' from '/a/b/c/d/e/app.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Resolution for module 'foo' was found in cache.", - "Resolving real path for '/a/b/node_modules/foo.d.ts', result '/a/b/node_modules/foo.d.ts'.", - "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo.d.ts'. ========" + "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", + "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/cachedModuleResolution2.types b/tests/baselines/reference/cachedModuleResolution2.types index 4c34d48b3a9ed..86183073314b0 100644 --- a/tests/baselines/reference/cachedModuleResolution2.types +++ b/tests/baselines/reference/cachedModuleResolution2.types @@ -1,4 +1,4 @@ -=== /a/b/node_modules/foo.d.ts === +=== /a/b/node_modules/foo/index.d.ts === export declare let x: number >x : number diff --git a/tests/baselines/reference/cachedModuleResolution5.js b/tests/baselines/reference/cachedModuleResolution5.js index 4fe641e917e61..90e0fcca97b17 100644 --- a/tests/baselines/reference/cachedModuleResolution5.js +++ b/tests/baselines/reference/cachedModuleResolution5.js @@ -1,6 +1,6 @@ //// [tests/cases/compiler/cachedModuleResolution5.ts] //// -//// [foo.d.ts] +//// [index.d.ts] export declare let x: number //// [app.ts] diff --git a/tests/baselines/reference/cachedModuleResolution5.symbols b/tests/baselines/reference/cachedModuleResolution5.symbols index 6c18677efcfed..ae77a3c9a0b05 100644 --- a/tests/baselines/reference/cachedModuleResolution5.symbols +++ b/tests/baselines/reference/cachedModuleResolution5.symbols @@ -1,6 +1,6 @@ -=== /a/b/node_modules/foo.d.ts === +=== /a/b/node_modules/foo/index.d.ts === export declare let x: number ->x : Symbol(x, Decl(foo.d.ts, 0, 18)) +>x : Symbol(x, Decl(index.d.ts, 0, 18)) === /a/b/c/d/e/app.ts === import {x} from "foo"; diff --git a/tests/baselines/reference/cachedModuleResolution5.trace.json b/tests/baselines/reference/cachedModuleResolution5.trace.json index b09cc7a35be7b..6df4a99506b04 100644 --- a/tests/baselines/reference/cachedModuleResolution5.trace.json +++ b/tests/baselines/reference/cachedModuleResolution5.trace.json @@ -5,15 +5,14 @@ "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", - "File '/a/b/node_modules/foo.ts' does not exist.", - "File '/a/b/node_modules/foo.tsx' does not exist.", - "File '/a/b/node_modules/foo.d.ts' exist - use it as a name resolution result.", - "Resolving real path for '/a/b/node_modules/foo.d.ts', result '/a/b/node_modules/foo.d.ts'.", - "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo.d.ts'. ========", + "File '/a/b/node_modules/foo/package.json' does not exist.", + "File '/a/b/node_modules/foo/index.d.ts' exist - use it as a name resolution result.", + "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", + "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========", "======== Resolving module 'foo' from '/a/b/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", "Resolution for module 'foo' was found in cache.", - "Resolving real path for '/a/b/node_modules/foo.d.ts', result '/a/b/node_modules/foo.d.ts'.", - "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo.d.ts'. ========" + "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", + "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/cachedModuleResolution5.types b/tests/baselines/reference/cachedModuleResolution5.types index e827caaf9228d..bbb74ad4247aa 100644 --- a/tests/baselines/reference/cachedModuleResolution5.types +++ b/tests/baselines/reference/cachedModuleResolution5.types @@ -1,4 +1,4 @@ -=== /a/b/node_modules/foo.d.ts === +=== /a/b/node_modules/foo/index.d.ts === export declare let x: number >x : number diff --git a/tests/baselines/reference/library-reference-11.trace.json b/tests/baselines/reference/library-reference-11.trace.json index 053dc497065b8..595764dff6602 100644 --- a/tests/baselines/reference/library-reference-11.trace.json +++ b/tests/baselines/reference/library-reference-11.trace.json @@ -3,7 +3,6 @@ "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/a/b'.", "Directory '/a/b/node_modules' does not exist, skipping all lookups in it.", - "File '/a/node_modules/jquery.d.ts' does not exist.", "Found 'package.json' at '/a/node_modules/jquery/package.json'.", "'package.json' has 'typings' field 'jquery.d.ts' that references '/a/node_modules/jquery/jquery.d.ts'.", "File '/a/node_modules/jquery/jquery.d.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/library-reference-12.trace.json b/tests/baselines/reference/library-reference-12.trace.json index d990709cac82c..fd859e6148e41 100644 --- a/tests/baselines/reference/library-reference-12.trace.json +++ b/tests/baselines/reference/library-reference-12.trace.json @@ -3,7 +3,6 @@ "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/a/b'.", "Directory '/a/b/node_modules' does not exist, skipping all lookups in it.", - "File '/a/node_modules/jquery.d.ts' does not exist.", "Found 'package.json' at '/a/node_modules/jquery/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'dist/jquery.d.ts' that references '/a/node_modules/jquery/dist/jquery.d.ts'.", diff --git a/tests/baselines/reference/library-reference-3.trace.json b/tests/baselines/reference/library-reference-3.trace.json index 22747738c1027..255d900b4de7a 100644 --- a/tests/baselines/reference/library-reference-3.trace.json +++ b/tests/baselines/reference/library-reference-3.trace.json @@ -2,7 +2,6 @@ "======== Resolving type reference directive 'jquery', containing file '/src/consumer.ts', root directory not set. ========", "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/src'.", - "File '/src/node_modules/jquery.d.ts' does not exist.", "File '/src/node_modules/jquery/package.json' does not exist.", "File '/src/node_modules/jquery/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/src/node_modules/jquery/index.d.ts', result '/src/node_modules/jquery/index.d.ts'.", diff --git a/tests/baselines/reference/library-reference-4.trace.json b/tests/baselines/reference/library-reference-4.trace.json index 03fdfa0e863aa..63d2a878ee63e 100644 --- a/tests/baselines/reference/library-reference-4.trace.json +++ b/tests/baselines/reference/library-reference-4.trace.json @@ -3,7 +3,6 @@ "Resolving with primary search path '/src'.", "Looking up in 'node_modules' folder, initial location '/src'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", - "File '/node_modules/foo.d.ts' does not exist.", "File '/node_modules/foo/package.json' does not exist.", "File '/node_modules/foo/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/foo/index.d.ts', result '/node_modules/foo/index.d.ts'.", @@ -12,7 +11,6 @@ "Resolving with primary search path '/src'.", "Looking up in 'node_modules' folder, initial location '/src'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", - "File '/node_modules/bar.d.ts' does not exist.", "File '/node_modules/bar/package.json' does not exist.", "File '/node_modules/bar/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/bar/index.d.ts', result '/node_modules/bar/index.d.ts'.", @@ -20,7 +18,6 @@ "======== Resolving type reference directive 'alpha', containing file '/node_modules/foo/index.d.ts', root directory '/src'. ========", "Resolving with primary search path '/src'.", "Looking up in 'node_modules' folder, initial location '/node_modules/foo'.", - "File '/node_modules/foo/node_modules/alpha.d.ts' does not exist.", "File '/node_modules/foo/node_modules/alpha/package.json' does not exist.", "File '/node_modules/foo/node_modules/alpha/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/foo/node_modules/alpha/index.d.ts', result '/node_modules/foo/node_modules/alpha/index.d.ts'.", @@ -28,7 +25,6 @@ "======== Resolving type reference directive 'alpha', containing file '/node_modules/bar/index.d.ts', root directory '/src'. ========", "Resolving with primary search path '/src'.", "Looking up in 'node_modules' folder, initial location '/node_modules/bar'.", - "File '/node_modules/bar/node_modules/alpha.d.ts' does not exist.", "File '/node_modules/bar/node_modules/alpha/package.json' does not exist.", "File '/node_modules/bar/node_modules/alpha/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/bar/node_modules/alpha/index.d.ts', result '/node_modules/bar/node_modules/alpha/index.d.ts'.", diff --git a/tests/baselines/reference/library-reference-5.trace.json b/tests/baselines/reference/library-reference-5.trace.json index cb14078670aab..870b06c532485 100644 --- a/tests/baselines/reference/library-reference-5.trace.json +++ b/tests/baselines/reference/library-reference-5.trace.json @@ -4,7 +4,6 @@ "Directory 'types' does not exist, skipping all lookups in it.", "Looking up in 'node_modules' folder, initial location '/src'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", - "File '/node_modules/foo.d.ts' does not exist.", "File '/node_modules/foo/package.json' does not exist.", "File '/node_modules/foo/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/foo/index.d.ts', result '/node_modules/foo/index.d.ts'.", @@ -14,7 +13,6 @@ "Directory 'types' does not exist, skipping all lookups in it.", "Looking up in 'node_modules' folder, initial location '/src'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", - "File '/node_modules/bar.d.ts' does not exist.", "File '/node_modules/bar/package.json' does not exist.", "File '/node_modules/bar/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/bar/index.d.ts', result '/node_modules/bar/index.d.ts'.", @@ -23,7 +21,6 @@ "Resolving with primary search path 'types'.", "Directory 'types' does not exist, skipping all lookups in it.", "Looking up in 'node_modules' folder, initial location '/node_modules/foo'.", - "File '/node_modules/foo/node_modules/alpha.d.ts' does not exist.", "File '/node_modules/foo/node_modules/alpha/package.json' does not exist.", "File '/node_modules/foo/node_modules/alpha/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/foo/node_modules/alpha/index.d.ts', result '/node_modules/foo/node_modules/alpha/index.d.ts'.", @@ -32,7 +29,6 @@ "Resolving with primary search path 'types'.", "Directory 'types' does not exist, skipping all lookups in it.", "Looking up in 'node_modules' folder, initial location '/node_modules/bar'.", - "File '/node_modules/bar/node_modules/alpha.d.ts' does not exist.", "File '/node_modules/bar/node_modules/alpha/package.json' does not exist.", "File '/node_modules/bar/node_modules/alpha/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/bar/node_modules/alpha/index.d.ts', result '/node_modules/bar/node_modules/alpha/index.d.ts'.", diff --git a/tests/baselines/reference/library-reference-7.trace.json b/tests/baselines/reference/library-reference-7.trace.json index 22747738c1027..255d900b4de7a 100644 --- a/tests/baselines/reference/library-reference-7.trace.json +++ b/tests/baselines/reference/library-reference-7.trace.json @@ -2,7 +2,6 @@ "======== Resolving type reference directive 'jquery', containing file '/src/consumer.ts', root directory not set. ========", "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/src'.", - "File '/src/node_modules/jquery.d.ts' does not exist.", "File '/src/node_modules/jquery/package.json' does not exist.", "File '/src/node_modules/jquery/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/src/node_modules/jquery/index.d.ts', result '/src/node_modules/jquery/index.d.ts'.", diff --git a/tests/baselines/reference/library-reference-scoped-packages.trace.json b/tests/baselines/reference/library-reference-scoped-packages.trace.json index 54dcf95fe505e..4cdfbb98a182b 100644 --- a/tests/baselines/reference/library-reference-scoped-packages.trace.json +++ b/tests/baselines/reference/library-reference-scoped-packages.trace.json @@ -4,7 +4,6 @@ "Directory 'types/@beep' does not exist, skipping all lookups in it.", "Looking up in 'node_modules' folder, initial location '/'.", "Scoped package detected, looking in 'beep__boop'", - "File '/node_modules/@types/beep__boop.d.ts' does not exist.", "File '/node_modules/@types/beep__boop/package.json' does not exist.", "File '/node_modules/@types/beep__boop/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/beep__boop/index.d.ts', result '/node_modules/@types/beep__boop/index.d.ts'.", diff --git a/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json b/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json index 46f03d1e8c487..db979e16381fa 100644 --- a/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json +++ b/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json @@ -2,17 +2,12 @@ "======== Resolving module 'shortid' from '/index.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "Loading module 'shortid' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/shortid.ts' does not exist.", - "File '/node_modules/shortid.tsx' does not exist.", - "File '/node_modules/shortid.d.ts' does not exist.", "File '/node_modules/shortid/package.json' does not exist.", + "File '/node_modules/shortid/index.d.ts' does not exist.", "File '/node_modules/shortid/index.ts' does not exist.", "File '/node_modules/shortid/index.tsx' does not exist.", - "File '/node_modules/shortid/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'shortid' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/shortid.js' does not exist.", - "File '/node_modules/shortid.jsx' does not exist.", "File '/node_modules/shortid/package.json' does not exist.", "File '/node_modules/shortid/index.js' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/shortid/index.js', result '/node_modules/shortid/index.js'.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json index 8c820e07e4811..18495e246bc84 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json @@ -2,19 +2,14 @@ "======== Resolving module 'normalize.css' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'normalize.css' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/normalize.css.ts' does not exist.", - "File '/node_modules/normalize.css.tsx' does not exist.", - "File '/node_modules/normalize.css.d.ts' does not exist.", "Found 'package.json' at '/node_modules/normalize.css/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", + "File '/node_modules/normalize.css/index.d.ts' does not exist.", "File '/node_modules/normalize.css/index.ts' does not exist.", "File '/node_modules/normalize.css/index.tsx' does not exist.", - "File '/node_modules/normalize.css/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'normalize.css' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/normalize.css.js' does not exist.", - "File '/node_modules/normalize.css.jsx' does not exist.", "Found 'package.json' at '/node_modules/normalize.css/package.json'.", "'package.json' has 'main' field 'normalize.css' that references '/node_modules/normalize.css/normalize.css'.", "File '/node_modules/normalize.css/normalize.css' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json index 3632a5c2242ab..8080f95318a20 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json @@ -2,30 +2,25 @@ "======== Resolving module 'foo' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/foo.ts' does not exist.", - "File '/node_modules/foo.tsx' does not exist.", - "File '/node_modules/foo.d.ts' does not exist.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'foo.js' that references '/node_modules/foo/foo.js'.", "File '/node_modules/foo/foo.js' exist - use it as a name resolution result.", "File '/node_modules/foo/foo.js' has an unsupported extension, so skipping it.", - "Loading module as file / folder, candidate module location '/node_modules/foo/foo.js', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/foo/foo.js', target file type 'TypeScript ('.d.ts' preferred)'.", + "File '/node_modules/foo/foo.js.d.ts' does not exist.", "File '/node_modules/foo/foo.js.ts' does not exist.", "File '/node_modules/foo/foo.js.tsx' does not exist.", - "File '/node_modules/foo/foo.js.d.ts' does not exist.", "File name '/node_modules/foo/foo.js' has a '.js' extension - stripping it.", + "File '/node_modules/foo/foo.d.ts' does not exist.", "File '/node_modules/foo/foo.ts' does not exist.", "File '/node_modules/foo/foo.tsx' does not exist.", - "File '/node_modules/foo/foo.d.ts' does not exist.", "Directory '/node_modules/foo/foo.js' does not exist, skipping all lookups in it.", + "File '/node_modules/foo/index.d.ts' does not exist.", "File '/node_modules/foo/index.ts' does not exist.", "File '/node_modules/foo/index.tsx' does not exist.", - "File '/node_modules/foo/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'foo' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/foo.js' does not exist.", - "File '/node_modules/foo.jsx' does not exist.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'main' field.", "File '/node_modules/foo/index.js' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json index 6cfdb8b567e49..2337ee21c13eb 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json @@ -2,17 +2,12 @@ "======== Resolving module 'js' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'js' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/js.ts' does not exist.", - "File '/node_modules/js.tsx' does not exist.", - "File '/node_modules/js.d.ts' does not exist.", "File '/node_modules/js/package.json' does not exist.", + "File '/node_modules/js/index.d.ts' does not exist.", "File '/node_modules/js/index.ts' does not exist.", "File '/node_modules/js/index.tsx' does not exist.", - "File '/node_modules/js/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'js' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/js.js' does not exist.", - "File '/node_modules/js.jsx' does not exist.", "File '/node_modules/js/package.json' does not exist.", "File '/node_modules/js/index.js' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/js/index.js', result '/node_modules/js/index.js'.", diff --git a/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json b/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json index 2dd339536808b..b9a1af26185d2 100644 --- a/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json @@ -20,10 +20,8 @@ "======== Resolving module 'library-a' from '/src/library-b/index.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'library-a' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/src/library-b/node_modules/library-a.ts' does not exist.", - "File '/src/library-b/node_modules/library-a.tsx' does not exist.", - "File '/src/library-b/node_modules/library-a.d.ts' does not exist.", "File '/src/library-b/node_modules/library-a/package.json' does not exist.", + "File '/src/library-b/node_modules/library-a/index.d.ts' does not exist.", "File '/src/library-b/node_modules/library-a/index.ts' exist - use it as a name resolution result.", "Resolving real path for '/src/library-b/node_modules/library-a/index.ts', result '/src/library-a/index.ts'.", "======== Module name 'library-a' was successfully resolved to '/src/library-a/index.ts'. ========" diff --git a/tests/baselines/reference/moduleResolutionWithSymlinks_referenceTypes.trace.json b/tests/baselines/reference/moduleResolutionWithSymlinks_referenceTypes.trace.json index 65d89ed7458ea..adf03c3890507 100644 --- a/tests/baselines/reference/moduleResolutionWithSymlinks_referenceTypes.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSymlinks_referenceTypes.trace.json @@ -2,8 +2,6 @@ "======== Resolving type reference directive 'library-a', containing file '/app.ts', root directory ''. ========", "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/'.", - "File '/node_modules/library-a.d.ts' does not exist.", - "File '/node_modules/@types/library-a.d.ts' does not exist.", "File '/node_modules/@types/library-a/package.json' does not exist.", "File '/node_modules/@types/library-a/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/library-a/index.d.ts', result '/node_modules/@types/library-a/index.d.ts'.", @@ -11,8 +9,6 @@ "======== Resolving type reference directive 'library-b', containing file '/app.ts', root directory ''. ========", "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/'.", - "File '/node_modules/library-b.d.ts' does not exist.", - "File '/node_modules/@types/library-b.d.ts' does not exist.", "File '/node_modules/@types/library-b/package.json' does not exist.", "File '/node_modules/@types/library-b/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/library-b/index.d.ts', result '/node_modules/@types/library-b/index.d.ts'.", @@ -20,8 +16,6 @@ "======== Resolving type reference directive 'library-a', containing file '/node_modules/@types/library-b/index.d.ts', root directory ''. ========", "Root directory cannot be determined, skipping primary search paths.", "Looking up in 'node_modules' folder, initial location '/node_modules/@types/library-b'.", - "File '/node_modules/@types/library-b/node_modules/library-a.d.ts' does not exist.", - "File '/node_modules/@types/library-b/node_modules/@types/library-a.d.ts' does not exist.", "File '/node_modules/@types/library-b/node_modules/@types/library-a/package.json' does not exist.", "File '/node_modules/@types/library-b/node_modules/@types/library-a/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/library-b/node_modules/@types/library-a/index.d.ts', result '/node_modules/@types/library-a/index.d.ts'.", diff --git a/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json b/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json index 2dd339536808b..b9a1af26185d2 100644 --- a/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json @@ -20,10 +20,8 @@ "======== Resolving module 'library-a' from '/src/library-b/index.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'library-a' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/src/library-b/node_modules/library-a.ts' does not exist.", - "File '/src/library-b/node_modules/library-a.tsx' does not exist.", - "File '/src/library-b/node_modules/library-a.d.ts' does not exist.", "File '/src/library-b/node_modules/library-a/package.json' does not exist.", + "File '/src/library-b/node_modules/library-a/index.d.ts' does not exist.", "File '/src/library-b/node_modules/library-a/index.ts' exist - use it as a name resolution result.", "Resolving real path for '/src/library-b/node_modules/library-a/index.ts', result '/src/library-a/index.ts'.", "======== Module name 'library-a' was successfully resolved to '/src/library-a/index.ts'. ========" diff --git a/tests/baselines/reference/nodeResolution2.js b/tests/baselines/reference/nodeResolution2.js index 0d66b012ca76a..9f08e4d294a48 100644 --- a/tests/baselines/reference/nodeResolution2.js +++ b/tests/baselines/reference/nodeResolution2.js @@ -1,6 +1,6 @@ //// [tests/cases/compiler/nodeResolution2.ts] //// -//// [a.d.ts] +//// [index.d.ts] export var x: number; //// [b.ts] diff --git a/tests/baselines/reference/nodeResolution2.symbols b/tests/baselines/reference/nodeResolution2.symbols index ead8db27d7e79..6c4bd9b6fb18b 100644 --- a/tests/baselines/reference/nodeResolution2.symbols +++ b/tests/baselines/reference/nodeResolution2.symbols @@ -2,7 +2,7 @@ import y = require("a"); >y : Symbol(y, Decl(b.ts, 0, 0)) -=== tests/cases/compiler/node_modules/a.d.ts === +=== tests/cases/compiler/node_modules/a/index.d.ts === export var x: number; ->x : Symbol(x, Decl(a.d.ts, 0, 10)) +>x : Symbol(x, Decl(index.d.ts, 0, 10)) diff --git a/tests/baselines/reference/nodeResolution2.types b/tests/baselines/reference/nodeResolution2.types index 3f4e97f7cfc54..4ea52116a8ff2 100644 --- a/tests/baselines/reference/nodeResolution2.types +++ b/tests/baselines/reference/nodeResolution2.types @@ -2,7 +2,7 @@ import y = require("a"); >y : typeof y -=== tests/cases/compiler/node_modules/a.d.ts === +=== tests/cases/compiler/node_modules/a/index.d.ts === export var x: number; >x : number diff --git a/tests/baselines/reference/nodeResolution5.js b/tests/baselines/reference/nodeResolution5.js index 3dfedea4aab02..4091bebf35a5e 100644 --- a/tests/baselines/reference/nodeResolution5.js +++ b/tests/baselines/reference/nodeResolution5.js @@ -1,12 +1,12 @@ //// [tests/cases/compiler/nodeResolution5.ts] //// -//// [a.d.ts] +//// [index.d.ts] declare module "a" { var x: number; } //// [b.ts] -import y = require("a"); +import y = require("a"); //// [b.js] diff --git a/tests/baselines/reference/nodeResolution5.symbols b/tests/baselines/reference/nodeResolution5.symbols index 5871ad57a4e26..66c053db0b43f 100644 --- a/tests/baselines/reference/nodeResolution5.symbols +++ b/tests/baselines/reference/nodeResolution5.symbols @@ -1,10 +1,10 @@ === tests/cases/compiler/b.ts === -import y = require("a"); +import y = require("a"); >y : Symbol(y, Decl(b.ts, 0, 0)) -=== tests/cases/compiler/node_modules/a.d.ts === +=== tests/cases/compiler/node_modules/a/index.d.ts === declare module "a" { var x: number; ->x : Symbol(x, Decl(a.d.ts, 1, 7)) +>x : Symbol(x, Decl(index.d.ts, 1, 7)) } diff --git a/tests/baselines/reference/nodeResolution5.types b/tests/baselines/reference/nodeResolution5.types index 4c2872f7b5dbf..3a2828edf088b 100644 --- a/tests/baselines/reference/nodeResolution5.types +++ b/tests/baselines/reference/nodeResolution5.types @@ -1,8 +1,8 @@ === tests/cases/compiler/b.ts === -import y = require("a"); +import y = require("a"); >y : typeof y -=== tests/cases/compiler/node_modules/a.d.ts === +=== tests/cases/compiler/node_modules/a/index.d.ts === declare module "a" { var x: number; >x : number diff --git a/tests/baselines/reference/nodeResolution6.js b/tests/baselines/reference/nodeResolution6.js deleted file mode 100644 index 0610c53edcf4c..0000000000000 --- a/tests/baselines/reference/nodeResolution6.js +++ /dev/null @@ -1,17 +0,0 @@ -//// [tests/cases/compiler/nodeResolution6.ts] //// - -//// [ref.ts] -var x = 1; - -//// [a.d.ts] -/// -export declare var y; - - -//// [b.ts] -import y = require("a"); - - -//// [b.js] -"use strict"; -exports.__esModule = true; diff --git a/tests/baselines/reference/nodeResolution6.symbols b/tests/baselines/reference/nodeResolution6.symbols deleted file mode 100644 index 24864d15a7966..0000000000000 --- a/tests/baselines/reference/nodeResolution6.symbols +++ /dev/null @@ -1,14 +0,0 @@ -=== tests/cases/compiler/b.ts === -import y = require("a"); ->y : Symbol(y, Decl(b.ts, 0, 0)) - -=== tests/cases/compiler/node_modules/ref.ts === -var x = 1; ->x : Symbol(x, Decl(ref.ts, 0, 3)) - -=== tests/cases/compiler/node_modules/a.d.ts === -/// -export declare var y; ->y : Symbol(y, Decl(a.d.ts, 1, 18)) - - diff --git a/tests/baselines/reference/nodeResolution6.types b/tests/baselines/reference/nodeResolution6.types deleted file mode 100644 index 1c08f9c9113c3..0000000000000 --- a/tests/baselines/reference/nodeResolution6.types +++ /dev/null @@ -1,15 +0,0 @@ -=== tests/cases/compiler/b.ts === -import y = require("a"); ->y : typeof y - -=== tests/cases/compiler/node_modules/ref.ts === -var x = 1; ->x : number ->1 : 1 - -=== tests/cases/compiler/node_modules/a.d.ts === -/// -export declare var y; ->y : any - - diff --git a/tests/baselines/reference/packageJsonMain.trace.json b/tests/baselines/reference/packageJsonMain.trace.json index 08daccbe4797c..22fbbb70f92f8 100644 --- a/tests/baselines/reference/packageJsonMain.trace.json +++ b/tests/baselines/reference/packageJsonMain.trace.json @@ -2,19 +2,14 @@ "======== Resolving module 'foo' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/foo.ts' does not exist.", - "File '/node_modules/foo.tsx' does not exist.", - "File '/node_modules/foo.d.ts' does not exist.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", + "File '/node_modules/foo/index.d.ts' does not exist.", "File '/node_modules/foo/index.ts' does not exist.", "File '/node_modules/foo/index.tsx' does not exist.", - "File '/node_modules/foo/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'foo' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/foo.js' does not exist.", - "File '/node_modules/foo.jsx' does not exist.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' has 'main' field 'oof' that references '/node_modules/foo/oof'.", "File '/node_modules/foo/oof' does not exist.", @@ -25,19 +20,14 @@ "======== Resolving module 'bar' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'bar' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/bar.ts' does not exist.", - "File '/node_modules/bar.tsx' does not exist.", - "File '/node_modules/bar.d.ts' does not exist.", "Found 'package.json' at '/node_modules/bar/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", + "File '/node_modules/bar/index.d.ts' does not exist.", "File '/node_modules/bar/index.ts' does not exist.", "File '/node_modules/bar/index.tsx' does not exist.", - "File '/node_modules/bar/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'bar' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/bar.js' does not exist.", - "File '/node_modules/bar.jsx' does not exist.", "Found 'package.json' at '/node_modules/bar/package.json'.", "'package.json' has 'main' field 'rab.js' that references '/node_modules/bar/rab.js'.", "File '/node_modules/bar/rab.js' exist - use it as a name resolution result.", @@ -46,19 +36,14 @@ "======== Resolving module 'baz' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'baz' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/baz.ts' does not exist.", - "File '/node_modules/baz.tsx' does not exist.", - "File '/node_modules/baz.d.ts' does not exist.", "Found 'package.json' at '/node_modules/baz/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", + "File '/node_modules/baz/index.d.ts' does not exist.", "File '/node_modules/baz/index.ts' does not exist.", "File '/node_modules/baz/index.tsx' does not exist.", - "File '/node_modules/baz/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'baz' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/baz.js' does not exist.", - "File '/node_modules/baz.jsx' does not exist.", "Found 'package.json' at '/node_modules/baz/package.json'.", "'package.json' has 'main' field 'zab' that references '/node_modules/baz/zab'.", "File '/node_modules/baz/zab' does not exist.", diff --git a/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json b/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json index 53e1ad256052e..1fdc2f01c7d13 100644 --- a/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json +++ b/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json @@ -2,19 +2,14 @@ "======== Resolving module 'foo' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/foo.ts' does not exist.", - "File '/node_modules/foo.tsx' does not exist.", - "File '/node_modules/foo.d.ts' does not exist.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", + "File '/node_modules/foo/index.d.ts' does not exist.", "File '/node_modules/foo/index.ts' does not exist.", "File '/node_modules/foo/index.tsx' does not exist.", - "File '/node_modules/foo/index.d.ts' does not exist.", "Directory '/node_modules/@types' does not exist, skipping all lookups in it.", "Loading module 'foo' from 'node_modules' folder, target file type 'JavaScript'.", - "File '/node_modules/foo.js' does not exist.", - "File '/node_modules/foo.jsx' does not exist.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' has 'main' field 'oof' that references '/node_modules/foo/oof'.", "File '/node_modules/foo/oof' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json index 6ac06e1dda172..da2cde64aa19d 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json @@ -23,12 +23,7 @@ "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript'.", "Directory 'c:/root/folder2/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", - "File 'c:/node_modules/file4.ts' does not exist.", - "File 'c:/node_modules/file4.tsx' does not exist.", - "File 'c:/node_modules/file4.d.ts' does not exist.", "File 'c:/node_modules/file4/package.json' does not exist.", - "File 'c:/node_modules/file4/index.ts' does not exist.", - "File 'c:/node_modules/file4/index.tsx' does not exist.", "File 'c:/node_modules/file4/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for 'c:/node_modules/file4/index.d.ts', result 'c:/node_modules/file4/index.d.ts'.", "======== Module name 'file4' was successfully resolved to 'c:/node_modules/file4/index.d.ts'. ========" diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json index 6ac06e1dda172..da2cde64aa19d 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json @@ -23,12 +23,7 @@ "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript'.", "Directory 'c:/root/folder2/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", - "File 'c:/node_modules/file4.ts' does not exist.", - "File 'c:/node_modules/file4.tsx' does not exist.", - "File 'c:/node_modules/file4.d.ts' does not exist.", "File 'c:/node_modules/file4/package.json' does not exist.", - "File 'c:/node_modules/file4/index.ts' does not exist.", - "File 'c:/node_modules/file4/index.tsx' does not exist.", "File 'c:/node_modules/file4/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for 'c:/node_modules/file4/index.d.ts', result 'c:/node_modules/file4/index.d.ts'.", "======== Module name 'file4' was successfully resolved to 'c:/node_modules/file4/index.d.ts'. ========" diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.js b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.js index 7d10c4d4a8bb5..a5ffda7ff72bf 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.js +++ b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.js @@ -22,7 +22,7 @@ export var y = 1; //// [index.d.ts] export var z: number; -//// [file4.ts] +//// [index.ts] export var z1 = 1; //// [file1.js] @@ -33,7 +33,7 @@ exports.x = 1; "use strict"; exports.__esModule = true; exports.y = 1; -//// [file4.js] +//// [index.js] "use strict"; exports.__esModule = true; exports.z1 = 1; diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.symbols b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.symbols index 67bf14607dd10..87dae0a73189d 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.symbols +++ b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.symbols @@ -51,7 +51,7 @@ export var y = 1; export var z: number; >z : Symbol(z, Decl(index.d.ts, 0, 10)) -=== c:/node_modules/file4.ts === +=== c:/node_modules/file4/index.ts === export var z1 = 1; ->z1 : Symbol(z1, Decl(file4.ts, 0, 10)) +>z1 : Symbol(z1, Decl(index.ts, 0, 10)) diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json index 3b6710408fc0f..25515fb882f94 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json @@ -54,7 +54,9 @@ "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript'.", "Directory 'c:/root/folder1/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", - "File 'c:/node_modules/file4.ts' exist - use it as a name resolution result.", - "Resolving real path for 'c:/node_modules/file4.ts', result 'c:/node_modules/file4.ts'.", - "======== Module name 'file4' was successfully resolved to 'c:/node_modules/file4.ts'. ========" + "File 'c:/node_modules/file4/package.json' does not exist.", + "File 'c:/node_modules/file4/index.d.ts' does not exist.", + "File 'c:/node_modules/file4/index.ts' exist - use it as a name resolution result.", + "Resolving real path for 'c:/node_modules/file4/index.ts', result 'c:/node_modules/file4/index.ts'.", + "======== Module name 'file4' was successfully resolved to 'c:/node_modules/file4/index.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.types b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.types index 2cdc99dcd8cab..b05f1154565a1 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.types +++ b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.types @@ -61,7 +61,7 @@ export var y = 1; export var z: number; >z : number -=== c:/node_modules/file4.ts === +=== c:/node_modules/file4/index.ts === export var z1 = 1; >z1 : number >1 : 1 diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.js b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.js index 303b98f4d83de..b727e8ff9d05c 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.js +++ b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.js @@ -23,7 +23,7 @@ export let b: number; //// [index.d.ts] export let x: number; -//// [module3.d.ts] +//// [index.d.ts] export let y: number; diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.symbols b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.symbols index 9cda76790ea01..d22cc731c2bf1 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.symbols +++ b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.symbols @@ -50,8 +50,8 @@ export let b: number; export let x: number; >x : Symbol(x, Decl(index.d.ts, 0, 10)) -=== c:/node_modules/module3.d.ts === +=== c:/node_modules/module3/index.d.ts === export let y: number; ->y : Symbol(y, Decl(module3.d.ts, 0, 10)) +>y : Symbol(y, Decl(index.d.ts, 0, 10)) diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json index 50e4a6fabeb4e..b7cb5a4ad6118 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json @@ -33,11 +33,10 @@ "Loading module 'module3' from 'node_modules' folder, target file type 'TypeScript'.", "Directory 'c:/root/src/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", - "File 'c:/node_modules/module3.ts' does not exist.", - "File 'c:/node_modules/module3.tsx' does not exist.", - "File 'c:/node_modules/module3.d.ts' exist - use it as a name resolution result.", - "Resolving real path for 'c:/node_modules/module3.d.ts', result 'c:/node_modules/module3.d.ts'.", - "======== Module name 'module3' was successfully resolved to 'c:/node_modules/module3.d.ts'. ========", + "File 'c:/node_modules/module3/package.json' does not exist.", + "File 'c:/node_modules/module3/index.d.ts' exist - use it as a name resolution result.", + "Resolving real path for 'c:/node_modules/module3/index.d.ts', result 'c:/node_modules/module3/index.d.ts'.", + "======== Module name 'module3' was successfully resolved to 'c:/node_modules/module3/index.d.ts'. ========", "======== Resolving module 'module1' from 'c:/root/generated/src/project/file2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "'baseUrl' option is set to 'c:/root/', using this value to resolve non-relative module name 'module1'.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.types b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.types index 974f710b4c280..041aacc40501d 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.types +++ b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.types @@ -56,7 +56,7 @@ export let b: number; export let x: number; >x : number -=== c:/node_modules/module3.d.ts === +=== c:/node_modules/module3/index.d.ts === export let y: number; >y : number diff --git a/tests/baselines/reference/scopedPackages.js b/tests/baselines/reference/scopedPackages.js index 75606d2e1b9e7..3e02dc1bdf360 100644 --- a/tests/baselines/reference/scopedPackages.js +++ b/tests/baselines/reference/scopedPackages.js @@ -6,7 +6,7 @@ export const x: number; //// [index.d.ts] export const y: number; -//// [z.d.ts] +//// [index.d.ts] export const z: number; //// [a.ts] diff --git a/tests/baselines/reference/scopedPackages.symbols b/tests/baselines/reference/scopedPackages.symbols index e992c4d93757f..f8b774385b915 100644 --- a/tests/baselines/reference/scopedPackages.symbols +++ b/tests/baselines/reference/scopedPackages.symbols @@ -16,7 +16,7 @@ export const x: number; export const y: number; >y : Symbol(y, Decl(index.d.ts, 0, 12)) -=== /node_modules/@types/be__bop/e/z.d.ts === +=== /node_modules/@types/be__bop/e/z/index.d.ts === export const z: number; ->z : Symbol(z, Decl(z.d.ts, 0, 12)) +>z : Symbol(z, Decl(index.d.ts, 0, 12)) diff --git a/tests/baselines/reference/scopedPackages.trace.json b/tests/baselines/reference/scopedPackages.trace.json index 20df3bec1729a..c7e6520b74a41 100644 --- a/tests/baselines/reference/scopedPackages.trace.json +++ b/tests/baselines/reference/scopedPackages.trace.json @@ -2,12 +2,7 @@ "======== Resolving module '@cow/boy' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module '@cow/boy' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/@cow/boy.ts' does not exist.", - "File '/node_modules/@cow/boy.tsx' does not exist.", - "File '/node_modules/@cow/boy.d.ts' does not exist.", "File '/node_modules/@cow/boy/package.json' does not exist.", - "File '/node_modules/@cow/boy/index.ts' does not exist.", - "File '/node_modules/@cow/boy/index.tsx' does not exist.", "File '/node_modules/@cow/boy/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@cow/boy/index.d.ts', result '/node_modules/@cow/boy/index.d.ts'.", "======== Module name '@cow/boy' was successfully resolved to '/node_modules/@cow/boy/index.d.ts'. ========", @@ -15,7 +10,6 @@ "Module resolution kind is not specified, using 'NodeJs'.", "Loading module '@be/bop' from 'node_modules' folder, target file type 'TypeScript'.", "Scoped package detected, looking in 'be__bop'", - "File '/node_modules/@types/be__bop.d.ts' does not exist.", "File '/node_modules/@types/be__bop/package.json' does not exist.", "File '/node_modules/@types/be__bop/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/be__bop/index.d.ts', result '/node_modules/@types/be__bop/index.d.ts'.", @@ -24,7 +18,8 @@ "Module resolution kind is not specified, using 'NodeJs'.", "Loading module '@be/bop/e/z' from 'node_modules' folder, target file type 'TypeScript'.", "Scoped package detected, looking in 'be__bop/e/z'", - "File '/node_modules/@types/be__bop/e/z.d.ts' exist - use it as a name resolution result.", - "Resolving real path for '/node_modules/@types/be__bop/e/z.d.ts', result '/node_modules/@types/be__bop/e/z.d.ts'.", - "======== Module name '@be/bop/e/z' was successfully resolved to '/node_modules/@types/be__bop/e/z.d.ts'. ========" + "File '/node_modules/@types/be__bop/e/z/package.json' does not exist.", + "File '/node_modules/@types/be__bop/e/z/index.d.ts' exist - use it as a name resolution result.", + "Resolving real path for '/node_modules/@types/be__bop/e/z/index.d.ts', result '/node_modules/@types/be__bop/e/z/index.d.ts'.", + "======== Module name '@be/bop/e/z' was successfully resolved to '/node_modules/@types/be__bop/e/z/index.d.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/scopedPackages.types b/tests/baselines/reference/scopedPackages.types index c876590f54a16..10946c8470ed9 100644 --- a/tests/baselines/reference/scopedPackages.types +++ b/tests/baselines/reference/scopedPackages.types @@ -16,7 +16,7 @@ export const x: number; export const y: number; >y : number -=== /node_modules/@types/be__bop/e/z.d.ts === +=== /node_modules/@types/be__bop/e/z/index.d.ts === export const z: number; >z : number diff --git a/tests/baselines/reference/scopedPackagesClassic.trace.json b/tests/baselines/reference/scopedPackagesClassic.trace.json index c58c7d2ed106e..c59533490bfab 100644 --- a/tests/baselines/reference/scopedPackagesClassic.trace.json +++ b/tests/baselines/reference/scopedPackagesClassic.trace.json @@ -2,7 +2,6 @@ "======== Resolving module '@see/saw' from '/a.ts'. ========", "Explicitly specified module resolution kind: 'Classic'.", "Scoped package detected, looking in 'see__saw'", - "File '/node_modules/@types/see__saw.d.ts' does not exist.", "File '/node_modules/@types/see__saw/package.json' does not exist.", "File '/node_modules/@types/see__saw/index.d.ts' exist - use it as a name resolution result.", "======== Module name '@see/saw' was successfully resolved to '/node_modules/@types/see__saw/index.d.ts'. ========" diff --git a/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json b/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json index fdcbcdb7ab1d0..c8553fb15bb6a 100644 --- a/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json +++ b/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json @@ -3,58 +3,22 @@ "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'xyz' from 'node_modules' folder, target file type 'TypeScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", - "File '/foo/node_modules/xyz.ts' does not exist.", - "File '/foo/node_modules/xyz.tsx' does not exist.", - "File '/foo/node_modules/xyz.d.ts' does not exist.", - "File '/foo/node_modules/@types/xyz.d.ts' does not exist.", - "File '/node_modules/xyz.ts' does not exist.", - "File '/node_modules/xyz.tsx' does not exist.", - "File '/node_modules/xyz.d.ts' does not exist.", - "File '/node_modules/@types/xyz.d.ts' does not exist.", "Loading module 'xyz' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", - "File '/foo/node_modules/xyz.js' does not exist.", - "File '/foo/node_modules/xyz.jsx' does not exist.", - "File '/node_modules/xyz.js' does not exist.", - "File '/node_modules/xyz.jsx' does not exist.", "======== Module name 'xyz' was not resolved. ========", "======== Resolving module 'pdq' from '/foo/bar/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'pdq' from 'node_modules' folder, target file type 'TypeScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", - "File '/foo/node_modules/pdq.ts' does not exist.", - "File '/foo/node_modules/pdq.tsx' does not exist.", - "File '/foo/node_modules/pdq.d.ts' does not exist.", - "File '/foo/node_modules/@types/pdq.d.ts' does not exist.", - "File '/node_modules/pdq.ts' does not exist.", - "File '/node_modules/pdq.tsx' does not exist.", - "File '/node_modules/pdq.d.ts' does not exist.", - "File '/node_modules/@types/pdq.d.ts' does not exist.", "Loading module 'pdq' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", - "File '/foo/node_modules/pdq.js' does not exist.", - "File '/foo/node_modules/pdq.jsx' does not exist.", - "File '/node_modules/pdq.js' does not exist.", - "File '/node_modules/pdq.jsx' does not exist.", "======== Module name 'pdq' was not resolved. ========", "======== Resolving module 'abc' from '/foo/bar/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'abc' from 'node_modules' folder, target file type 'TypeScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", - "File '/foo/node_modules/abc.ts' does not exist.", - "File '/foo/node_modules/abc.tsx' does not exist.", - "File '/foo/node_modules/abc.d.ts' does not exist.", - "File '/foo/node_modules/@types/abc.d.ts' does not exist.", - "File '/node_modules/abc.ts' does not exist.", - "File '/node_modules/abc.tsx' does not exist.", - "File '/node_modules/abc.d.ts' does not exist.", - "File '/node_modules/@types/abc.d.ts' does not exist.", "Loading module 'abc' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", - "File '/foo/node_modules/abc.js' does not exist.", - "File '/foo/node_modules/abc.jsx' does not exist.", - "File '/node_modules/abc.js' does not exist.", - "File '/node_modules/abc.jsx' does not exist.", "======== Module name 'abc' was not resolved. ========", "======== Resolving type reference directive 'grumpy', containing file '/foo/bar/__inferred type names__.ts', root directory '/foo/node_modules/@types,/node_modules/@types'. ========", "Resolving with primary search path '/foo/node_modules/@types, /node_modules/@types'.", diff --git a/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json b/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json index a15e20239c65a..57e1674bd83d0 100644 --- a/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json +++ b/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json @@ -3,14 +3,8 @@ "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'xyz' from 'node_modules' folder, target file type 'TypeScript'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", - "File '/node_modules/xyz.ts' does not exist.", - "File '/node_modules/xyz.tsx' does not exist.", - "File '/node_modules/xyz.d.ts' does not exist.", - "File '/node_modules/@types/xyz.d.ts' does not exist.", "Loading module 'xyz' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", - "File '/node_modules/xyz.js' does not exist.", - "File '/node_modules/xyz.jsx' does not exist.", "======== Module name 'xyz' was not resolved. ========", "======== Resolving type reference directive 'foo', containing file '/src/__inferred type names__.ts', root directory '/node_modules/@types'. ========", "Resolving with primary search path '/node_modules/@types'.", diff --git a/tests/baselines/reference/typingsLookup4.trace.json b/tests/baselines/reference/typingsLookup4.trace.json index d2087308d8e7f..26240f4cb8dcb 100644 --- a/tests/baselines/reference/typingsLookup4.trace.json +++ b/tests/baselines/reference/typingsLookup4.trace.json @@ -2,10 +2,6 @@ "======== Resolving module 'jquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'jquery' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/jquery.ts' does not exist.", - "File '/node_modules/jquery.tsx' does not exist.", - "File '/node_modules/jquery.d.ts' does not exist.", - "File '/node_modules/@types/jquery.d.ts' does not exist.", "Found 'package.json' at '/node_modules/@types/jquery/package.json'.", "'package.json' has 'typings' field 'jquery.d.ts' that references '/node_modules/@types/jquery/jquery.d.ts'.", "File '/node_modules/@types/jquery/jquery.d.ts' exist - use it as a name resolution result.", @@ -14,10 +10,6 @@ "======== Resolving module 'kquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'kquery' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/kquery.ts' does not exist.", - "File '/node_modules/kquery.tsx' does not exist.", - "File '/node_modules/kquery.d.ts' does not exist.", - "File '/node_modules/@types/kquery.d.ts' does not exist.", "Found 'package.json' at '/node_modules/@types/kquery/package.json'.", "'package.json' has 'typings' field 'kquery' that references '/node_modules/@types/kquery/kquery'.", "File '/node_modules/@types/kquery/kquery' does not exist.", @@ -30,10 +22,6 @@ "======== Resolving module 'lquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'lquery' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/lquery.ts' does not exist.", - "File '/node_modules/lquery.tsx' does not exist.", - "File '/node_modules/lquery.d.ts' does not exist.", - "File '/node_modules/@types/lquery.d.ts' does not exist.", "Found 'package.json' at '/node_modules/@types/lquery/package.json'.", "'package.json' has 'typings' field 'lquery' that references '/node_modules/@types/lquery/lquery'.", "File '/node_modules/@types/lquery/lquery' does not exist.", @@ -44,10 +32,6 @@ "======== Resolving module 'mquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", "Loading module 'mquery' from 'node_modules' folder, target file type 'TypeScript'.", - "File '/node_modules/mquery.ts' does not exist.", - "File '/node_modules/mquery.tsx' does not exist.", - "File '/node_modules/mquery.d.ts' does not exist.", - "File '/node_modules/@types/mquery.d.ts' does not exist.", "Found 'package.json' at '/node_modules/@types/mquery/package.json'.", "'package.json' has 'typings' field 'mquery' that references '/node_modules/@types/mquery/mquery'.", "File '/node_modules/@types/mquery/mquery' does not exist.", diff --git a/tests/baselines/reference/typingsLookupAmd.trace.json b/tests/baselines/reference/typingsLookupAmd.trace.json index ca64cf8fdf428..93288cdea7391 100644 --- a/tests/baselines/reference/typingsLookupAmd.trace.json +++ b/tests/baselines/reference/typingsLookupAmd.trace.json @@ -11,7 +11,6 @@ "File '/b.tsx' does not exist.", "File '/b.d.ts' does not exist.", "Directory '/x/y/node_modules' does not exist, skipping all lookups in it.", - "File '/x/node_modules/@types/b.d.ts' does not exist.", "File '/x/node_modules/@types/b/package.json' does not exist.", "File '/x/node_modules/@types/b/index.d.ts' exist - use it as a name resolution result.", "======== Module name 'b' was successfully resolved to '/x/node_modules/@types/b/index.d.ts'. ========", @@ -34,8 +33,6 @@ "File '/a.d.ts' does not exist.", "Directory '/x/node_modules/@types/b/node_modules' does not exist, skipping all lookups in it.", "Directory '/x/node_modules/@types/node_modules' does not exist, skipping all lookups in it.", - "File '/x/node_modules/@types/a.d.ts' does not exist.", - "File '/node_modules/@types/a.d.ts' does not exist.", "File '/node_modules/@types/a/package.json' does not exist.", "File '/node_modules/@types/a/index.d.ts' exist - use it as a name resolution result.", "======== Module name 'a' was successfully resolved to '/node_modules/@types/a/index.d.ts'. ========", diff --git a/tests/cases/compiler/cachedModuleResolution1.ts b/tests/cases/compiler/cachedModuleResolution1.ts index 3ef09ea0ea512..4a4383cfc30fe 100644 --- a/tests/cases/compiler/cachedModuleResolution1.ts +++ b/tests/cases/compiler/cachedModuleResolution1.ts @@ -1,7 +1,7 @@ // @moduleResolution: node // @traceResolution: true -// @filename: /a/b/node_modules/foo.d.ts +// @filename: /a/b/node_modules/foo/index.d.ts export declare let x: number // @filename: /a/b/c/d/e/app.ts diff --git a/tests/cases/compiler/cachedModuleResolution2.ts b/tests/cases/compiler/cachedModuleResolution2.ts index 38aaf4e609df3..22546b58b9936 100644 --- a/tests/cases/compiler/cachedModuleResolution2.ts +++ b/tests/cases/compiler/cachedModuleResolution2.ts @@ -1,7 +1,7 @@ // @moduleResolution: node // @traceResolution: true -// @filename: /a/b/node_modules/foo.d.ts +// @filename: /a/b/node_modules/foo/index.d.ts export declare let x: number // @filename: /a/b/c/lib.ts diff --git a/tests/cases/compiler/cachedModuleResolution5.ts b/tests/cases/compiler/cachedModuleResolution5.ts index e37b14fc1a0b7..b6c29cd3f47b3 100644 --- a/tests/cases/compiler/cachedModuleResolution5.ts +++ b/tests/cases/compiler/cachedModuleResolution5.ts @@ -1,7 +1,7 @@ // @moduleResolution: node // @traceResolution: true -// @filename: /a/b/node_modules/foo.d.ts +// @filename: /a/b/node_modules/foo/index.d.ts export declare let x: number // @filename: /a/b/c/d/e/app.ts diff --git a/tests/cases/compiler/nodeResolution2.ts b/tests/cases/compiler/nodeResolution2.ts index 9d1972c72390e..4aeda649a471b 100644 --- a/tests/cases/compiler/nodeResolution2.ts +++ b/tests/cases/compiler/nodeResolution2.ts @@ -1,7 +1,7 @@ // @module: commonjs // @moduleResolution: node -// @filename: node_modules/a.d.ts +// @filename: node_modules/a/index.d.ts export var x: number; // @filename: b.ts diff --git a/tests/cases/compiler/nodeResolution5.ts b/tests/cases/compiler/nodeResolution5.ts index 313dabd7899ff..637ae7567e969 100644 --- a/tests/cases/compiler/nodeResolution5.ts +++ b/tests/cases/compiler/nodeResolution5.ts @@ -1,10 +1,10 @@ // @module: commonjs // @moduleResolution: node -// @filename: node_modules/a.d.ts +// @filename: node_modules/a/index.d.ts declare module "a" { var x: number; } // @filename: b.ts -import y = require("a"); +import y = require("a"); diff --git a/tests/cases/compiler/nodeResolution6.ts b/tests/cases/compiler/nodeResolution6.ts deleted file mode 100644 index 3f6dc81c84780..0000000000000 --- a/tests/cases/compiler/nodeResolution6.ts +++ /dev/null @@ -1,13 +0,0 @@ -// @module: commonjs -// @moduleResolution: node - -// @filename: node_modules/ref.ts -var x = 1; - -// @filename: node_modules/a.d.ts -/// -export declare var y; - - -// @filename: b.ts -import y = require("a"); diff --git a/tests/cases/compiler/pathMappingBasedModuleResolution5_node.ts b/tests/cases/compiler/pathMappingBasedModuleResolution5_node.ts index 3606ab08cd10c..014edc0ea11f8 100644 --- a/tests/cases/compiler/pathMappingBasedModuleResolution5_node.ts +++ b/tests/cases/compiler/pathMappingBasedModuleResolution5_node.ts @@ -39,5 +39,5 @@ export var y = 1; // @filename: c:/root/shared/components/file3/index.d.ts export var z: number; -// @filename: c:/node_modules/file4.ts +// @filename: c:/node_modules/file4/index.ts export var z1 = 1; \ No newline at end of file diff --git a/tests/cases/compiler/pathMappingBasedModuleResolution7_node.ts b/tests/cases/compiler/pathMappingBasedModuleResolution7_node.ts index 1ba9630e0cfab..35e65a076d4f2 100644 --- a/tests/cases/compiler/pathMappingBasedModuleResolution7_node.ts +++ b/tests/cases/compiler/pathMappingBasedModuleResolution7_node.ts @@ -44,6 +44,6 @@ export let b: number; // @filename: c:/root/src/file3/index.d.ts export let x: number; -// @filename: c:/node_modules/module3.d.ts +// @filename: c:/node_modules/module3/index.d.ts export let y: number; diff --git a/tests/cases/conformance/moduleResolution/scopedPackages.ts b/tests/cases/conformance/moduleResolution/scopedPackages.ts index b604f10d7ec11..d5907a7968b60 100644 --- a/tests/cases/conformance/moduleResolution/scopedPackages.ts +++ b/tests/cases/conformance/moduleResolution/scopedPackages.ts @@ -8,7 +8,7 @@ export const x: number; // @filename: /node_modules/@types/be__bop/index.d.ts export const y: number; -// @filename: /node_modules/@types/be__bop/e/z.d.ts +// @filename: /node_modules/@types/be__bop/e/z/index.d.ts export const z: number; // @filename: /a.ts From 80bbeea32d4201a8a1e6a7167fb4ce1b10b89ee6 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Fri, 23 Jun 2017 09:09:56 -0700 Subject: [PATCH 2/3] Rename Extensions -> ExtensionsToTry --- src/compiler/moduleNameResolver.ts | 140 ++++++++++++++--------------- 1 file changed, 69 insertions(+), 71 deletions(-) diff --git a/src/compiler/moduleNameResolver.ts b/src/compiler/moduleNameResolver.ts index 6c9b903e4a468..3aa93c4de54cc 100644 --- a/src/compiler/moduleNameResolver.ts +++ b/src/compiler/moduleNameResolver.ts @@ -30,14 +30,14 @@ namespace ts { /** * Kinds of file that we are currently looking for. - * Typically there is one pass with Extensions.TypeScript, then a second pass with Extensions.JavaScript. + * Typically there is one pass with ExtensionsToTry.TypeScript, then a second pass with ExtensionsToTry.JavaScript. */ - const enum Extensions { + const enum ExtensionsToTry { /** * '.ts', '.tsx', or '.d.ts' * This is for regular imports of TypeScript code. */ - TypeScript = "TypeScript", + TypeScript = "TypeScript ('.ts' preferred)", /** * Same as TypeScript, but look for a '.d.ts' file first. * This is used inside node_modules (in the first phase, before we look for '.js') @@ -54,8 +54,10 @@ namespace ts { */ DtsOnly = "'.d.ts' only" } + // Inside `node_modules`, we should look for '.d.ts' files before '.ts' files. + type NodeModulesExtensionsToTry = ExtensionsToTry.TypeScriptDtsFirst | ExtensionsToTry.JavaScript | ExtensionsToTry.DtsOnly; - /** Used with `Extensions.DtsOnly` to extract the path from TypeScript results. */ + /** Used with `ExtensionsToTry.DtsOnly` to extract the path from TypeScript results. */ function resolvedTypeScriptOnly(resolved: Resolved | undefined): string | undefined { if (!resolved) { return undefined; @@ -228,7 +230,7 @@ namespace ts { trace(host, Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it, candidateDirectory); } return resolvedTypeScriptOnly( - loadNodeModuleFromDirectory(Extensions.DtsOnly, candidate, failedLookupLocations, + loadNodeModuleFromDirectory(ExtensionsToTry.DtsOnly, candidate, failedLookupLocations, !directoryExists, moduleResolutionState)); }); } @@ -248,7 +250,7 @@ namespace ts { if (traceEnabled) { trace(host, Diagnostics.Looking_up_in_node_modules_folder_initial_location_0, initialLocationForSecondaryLookup); } - const result = loadModuleFromNodeModules(Extensions.DtsOnly, typeReferenceDirectiveName, initialLocationForSecondaryLookup, failedLookupLocations, moduleResolutionState, /*cache*/ undefined); + const result = loadModuleFromNodeModules(ExtensionsToTry.DtsOnly, typeReferenceDirectiveName, initialLocationForSecondaryLookup, failedLookupLocations, moduleResolutionState, /*cache*/ undefined); resolvedFile = resolvedTypeScriptOnly(result && result.value); if (!resolvedFile && traceEnabled) { trace(host, Diagnostics.Type_reference_directive_0_was_not_resolved, typeReferenceDirectiveName); @@ -491,7 +493,7 @@ namespace ts { * 'typings' entry or file 'index' with some supported extension * - Classic loader will only try to interpret '/a/b/c' as file. */ - type ResolutionKindSpecificLoader = (extensions: Extensions, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState) => Resolved | undefined; + type ResolutionKindSpecificLoader = (extensionsToTry: ExtensionsToTry, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState) => Resolved | undefined; /** * Any module resolution kind can be augmented with optional settings: 'baseUrl', 'paths' and 'rootDirs' - they are used to @@ -553,18 +555,18 @@ namespace ts { * be converted to a path relative to found rootDir entry './content/protocols/file2' (*). As a last step compiler will check all remaining * entries in 'rootDirs', use them to build absolute path out of (*) and try to resolve module from this location. */ - function tryLoadModuleUsingOptionalResolutionSettings(extensions: Extensions, moduleName: string, containingDirectory: string, loader: ResolutionKindSpecificLoader, + function tryLoadModuleUsingOptionalResolutionSettings(extensionsToTry: ExtensionsToTry, moduleName: string, containingDirectory: string, loader: ResolutionKindSpecificLoader, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { if (moduleHasNonRelativeName(moduleName)) { - return tryLoadModuleUsingBaseUrl(extensions, moduleName, loader, failedLookupLocations, state); + return tryLoadModuleUsingBaseUrl(extensionsToTry, moduleName, loader, failedLookupLocations, state); } else { - return tryLoadModuleUsingRootDirs(extensions, moduleName, containingDirectory, loader, failedLookupLocations, state); + return tryLoadModuleUsingRootDirs(extensionsToTry, moduleName, containingDirectory, loader, failedLookupLocations, state); } } - function tryLoadModuleUsingRootDirs(extensions: Extensions, moduleName: string, containingDirectory: string, loader: ResolutionKindSpecificLoader, + function tryLoadModuleUsingRootDirs(extensionsToTry: ExtensionsToTry, moduleName: string, containingDirectory: string, loader: ResolutionKindSpecificLoader, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { if (!state.compilerOptions.rootDirs) { @@ -610,7 +612,7 @@ namespace ts { if (state.traceEnabled) { trace(state.host, Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2, suffix, matchedNormalizedPrefix, candidate); } - const resolvedFileName = loader(extensions, candidate, failedLookupLocations, !directoryProbablyExists(containingDirectory, state.host), state); + const resolvedFileName = loader(extensionsToTry, candidate, failedLookupLocations, !directoryProbablyExists(containingDirectory, state.host), state); if (resolvedFileName) { return resolvedFileName; } @@ -629,7 +631,7 @@ namespace ts { trace(state.host, Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2, suffix, rootDir, candidate); } const baseDirectory = getDirectoryPath(candidate); - const resolvedFileName = loader(extensions, candidate, failedLookupLocations, !directoryProbablyExists(baseDirectory, state.host), state); + const resolvedFileName = loader(extensionsToTry, candidate, failedLookupLocations, !directoryProbablyExists(baseDirectory, state.host), state); if (resolvedFileName) { return resolvedFileName; } @@ -641,7 +643,7 @@ namespace ts { return undefined; } - function tryLoadModuleUsingBaseUrl(extensions: Extensions, moduleName: string, loader: ResolutionKindSpecificLoader, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { + function tryLoadModuleUsingBaseUrl(extensionsToTry: ExtensionsToTry, moduleName: string, loader: ResolutionKindSpecificLoader, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { if (!state.compilerOptions.baseUrl) { return undefined; } @@ -679,7 +681,7 @@ namespace ts { } } - return loader(extensions, candidate, failedLookupLocations, !directoryProbablyExists(getDirectoryPath(candidate), state.host), state); + return loader(extensionsToTry, candidate, failedLookupLocations, !directoryProbablyExists(getDirectoryPath(candidate), state.host), state); }); } else { @@ -689,7 +691,7 @@ namespace ts { trace(state.host, Diagnostics.Resolving_module_name_0_relative_to_base_url_1_2, moduleName, state.compilerOptions.baseUrl, candidate); } - return loader(extensions, candidate, failedLookupLocations, !directoryProbablyExists(getDirectoryPath(candidate), state.host), state); + return loader(extensionsToTry, candidate, failedLookupLocations, !directoryProbablyExists(getDirectoryPath(candidate), state.host), state); } } @@ -718,31 +720,31 @@ namespace ts { const failedLookupLocations: string[] = []; const state: ModuleResolutionState = { compilerOptions, host, traceEnabled }; - const result = jsOnly ? tryResolve(Extensions.JavaScript) : (tryResolve(Extensions.TypeScript) || tryResolve(Extensions.JavaScript)); + const result = jsOnly ? tryResolve(ExtensionsToTry.JavaScript) : (tryResolve(ExtensionsToTry.TypeScript) || tryResolve(ExtensionsToTry.JavaScript)); if (result && result.value) { const { resolved, isExternalLibraryImport } = result.value; return createResolvedModuleWithFailedLookupLocations(resolved, isExternalLibraryImport, failedLookupLocations); } return { resolvedModule: undefined, failedLookupLocations }; - function tryResolve(extensions: Extensions): SearchResult<{ resolved: Resolved, isExternalLibraryImport: boolean }> { + function tryResolve(extensionsToTry: ExtensionsToTry): SearchResult<{ resolved: Resolved, isExternalLibraryImport: boolean }> { const loader: ResolutionKindSpecificLoader = (extensions, candidate, failedLookupLocations, onlyRecordFailures, state) => nodeLoadModuleByRelativeName(extensions, candidate, failedLookupLocations, onlyRecordFailures, state, /*considerPackageJson*/ true); - const resolved = tryLoadModuleUsingOptionalResolutionSettings(extensions, moduleName, containingDirectory, loader, failedLookupLocations, state); + const resolved = tryLoadModuleUsingOptionalResolutionSettings(extensionsToTry, moduleName, containingDirectory, loader, failedLookupLocations, state); if (resolved) { return toSearchResult({ resolved, isExternalLibraryImport: false }); } if (moduleHasNonRelativeName(moduleName)) { if (traceEnabled) { - trace(host, Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1, moduleName, extensions); + trace(host, Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1, moduleName, extensionsToTry); } - const resolved = loadModuleFromNodeModules(extensions, moduleName, containingDirectory, failedLookupLocations, state, cache); + const resolved = loadModuleFromNodeModules(extensionsToTry, moduleName, containingDirectory, failedLookupLocations, state, cache); // For node_modules lookups, get the real path so that multiple accesses to an `npm link`-ed module do not create duplicate files. return resolved && { value: resolved.value && { resolved: { path: realpath(resolved.value.path, host, traceEnabled), extension: resolved.value.extension }, isExternalLibraryImport: true } }; } else { const candidate = normalizePath(combinePaths(containingDirectory, moduleName)); - const resolved = nodeLoadModuleByRelativeName(extensions, candidate, failedLookupLocations, /*onlyRecordFailures*/ false, state, /*considerPackageJson*/ true); + const resolved = nodeLoadModuleByRelativeName(extensionsToTry, candidate, failedLookupLocations, /*onlyRecordFailures*/ false, state, /*considerPackageJson*/ true); return resolved && toSearchResult({ resolved, isExternalLibraryImport: false }); } } @@ -760,9 +762,9 @@ namespace ts { return real; } - function nodeLoadModuleByRelativeName(extensions: Extensions, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState, considerPackageJson: boolean): Resolved | undefined { + function nodeLoadModuleByRelativeName(extensionsToTry: ExtensionsToTry, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState, considerPackageJson: boolean): Resolved | undefined { if (state.traceEnabled) { - trace(state.host, Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1, candidate, extensions); + trace(state.host, Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1, candidate, extensionsToTry); } if (!pathEndsWithDirectorySeparator(candidate)) { if (!onlyRecordFailures) { @@ -774,7 +776,7 @@ namespace ts { onlyRecordFailures = true; } } - const resolvedFromFile = loadModuleFromFile(extensions, candidate, failedLookupLocations, onlyRecordFailures, state); + const resolvedFromFile = loadModuleFromFile(extensionsToTry, candidate, failedLookupLocations, onlyRecordFailures, state); if (resolvedFromFile) { return resolvedFromFile; } @@ -788,7 +790,7 @@ namespace ts { onlyRecordFailures = true; } } - return loadNodeModuleFromDirectory(extensions, candidate, failedLookupLocations, onlyRecordFailures, state, considerPackageJson); + return loadNodeModuleFromDirectory(extensionsToTry, candidate, failedLookupLocations, onlyRecordFailures, state, considerPackageJson); } /* @internal */ @@ -801,9 +803,9 @@ namespace ts { * @param {boolean} onlyRecordFailures - if true then function won't try to actually load files but instead record all attempts as failures. This flag is necessary * in cases when we know upfront that all load attempts will fail (because containing folder does not exists) however we still need to record all failed lookup locations. */ - function loadModuleFromFile(extensions: Extensions, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState): Resolved | undefined { + function loadModuleFromFile(extensionsToTry: ExtensionsToTry, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState): Resolved | undefined { // First, try adding an extension. An import of "foo" could be matched by a file "foo.ts", or "foo.js" by "foo.js.ts" - const resolvedByAddingExtension = tryAddingExtensions(candidate, extensions, failedLookupLocations, onlyRecordFailures, state); + const resolvedByAddingExtension = tryAddingExtensions(candidate, extensionsToTry, failedLookupLocations, onlyRecordFailures, state); if (resolvedByAddingExtension) { return resolvedByAddingExtension; } @@ -816,12 +818,12 @@ namespace ts { const extension = candidate.substring(extensionless.length); trace(state.host, Diagnostics.File_name_0_has_a_1_extension_stripping_it, candidate, extension); } - return tryAddingExtensions(extensionless, extensions, failedLookupLocations, onlyRecordFailures, state); + return tryAddingExtensions(extensionless, extensionsToTry, failedLookupLocations, onlyRecordFailures, state); } } /** Try to return an existing file that adds one of the `extensions` to `candidate`. */ - function tryAddingExtensions(candidate: string, extensions: Extensions, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState): Resolved | undefined { + function tryAddingExtensions(candidate: string, extensionsToTry: ExtensionsToTry, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState): Resolved | undefined { if (!onlyRecordFailures) { // check if containing folder exists - if it doesn't then just record failures for all supported extensions without disk probing const directory = getDirectoryPath(candidate); @@ -830,14 +832,14 @@ namespace ts { } } - switch (extensions) { - case Extensions.DtsOnly: + switch (extensionsToTry) { + case ExtensionsToTry.DtsOnly: return tryExtension(Extension.Dts); - case Extensions.TypeScript: + case ExtensionsToTry.TypeScript: return tryExtension(Extension.Ts) || tryExtension(Extension.Tsx) || tryExtension(Extension.Dts); - case Extensions.TypeScriptDtsFirst: + case ExtensionsToTry.TypeScriptDtsFirst: return tryExtension(Extension.Dts) || tryExtension(Extension.Ts) || tryExtension(Extension.Tsx); - case Extensions.JavaScript: + case ExtensionsToTry.JavaScript: return tryExtension(Extension.Js) || tryExtension(Extension.Jsx); } @@ -866,13 +868,13 @@ namespace ts { return undefined; } - function loadNodeModuleFromDirectory(extensions: Extensions, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState, considerPackageJson = true): Resolved | undefined { + function loadNodeModuleFromDirectory(extensionsToTry: ExtensionsToTry, candidate: string, failedLookupLocations: Push, onlyRecordFailures: boolean, state: ModuleResolutionState, considerPackageJson = true): Resolved | undefined { const directoryExists = !onlyRecordFailures && directoryProbablyExists(candidate, state.host); if (considerPackageJson) { const packageJsonPath = pathToPackageJson(candidate); if (directoryExists && state.host.fileExists(packageJsonPath)) { - const fromPackageJson = loadModuleFromPackageJson(packageJsonPath, extensions, candidate, failedLookupLocations, state); + const fromPackageJson = loadModuleFromPackageJson(packageJsonPath, extensionsToTry, candidate, failedLookupLocations, state); if (fromPackageJson) { return fromPackageJson; } @@ -886,15 +888,15 @@ namespace ts { } } - return loadModuleFromFile(extensions, combinePaths(candidate, "index"), failedLookupLocations, !directoryExists, state); + return loadModuleFromFile(extensionsToTry, combinePaths(candidate, "index"), failedLookupLocations, !directoryExists, state); } - function loadModuleFromPackageJson(packageJsonPath: string, extensions: Extensions, candidate: string, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { + function loadModuleFromPackageJson(packageJsonPath: string, extensionsToTry: ExtensionsToTry, candidate: string, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { if (state.traceEnabled) { trace(state.host, Diagnostics.Found_package_json_at_0, packageJsonPath); } - const file = tryReadPackageJsonFields(extensions !== Extensions.JavaScript, packageJsonPath, candidate, state); + const file = tryReadPackageJsonFields(extensionsToTry !== ExtensionsToTry.JavaScript, packageJsonPath, candidate, state); if (!file) { return undefined; } @@ -902,7 +904,7 @@ namespace ts { const onlyRecordFailures = !directoryProbablyExists(getDirectoryPath(file), state.host); const fromFile = tryFile(file, failedLookupLocations, onlyRecordFailures, state); if (fromFile) { - const resolved = fromFile && resolvedIfExtensionMatches(extensions, fromFile); + const resolved = fromFile && resolvedIfExtensionMatches(extensionsToTry, fromFile); if (resolved) { return resolved; } @@ -912,25 +914,25 @@ namespace ts { } // Even if extensions is DtsOnly, we can still look up a .ts file as a result of package.json "types" - const nextExtensions = extensions === Extensions.DtsOnly ? Extensions.TypeScript : extensions; + const nextExtensions = extensionsToTry === ExtensionsToTry.DtsOnly ? ExtensionsToTry.TypeScript : extensionsToTry; // Don't do package.json lookup recursively, because Node.js' package lookup doesn't. return nodeLoadModuleByRelativeName(nextExtensions, file, failedLookupLocations, onlyRecordFailures, state, /*considerPackageJson*/ false); } /** Resolve from an arbitrarily specified file. Return `undefined` if it has an unsupported extension. */ - function resolvedIfExtensionMatches(extensions: Extensions, path: string): Resolved | undefined { + function resolvedIfExtensionMatches(extensionsToTry: ExtensionsToTry, path: string): Resolved | undefined { const extension = tryGetExtensionFromPath(path); - return extension !== undefined && extensionIsOk(extensions, extension) ? { path, extension } : undefined; + return extension !== undefined && extensionIsOk(extensionsToTry, extension) ? { path, extension } : undefined; } /** True if `extension` is one of the supported `extensions`. */ - function extensionIsOk(extensions: Extensions, extension: Extension): boolean { - switch (extensions) { - case Extensions.JavaScript: + function extensionIsOk(extensionsToTry: ExtensionsToTry, extension: Extension): boolean { + switch (extensionsToTry) { + case ExtensionsToTry.JavaScript: return extension === Extension.Js || extension === Extension.Jsx; - case Extensions.TypeScript: + case ExtensionsToTry.TypeScript: return extension === Extension.Ts || extension === Extension.Tsx || extension === Extension.Dts; - case Extensions.DtsOnly: + case ExtensionsToTry.DtsOnly: return extension === Extension.Dts; } } @@ -939,26 +941,22 @@ namespace ts { return combinePaths(directory, "package.json"); } - // Inside of node_modules we should be looking for '.d.ts' files before '.ts' files. - type NodeModulesExtensions = Extensions.TypeScriptDtsFirst | Extensions.JavaScript | Extensions.DtsOnly; - - function loadModuleFromNodeModulesFolder(extensions: NodeModulesExtensions, moduleName: string, nodeModulesFolder: string, nodeModulesFolderExists: boolean, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { + function loadModuleFromNodeModulesFolder(extensionsToTry: NodeModulesExtensionsToTry, moduleName: string, nodeModulesFolder: string, nodeModulesFolderExists: boolean, failedLookupLocations: Push, state: ModuleResolutionState): Resolved | undefined { const packageDir = normalizePath(combinePaths(nodeModulesFolder, moduleName)); - return loadNodeModuleFromDirectory(extensions, packageDir, failedLookupLocations, !nodeModulesFolderExists, state); + return loadNodeModuleFromDirectory(extensionsToTry, packageDir, failedLookupLocations, !nodeModulesFolderExists, state); } - function loadModuleFromNodeModules(extensions: Extensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, cache: NonRelativeModuleNameResolutionCache): SearchResult { - // In node_modules, we will look for a '.d.ts' file first. - const ext = extensions === Extensions.TypeScript ? Extensions.TypeScriptDtsFirst : extensions; + function loadModuleFromNodeModules(extensionsToTry: ExtensionsToTry, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, cache: NonRelativeModuleNameResolutionCache): SearchResult { + const ext = extensionsToTry === ExtensionsToTry.TypeScript ? ExtensionsToTry.TypeScriptDtsFirst : extensionsToTry; return loadModuleFromNodeModulesWorker(ext, moduleName, directory, failedLookupLocations, state, /*typesOnly*/ false, cache); } function loadModuleFromNodeModulesAtTypes(moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState): SearchResult { // Extensions parameter here doesn't actually matter, because typesOnly ensures we're just doing @types lookup, which is always DtsOnly. - return loadModuleFromNodeModulesWorker(Extensions.DtsOnly, moduleName, directory, failedLookupLocations, state, /*typesOnly*/ true, /*cache*/ undefined); + return loadModuleFromNodeModulesWorker(ExtensionsToTry.DtsOnly, moduleName, directory, failedLookupLocations, state, /*typesOnly*/ true, /*cache*/ undefined); } - function loadModuleFromNodeModulesWorker(extensions: NodeModulesExtensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly: boolean, cache: NonRelativeModuleNameResolutionCache): SearchResult { + function loadModuleFromNodeModulesWorker(extensionsToTry: NodeModulesExtensionsToTry, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly: boolean, cache: NonRelativeModuleNameResolutionCache): SearchResult { const perModuleNameCache = cache && cache.getOrCreateCacheForModuleName(moduleName); return forEachAncestorDirectory(normalizeSlashes(directory), ancestorDirectory => { if (getBaseFileName(ancestorDirectory) !== "node_modules") { @@ -966,24 +964,24 @@ namespace ts { if (resolutionFromCache) { return resolutionFromCache; } - return toSearchResult(loadModuleFromNodeModulesOneLevel(extensions, moduleName, ancestorDirectory, failedLookupLocations, state, typesOnly)); + return toSearchResult(loadModuleFromNodeModulesOneLevel(extensionsToTry, moduleName, ancestorDirectory, failedLookupLocations, state, typesOnly)); } }); } /** Load a module from a single node_modules directory, but not from any ancestors' node_modules directories. */ - function loadModuleFromNodeModulesOneLevel(extensions: NodeModulesExtensions, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly = false): Resolved | undefined { + function loadModuleFromNodeModulesOneLevel(extensionsToTry: NodeModulesExtensionsToTry, moduleName: string, directory: string, failedLookupLocations: Push, state: ModuleResolutionState, typesOnly = false): Resolved | undefined { const nodeModulesFolder = combinePaths(directory, "node_modules"); const nodeModulesFolderExists = directoryProbablyExists(nodeModulesFolder, state.host); if (!nodeModulesFolderExists && state.traceEnabled) { trace(state.host, Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it, nodeModulesFolder); } - const packageResult = typesOnly ? undefined : loadModuleFromNodeModulesFolder(extensions, moduleName, nodeModulesFolder, nodeModulesFolderExists, failedLookupLocations, state); + const packageResult = typesOnly ? undefined : loadModuleFromNodeModulesFolder(extensionsToTry, moduleName, nodeModulesFolder, nodeModulesFolderExists, failedLookupLocations, state); if (packageResult) { return packageResult; } - if (extensions !== Extensions.JavaScript) { + if (extensionsToTry !== ExtensionsToTry.JavaScript) { const nodeModulesAtTypes = combinePaths(nodeModulesFolder, "@types"); let nodeModulesAtTypesExists = nodeModulesFolderExists; if (nodeModulesFolderExists && !directoryProbablyExists(nodeModulesAtTypes, state.host)) { @@ -992,7 +990,7 @@ namespace ts { } nodeModulesAtTypesExists = false; } - return loadModuleFromNodeModulesFolder(Extensions.DtsOnly, mangleScopedPackage(moduleName, state), nodeModulesAtTypes, nodeModulesAtTypesExists, failedLookupLocations, state); + return loadModuleFromNodeModulesFolder(ExtensionsToTry.DtsOnly, mangleScopedPackage(moduleName, state), nodeModulesAtTypes, nodeModulesAtTypesExists, failedLookupLocations, state); } } @@ -1041,11 +1039,11 @@ namespace ts { const failedLookupLocations: string[] = []; const containingDirectory = getDirectoryPath(containingFile); - const resolved = tryResolve(Extensions.TypeScript) || tryResolve(Extensions.JavaScript); + const resolved = tryResolve(ExtensionsToTry.TypeScript) || tryResolve(ExtensionsToTry.JavaScript); return createResolvedModuleWithFailedLookupLocations(resolved && resolved.value, /*isExternalLibraryImport*/ false, failedLookupLocations); - function tryResolve(extensions: Extensions): SearchResult { - const resolvedUsingSettings = tryLoadModuleUsingOptionalResolutionSettings(extensions, moduleName, containingDirectory, loadModuleFromFile, failedLookupLocations, state); + function tryResolve(extensionsToTry: ExtensionsToTry): SearchResult { + const resolvedUsingSettings = tryLoadModuleUsingOptionalResolutionSettings(extensionsToTry, moduleName, containingDirectory, loadModuleFromFile, failedLookupLocations, state); if (resolvedUsingSettings) { return { value: resolvedUsingSettings }; } @@ -1059,19 +1057,19 @@ namespace ts { return resolutionFromCache; } const searchName = normalizePath(combinePaths(directory, moduleName)); - return toSearchResult(loadModuleFromFile(extensions, searchName, failedLookupLocations, /*onlyRecordFailures*/ false, state)); + return toSearchResult(loadModuleFromFile(extensionsToTry, searchName, failedLookupLocations, /*onlyRecordFailures*/ false, state)); }); if (resolved) { return resolved; } - if (extensions === Extensions.TypeScript) { + if (extensionsToTry === ExtensionsToTry.TypeScript) { // If we didn't find the file normally, look it up in @types. return loadModuleFromNodeModulesAtTypes(moduleName, containingDirectory, failedLookupLocations, state); } } else { const candidate = normalizePath(combinePaths(containingDirectory, moduleName)); - return toSearchResult(loadModuleFromFile(extensions, candidate, failedLookupLocations, /*onlyRecordFailures*/ false, state)); + return toSearchResult(loadModuleFromFile(extensionsToTry, candidate, failedLookupLocations, /*onlyRecordFailures*/ false, state)); } } } @@ -1088,7 +1086,7 @@ namespace ts { } const state: ModuleResolutionState = { compilerOptions, host, traceEnabled }; const failedLookupLocations: string[] = []; - const resolved = loadModuleFromNodeModulesOneLevel(Extensions.DtsOnly, moduleName, globalCache, failedLookupLocations, state); + const resolved = loadModuleFromNodeModulesOneLevel(ExtensionsToTry.DtsOnly, moduleName, globalCache, failedLookupLocations, state); return createResolvedModuleWithFailedLookupLocations(resolved, /*isExternalLibraryImport*/ true, failedLookupLocations); } From ed3061136c027a022c11e2e3c5a1c6c2496741c4 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Mon, 26 Jun 2017 13:42:59 -0700 Subject: [PATCH 3/3] Update baselines --- .../unittests/reuseProgramStructure.ts | 4 ++-- .../unittests/tsserverProjectSystem.ts | 2 +- .../cachedModuleResolution1.trace.json | 4 ++-- .../cachedModuleResolution2.trace.json | 4 ++-- .../cachedModuleResolution5.trace.json | 4 ++-- .../cachedModuleResolution6.trace.json | 4 ++-- .../cachedModuleResolution7.trace.json | 4 ++-- .../importWithTrailingSlash.trace.json | 8 ++++---- ...portWithTrailingSlash_noResolve.trace.json | 2 +- ...NodeModuleJsDepthDefaultsToZero.trace.json | 2 +- .../moduleResolutionWithExtensions.trace.json | 6 +++--- ...tionWithExtensions_notSupported.trace.json | 6 +++--- ...ionWithExtensions_notSupported2.trace.json | 2 +- ...ionWithExtensions_notSupported3.trace.json | 2 +- ...solutionWithExtensions_preferTs.trace.json | 2 +- ...lutionWithExtensions_unexpected.trace.json | 2 +- ...utionWithExtensions_unexpected2.trace.json | 2 +- ...thExtensions_withAmbientPresent.trace.json | 2 +- .../moduleResolutionWithSymlinks.trace.json | 6 +++--- ...onWithSymlinks_notInNodeModules.trace.json | 4 ++-- ...solutionWithSymlinks_withOutDir.trace.json | 6 +++--- .../reference/packageJsonMain.trace.json | 6 +++--- .../packageJsonMain_isNonRecursive.trace.json | 2 +- ...pingBasedModuleResolution3_node.trace.json | 8 ++++---- ...pingBasedModuleResolution4_node.trace.json | 8 ++++---- ...pingBasedModuleResolution5_node.trace.json | 14 ++++++------- ...pingBasedModuleResolution6_node.trace.json | 8 ++++---- ...pingBasedModuleResolution7_node.trace.json | 20 +++++++++---------- ...eResolution_withExtensionInName.trace.json | 4 ++-- ...tion_withExtension_failedLookup.trace.json | 4 ++-- .../reference/scopedPackages.trace.json | 6 +++--- .../typeReferenceDirectives10.trace.json | 2 +- .../typeReferenceDirectives11.trace.json | 2 +- .../typeReferenceDirectives12.trace.json | 4 ++-- .../typeReferenceDirectives13.trace.json | 2 +- .../typeReferenceDirectives5.trace.json | 2 +- .../typeReferenceDirectives8.trace.json | 2 +- .../typeReferenceDirectives9.trace.json | 4 ++-- ...mMultipleNodeModulesDirectories.trace.json | 6 +++--- ...romNodeModulesInParentDirectory.trace.json | 2 +- .../reference/typingsLookup4.trace.json | 20 +++++++++---------- 41 files changed, 102 insertions(+), 102 deletions(-) diff --git a/src/harness/unittests/reuseProgramStructure.ts b/src/harness/unittests/reuseProgramStructure.ts index 6b208e4faec51..2681b257cebd4 100644 --- a/src/harness/unittests/reuseProgramStructure.ts +++ b/src/harness/unittests/reuseProgramStructure.ts @@ -407,7 +407,7 @@ namespace ts { [ "======== Resolving module 'a' from 'file1.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'a' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'a' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File 'node_modules/a/package.json' does not exist.", "File 'node_modules/a/index.d.ts' does not exist.", "File 'node_modules/a/index.ts' does not exist.", @@ -434,7 +434,7 @@ namespace ts { [ "======== Resolving module 'a' from 'file1.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'a' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'a' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File 'node_modules/a/package.json' does not exist.", "File 'node_modules/a/index.d.ts' exist - use it as a name resolution result.", "======== Module name 'a' was successfully resolved to 'node_modules/a/index.d.ts'. ========" diff --git a/src/harness/unittests/tsserverProjectSystem.ts b/src/harness/unittests/tsserverProjectSystem.ts index 71f7d792bd560..e1260a25afa6c 100644 --- a/src/harness/unittests/tsserverProjectSystem.ts +++ b/src/harness/unittests/tsserverProjectSystem.ts @@ -2404,7 +2404,7 @@ namespace ts.projectSystem { assert.deepEqual(resolutionTrace, [ "======== Resolving module 'lib' from '/a/b/app.js'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'lib' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'lib' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/node_modules' does not exist, skipping all lookups in it.", "Directory '/node_modules' does not exist, skipping all lookups in it.", diff --git a/tests/baselines/reference/cachedModuleResolution1.trace.json b/tests/baselines/reference/cachedModuleResolution1.trace.json index 9822b64f9d82e..8c220aa0f6464 100644 --- a/tests/baselines/reference/cachedModuleResolution1.trace.json +++ b/tests/baselines/reference/cachedModuleResolution1.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a/b/c/d/e/app.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", @@ -11,7 +11,7 @@ "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========", "======== Resolving module 'foo' from '/a/b/c/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Resolution for module 'foo' was found in cache.", "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========" diff --git a/tests/baselines/reference/cachedModuleResolution2.trace.json b/tests/baselines/reference/cachedModuleResolution2.trace.json index 3bfc0c425439b..9c8dce8878095 100644 --- a/tests/baselines/reference/cachedModuleResolution2.trace.json +++ b/tests/baselines/reference/cachedModuleResolution2.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a/b/c/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", "File '/a/b/node_modules/foo/package.json' does not exist.", "File '/a/b/node_modules/foo/index.d.ts' exist - use it as a name resolution result.", @@ -9,7 +9,7 @@ "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========", "======== Resolving module 'foo' from '/a/b/c/d/e/app.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Resolution for module 'foo' was found in cache.", diff --git a/tests/baselines/reference/cachedModuleResolution5.trace.json b/tests/baselines/reference/cachedModuleResolution5.trace.json index 6df4a99506b04..2db09a5c101bc 100644 --- a/tests/baselines/reference/cachedModuleResolution5.trace.json +++ b/tests/baselines/reference/cachedModuleResolution5.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a/b/c/d/e/app.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", @@ -11,7 +11,7 @@ "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========", "======== Resolving module 'foo' from '/a/b/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Resolution for module 'foo' was found in cache.", "Resolving real path for '/a/b/node_modules/foo/index.d.ts', result '/a/b/node_modules/foo/index.d.ts'.", "======== Module name 'foo' was successfully resolved to '/a/b/node_modules/foo/index.d.ts'. ========" diff --git a/tests/baselines/reference/cachedModuleResolution6.trace.json b/tests/baselines/reference/cachedModuleResolution6.trace.json index 50c1c15b3e1be..1fb909d5f0256 100644 --- a/tests/baselines/reference/cachedModuleResolution6.trace.json +++ b/tests/baselines/reference/cachedModuleResolution6.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a/b/c/d/e/app.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", @@ -18,7 +18,7 @@ "======== Module name 'foo' was not resolved. ========", "======== Resolving module 'foo' from '/a/b/c/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Resolution for module 'foo' was found in cache.", "======== Module name 'foo' was not resolved. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/cachedModuleResolution7.trace.json b/tests/baselines/reference/cachedModuleResolution7.trace.json index fa1db9d115e28..927e55d8bd482 100644 --- a/tests/baselines/reference/cachedModuleResolution7.trace.json +++ b/tests/baselines/reference/cachedModuleResolution7.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a/b/c/lib.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/node_modules' does not exist, skipping all lookups in it.", @@ -14,7 +14,7 @@ "======== Module name 'foo' was not resolved. ========", "======== Resolving module 'foo' from '/a/b/c/d/e/app.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/a/b/c/d/e/node_modules' does not exist, skipping all lookups in it.", "Directory '/a/b/c/d/node_modules' does not exist, skipping all lookups in it.", "Resolution for module 'foo' was found in cache.", diff --git a/tests/baselines/reference/importWithTrailingSlash.trace.json b/tests/baselines/reference/importWithTrailingSlash.trace.json index 3efe8c1ba5161..6b30df2044a1e 100644 --- a/tests/baselines/reference/importWithTrailingSlash.trace.json +++ b/tests/baselines/reference/importWithTrailingSlash.trace.json @@ -1,23 +1,23 @@ [ "======== Resolving module '.' from '/a/test.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location '/a', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/a', target file type 'TypeScript ('.ts' preferred)'.", "File '/a.ts' exist - use it as a name resolution result.", "======== Module name '.' was successfully resolved to '/a.ts'. ========", "======== Resolving module './' from '/a/test.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location '/a/', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/a/', target file type 'TypeScript ('.ts' preferred)'.", "File '/a/package.json' does not exist.", "File '/a/index.ts' exist - use it as a name resolution result.", "======== Module name './' was successfully resolved to '/a/index.ts'. ========", "======== Resolving module '..' from '/a/b/test.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location '/a', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/a', target file type 'TypeScript ('.ts' preferred)'.", "File '/a.ts' exist - use it as a name resolution result.", "======== Module name '..' was successfully resolved to '/a.ts'. ========", "======== Resolving module '../' from '/a/b/test.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location '/a/', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/a/', target file type 'TypeScript ('.ts' preferred)'.", "File '/a/package.json' does not exist.", "File '/a/index.ts' exist - use it as a name resolution result.", "======== Module name '../' was successfully resolved to '/a/index.ts'. ========" diff --git a/tests/baselines/reference/importWithTrailingSlash_noResolve.trace.json b/tests/baselines/reference/importWithTrailingSlash_noResolve.trace.json index 1ee467c378905..ec9aaedd26ed4 100644 --- a/tests/baselines/reference/importWithTrailingSlash_noResolve.trace.json +++ b/tests/baselines/reference/importWithTrailingSlash_noResolve.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './foo/' from '/a.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location '/foo/', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/foo/', target file type 'TypeScript ('.ts' preferred)'.", "Directory '/foo/' does not exist, skipping all lookups in it.", "Loading module as file / folder, candidate module location '/foo/', target file type 'JavaScript'.", "Directory '/foo/' does not exist, skipping all lookups in it.", diff --git a/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json b/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json index db979e16381fa..591d626fe1eab 100644 --- a/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json +++ b/tests/baselines/reference/maxNodeModuleJsDepthDefaultsToZero.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'shortid' from '/index.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module 'shortid' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'shortid' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/shortid/package.json' does not exist.", "File '/node_modules/shortid/index.d.ts' does not exist.", "File '/node_modules/shortid/index.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions.trace.json index 104853f8aa3f5..42c09ab9bdcad 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions.trace.json @@ -1,12 +1,12 @@ [ "======== Resolving module './a' from '/src/b.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/a', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/a', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/a.ts' exist - use it as a name resolution result.", "======== Module name './a' was successfully resolved to '/src/a.ts'. ========", "======== Resolving module './a.js' from '/src/d.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/a.js', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/a.js', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/a.js.ts' does not exist.", "File '/src/a.js.tsx' does not exist.", "File '/src/a.js.d.ts' does not exist.", @@ -15,7 +15,7 @@ "======== Module name './a.js' was successfully resolved to '/src/a.ts'. ========", "======== Resolving module './jquery.js' from '/src/jquery_user_1.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/jquery.js', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/jquery.js', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/jquery.js.ts' does not exist.", "File '/src/jquery.js.tsx' does not exist.", "File '/src/jquery.js.d.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_notSupported.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_notSupported.trace.json index b57862c09e31f..9efdbf8a38e57 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_notSupported.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_notSupported.trace.json @@ -1,13 +1,13 @@ [ "======== Resolving module './tsx' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/tsx', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/tsx', target file type 'TypeScript ('.ts' preferred)'.", "File '/tsx.ts' does not exist.", "File '/tsx.tsx' exist - use it as a name resolution result.", "======== Module name './tsx' was successfully resolved to '/tsx.tsx'. ========", "======== Resolving module './jsx' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/jsx', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/jsx', target file type 'TypeScript ('.ts' preferred)'.", "File '/jsx.ts' does not exist.", "File '/jsx.tsx' does not exist.", "File '/jsx.d.ts' does not exist.", @@ -18,7 +18,7 @@ "======== Module name './jsx' was successfully resolved to '/jsx.jsx'. ========", "======== Resolving module './js' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/js', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/js', target file type 'TypeScript ('.ts' preferred)'.", "File '/js.ts' does not exist.", "File '/js.tsx' does not exist.", "File '/js.d.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_notSupported2.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_notSupported2.trace.json index 7474cccdb355c..91d937d67497d 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_notSupported2.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_notSupported2.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './jsx' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/jsx', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/jsx', target file type 'TypeScript ('.ts' preferred)'.", "File '/jsx.ts' does not exist.", "File '/jsx.tsx' does not exist.", "File '/jsx.d.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_notSupported3.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_notSupported3.trace.json index 7474cccdb355c..91d937d67497d 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_notSupported3.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_notSupported3.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './jsx' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/jsx', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/jsx', target file type 'TypeScript ('.ts' preferred)'.", "File '/jsx.ts' does not exist.", "File '/jsx.tsx' does not exist.", "File '/jsx.d.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_preferTs.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_preferTs.trace.json index 0c56366809e7d..83265c0ee012a 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_preferTs.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_preferTs.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './b' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/b', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/b', target file type 'TypeScript ('.ts' preferred)'.", "File '/b.ts' does not exist.", "File '/b.tsx' does not exist.", "File '/b.d.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json index 18495e246bc84..d2769b0127d4d 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'normalize.css' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'normalize.css' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'normalize.css' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/normalize.css/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json index 8080f95318a20..b858aa5701166 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_unexpected2.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' has 'types' field 'foo.js' that references '/node_modules/foo/foo.js'.", diff --git a/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json b/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json index 2337ee21c13eb..c357f424abb74 100644 --- a/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json +++ b/tests/baselines/reference/moduleResolutionWithExtensions_withAmbientPresent.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'js' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'js' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'js' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/js/package.json' does not exist.", "File '/node_modules/js/index.d.ts' does not exist.", "File '/node_modules/js/index.ts' does not exist.", diff --git a/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json b/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json index b9a1af26185d2..bf67a713eb150 100644 --- a/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSymlinks.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './library-a' from '/src/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/library-a', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/library-a', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/library-a.ts' does not exist.", "File '/src/library-a.tsx' does not exist.", "File '/src/library-a.d.ts' does not exist.", @@ -10,7 +10,7 @@ "======== Module name './library-a' was successfully resolved to '/src/library-a/index.ts'. ========", "======== Resolving module './library-b' from '/src/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/library-b', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/library-b', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/library-b.ts' does not exist.", "File '/src/library-b.tsx' does not exist.", "File '/src/library-b.d.ts' does not exist.", @@ -19,7 +19,7 @@ "======== Module name './library-b' was successfully resolved to '/src/library-b/index.ts'. ========", "======== Resolving module 'library-a' from '/src/library-b/index.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'library-a' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'library-a' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File '/src/library-b/node_modules/library-a/package.json' does not exist.", "File '/src/library-b/node_modules/library-a/index.d.ts' does not exist.", "File '/src/library-b/node_modules/library-a/index.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/moduleResolutionWithSymlinks_notInNodeModules.trace.json b/tests/baselines/reference/moduleResolutionWithSymlinks_notInNodeModules.trace.json index 477bae0b4e203..00eaacd00155d 100644 --- a/tests/baselines/reference/moduleResolutionWithSymlinks_notInNodeModules.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSymlinks_notInNodeModules.trace.json @@ -1,12 +1,12 @@ [ "======== Resolving module './shared/abc' from '/src/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/shared/abc', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/shared/abc', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/shared/abc.ts' exist - use it as a name resolution result.", "======== Module name './shared/abc' was successfully resolved to '/src/shared/abc.ts'. ========", "======== Resolving module './shared2/abc' from '/src/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/shared2/abc', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/shared2/abc', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/shared2/abc.ts' exist - use it as a name resolution result.", "======== Module name './shared2/abc' was successfully resolved to '/src/shared2/abc.ts'. ========" ] \ No newline at end of file diff --git a/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json b/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json index b9a1af26185d2..bf67a713eb150 100644 --- a/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json +++ b/tests/baselines/reference/moduleResolutionWithSymlinks_withOutDir.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './library-a' from '/src/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/library-a', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/library-a', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/library-a.ts' does not exist.", "File '/src/library-a.tsx' does not exist.", "File '/src/library-a.d.ts' does not exist.", @@ -10,7 +10,7 @@ "======== Module name './library-a' was successfully resolved to '/src/library-a/index.ts'. ========", "======== Resolving module './library-b' from '/src/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/src/library-b', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/src/library-b', target file type 'TypeScript ('.ts' preferred)'.", "File '/src/library-b.ts' does not exist.", "File '/src/library-b.tsx' does not exist.", "File '/src/library-b.d.ts' does not exist.", @@ -19,7 +19,7 @@ "======== Module name './library-b' was successfully resolved to '/src/library-b/index.ts'. ========", "======== Resolving module 'library-a' from '/src/library-b/index.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'library-a' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'library-a' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File '/src/library-b/node_modules/library-a/package.json' does not exist.", "File '/src/library-b/node_modules/library-a/index.d.ts' does not exist.", "File '/src/library-b/node_modules/library-a/index.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/packageJsonMain.trace.json b/tests/baselines/reference/packageJsonMain.trace.json index 22fbbb70f92f8..29132d2d51253 100644 --- a/tests/baselines/reference/packageJsonMain.trace.json +++ b/tests/baselines/reference/packageJsonMain.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", @@ -19,7 +19,7 @@ "======== Module name 'foo' was successfully resolved to '/node_modules/foo/oof.js'. ========", "======== Resolving module 'bar' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'bar' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'bar' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/bar/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", @@ -35,7 +35,7 @@ "======== Module name 'bar' was successfully resolved to '/node_modules/bar/rab.js'. ========", "======== Resolving module 'baz' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'baz' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'baz' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/baz/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", diff --git a/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json b/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json index 1fdc2f01c7d13..40adacba3e256 100644 --- a/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json +++ b/tests/baselines/reference/packageJsonMain_isNonRecursive.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'foo' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/foo/package.json'.", "'package.json' does not have a 'typings' field.", "'package.json' does not have a 'types' field.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json index da2cde64aa19d..3a8336d61252f 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution3_node.trace.json @@ -3,24 +3,24 @@ "Explicitly specified module resolution kind: 'NodeJs'.", "'baseUrl' option is set to 'c:/root', using this value to resolve non-relative module name 'folder2/file2'.", "Resolving module name 'folder2/file2' relative to base url 'c:/root' - 'c:/root/folder2/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/folder2/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/folder2/file2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/folder2/file2.ts' exist - use it as a name resolution result.", "======== Module name 'folder2/file2' was successfully resolved to 'c:/root/folder2/file2.ts'. ========", "======== Resolving module './file3' from 'c:/root/folder2/file2.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location 'c:/root/folder2/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/folder2/file3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/folder2/file3.ts' exist - use it as a name resolution result.", "======== Module name './file3' was successfully resolved to 'c:/root/folder2/file3.ts'. ========", "======== Resolving module 'file4' from 'c:/root/folder2/file2.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "'baseUrl' option is set to 'c:/root', using this value to resolve non-relative module name 'file4'.", "Resolving module name 'file4' relative to base url 'c:/root' - 'c:/root/file4'.", - "Loading module as file / folder, candidate module location 'c:/root/file4', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/file4', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/file4.ts' does not exist.", "File 'c:/root/file4.tsx' does not exist.", "File 'c:/root/file4.d.ts' does not exist.", "Directory 'c:/root/file4' does not exist, skipping all lookups in it.", - "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory 'c:/root/folder2/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", "File 'c:/node_modules/file4/package.json' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json index da2cde64aa19d..3a8336d61252f 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution4_node.trace.json @@ -3,24 +3,24 @@ "Explicitly specified module resolution kind: 'NodeJs'.", "'baseUrl' option is set to 'c:/root', using this value to resolve non-relative module name 'folder2/file2'.", "Resolving module name 'folder2/file2' relative to base url 'c:/root' - 'c:/root/folder2/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/folder2/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/folder2/file2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/folder2/file2.ts' exist - use it as a name resolution result.", "======== Module name 'folder2/file2' was successfully resolved to 'c:/root/folder2/file2.ts'. ========", "======== Resolving module './file3' from 'c:/root/folder2/file2.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", - "Loading module as file / folder, candidate module location 'c:/root/folder2/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/folder2/file3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/folder2/file3.ts' exist - use it as a name resolution result.", "======== Module name './file3' was successfully resolved to 'c:/root/folder2/file3.ts'. ========", "======== Resolving module 'file4' from 'c:/root/folder2/file2.ts'. ========", "Explicitly specified module resolution kind: 'NodeJs'.", "'baseUrl' option is set to 'c:/root', using this value to resolve non-relative module name 'file4'.", "Resolving module name 'file4' relative to base url 'c:/root' - 'c:/root/file4'.", - "Loading module as file / folder, candidate module location 'c:/root/file4', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/file4', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/file4.ts' does not exist.", "File 'c:/root/file4.tsx' does not exist.", "File 'c:/root/file4.d.ts' does not exist.", "Directory 'c:/root/file4' does not exist, skipping all lookups in it.", - "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory 'c:/root/folder2/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", "File 'c:/node_modules/file4/package.json' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json index 25515fb882f94..eea8851fc092d 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution5_node.trace.json @@ -5,7 +5,7 @@ "'paths' option is specified, looking for a pattern to match module name 'folder2/file1'.", "Module name 'folder2/file1', matched pattern '*'.", "Trying substitution '*', candidate module location: 'folder2/file1'.", - "Loading module as file / folder, candidate module location 'c:/root/folder2/file1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/folder2/file1', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/folder2/file1.ts' exist - use it as a name resolution result.", "======== Module name 'folder2/file1' was successfully resolved to 'c:/root/folder2/file1.ts'. ========", "======== Resolving module 'folder3/file2' from 'c:/root/folder1/file1.ts'. ========", @@ -14,9 +14,9 @@ "'paths' option is specified, looking for a pattern to match module name 'folder3/file2'.", "Module name 'folder3/file2', matched pattern '*'.", "Trying substitution '*', candidate module location: 'folder3/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/folder3/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/folder3/file2', target file type 'TypeScript ('.ts' preferred)'.", "Trying substitution 'generated/*', candidate module location: 'generated/folder3/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/folder3/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/folder3/file2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/folder3/file2.ts' exist - use it as a name resolution result.", "======== Module name 'folder3/file2' was successfully resolved to 'c:/root/generated/folder3/file2.ts'. ========", "======== Resolving module 'components/file3' from 'c:/root/folder1/file1.ts'. ========", @@ -25,7 +25,7 @@ "'paths' option is specified, looking for a pattern to match module name 'components/file3'.", "Module name 'components/file3', matched pattern 'components/*'.", "Trying substitution 'shared/components/*', candidate module location: 'shared/components/file3'.", - "Loading module as file / folder, candidate module location 'c:/root/shared/components/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/shared/components/file3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/shared/components/file3.ts' does not exist.", "File 'c:/root/shared/components/file3.tsx' does not exist.", "File 'c:/root/shared/components/file3.d.ts' does not exist.", @@ -40,18 +40,18 @@ "'paths' option is specified, looking for a pattern to match module name 'file4'.", "Module name 'file4', matched pattern '*'.", "Trying substitution '*', candidate module location: 'file4'.", - "Loading module as file / folder, candidate module location 'c:/root/file4', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/file4', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/file4.ts' does not exist.", "File 'c:/root/file4.tsx' does not exist.", "File 'c:/root/file4.d.ts' does not exist.", "Directory 'c:/root/file4' does not exist, skipping all lookups in it.", "Trying substitution 'generated/*', candidate module location: 'generated/file4'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/file4', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/file4', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/file4.ts' does not exist.", "File 'c:/root/generated/file4.tsx' does not exist.", "File 'c:/root/generated/file4.d.ts' does not exist.", "Directory 'c:/root/generated/file4' does not exist, skipping all lookups in it.", - "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'file4' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory 'c:/root/folder1/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", "File 'c:/node_modules/file4/package.json' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution6_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution6_node.trace.json index 50f9bd862c104..a29cfa6694de6 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution6_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution6_node.trace.json @@ -6,11 +6,11 @@ "Checking if 'c:/root/generated/src/' is the longest matching prefix for 'c:/root/src/project/file3' - 'false'.", "Longest matching prefix for 'c:/root/src/project/file3' is 'c:/root/src/'.", "Loading 'project/file3' from the root dir 'c:/root/src/', candidate location 'c:/root/src/project/file3'.", - "Loading module as file / folder, candidate module location 'c:/root/src/project/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/src/project/file3', target file type 'TypeScript ('.ts' preferred)'.", "Directory 'c:/root/src/project' does not exist, skipping all lookups in it.", "Trying other entries in 'rootDirs'.", "Loading 'project/file3' from the root dir 'c:/root/generated/src', candidate location 'c:/root/generated/src/project/file3'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/src/project/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/src/project/file3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/src/project/file3.ts' exist - use it as a name resolution result.", "======== Module name './project/file3' was successfully resolved to 'c:/root/generated/src/project/file3.ts'. ========", "======== Resolving module '../file2' from 'c:/root/generated/src/project/file3.ts'. ========", @@ -20,14 +20,14 @@ "Checking if 'c:/root/generated/src/' is the longest matching prefix for 'c:/root/generated/src/file2' - 'true'.", "Longest matching prefix for 'c:/root/generated/src/file2' is 'c:/root/generated/src/'.", "Loading 'file2' from the root dir 'c:/root/generated/src/', candidate location 'c:/root/generated/src/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/src/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/src/file2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/src/file2.ts' does not exist.", "File 'c:/root/generated/src/file2.tsx' does not exist.", "File 'c:/root/generated/src/file2.d.ts' does not exist.", "Directory 'c:/root/generated/src/file2' does not exist, skipping all lookups in it.", "Trying other entries in 'rootDirs'.", "Loading 'file2' from the root dir 'c:/root/src', candidate location 'c:/root/src/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/src/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/src/file2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/src/file2.ts' does not exist.", "File 'c:/root/src/file2.tsx' does not exist.", "File 'c:/root/src/file2.d.ts' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json index b7cb5a4ad6118..f3f1a91c41a35 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution7_node.trace.json @@ -6,11 +6,11 @@ "Checking if 'c:/root/generated/src/' is the longest matching prefix for 'c:/root/src/project/file2' - 'false'.", "Longest matching prefix for 'c:/root/src/project/file2' is 'c:/root/src/'.", "Loading 'project/file2' from the root dir 'c:/root/src/', candidate location 'c:/root/src/project/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/src/project/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/src/project/file2', target file type 'TypeScript ('.ts' preferred)'.", "Directory 'c:/root/src/project' does not exist, skipping all lookups in it.", "Trying other entries in 'rootDirs'.", "Loading 'project/file2' from the root dir 'c:/root/generated/src', candidate location 'c:/root/generated/src/project/file2'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/src/project/file2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/src/project/file2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/src/project/file2.ts' exist - use it as a name resolution result.", "======== Module name './project/file2' was successfully resolved to 'c:/root/generated/src/project/file2.ts'. ========", "======== Resolving module 'module3' from 'c:/root/src/file1.ts'. ========", @@ -19,18 +19,18 @@ "'paths' option is specified, looking for a pattern to match module name 'module3'.", "Module name 'module3', matched pattern '*'.", "Trying substitution '*', candidate module location: 'module3'.", - "Loading module as file / folder, candidate module location 'c:/root/module3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/module3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/module3.ts' does not exist.", "File 'c:/root/module3.tsx' does not exist.", "File 'c:/root/module3.d.ts' does not exist.", "Directory 'c:/root/module3' does not exist, skipping all lookups in it.", "Trying substitution 'c:/shared/*', candidate module location: 'c:/shared/module3'.", - "Loading module as file / folder, candidate module location 'c:/shared/module3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/shared/module3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/shared/module3.ts' does not exist.", "File 'c:/shared/module3.tsx' does not exist.", "File 'c:/shared/module3.d.ts' does not exist.", "Directory 'c:/shared/module3' does not exist, skipping all lookups in it.", - "Loading module 'module3' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'module3' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory 'c:/root/src/node_modules' does not exist, skipping all lookups in it.", "Directory 'c:/root/node_modules' does not exist, skipping all lookups in it.", "File 'c:/node_modules/module3/package.json' does not exist.", @@ -43,13 +43,13 @@ "'paths' option is specified, looking for a pattern to match module name 'module1'.", "Module name 'module1', matched pattern '*'.", "Trying substitution '*', candidate module location: 'module1'.", - "Loading module as file / folder, candidate module location 'c:/root/module1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/module1', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/module1.ts' does not exist.", "File 'c:/root/module1.tsx' does not exist.", "File 'c:/root/module1.d.ts' does not exist.", "Directory 'c:/root/module1' does not exist, skipping all lookups in it.", "Trying substitution 'c:/shared/*', candidate module location: 'c:/shared/module1'.", - "Loading module as file / folder, candidate module location 'c:/shared/module1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/shared/module1', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/shared/module1.ts' does not exist.", "File 'c:/shared/module1.tsx' does not exist.", "File 'c:/shared/module1.d.ts' does not exist.", @@ -64,7 +64,7 @@ "'paths' option is specified, looking for a pattern to match module name 'templates/module2'.", "Module name 'templates/module2', matched pattern 'templates/*'.", "Trying substitution 'generated/src/templates/*', candidate module location: 'generated/src/templates/module2'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/src/templates/module2', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/src/templates/module2', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/src/templates/module2.ts' exist - use it as a name resolution result.", "======== Module name 'templates/module2' was successfully resolved to 'c:/root/generated/src/templates/module2.ts'. ========", "======== Resolving module '../file3' from 'c:/root/generated/src/project/file2.ts'. ========", @@ -74,14 +74,14 @@ "Checking if 'c:/root/generated/src/' is the longest matching prefix for 'c:/root/generated/src/file3' - 'true'.", "Longest matching prefix for 'c:/root/generated/src/file3' is 'c:/root/generated/src/'.", "Loading 'file3' from the root dir 'c:/root/generated/src/', candidate location 'c:/root/generated/src/file3'.", - "Loading module as file / folder, candidate module location 'c:/root/generated/src/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/generated/src/file3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/generated/src/file3.ts' does not exist.", "File 'c:/root/generated/src/file3.tsx' does not exist.", "File 'c:/root/generated/src/file3.d.ts' does not exist.", "Directory 'c:/root/generated/src/file3' does not exist, skipping all lookups in it.", "Trying other entries in 'rootDirs'.", "Loading 'file3' from the root dir 'c:/root/src', candidate location 'c:/root/src/file3'.", - "Loading module as file / folder, candidate module location 'c:/root/src/file3', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location 'c:/root/src/file3', target file type 'TypeScript ('.ts' preferred)'.", "File 'c:/root/src/file3.ts' does not exist.", "File 'c:/root/src/file3.tsx' does not exist.", "File 'c:/root/src/file3.d.ts' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution_withExtensionInName.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution_withExtensionInName.trace.json index 216442fb378df..eef25a5a47e4c 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution_withExtensionInName.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution_withExtensionInName.trace.json @@ -6,7 +6,7 @@ "Module name 'zone.js', matched pattern '*'.", "Trying substitution 'foo/*', candidate module location: 'foo/zone.js'.", "File '/foo/zone.js' does not exist.", - "Loading module as file / folder, candidate module location '/foo/zone.js', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/foo/zone.js', target file type 'TypeScript ('.ts' preferred)'.", "File '/foo/zone.js.ts' does not exist.", "File '/foo/zone.js.tsx' does not exist.", "File '/foo/zone.js.d.ts' does not exist.", @@ -26,7 +26,7 @@ "Module name 'zone.tsx', matched pattern '*'.", "Trying substitution 'foo/*', candidate module location: 'foo/zone.tsx'.", "File '/foo/zone.tsx' does not exist.", - "Loading module as file / folder, candidate module location '/foo/zone.tsx', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/foo/zone.tsx', target file type 'TypeScript ('.ts' preferred)'.", "File '/foo/zone.tsx.ts' does not exist.", "File '/foo/zone.tsx.tsx' does not exist.", "File '/foo/zone.tsx.d.ts' does not exist.", diff --git a/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_failedLookup.trace.json b/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_failedLookup.trace.json index 803520f12fd5a..120dcbcff46a7 100644 --- a/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_failedLookup.trace.json +++ b/tests/baselines/reference/pathMappingBasedModuleResolution_withExtension_failedLookup.trace.json @@ -6,8 +6,8 @@ "Module name 'foo', matched pattern 'foo'.", "Trying substitution 'foo/foo.ts', candidate module location: 'foo/foo.ts'.", "File '/foo/foo.ts' does not exist.", - "Loading module as file / folder, candidate module location '/foo/foo.ts', target file type 'TypeScript'.", - "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/foo/foo.ts', target file type 'TypeScript ('.ts' preferred)'.", + "Loading module 'foo' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/node_modules' does not exist, skipping all lookups in it.", "'baseUrl' option is set to '/', using this value to resolve non-relative module name 'foo'.", "'paths' option is specified, looking for a pattern to match module name 'foo'.", diff --git a/tests/baselines/reference/scopedPackages.trace.json b/tests/baselines/reference/scopedPackages.trace.json index c7e6520b74a41..69607d34e606e 100644 --- a/tests/baselines/reference/scopedPackages.trace.json +++ b/tests/baselines/reference/scopedPackages.trace.json @@ -1,14 +1,14 @@ [ "======== Resolving module '@cow/boy' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module '@cow/boy' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module '@cow/boy' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@cow/boy/package.json' does not exist.", "File '/node_modules/@cow/boy/index.d.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@cow/boy/index.d.ts', result '/node_modules/@cow/boy/index.d.ts'.", "======== Module name '@cow/boy' was successfully resolved to '/node_modules/@cow/boy/index.d.ts'. ========", "======== Resolving module '@be/bop' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module '@be/bop' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module '@be/bop' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Scoped package detected, looking in 'be__bop'", "File '/node_modules/@types/be__bop/package.json' does not exist.", "File '/node_modules/@types/be__bop/index.d.ts' exist - use it as a name resolution result.", @@ -16,7 +16,7 @@ "======== Module name '@be/bop' was successfully resolved to '/node_modules/@types/be__bop/index.d.ts'. ========", "======== Resolving module '@be/bop/e/z' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module '@be/bop/e/z' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module '@be/bop/e/z' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Scoped package detected, looking in 'be__bop/e/z'", "File '/node_modules/@types/be__bop/e/z/package.json' does not exist.", "File '/node_modules/@types/be__bop/e/z/index.d.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/typeReferenceDirectives10.trace.json b/tests/baselines/reference/typeReferenceDirectives10.trace.json index a91414a8ce189..9c8fa90287492 100644 --- a/tests/baselines/reference/typeReferenceDirectives10.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives10.trace.json @@ -7,7 +7,7 @@ "======== Type reference directive 'lib' was successfully resolved to '/types/lib/index.d.ts', primary: true. ========", "======== Resolving module './ref' from '/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/ref', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/ref', target file type 'TypeScript ('.ts' preferred)'.", "File '/ref.ts' does not exist.", "File '/ref.tsx' does not exist.", "File '/ref.d.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/typeReferenceDirectives11.trace.json b/tests/baselines/reference/typeReferenceDirectives11.trace.json index 572648804aeb1..d26bf4af8dac6 100644 --- a/tests/baselines/reference/typeReferenceDirectives11.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives11.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './mod1' from '/mod2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript ('.ts' preferred)'.", "File '/mod1.ts' exist - use it as a name resolution result.", "======== Module name './mod1' was successfully resolved to '/mod1.ts'. ========", "======== Resolving type reference directive 'lib', containing file '/__inferred type names__.ts', root directory '/types'. ========", diff --git a/tests/baselines/reference/typeReferenceDirectives12.trace.json b/tests/baselines/reference/typeReferenceDirectives12.trace.json index 62a3b31fa1ca1..5f95300d51e74 100644 --- a/tests/baselines/reference/typeReferenceDirectives12.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives12.trace.json @@ -1,12 +1,12 @@ [ "======== Resolving module './main' from '/mod2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/main', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/main', target file type 'TypeScript ('.ts' preferred)'.", "File '/main.ts' exist - use it as a name resolution result.", "======== Module name './main' was successfully resolved to '/main.ts'. ========", "======== Resolving module './mod1' from '/mod2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript ('.ts' preferred)'.", "File '/mod1.ts' exist - use it as a name resolution result.", "======== Module name './mod1' was successfully resolved to '/mod1.ts'. ========", "======== Resolving type reference directive 'lib', containing file '/mod1.ts', root directory '/types'. ========", diff --git a/tests/baselines/reference/typeReferenceDirectives13.trace.json b/tests/baselines/reference/typeReferenceDirectives13.trace.json index a91414a8ce189..9c8fa90287492 100644 --- a/tests/baselines/reference/typeReferenceDirectives13.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives13.trace.json @@ -7,7 +7,7 @@ "======== Type reference directive 'lib' was successfully resolved to '/types/lib/index.d.ts', primary: true. ========", "======== Resolving module './ref' from '/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/ref', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/ref', target file type 'TypeScript ('.ts' preferred)'.", "File '/ref.ts' does not exist.", "File '/ref.tsx' does not exist.", "File '/ref.d.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/typeReferenceDirectives5.trace.json b/tests/baselines/reference/typeReferenceDirectives5.trace.json index a91414a8ce189..9c8fa90287492 100644 --- a/tests/baselines/reference/typeReferenceDirectives5.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives5.trace.json @@ -7,7 +7,7 @@ "======== Type reference directive 'lib' was successfully resolved to '/types/lib/index.d.ts', primary: true. ========", "======== Resolving module './ref' from '/app.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/ref', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/ref', target file type 'TypeScript ('.ts' preferred)'.", "File '/ref.ts' does not exist.", "File '/ref.tsx' does not exist.", "File '/ref.d.ts' exist - use it as a name resolution result.", diff --git a/tests/baselines/reference/typeReferenceDirectives8.trace.json b/tests/baselines/reference/typeReferenceDirectives8.trace.json index 572648804aeb1..d26bf4af8dac6 100644 --- a/tests/baselines/reference/typeReferenceDirectives8.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives8.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module './mod1' from '/mod2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript ('.ts' preferred)'.", "File '/mod1.ts' exist - use it as a name resolution result.", "======== Module name './mod1' was successfully resolved to '/mod1.ts'. ========", "======== Resolving type reference directive 'lib', containing file '/__inferred type names__.ts', root directory '/types'. ========", diff --git a/tests/baselines/reference/typeReferenceDirectives9.trace.json b/tests/baselines/reference/typeReferenceDirectives9.trace.json index 62a3b31fa1ca1..5f95300d51e74 100644 --- a/tests/baselines/reference/typeReferenceDirectives9.trace.json +++ b/tests/baselines/reference/typeReferenceDirectives9.trace.json @@ -1,12 +1,12 @@ [ "======== Resolving module './main' from '/mod2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/main', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/main', target file type 'TypeScript ('.ts' preferred)'.", "File '/main.ts' exist - use it as a name resolution result.", "======== Module name './main' was successfully resolved to '/main.ts'. ========", "======== Resolving module './mod1' from '/mod2.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/mod1', target file type 'TypeScript ('.ts' preferred)'.", "File '/mod1.ts' exist - use it as a name resolution result.", "======== Module name './mod1' was successfully resolved to '/mod1.ts'. ========", "======== Resolving type reference directive 'lib', containing file '/mod1.ts', root directory '/types'. ========", diff --git a/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json b/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json index c8553fb15bb6a..f8987551b5b96 100644 --- a/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json +++ b/tests/baselines/reference/typeRootsFromMultipleNodeModulesDirectories.trace.json @@ -1,21 +1,21 @@ [ "======== Resolving module 'xyz' from '/foo/bar/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'xyz' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'xyz' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", "Loading module 'xyz' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", "======== Module name 'xyz' was not resolved. ========", "======== Resolving module 'pdq' from '/foo/bar/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'pdq' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'pdq' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", "Loading module 'pdq' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", "======== Module name 'pdq' was not resolved. ========", "======== Resolving module 'abc' from '/foo/bar/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'abc' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'abc' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", "Loading module 'abc' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/foo/bar/node_modules' does not exist, skipping all lookups in it.", diff --git a/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json b/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json index 57e1674bd83d0..b9ab146350d5b 100644 --- a/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json +++ b/tests/baselines/reference/typeRootsFromNodeModulesInParentDirectory.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'xyz' from '/src/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'xyz' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'xyz' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", "Loading module 'xyz' from 'node_modules' folder, target file type 'JavaScript'.", "Directory '/src/node_modules' does not exist, skipping all lookups in it.", diff --git a/tests/baselines/reference/typingsLookup4.trace.json b/tests/baselines/reference/typingsLookup4.trace.json index 26240f4cb8dcb..ce5ff17a30fd8 100644 --- a/tests/baselines/reference/typingsLookup4.trace.json +++ b/tests/baselines/reference/typingsLookup4.trace.json @@ -1,7 +1,7 @@ [ "======== Resolving module 'jquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'jquery' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'jquery' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/@types/jquery/package.json'.", "'package.json' has 'typings' field 'jquery.d.ts' that references '/node_modules/@types/jquery/jquery.d.ts'.", "File '/node_modules/@types/jquery/jquery.d.ts' exist - use it as a name resolution result.", @@ -9,11 +9,11 @@ "======== Module name 'jquery' was successfully resolved to '/node_modules/@types/jquery/jquery.d.ts'. ========", "======== Resolving module 'kquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'kquery' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'kquery' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/@types/kquery/package.json'.", "'package.json' has 'typings' field 'kquery' that references '/node_modules/@types/kquery/kquery'.", "File '/node_modules/@types/kquery/kquery' does not exist.", - "Loading module as file / folder, candidate module location '/node_modules/@types/kquery/kquery', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/@types/kquery/kquery', target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@types/kquery/kquery.ts' does not exist.", "File '/node_modules/@types/kquery/kquery.tsx' does not exist.", "File '/node_modules/@types/kquery/kquery.d.ts' exist - use it as a name resolution result.", @@ -21,21 +21,21 @@ "======== Module name 'kquery' was successfully resolved to '/node_modules/@types/kquery/kquery.d.ts'. ========", "======== Resolving module 'lquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'lquery' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'lquery' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/@types/lquery/package.json'.", "'package.json' has 'typings' field 'lquery' that references '/node_modules/@types/lquery/lquery'.", "File '/node_modules/@types/lquery/lquery' does not exist.", - "Loading module as file / folder, candidate module location '/node_modules/@types/lquery/lquery', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/@types/lquery/lquery', target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@types/lquery/lquery.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/lquery/lquery.ts', result '/node_modules/@types/lquery/lquery.ts'.", "======== Module name 'lquery' was successfully resolved to '/node_modules/@types/lquery/lquery.ts'. ========", "======== Resolving module 'mquery' from '/a.ts'. ========", "Module resolution kind is not specified, using 'NodeJs'.", - "Loading module 'mquery' from 'node_modules' folder, target file type 'TypeScript'.", + "Loading module 'mquery' from 'node_modules' folder, target file type 'TypeScript ('.ts' preferred)'.", "Found 'package.json' at '/node_modules/@types/mquery/package.json'.", "'package.json' has 'typings' field 'mquery' that references '/node_modules/@types/mquery/mquery'.", "File '/node_modules/@types/mquery/mquery' does not exist.", - "Loading module as file / folder, candidate module location '/node_modules/@types/mquery/mquery', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/@types/mquery/mquery', target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@types/mquery/mquery.ts' does not exist.", "File '/node_modules/@types/mquery/mquery.tsx' does not exist.", "File '/node_modules/@types/mquery/mquery.d.ts' does not exist.", @@ -55,7 +55,7 @@ "Found 'package.json' at '/node_modules/@types/kquery/package.json'.", "'package.json' has 'typings' field 'kquery' that references '/node_modules/@types/kquery/kquery'.", "File '/node_modules/@types/kquery/kquery' does not exist.", - "Loading module as file / folder, candidate module location '/node_modules/@types/kquery/kquery', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/@types/kquery/kquery', target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@types/kquery/kquery.ts' does not exist.", "File '/node_modules/@types/kquery/kquery.tsx' does not exist.", "File '/node_modules/@types/kquery/kquery.d.ts' exist - use it as a name resolution result.", @@ -66,7 +66,7 @@ "Found 'package.json' at '/node_modules/@types/lquery/package.json'.", "'package.json' has 'typings' field 'lquery' that references '/node_modules/@types/lquery/lquery'.", "File '/node_modules/@types/lquery/lquery' does not exist.", - "Loading module as file / folder, candidate module location '/node_modules/@types/lquery/lquery', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/@types/lquery/lquery', target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@types/lquery/lquery.ts' exist - use it as a name resolution result.", "Resolving real path for '/node_modules/@types/lquery/lquery.ts', result '/node_modules/@types/lquery/lquery.ts'.", "======== Type reference directive 'lquery' was successfully resolved to '/node_modules/@types/lquery/lquery.ts', primary: true. ========", @@ -75,7 +75,7 @@ "Found 'package.json' at '/node_modules/@types/mquery/package.json'.", "'package.json' has 'typings' field 'mquery' that references '/node_modules/@types/mquery/mquery'.", "File '/node_modules/@types/mquery/mquery' does not exist.", - "Loading module as file / folder, candidate module location '/node_modules/@types/mquery/mquery', target file type 'TypeScript'.", + "Loading module as file / folder, candidate module location '/node_modules/@types/mquery/mquery', target file type 'TypeScript ('.ts' preferred)'.", "File '/node_modules/@types/mquery/mquery.ts' does not exist.", "File '/node_modules/@types/mquery/mquery.tsx' does not exist.", "File '/node_modules/@types/mquery/mquery.d.ts' does not exist.",