Handle root files listed in project config from referenced project to be same as if they were included through import (#58560)

This commit is contained in:
Sheetal Nandi 2024-05-20 10:05:42 -07:00 committed by GitHub
parent 79a851426c
commit d84431e706
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
17 changed files with 6870 additions and 91 deletions

View File

@ -1,6 +1,7 @@
import {
addRange,
AffectedFileResult,
append,
arrayFrom,
arrayToMap,
BuilderProgram,
@ -990,10 +991,13 @@ export type ProgramBuildInfoRootStartEnd = [start: ProgramBuildInfoFileId, end:
*/
export type ProgramBuildInfoRoot = ProgramBuildInfoRootStartEnd | ProgramBuildInfoFileId;
/** @internal */
export type ProgramBuildInfoResolvedRoot = [resolved: ProgramBuildInfoFileId, root: ProgramBuildInfoFileId];
/** @internal */
export interface ProgramMultiFileEmitBuildInfo {
fileNames: readonly string[];
fileInfos: readonly ProgramMultiFileEmitBuildInfoFileInfo[];
root: readonly ProgramBuildInfoRoot[];
resolvedRoot: readonly ProgramBuildInfoResolvedRoot[] | undefined;
options: CompilerOptions | undefined;
fileIdsList: readonly (readonly ProgramBuildInfoFileId[])[] | undefined;
referencedMap: ProgramBuildInfoReferencedMap | undefined;
@ -1023,6 +1027,7 @@ export interface ProgramBundleEmitBuildInfo {
fileNames: readonly string[];
fileInfos: readonly ProgramBundleEmitBuildInfoFileInfo[];
root: readonly ProgramBuildInfoRoot[];
resolvedRoot: readonly ProgramBuildInfoResolvedRoot[] | undefined;
options: CompilerOptions | undefined;
outSignature: EmitSignature | undefined;
latestChangedDtsFile: string | undefined;
@ -1047,6 +1052,7 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
const latestChangedDtsFile = state.latestChangedDtsFile ? relativeToBuildInfoEnsuringAbsolutePath(state.latestChangedDtsFile) : undefined;
const fileNames: string[] = [];
const fileNameToFileId = new Map<string, ProgramBuildInfoFileId>();
const rootFileNames = new Set(state.program!.getRootFileNames().map(f => toPath(f, currentDirectory, state.program!.getCanonicalFileName)));
const root: ProgramBuildInfoRoot[] = [];
if (state.compilerOptions.outFile) {
// Copy all fileInfo, version and impliedFormat
@ -1063,6 +1069,7 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
fileNames,
fileInfos,
root,
resolvedRoot: toResolvedRoot(),
options: convertToProgramBuildInfoCompilerOptions(state.compilerOptions),
outSignature: state.outSignature,
latestChangedDtsFile,
@ -1090,7 +1097,8 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
if (!isJsonSourceFile(file) && sourceFileMayBeEmitted(file, state.program!)) {
const emitSignature = state.emitSignatures?.get(key);
if (emitSignature !== actualSignature) {
(emitSignatures ||= []).push(
emitSignatures = append(
emitSignatures,
emitSignature === undefined ?
fileId : // There is no emit, encode as false
// fileId, signature: emptyArray if signature only differs in dtsMap option than our own compilerOptions otherwise EmitSignature
@ -1133,7 +1141,8 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
const file = state.program!.getSourceFileByPath(path);
if (!file || !sourceFileMayBeEmitted(file, state.program!)) continue;
const fileId = toFileId(path), pendingEmit = state.affectedFilesPendingEmit.get(path)!;
(affectedFilesPendingEmit ||= []).push(
affectedFilesPendingEmit = append(
affectedFilesPendingEmit,
pendingEmit === fullEmitForOptions ?
fileId : // Pending full emit per options
pendingEmit === BuilderFileEmit.Dts ?
@ -1147,7 +1156,7 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
let changeFileSet: ProgramBuildInfoFileId[] | undefined;
if (state.changedFilesSet.size) {
for (const path of arrayFrom(state.changedFilesSet.keys()).sort(compareStringsCaseSensitive)) {
(changeFileSet ||= []).push(toFileId(path));
changeFileSet = append(changeFileSet, toFileId(path));
}
}
const emitDiagnosticsPerFile = convertToProgramBuildInfoDiagnostics(state.emitDiagnosticsPerFile);
@ -1155,6 +1164,7 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
fileNames,
fileInfos,
root,
resolvedRoot: toResolvedRoot(),
options: convertToProgramBuildInfoCompilerOptions(state.compilerOptions),
fileIdsList,
referencedMap,
@ -1189,8 +1199,8 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
const key = fileIds.join();
let fileIdListId = fileNamesToFileIdListId?.get(key);
if (fileIdListId === undefined) {
(fileIdsList ||= []).push(fileIds);
(fileNamesToFileIdListId ||= new Map()).set(key, fileIdListId = fileIdsList.length as ProgramBuildInfoFileIdListId);
fileIdsList = append(fileIdsList, fileIds);
(fileNamesToFileIdListId ??= new Map()).set(key, fileIdListId = fileIdsList.length as ProgramBuildInfoFileIdListId);
}
return fileIdListId;
}
@ -1214,6 +1224,17 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
return root.length = root.length - 1;
}
function toResolvedRoot(): ProgramBuildInfoResolvedRoot[] | undefined {
let result: ProgramBuildInfoResolvedRoot[] | undefined;
rootFileNames.forEach(path => {
const file = state.program!.getSourceFileByPath(path);
if (file && path !== file.resolvedPath) {
result = append(result, [toFileId(file.resolvedPath), toFileId(path)]);
}
});
return result;
}
/**
* @param optionKey key of CommandLineOption to use to determine if the option should be serialized in tsbuildinfo
*/
@ -1253,7 +1274,8 @@ function getBuildInfo(state: BuilderProgramState): BuildInfo {
if (diagnostics) {
for (const key of arrayFrom(diagnostics.keys()).sort(compareStringsCaseSensitive)) {
const value = diagnostics.get(key)!;
(result ||= []).push(
result = append(
result,
value.length ?
[
toFileId(key),
@ -1909,7 +1931,9 @@ export function getBuildInfoFileVersionMap(
const getCanonicalFileName = createGetCanonicalFileName(host.useCaseSensitiveFileNames());
const fileInfos = new Map<Path, string>();
let rootIndex = 0;
const roots: Path[] = [];
// Root name to resolved
const roots = new Map<Path, Path | undefined>();
const resolvedRoots = new Map(program.resolvedRoot);
program.fileInfos.forEach((fileInfo, index) => {
const path = toPath(program.fileNames[index], buildInfoDirectory, getCanonicalFileName);
const version = isString(fileInfo) ? fileInfo : fileInfo.version;
@ -1919,17 +1943,27 @@ export function getBuildInfoFileVersionMap(
const fileId = (index + 1) as ProgramBuildInfoFileId;
if (isArray(current)) {
if (current[0] <= fileId && fileId <= current[1]) {
roots.push(path);
addRoot(fileId, path);
if (current[1] === fileId) rootIndex++;
}
}
else if (current === fileId) {
roots.push(path);
addRoot(fileId, path);
rootIndex++;
}
}
});
return { fileInfos, roots };
function addRoot(fileId: ProgramBuildInfoFileId, path: Path) {
const root = resolvedRoots.get(fileId);
if (root) {
roots.set(toPath(program.fileNames[root - 1], buildInfoDirectory, getCanonicalFileName), path);
}
else {
roots.set(path, undefined);
}
}
}
/** @internal */

View File

@ -3765,7 +3765,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
}
let redirectedPath: Path | undefined;
if (isReferencedFile(reason) && !useSourceOfProjectReferenceRedirect) {
if (!useSourceOfProjectReferenceRedirect) {
const redirectProject = getProjectReferenceRedirectProject(fileName);
if (redirectProject) {
if (redirectProject.commandLine.options.outFile) {

View File

@ -48,6 +48,7 @@ import {
findIndex,
flattenDiagnosticMessageText,
forEach,
forEachEntry,
forEachKey,
ForegroundColorEscapeSequences,
formatColorAndReset,
@ -1734,6 +1735,7 @@ function getUpToDateStatusWorker<T extends BuilderProgram>(state: SolutionBuilde
};
}
const inputPath = buildInfoProgram ? toPath(state, inputFile) : undefined;
// If an buildInfo is older than the newest input, we can stop checking
if (buildInfoTime && buildInfoTime < inputTime) {
let version: string | undefined;
@ -1741,8 +1743,9 @@ function getUpToDateStatusWorker<T extends BuilderProgram>(state: SolutionBuilde
if (buildInfoProgram) {
// Read files and see if they are same, read is anyways cached
if (!buildInfoVersionMap) buildInfoVersionMap = getBuildInfoFileVersionMap(buildInfoProgram, buildInfoPath!, host);
version = buildInfoVersionMap.fileInfos.get(toPath(state, inputFile));
const text = version ? state.readFileWithCache(inputFile) : undefined;
const resolvedInputPath = buildInfoVersionMap.roots.get(inputPath!);
version = buildInfoVersionMap.fileInfos.get(resolvedInputPath ?? inputPath!);
const text = version ? state.readFileWithCache(resolvedInputPath ?? inputFile) : undefined;
currentVersion = text !== undefined ? getSourceFileVersionAsHashFromText(host, text) : undefined;
if (version && version === currentVersion) pseudoInputUpToDate = true;
}
@ -1761,20 +1764,22 @@ function getUpToDateStatusWorker<T extends BuilderProgram>(state: SolutionBuilde
newestInputFileTime = inputTime;
}
if (buildInfoProgram) seenRoots.add(toPath(state, inputFile));
if (buildInfoProgram) seenRoots.add(inputPath!);
}
if (buildInfoProgram) {
if (!buildInfoVersionMap) buildInfoVersionMap = getBuildInfoFileVersionMap(buildInfoProgram, buildInfoPath!, host);
for (const existingRoot of buildInfoVersionMap.roots) {
if (!seenRoots.has(existingRoot)) {
// File was root file when project was built but its not any more
return {
type: UpToDateStatusType.OutOfDateRoots,
buildInfoFile: buildInfoPath!,
inputFile: existingRoot,
};
}
const existingRoot = forEachEntry(
buildInfoVersionMap.roots,
// File was root file when project was built but its not any more
(_resolved, existingRoot) => !seenRoots.has(existingRoot) ? existingRoot : undefined,
);
if (existingRoot) {
return {
type: UpToDateStatusType.OutOfDateRoots,
buildInfoFile: buildInfoPath!,
inputFile: existingRoot,
};
}
}

View File

@ -110,6 +110,7 @@ export * from "./unittests/tsbuildWatch/programUpdates.js";
export * from "./unittests/tsbuildWatch/projectsBuilding.js";
export * from "./unittests/tsbuildWatch/publicApi.js";
export * from "./unittests/tsbuildWatch/reexport.js";
export * from "./unittests/tsbuildWatch/roots.js";
export * from "./unittests/tsbuildWatch/watchEnvironment.js";
export * from "./unittests/tsc/cancellationToken.js";
export * from "./unittests/tsc/composite.js";
@ -197,6 +198,7 @@ export * from "./unittests/tsserver/projectReferenceCompileOnSave.js";
export * from "./unittests/tsserver/projectReferenceErrors.js";
export * from "./unittests/tsserver/projectReferences.js";
export * from "./unittests/tsserver/projectReferencesSourcemap.js";
export * from "./unittests/tsserver/projectRootFiles.js";
export * from "./unittests/tsserver/projects.js";
export * from "./unittests/tsserver/projectsWithReferences.js";
export * from "./unittests/tsserver/refactors.js";

View File

@ -141,10 +141,16 @@ export type ReadableProgramBuildInfoFileInfo<T> = Omit<ts.BuilderState.FileInfo,
export type ReadableProgramBuildInfoRoot =
| [original: ts.ProgramBuildInfoFileId, readable: string]
| [original: ts.ProgramBuildInfoRootStartEnd, readable: readonly string[]];
export type ReadableProgramMultiFileEmitBuildInfo = Omit<ts.ProgramMultiFileEmitBuildInfo, "fileIdsList" | "fileInfos" | "root" | "referencedMap" | "semanticDiagnosticsPerFile" | "emitDiagnosticsPerFile" | "affectedFilesPendingEmit" | "changeFileSet" | "emitSignatures"> & {
export type ReadableProgramBuildInfoResolvedRoot = [
original: ts.ProgramBuildInfoResolvedRoot,
readable: [resolved: string, root: string],
];
export type ReadableProgramMultiFileEmitBuildInfo = Omit<ts.ProgramMultiFileEmitBuildInfo, "fileIdsList" | "fileInfos" | "root" | "resolvedRoot" | "referencedMap" | "semanticDiagnosticsPerFile" | "emitDiagnosticsPerFile" | "affectedFilesPendingEmit" | "changeFileSet" | "emitSignatures"> & {
fileNamesList: readonly (readonly string[])[] | undefined;
fileInfos: ts.MapLike<ReadableProgramBuildInfoFileInfo<ts.ProgramMultiFileEmitBuildInfoFileInfo>>;
root: readonly ReadableProgramBuildInfoRoot[];
resolvedRoot: readonly ReadableProgramBuildInfoResolvedRoot[] | undefined;
referencedMap: ts.MapLike<string[]> | undefined;
semanticDiagnosticsPerFile: readonly ReadableProgramBuildInfoDiagnostic[] | undefined;
emitDiagnosticsPerFile: readonly ReadableProgramBuildInfoDiagnostic[] | undefined;
@ -153,9 +159,10 @@ export type ReadableProgramMultiFileEmitBuildInfo = Omit<ts.ProgramMultiFileEmit
emitSignatures: readonly ReadableProgramBuildInfoEmitSignature[] | undefined;
};
export type ReadableProgramBuildInfoBundlePendingEmit = [emitKind: ReadableBuilderFileEmit, original: ts.ProgramBuildInfoBundlePendingEmit];
export type ReadableProgramBundleEmitBuildInfo = Omit<ts.ProgramBundleEmitBuildInfo, "fileInfos" | "root" | "pendingEmit"> & {
export type ReadableProgramBundleEmitBuildInfo = Omit<ts.ProgramBundleEmitBuildInfo, "fileInfos" | "root" | "resolvedRoot" | "pendingEmit"> & {
fileInfos: ts.MapLike<string | ReadableProgramBuildInfoFileInfo<ts.BuilderState.FileInfo>>;
root: readonly ReadableProgramBuildInfoRoot[];
resolvedRoot: readonly ReadableProgramBuildInfoResolvedRoot[] | undefined;
pendingEmit: ReadableProgramBuildInfoBundlePendingEmit | undefined;
};
@ -180,6 +187,7 @@ function generateBuildInfoProgramBaseline(sys: ts.System, buildInfoPath: string,
...buildInfo.program,
fileInfos,
root: buildInfo.program.root.map(toReadableProgramBuildInfoRoot),
resolvedRoot: buildInfo.program.resolvedRoot?.map(toReadableProgramBuildInfoResolvedRoot),
pendingEmit: pendingEmit === undefined ?
undefined :
[
@ -198,6 +206,7 @@ function generateBuildInfoProgramBaseline(sys: ts.System, buildInfoPath: string,
fileNamesList,
fileInfos: buildInfo.program.fileInfos ? fileInfos : undefined!,
root: buildInfo.program.root.map(toReadableProgramBuildInfoRoot),
resolvedRoot: buildInfo.program.resolvedRoot?.map(toReadableProgramBuildInfoResolvedRoot),
options: buildInfo.program.options,
referencedMap: toMapOfReferencedSet(buildInfo.program.referencedMap),
semanticDiagnosticsPerFile: toReadableProgramBuildInfoDiagnosticsPerFile(buildInfo.program.semanticDiagnosticsPerFile),
@ -245,6 +254,10 @@ function generateBuildInfoProgramBaseline(sys: ts.System, buildInfoPath: string,
return [original, readable];
}
function toReadableProgramBuildInfoResolvedRoot(original: ts.ProgramBuildInfoResolvedRoot): ReadableProgramBuildInfoResolvedRoot {
return [original, [toFileName(original[0]), toFileName(original[1])]];
}
function toMapOfReferencedSet(referenceMap: ts.ProgramBuildInfoReferencedMap | undefined): ts.MapLike<string[]> | undefined {
if (!referenceMap) return undefined;
const result: ts.MapLike<string[]> = {};

View File

@ -0,0 +1,66 @@
import { dedent } from "../../_namespaces/Utils.js";
import { jsonToReadableText } from "../helpers.js";
import {
FsContents,
libContent,
} from "./contents.js";
import { libFile } from "./virtualFileSystemWithWatch.js";
function getFsContentsForRootsFromReferencedProject(serverFirst: boolean): FsContents {
return {
"/home/src/workspaces/tsconfig.json": jsonToReadableText({
compilerOptions: {
composite: true,
},
references: [
{ path: "projects/server" },
{ path: "projects/shared" },
],
}),
"/home/src/workspaces/projects/shared/src/myClass.ts": `export class MyClass { }`,
"/home/src/workspaces/projects/shared/src/logging.ts": dedent`
export function log(str: string) {
console.log(str);
}
`,
"/home/src/workspaces/projects/shared/src/random.ts": dedent`
export function randomFn(str: string) {
console.log(str);
}
`,
"/home/src/workspaces/projects/shared/tsconfig.json": jsonToReadableText({
extends: "../../tsconfig.json",
compilerOptions: {
outDir: "./dist",
},
include: ["src/**/*.ts"],
}),
"/home/src/workspaces/projects/server/src/server.ts": dedent`
import { MyClass } from ':shared/myClass.js';
console.log('Hello, world!');
`,
"/home/src/workspaces/projects/server/tsconfig.json": jsonToReadableText({
extends: "../../tsconfig.json",
compilerOptions: {
baseUrl: "./src",
rootDir: "..",
outDir: "./dist",
paths: {
":shared/*": ["../../shared/src/*"],
},
},
include: serverFirst ?
["src/**/*.ts", "../shared/src/**/*.ts"] :
["../shared/src/**/*.ts", "src/**/*.ts"],
references: [
{ path: "../shared" },
],
}),
[libFile.path]: libContent,
};
}
export function forEachScenarioForRootsFromReferencedProject(action: (subScenario: string, getFsContents: () => FsContents) => void) {
action("when root file is from referenced project", () => getFsContentsForRootsFromReferencedProject(/*serverFirst*/ true));
action("when root file is from referenced project and shared is first", () => getFsContentsForRootsFromReferencedProject(/*serverFirst*/ false));
}

View File

@ -1,7 +1,14 @@
import { dedent } from "../../_namespaces/Utils.js";
import { jsonToReadableText } from "../helpers.js";
import { verifyTsc } from "../helpers/tsc.js";
import { loadProjectFromFiles } from "../helpers/vfs.js";
import { forEachScenarioForRootsFromReferencedProject } from "../helpers/projectRoots.js";
import {
noChangeRun,
verifyTsc,
} from "../helpers/tsc.js";
import {
appendText,
loadProjectFromFiles,
} from "../helpers/vfs.js";
describe("unittests:: tsbuild:: roots::", () => {
verifyTsc({
@ -118,4 +125,28 @@ describe("unittests:: tsbuild:: roots::", () => {
},
}],
});
describe("when root file is from referenced project", () => {
forEachScenarioForRootsFromReferencedProject((subScenario, getFsContents) => {
verifyTsc({
scenario: "roots",
subScenario,
commandLineArgs: ["--b", "projects/server", "-v", "--traceResolution", "--explainFiles"],
fs: () => loadProjectFromFiles(getFsContents(), { cwd: "/home/src/workspaces" }),
edits: [
noChangeRun,
{
caption: "edit logging file",
edit: fs => appendText(fs, "/home/src/workspaces/projects/shared/src/logging.ts", "export const x = 10;"),
},
noChangeRun,
{
caption: "delete random file",
edit: fs => fs.unlinkSync("/home/src/workspaces/projects/shared/src/random.ts"),
},
noChangeRun,
],
});
});
});
});

View File

@ -0,0 +1,40 @@
import { forEachScenarioForRootsFromReferencedProject } from "../helpers/projectRoots.js";
import {
noopChange,
verifyTscWatch,
} from "../helpers/tscWatch.js";
import { createWatchedSystem } from "../helpers/virtualFileSystemWithWatch.js";
describe("unittests:: tsbuildWatch:: watchMode:: roots::", () => {
describe("when root file is from referenced project", () => {
forEachScenarioForRootsFromReferencedProject((subScenario, getFsContents) => {
verifyTscWatch({
scenario: "roots",
subScenario,
commandLineArgs: ["--b", "projects/server", "-w", "-v", "--traceResolution", "--explainFiles"],
sys: () => createWatchedSystem(getFsContents(), { currentDirectory: "/home/src/workspaces" }),
edits: [
noopChange,
{
caption: "edit logging file",
edit: sys => sys.appendFile("/home/src/workspaces/projects/shared/src/logging.ts", "export const x = 10;"),
timeouts: sys => {
sys.runQueuedTimeoutCallbacks(); // build shared
sys.runQueuedTimeoutCallbacks(); // build server
},
},
noopChange,
{
caption: "delete random file",
edit: sys => sys.deleteFile("/home/src/workspaces/projects/shared/src/random.ts"),
timeouts: sys => {
sys.runQueuedTimeoutCallbacks(); // build shared
sys.runQueuedTimeoutCallbacks(); // build server
},
},
noopChange,
],
});
});
});
});

View File

@ -0,0 +1,27 @@
import { forEachScenarioForRootsFromReferencedProject } from "../helpers/projectRoots.js";
import {
baselineTsserverLogs,
openFilesForSession,
TestSession,
} from "../helpers/tsserver.js";
import { createServerHost } from "../helpers/virtualFileSystemWithWatch.js";
describe("unittests:: tsserver:: projectRootFiles:: roots::", () => {
describe("when root file is from referenced project", () => {
forEachScenarioForRootsFromReferencedProject((subScenario, getFsContents) => {
it(subScenario, () => {
const host = createServerHost(getFsContents(), { currentDirectory: "/home/src/workspaces" });
const session = new TestSession(host);
openFilesForSession(["/home/src/workspaces/projects/server/src/server.ts"], session);
host.appendFile("/home/src/workspaces/projects/shared/src/logging.ts", "export const x = 10;");
host.runQueuedTimeoutCallbacks();
host.deleteFile("/home/src/workspaces/projects/shared/src/random.ts");
host.runQueuedTimeoutCallbacks();
baselineTsserverLogs("projectRootFiles", subScenario, session);
});
});
});
});

View File

@ -198,24 +198,8 @@ function foo() {
export {};
//# sourceMappingURL=terminal.d.ts.map
//// [/user/username/projects/project/out/common/input/keyboard.test.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var keyboard_1 = require("common/input/keyboard");
function testEvaluateKeyboardEvent() {
return (0, keyboard_1.evaluateKeyboardEvent)();
}
//// [/user/username/projects/project/out/common/input/keyboard.test.d.ts.map]
{"version":3,"file":"keyboard.test.d.ts","sourceRoot":"","sources":["../../../src/common/input/keyboard.test.ts"],"names":[],"mappings":""}
//// [/user/username/projects/project/out/common/input/keyboard.test.d.ts]
export {};
//# sourceMappingURL=keyboard.test.d.ts.map
//// [/user/username/projects/project/out/src.tsconfig.tsbuildinfo]
{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","./input/keyboard.d.ts","../src/terminal.ts","../src/common/input/keyboard.test.ts"],"fileInfos":[{"version":"-7698705165-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-14411843863-export declare function evaluateKeyboardEvent(): void;\n","impliedFormat":1},{"version":"-9992649704-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction foo() {\n return evaluateKeyboardEvent();\n}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-7258701250-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n","signature":"-3531856636-export {};\n","impliedFormat":1}],"root":[[2,4]],"options":{"composite":true,"declarationMap":true,"outDir":"./","tsBuildInfoFile":"./src.tsconfig.tsbuildinfo"},"fileIdsList":[[2]],"referencedMap":[[4,1],[3,1]],"semanticDiagnosticsPerFile":[1,2,4,3],"latestChangedDtsFile":"./common/input/keyboard.test.d.ts"},"version":"FakeTSVersion"}
{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","./input/keyboard.d.ts","../src/terminal.ts","./input/keyboard.test.d.ts","../src/common/input/keyboard.test.ts","../src/common/input/keyboard.ts"],"fileInfos":[{"version":"-7698705165-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-14411843863-export declare function evaluateKeyboardEvent(): void;\n","impliedFormat":1},{"version":"-9992649704-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction foo() {\n return evaluateKeyboardEvent();\n}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-3531856636-export {};\n","impliedFormat":1}],"root":[[2,4]],"resolvedRoot":[[4,5],[2,6]],"options":{"composite":true,"declarationMap":true,"outDir":"./","tsBuildInfoFile":"./src.tsconfig.tsbuildinfo"},"fileIdsList":[[2]],"referencedMap":[[3,1]],"semanticDiagnosticsPerFile":[1,2,4,3],"latestChangedDtsFile":"./terminal.d.ts"},"version":"FakeTSVersion"}
//// [/user/username/projects/project/out/src.tsconfig.tsbuildinfo.readable.baseline.txt]
{
@ -224,7 +208,9 @@ export {};
"../../../../../a/lib/lib.d.ts",
"./input/keyboard.d.ts",
"../src/terminal.ts",
"../src/common/input/keyboard.test.ts"
"./input/keyboard.test.d.ts",
"../src/common/input/keyboard.test.ts",
"../src/common/input/keyboard.ts"
],
"fileNamesList": [
[
@ -262,13 +248,12 @@ export {};
"signature": "-3531856636-export {};\n",
"impliedFormat": "commonjs"
},
"../src/common/input/keyboard.test.ts": {
"./input/keyboard.test.d.ts": {
"original": {
"version": "-7258701250-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n",
"signature": "-3531856636-export {};\n",
"version": "-3531856636-export {};\n",
"impliedFormat": 1
},
"version": "-7258701250-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n",
"version": "-3531856636-export {};\n",
"signature": "-3531856636-export {};\n",
"impliedFormat": "commonjs"
}
@ -282,8 +267,30 @@ export {};
[
"./input/keyboard.d.ts",
"../src/terminal.ts",
"./input/keyboard.test.d.ts"
]
]
],
"resolvedRoot": [
[
[
4,
5
],
[
"./input/keyboard.test.d.ts",
"../src/common/input/keyboard.test.ts"
]
],
[
[
2,
6
],
[
"./input/keyboard.d.ts",
"../src/common/input/keyboard.ts"
]
]
],
"options": {
@ -293,9 +300,6 @@ export {};
"tsBuildInfoFile": "./src.tsconfig.tsbuildinfo"
},
"referencedMap": {
"../src/common/input/keyboard.test.ts": [
"./input/keyboard.d.ts"
],
"../src/terminal.ts": [
"./input/keyboard.d.ts"
]
@ -303,13 +307,13 @@ export {};
"semanticDiagnosticsPerFile": [
"../../../../../a/lib/lib.d.ts",
"./input/keyboard.d.ts",
"../src/common/input/keyboard.test.ts",
"./input/keyboard.test.d.ts",
"../src/terminal.ts"
],
"latestChangedDtsFile": "./common/input/keyboard.test.d.ts"
"latestChangedDtsFile": "./terminal.d.ts"
},
"version": "FakeTSVersion",
"size": 1411
"size": 1308
}
@ -583,13 +587,12 @@ Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /user/username/pr
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /user/username/projects/project/src 1 undefined Config: /user/username/projects/project/src/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /user/username/projects/project/src/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/out/input/keyboard.d.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/out/input/keyboard.test.d.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/out/input/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/out/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/src/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/src/common/input/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /user/username/projects/project/src/common/package.json 2000 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /user/username/projects/project/src/node_modules/@types 1 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /user/username/projects/project/src/node_modules/@types 1 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /user/username/projects/project/node_modules/@types 1 undefined Project: /user/username/projects/project/src/tsconfig.json WatchType: Type roots
@ -602,20 +605,20 @@ Info seq [hh:mm:ss:mss] Files (4)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }"
/user/username/projects/project/out/input/keyboard.d.ts Text-1 "export declare function evaluateKeyboardEvent(): void;\n//# sourceMappingURL=keyboard.d.ts.map"
/user/username/projects/project/src/terminal.ts SVC-1-0 "import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction foo() {\n return evaluateKeyboardEvent();\n}\n"
/user/username/projects/project/src/common/input/keyboard.test.ts Text-1 "import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n"
/user/username/projects/project/out/input/keyboard.test.d.ts Text-1 "export {};\n//# sourceMappingURL=keyboard.test.d.ts.map"
../../../../../a/lib/lib.d.ts
Default library for target 'es5'
../out/input/keyboard.d.ts
Imported via 'common/input/keyboard' from file 'terminal.ts'
Imported via 'common/input/keyboard' from file 'common/input/keyboard.test.ts'
Matched by include pattern './**/*' in 'tsconfig.json'
File is output of project reference source 'common/input/keyboard.ts'
terminal.ts
Matched by include pattern './**/*' in 'tsconfig.json'
common/input/keyboard.test.ts
../out/input/keyboard.test.d.ts
Matched by include pattern './**/*' in 'tsconfig.json'
File is output of project reference source 'common/input/keyboard.test.ts'
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] event:
@ -641,12 +644,12 @@ Info seq [hh:mm:ss:mss] event:
"jsSize": 0,
"jsx": 0,
"jsxSize": 0,
"ts": 2,
"tsSize": 258,
"ts": 1,
"tsSize": 118,
"tsx": 0,
"tsxSize": 0,
"dts": 2,
"dtsSize": 427,
"dts": 3,
"dtsSize": 481,
"deferred": 0,
"deferredSize": 0
},
@ -736,6 +739,8 @@ FsWatches::
{}
/user/username/projects/project/out/input/keyboard.d.ts: *new*
{}
/user/username/projects/project/out/input/keyboard.test.d.ts: *new*
{}
/user/username/projects/project/src/common/input/keyboard.test.ts:
{}
/user/username/projects/project/src/common/tsconfig.json:
@ -768,6 +773,10 @@ ScriptInfos::
version: Text-1
containingProjects: 1
/user/username/projects/project/src/tsconfig.json
/user/username/projects/project/out/input/keyboard.test.d.ts *new*
version: Text-1
containingProjects: 1
/user/username/projects/project/src/tsconfig.json
/user/username/projects/project/src/common/input/keyboard.test.ts *changed*
version: Text-1
containingProjects: 2 *changed*
@ -937,6 +946,8 @@ FsWatches::
{}
/user/username/projects/project/out/input/keyboard.d.ts.map: *new*
{}
/user/username/projects/project/out/input/keyboard.test.d.ts:
{}
/user/username/projects/project/src/common/input/keyboard.test.ts:
{}
/user/username/projects/project/src/common/tsconfig.json:
@ -983,6 +994,10 @@ ScriptInfos::
/user/username/projects/project/src/common/input/keyboard.ts
documentPositionMapper: DocumentPositionMapper1
containingProjects: 0
/user/username/projects/project/out/input/keyboard.test.d.ts
version: Text-1
containingProjects: 1
/user/username/projects/project/src/tsconfig.json
/user/username/projects/project/src/common/input/keyboard.test.ts
version: Text-1
containingProjects: 2

View File

@ -198,24 +198,8 @@ function foo() {
export {};
//# sourceMappingURL=terminal.d.ts.map
//// [/user/username/projects/project/out/common/input/keyboard.test.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var keyboard_1 = require("common/input/keyboard");
function testEvaluateKeyboardEvent() {
return (0, keyboard_1.evaluateKeyboardEvent)();
}
//// [/user/username/projects/project/out/common/input/keyboard.test.d.ts.map]
{"version":3,"file":"keyboard.test.d.ts","sourceRoot":"","sources":["../../../src/common/input/keyboard.test.ts"],"names":[],"mappings":""}
//// [/user/username/projects/project/out/common/input/keyboard.test.d.ts]
export {};
//# sourceMappingURL=keyboard.test.d.ts.map
//// [/user/username/projects/project/out/src.tsconfig.tsbuildinfo]
{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","./input/keyboard.d.ts","../src/terminal.ts","../src/common/input/keyboard.test.ts"],"fileInfos":[{"version":"-7698705165-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-14411843863-export declare function evaluateKeyboardEvent(): void;\n","impliedFormat":1},{"version":"-9992649704-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction foo() {\n return evaluateKeyboardEvent();\n}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-7258701250-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n","signature":"-3531856636-export {};\n","impliedFormat":1}],"root":[[2,4]],"options":{"composite":true,"declarationMap":true,"outDir":"./","tsBuildInfoFile":"./src.tsconfig.tsbuildinfo"},"fileIdsList":[[2]],"referencedMap":[[4,1],[3,1]],"semanticDiagnosticsPerFile":[1,2,4,3],"latestChangedDtsFile":"./common/input/keyboard.test.d.ts"},"version":"FakeTSVersion"}
{"program":{"fileNames":["../../../../../a/lib/lib.d.ts","./input/keyboard.d.ts","../src/terminal.ts","./input/keyboard.test.d.ts","../src/common/input/keyboard.test.ts","../src/common/input/keyboard.ts"],"fileInfos":[{"version":"-7698705165-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-14411843863-export declare function evaluateKeyboardEvent(): void;\n","impliedFormat":1},{"version":"-9992649704-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction foo() {\n return evaluateKeyboardEvent();\n}\n","signature":"-3531856636-export {};\n","impliedFormat":1},{"version":"-3531856636-export {};\n","impliedFormat":1}],"root":[[2,4]],"resolvedRoot":[[4,5],[2,6]],"options":{"composite":true,"declarationMap":true,"outDir":"./","tsBuildInfoFile":"./src.tsconfig.tsbuildinfo"},"fileIdsList":[[2]],"referencedMap":[[3,1]],"semanticDiagnosticsPerFile":[1,2,4,3],"latestChangedDtsFile":"./terminal.d.ts"},"version":"FakeTSVersion"}
//// [/user/username/projects/project/out/src.tsconfig.tsbuildinfo.readable.baseline.txt]
{
@ -224,7 +208,9 @@ export {};
"../../../../../a/lib/lib.d.ts",
"./input/keyboard.d.ts",
"../src/terminal.ts",
"../src/common/input/keyboard.test.ts"
"./input/keyboard.test.d.ts",
"../src/common/input/keyboard.test.ts",
"../src/common/input/keyboard.ts"
],
"fileNamesList": [
[
@ -262,13 +248,12 @@ export {};
"signature": "-3531856636-export {};\n",
"impliedFormat": "commonjs"
},
"../src/common/input/keyboard.test.ts": {
"./input/keyboard.test.d.ts": {
"original": {
"version": "-7258701250-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n",
"signature": "-3531856636-export {};\n",
"version": "-3531856636-export {};\n",
"impliedFormat": 1
},
"version": "-7258701250-import { evaluateKeyboardEvent } from 'common/input/keyboard';\nfunction testEvaluateKeyboardEvent() {\n return evaluateKeyboardEvent();\n}\n",
"version": "-3531856636-export {};\n",
"signature": "-3531856636-export {};\n",
"impliedFormat": "commonjs"
}
@ -282,8 +267,30 @@ export {};
[
"./input/keyboard.d.ts",
"../src/terminal.ts",
"./input/keyboard.test.d.ts"
]
]
],
"resolvedRoot": [
[
[
4,
5
],
[
"./input/keyboard.test.d.ts",
"../src/common/input/keyboard.test.ts"
]
],
[
[
2,
6
],
[
"./input/keyboard.d.ts",
"../src/common/input/keyboard.ts"
]
]
],
"options": {
@ -293,9 +300,6 @@ export {};
"tsBuildInfoFile": "./src.tsconfig.tsbuildinfo"
},
"referencedMap": {
"../src/common/input/keyboard.test.ts": [
"./input/keyboard.d.ts"
],
"../src/terminal.ts": [
"./input/keyboard.d.ts"
]
@ -303,13 +307,13 @@ export {};
"semanticDiagnosticsPerFile": [
"../../../../../a/lib/lib.d.ts",
"./input/keyboard.d.ts",
"../src/common/input/keyboard.test.ts",
"./input/keyboard.test.d.ts",
"../src/terminal.ts"
],
"latestChangedDtsFile": "./common/input/keyboard.test.d.ts"
"latestChangedDtsFile": "./terminal.d.ts"
},
"version": "FakeTSVersion",
"size": 1411
"size": 1308
}

View File

@ -0,0 +1,617 @@
currentDirectory:: /home/src/workspaces useCaseSensitiveFileNames: false
Info seq [hh:mm:ss:mss] Provided types map file "/typesMap.json" doesn't exist
Before request
//// [/home/src/workspaces/tsconfig.json]
{
"compilerOptions": {
"composite": true
},
"references": [
{
"path": "projects/server"
},
{
"path": "projects/shared"
}
]
}
//// [/home/src/workspaces/projects/shared/src/myClass.ts]
export class MyClass { }
//// [/home/src/workspaces/projects/shared/src/logging.ts]
export function log(str: string) {
console.log(str);
}
//// [/home/src/workspaces/projects/shared/src/random.ts]
export function randomFn(str: string) {
console.log(str);
}
//// [/home/src/workspaces/projects/shared/tsconfig.json]
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "./dist"
},
"include": [
"src/**/*.ts"
]
}
//// [/home/src/workspaces/projects/server/src/server.ts]
import { MyClass } from ':shared/myClass.js';
console.log('Hello, world!');
//// [/home/src/workspaces/projects/server/tsconfig.json]
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"baseUrl": "./src",
"rootDir": "..",
"outDir": "./dist",
"paths": {
":shared/*": [
"../../shared/src/*"
]
}
},
"include": [
"../shared/src/**/*.ts",
"src/**/*.ts"
],
"references": [
{
"path": "../shared"
}
]
}
//// [/a/lib/lib.d.ts]
/// <reference no-default-lib="true"/>
interface Boolean {}
interface Function {}
interface CallableFunction {}
interface NewableFunction {}
interface IArguments {}
interface Number { toExponential: any; }
interface Object {}
interface RegExp {}
interface String { charAt: any; }
interface Array<T> { length: number; [n: number]: T; }
interface ReadonlyArray<T> {}
declare const console: { log(msg: any): void; };
Info seq [hh:mm:ss:mss] request:
{
"command": "open",
"arguments": {
"file": "/home/src/workspaces/projects/server/src/server.ts"
},
"seq": 1,
"type": "request"
}
Info seq [hh:mm:ss:mss] getConfigFileNameForFile:: File: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined:: Result: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Creating configuration project /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/tsconfig.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Config file
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectLoadingStart",
"body": {
"projectName": "/home/src/workspaces/projects/server/tsconfig.json",
"reason": "Creating possible configured project for /home/src/workspaces/projects/server/src/server.ts to open"
}
}
Info seq [hh:mm:ss:mss] Config: /home/src/workspaces/projects/server/tsconfig.json : {
"rootNames": [
"/home/src/workspaces/projects/shared/src/logging.ts",
"/home/src/workspaces/projects/shared/src/myClass.ts",
"/home/src/workspaces/projects/shared/src/random.ts",
"/home/src/workspaces/projects/server/src/server.ts"
],
"options": {
"composite": true,
"baseUrl": "/home/src/workspaces/projects/server/src",
"rootDir": "/home/src/workspaces/projects",
"outDir": "/home/src/workspaces/projects/server/dist",
"paths": {
":shared/*": [
"../../shared/src/*"
]
},
"pathsBasePath": "/home/src/workspaces/projects/server",
"configFilePath": "/home/src/workspaces/projects/server/tsconfig.json"
},
"projectReferences": [
{
"path": "/home/src/workspaces/projects/shared",
"originalPath": "../shared"
}
]
}
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/tsconfig.json 2000 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Extended config file
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/logging.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/myClass.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/random.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Config: /home/src/workspaces/projects/shared/tsconfig.json : {
"rootNames": [
"/home/src/workspaces/projects/shared/src/logging.ts",
"/home/src/workspaces/projects/shared/src/myClass.ts",
"/home/src/workspaces/projects/shared/src/random.ts"
],
"options": {
"composite": true,
"outDir": "/home/src/workspaces/projects/shared/dist",
"configFilePath": "/home/src/workspaces/projects/shared/tsconfig.json"
}
}
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/tsconfig.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Config file
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /a/lib/lib.d.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/src/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Finishing updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json projectStateVersion: 1 projectProgramVersion: 0 structureChanged: true structureIsReused:: Not Elapsed:: *ms
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
/home/src/workspaces/projects/shared/src/logging.ts Text-1 "export function log(str: string) {\n console.log(str);\n}\n"
/home/src/workspaces/projects/shared/src/myClass.ts Text-1 "export class MyClass { }"
/home/src/workspaces/projects/shared/src/random.ts Text-1 "export function randomFn(str: string) {\n console.log(str);\n}\n"
/home/src/workspaces/projects/server/src/server.ts SVC-1-0 "import { MyClass } from ':shared/myClass.js';\nconsole.log('Hello, world!');\n"
../../../../../a/lib/lib.d.ts
Default library for target 'es5'
../shared/src/logging.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
../shared/src/myClass.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
Imported via ':shared/myClass.js' from file 'src/server.ts'
../shared/src/random.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
src/server.ts
Matched by include pattern 'src/**/*.ts' in 'tsconfig.json'
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectLoadingFinish",
"body": {
"projectName": "/home/src/workspaces/projects/server/tsconfig.json"
}
}
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "telemetry",
"body": {
"telemetryEventName": "projectInfo",
"payload": {
"projectId": "3e7cc0fff0dd9d6df3a5e18543004f6ea135e64846930b71357afdc86795b593",
"fileStats": {
"js": 0,
"jsSize": 0,
"jsx": 0,
"jsxSize": 0,
"ts": 4,
"tsSize": 223,
"tsx": 0,
"tsxSize": 0,
"dts": 1,
"dtsSize": 413,
"deferred": 0,
"deferredSize": 0
},
"compilerOptions": {
"composite": true,
"baseUrl": "",
"rootDir": "",
"outDir": "",
"paths": ""
},
"typeAcquisition": {
"enable": false,
"include": false,
"exclude": false
},
"extends": true,
"files": false,
"include": true,
"exclude": false,
"compileOnSave": false,
"configFileName": "tsconfig.json",
"projectType": "configured",
"languageServiceEnabled": true,
"version": "FakeVersion"
}
}
}
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "configFileDiag",
"body": {
"triggerFile": "/home/src/workspaces/projects/server/src/server.ts",
"configFile": "/home/src/workspaces/projects/server/tsconfig.json",
"diagnostics": []
}
}
Info seq [hh:mm:ss:mss] getConfigFileNameForFile:: File: /home/src/workspaces/projects/server/tsconfig.json ProjectRootPath: undefined:: Result: /home/src/workspaces/tsconfig.json
Info seq [hh:mm:ss:mss] Creating configuration project /home/src/workspaces/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/tsconfig.json 2000 undefined Project: /home/src/workspaces/tsconfig.json WatchType: Config file
Info seq [hh:mm:ss:mss] getConfigFileNameForFile:: File: /home/src/workspaces/tsconfig.json ProjectRootPath: undefined:: Result: undefined
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] response:
{
"responseRequired": false
}
After request
PolledWatches::
/home/src/workspaces/node_modules/@types: *new*
{"pollingInterval":500}
/home/src/workspaces/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/node_modules/@types: *new*
{"pollingInterval":500}
/home/src/workspaces/projects/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/server/node_modules/@types: *new*
{"pollingInterval":500}
/home/src/workspaces/projects/server/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/server/src/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/shared/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/shared/src/package.json: *new*
{"pollingInterval":2000}
FsWatches::
/a/lib/lib.d.ts: *new*
{}
/home/src/workspaces/projects/server/tsconfig.json: *new*
{}
/home/src/workspaces/projects/shared/src/logging.ts: *new*
{}
/home/src/workspaces/projects/shared/src/myClass.ts: *new*
{}
/home/src/workspaces/projects/shared/src/random.ts: *new*
{}
/home/src/workspaces/projects/shared/tsconfig.json: *new*
{}
/home/src/workspaces/tsconfig.json: *new*
{}
FsWatchesRecursive::
/home/src/workspaces/projects/server/src: *new*
{}
/home/src/workspaces/projects/shared/src: *new*
{}
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *new*
projectStateVersion: 1
projectProgramVersion: 1
/home/src/workspaces/tsconfig.json (Configured) *new*
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open) *new*
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/logging.ts 1:: WatchInfo: /home/src/workspaces/projects/shared/src/logging.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] Scheduled: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Scheduled: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Elapsed:: *ms FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/logging.ts 1:: WatchInfo: /home/src/workspaces/projects/shared/src/logging.ts 500 undefined WatchType: Closed Script info
Before running Timeout callback:: count: 2
1: /home/src/workspaces/projects/server/tsconfig.json
2: *ensureProjectForOpenFiles*
//// [/home/src/workspaces/projects/shared/src/logging.ts]
export function log(str: string) {
console.log(str);
}
export const x = 10;
Timeout callback:: count: 2
1: /home/src/workspaces/projects/server/tsconfig.json *new*
2: *ensureProjectForOpenFiles* *new*
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 2 *changed*
projectProgramVersion: 1
dirty: true *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open)
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts *changed*
version: Text-1
pendingReloadFromDisk: true *changed*
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Running: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Finishing updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json projectStateVersion: 2 projectProgramVersion: 1 structureChanged: false structureIsReused:: Completely Elapsed:: *ms
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
/home/src/workspaces/projects/shared/src/logging.ts Text-2 "export function log(str: string) {\n console.log(str);\n}\nexport const x = 10;"
/home/src/workspaces/projects/shared/src/myClass.ts Text-1 "export class MyClass { }"
/home/src/workspaces/projects/shared/src/random.ts Text-1 "export function randomFn(str: string) {\n console.log(str);\n}\n"
/home/src/workspaces/projects/server/src/server.ts SVC-1-0 "import { MyClass } from ':shared/myClass.js';\nconsole.log('Hello, world!');\n"
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Running: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Before ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] After ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] got projects updated in background /home/src/workspaces/projects/server/src/server.ts
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectsUpdatedInBackground",
"body": {
"openFiles": [
"/home/src/workspaces/projects/server/src/server.ts"
]
}
}
After running Timeout callback:: count: 0
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 2
projectProgramVersion: 1
dirty: false *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open)
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts *changed*
version: Text-2 *changed*
pendingReloadFromDisk: false *changed*
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts 2:: WatchInfo: /home/src/workspaces/projects/shared/src/random.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] Scheduled: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Scheduled: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Elapsed:: *ms FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts 2:: WatchInfo: /home/src/workspaces/projects/shared/src/random.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Scheduled: /home/src/workspaces/projects/server/tsconfig.json, Cancelled earlier one
Info seq [hh:mm:ss:mss] Scheduled: *ensureProjectForOpenFiles*, Cancelled earlier one
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Before running Timeout callback:: count: 2
5: /home/src/workspaces/projects/server/tsconfig.json
6: *ensureProjectForOpenFiles*
//// [/home/src/workspaces/projects/shared/src/random.ts] deleted
Timeout callback:: count: 2
5: /home/src/workspaces/projects/server/tsconfig.json *new*
6: *ensureProjectForOpenFiles* *new*
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 3 *changed*
projectProgramVersion: 1
dirty: true *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open)
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts
version: Text-2
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts *changed*
version: Text-1
pendingReloadFromDisk: true *changed*
deferredDelete: true *changed*
containingProjects: 0 *changed*
/home/src/workspaces/projects/server/tsconfig.json *deleted*
Info seq [hh:mm:ss:mss] Running: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Finishing updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json projectStateVersion: 3 projectProgramVersion: 1 structureChanged: true structureIsReused:: Not Elapsed:: *ms
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (4)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
/home/src/workspaces/projects/shared/src/logging.ts Text-2 "export function log(str: string) {\n console.log(str);\n}\nexport const x = 10;"
/home/src/workspaces/projects/shared/src/myClass.ts Text-1 "export class MyClass { }"
/home/src/workspaces/projects/server/src/server.ts SVC-1-0 "import { MyClass } from ':shared/myClass.js';\nconsole.log('Hello, world!');\n"
../../../../../a/lib/lib.d.ts
Default library for target 'es5'
../shared/src/logging.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
../shared/src/myClass.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
Imported via ':shared/myClass.js' from file 'src/server.ts'
src/server.ts
Matched by include pattern 'src/**/*.ts' in 'tsconfig.json'
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Running: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Before ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (4)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] After ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (4)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] got projects updated in background /home/src/workspaces/projects/server/src/server.ts
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectsUpdatedInBackground",
"body": {
"openFiles": [
"/home/src/workspaces/projects/server/src/server.ts"
]
}
}
After running Timeout callback:: count: 0
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 3
projectProgramVersion: 2 *changed*
dirty: false *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true

View File

@ -0,0 +1,617 @@
currentDirectory:: /home/src/workspaces useCaseSensitiveFileNames: false
Info seq [hh:mm:ss:mss] Provided types map file "/typesMap.json" doesn't exist
Before request
//// [/home/src/workspaces/tsconfig.json]
{
"compilerOptions": {
"composite": true
},
"references": [
{
"path": "projects/server"
},
{
"path": "projects/shared"
}
]
}
//// [/home/src/workspaces/projects/shared/src/myClass.ts]
export class MyClass { }
//// [/home/src/workspaces/projects/shared/src/logging.ts]
export function log(str: string) {
console.log(str);
}
//// [/home/src/workspaces/projects/shared/src/random.ts]
export function randomFn(str: string) {
console.log(str);
}
//// [/home/src/workspaces/projects/shared/tsconfig.json]
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"outDir": "./dist"
},
"include": [
"src/**/*.ts"
]
}
//// [/home/src/workspaces/projects/server/src/server.ts]
import { MyClass } from ':shared/myClass.js';
console.log('Hello, world!');
//// [/home/src/workspaces/projects/server/tsconfig.json]
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"baseUrl": "./src",
"rootDir": "..",
"outDir": "./dist",
"paths": {
":shared/*": [
"../../shared/src/*"
]
}
},
"include": [
"src/**/*.ts",
"../shared/src/**/*.ts"
],
"references": [
{
"path": "../shared"
}
]
}
//// [/a/lib/lib.d.ts]
/// <reference no-default-lib="true"/>
interface Boolean {}
interface Function {}
interface CallableFunction {}
interface NewableFunction {}
interface IArguments {}
interface Number { toExponential: any; }
interface Object {}
interface RegExp {}
interface String { charAt: any; }
interface Array<T> { length: number; [n: number]: T; }
interface ReadonlyArray<T> {}
declare const console: { log(msg: any): void; };
Info seq [hh:mm:ss:mss] request:
{
"command": "open",
"arguments": {
"file": "/home/src/workspaces/projects/server/src/server.ts"
},
"seq": 1,
"type": "request"
}
Info seq [hh:mm:ss:mss] getConfigFileNameForFile:: File: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined:: Result: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Creating configuration project /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/tsconfig.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Config file
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectLoadingStart",
"body": {
"projectName": "/home/src/workspaces/projects/server/tsconfig.json",
"reason": "Creating possible configured project for /home/src/workspaces/projects/server/src/server.ts to open"
}
}
Info seq [hh:mm:ss:mss] Config: /home/src/workspaces/projects/server/tsconfig.json : {
"rootNames": [
"/home/src/workspaces/projects/server/src/server.ts",
"/home/src/workspaces/projects/shared/src/logging.ts",
"/home/src/workspaces/projects/shared/src/myClass.ts",
"/home/src/workspaces/projects/shared/src/random.ts"
],
"options": {
"composite": true,
"baseUrl": "/home/src/workspaces/projects/server/src",
"rootDir": "/home/src/workspaces/projects",
"outDir": "/home/src/workspaces/projects/server/dist",
"paths": {
":shared/*": [
"../../shared/src/*"
]
},
"pathsBasePath": "/home/src/workspaces/projects/server",
"configFilePath": "/home/src/workspaces/projects/server/tsconfig.json"
},
"projectReferences": [
{
"path": "/home/src/workspaces/projects/shared",
"originalPath": "../shared"
}
]
}
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/tsconfig.json 2000 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Extended config file
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/logging.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/myClass.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/random.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Config: /home/src/workspaces/projects/shared/tsconfig.json : {
"rootNames": [
"/home/src/workspaces/projects/shared/src/logging.ts",
"/home/src/workspaces/projects/shared/src/myClass.ts",
"/home/src/workspaces/projects/shared/src/random.ts"
],
"options": {
"composite": true,
"outDir": "/home/src/workspaces/projects/shared/dist",
"configFilePath": "/home/src/workspaces/projects/shared/tsconfig.json"
}
}
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/tsconfig.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Config file
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /a/lib/lib.d.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/src/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/shared/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/src/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/package.json 2000 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: File location affecting resolution
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/server/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/projects/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Added:: WatchInfo: /home/src/workspaces/node_modules/@types 1 undefined Project: /home/src/workspaces/projects/server/tsconfig.json WatchType: Type roots
Info seq [hh:mm:ss:mss] Finishing updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json projectStateVersion: 1 projectProgramVersion: 0 structureChanged: true structureIsReused:: Not Elapsed:: *ms
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
/home/src/workspaces/projects/shared/src/myClass.ts Text-1 "export class MyClass { }"
/home/src/workspaces/projects/server/src/server.ts SVC-1-0 "import { MyClass } from ':shared/myClass.js';\nconsole.log('Hello, world!');\n"
/home/src/workspaces/projects/shared/src/logging.ts Text-1 "export function log(str: string) {\n console.log(str);\n}\n"
/home/src/workspaces/projects/shared/src/random.ts Text-1 "export function randomFn(str: string) {\n console.log(str);\n}\n"
../../../../../a/lib/lib.d.ts
Default library for target 'es5'
../shared/src/myClass.ts
Imported via ':shared/myClass.js' from file 'src/server.ts'
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
src/server.ts
Matched by include pattern 'src/**/*.ts' in 'tsconfig.json'
../shared/src/logging.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
../shared/src/random.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectLoadingFinish",
"body": {
"projectName": "/home/src/workspaces/projects/server/tsconfig.json"
}
}
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "telemetry",
"body": {
"telemetryEventName": "projectInfo",
"payload": {
"projectId": "3e7cc0fff0dd9d6df3a5e18543004f6ea135e64846930b71357afdc86795b593",
"fileStats": {
"js": 0,
"jsSize": 0,
"jsx": 0,
"jsxSize": 0,
"ts": 4,
"tsSize": 223,
"tsx": 0,
"tsxSize": 0,
"dts": 1,
"dtsSize": 413,
"deferred": 0,
"deferredSize": 0
},
"compilerOptions": {
"composite": true,
"baseUrl": "",
"rootDir": "",
"outDir": "",
"paths": ""
},
"typeAcquisition": {
"enable": false,
"include": false,
"exclude": false
},
"extends": true,
"files": false,
"include": true,
"exclude": false,
"compileOnSave": false,
"configFileName": "tsconfig.json",
"projectType": "configured",
"languageServiceEnabled": true,
"version": "FakeVersion"
}
}
}
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "configFileDiag",
"body": {
"triggerFile": "/home/src/workspaces/projects/server/src/server.ts",
"configFile": "/home/src/workspaces/projects/server/tsconfig.json",
"diagnostics": []
}
}
Info seq [hh:mm:ss:mss] getConfigFileNameForFile:: File: /home/src/workspaces/projects/server/tsconfig.json ProjectRootPath: undefined:: Result: /home/src/workspaces/tsconfig.json
Info seq [hh:mm:ss:mss] Creating configuration project /home/src/workspaces/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Added:: WatchInfo: /home/src/workspaces/tsconfig.json 2000 undefined Project: /home/src/workspaces/tsconfig.json WatchType: Config file
Info seq [hh:mm:ss:mss] getConfigFileNameForFile:: File: /home/src/workspaces/tsconfig.json ProjectRootPath: undefined:: Result: undefined
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] response:
{
"responseRequired": false
}
After request
PolledWatches::
/home/src/workspaces/node_modules/@types: *new*
{"pollingInterval":500}
/home/src/workspaces/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/node_modules/@types: *new*
{"pollingInterval":500}
/home/src/workspaces/projects/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/server/node_modules/@types: *new*
{"pollingInterval":500}
/home/src/workspaces/projects/server/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/server/src/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/shared/package.json: *new*
{"pollingInterval":2000}
/home/src/workspaces/projects/shared/src/package.json: *new*
{"pollingInterval":2000}
FsWatches::
/a/lib/lib.d.ts: *new*
{}
/home/src/workspaces/projects/server/tsconfig.json: *new*
{}
/home/src/workspaces/projects/shared/src/logging.ts: *new*
{}
/home/src/workspaces/projects/shared/src/myClass.ts: *new*
{}
/home/src/workspaces/projects/shared/src/random.ts: *new*
{}
/home/src/workspaces/projects/shared/tsconfig.json: *new*
{}
/home/src/workspaces/tsconfig.json: *new*
{}
FsWatchesRecursive::
/home/src/workspaces/projects/server/src: *new*
{}
/home/src/workspaces/projects/shared/src: *new*
{}
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *new*
projectStateVersion: 1
projectProgramVersion: 1
/home/src/workspaces/tsconfig.json (Configured) *new*
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open) *new*
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts *new*
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/logging.ts 1:: WatchInfo: /home/src/workspaces/projects/shared/src/logging.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] Scheduled: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Scheduled: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Elapsed:: *ms FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/logging.ts 1:: WatchInfo: /home/src/workspaces/projects/shared/src/logging.ts 500 undefined WatchType: Closed Script info
Before running Timeout callback:: count: 2
1: /home/src/workspaces/projects/server/tsconfig.json
2: *ensureProjectForOpenFiles*
//// [/home/src/workspaces/projects/shared/src/logging.ts]
export function log(str: string) {
console.log(str);
}
export const x = 10;
Timeout callback:: count: 2
1: /home/src/workspaces/projects/server/tsconfig.json *new*
2: *ensureProjectForOpenFiles* *new*
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 2 *changed*
projectProgramVersion: 1
dirty: true *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open)
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts *changed*
version: Text-1
pendingReloadFromDisk: true *changed*
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Running: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Finishing updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json projectStateVersion: 2 projectProgramVersion: 1 structureChanged: false structureIsReused:: Completely Elapsed:: *ms
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
/home/src/workspaces/projects/shared/src/myClass.ts Text-1 "export class MyClass { }"
/home/src/workspaces/projects/server/src/server.ts SVC-1-0 "import { MyClass } from ':shared/myClass.js';\nconsole.log('Hello, world!');\n"
/home/src/workspaces/projects/shared/src/logging.ts Text-2 "export function log(str: string) {\n console.log(str);\n}\nexport const x = 10;"
/home/src/workspaces/projects/shared/src/random.ts Text-1 "export function randomFn(str: string) {\n console.log(str);\n}\n"
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Running: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Before ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] After ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (5)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] got projects updated in background /home/src/workspaces/projects/server/src/server.ts
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectsUpdatedInBackground",
"body": {
"openFiles": [
"/home/src/workspaces/projects/server/src/server.ts"
]
}
}
After running Timeout callback:: count: 0
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 2
projectProgramVersion: 1
dirty: false *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open)
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts *changed*
version: Text-2 *changed*
pendingReloadFromDisk: false *changed*
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts 2:: WatchInfo: /home/src/workspaces/projects/shared/src/random.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] Scheduled: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Scheduled: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Elapsed:: *ms FileWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts 2:: WatchInfo: /home/src/workspaces/projects/shared/src/random.ts 500 undefined WatchType: Closed Script info
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Scheduled: /home/src/workspaces/projects/server/tsconfig.json, Cancelled earlier one
Info seq [hh:mm:ss:mss] Scheduled: *ensureProjectForOpenFiles*, Cancelled earlier one
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/server/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Info seq [hh:mm:ss:mss] Elapsed:: *ms DirectoryWatcher:: Triggered with /home/src/workspaces/projects/shared/src/random.ts :: WatchInfo: /home/src/workspaces/projects/shared/src 1 undefined Config: /home/src/workspaces/projects/shared/tsconfig.json WatchType: Wild card directory
Before running Timeout callback:: count: 2
5: /home/src/workspaces/projects/server/tsconfig.json
6: *ensureProjectForOpenFiles*
//// [/home/src/workspaces/projects/shared/src/random.ts] deleted
Timeout callback:: count: 2
5: /home/src/workspaces/projects/server/tsconfig.json *new*
6: *ensureProjectForOpenFiles* *new*
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 3 *changed*
projectProgramVersion: 1
dirty: true *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true
ScriptInfos::
/a/lib/lib.d.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/server/src/server.ts (Open)
version: SVC-1-0
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json *default*
/home/src/workspaces/projects/shared/src/logging.ts
version: Text-2
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/myClass.ts
version: Text-1
containingProjects: 1
/home/src/workspaces/projects/server/tsconfig.json
/home/src/workspaces/projects/shared/src/random.ts *changed*
version: Text-1
pendingReloadFromDisk: true *changed*
deferredDelete: true *changed*
containingProjects: 0 *changed*
/home/src/workspaces/projects/server/tsconfig.json *deleted*
Info seq [hh:mm:ss:mss] Running: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Starting updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] Finishing updateGraphWorker: Project: /home/src/workspaces/projects/server/tsconfig.json projectStateVersion: 3 projectProgramVersion: 1 structureChanged: true structureIsReused:: Not Elapsed:: *ms
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (4)
/a/lib/lib.d.ts Text-1 "/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };"
/home/src/workspaces/projects/shared/src/myClass.ts Text-1 "export class MyClass { }"
/home/src/workspaces/projects/server/src/server.ts SVC-1-0 "import { MyClass } from ':shared/myClass.js';\nconsole.log('Hello, world!');\n"
/home/src/workspaces/projects/shared/src/logging.ts Text-2 "export function log(str: string) {\n console.log(str);\n}\nexport const x = 10;"
../../../../../a/lib/lib.d.ts
Default library for target 'es5'
../shared/src/myClass.ts
Imported via ':shared/myClass.js' from file 'src/server.ts'
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
src/server.ts
Matched by include pattern 'src/**/*.ts' in 'tsconfig.json'
../shared/src/logging.ts
Matched by include pattern '../shared/src/**/*.ts' in 'tsconfig.json'
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Running: *ensureProjectForOpenFiles*
Info seq [hh:mm:ss:mss] Before ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (4)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] After ensureProjectForOpenFiles:
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/projects/server/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (4)
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Project '/home/src/workspaces/tsconfig.json' (Configured)
Info seq [hh:mm:ss:mss] Files (0) InitialLoadPending
Info seq [hh:mm:ss:mss] -----------------------------------------------
Info seq [hh:mm:ss:mss] Open files:
Info seq [hh:mm:ss:mss] FileName: /home/src/workspaces/projects/server/src/server.ts ProjectRootPath: undefined
Info seq [hh:mm:ss:mss] Projects: /home/src/workspaces/projects/server/tsconfig.json
Info seq [hh:mm:ss:mss] got projects updated in background /home/src/workspaces/projects/server/src/server.ts
Info seq [hh:mm:ss:mss] event:
{
"seq": 0,
"type": "event",
"event": "projectsUpdatedInBackground",
"body": {
"openFiles": [
"/home/src/workspaces/projects/server/src/server.ts"
]
}
}
After running Timeout callback:: count: 0
Projects::
/home/src/workspaces/projects/server/tsconfig.json (Configured) *changed*
projectStateVersion: 3
projectProgramVersion: 2 *changed*
dirty: false *changed*
/home/src/workspaces/tsconfig.json (Configured)
projectStateVersion: 1
projectProgramVersion: 0
dirty: true