Skip to content

Commit ea2bb85

Browse files
committed
Skip refreshing configured project on change of config file if its not loaded
1 parent 82126fb commit ea2bb85

File tree

3 files changed

+6
-5
lines changed

3 files changed

+6
-5
lines changed

src/server/editorServices.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1058,6 +1058,8 @@ namespace ts.server {
10581058
}
10591059
else {
10601060
this.logConfigFileWatchUpdate(project.getConfigFilePath(), project.canonicalConfigFilePath, configFileExistenceInfo, ConfigFileWatcherStatus.ReloadingInferredRootFiles);
1061+
// Skip refresh if project is not yet loaded
1062+
if (project.isInitialLoadPending()) return;
10611063
project.pendingReload = ConfigFileProgramReloadLevel.Full;
10621064
project.pendingReloadReason = "Change in config file detected";
10631065
this.delayUpdateProjectGraph(project);

src/server/project.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1137,9 +1137,8 @@ namespace ts.server {
11371137
}
11381138

11391139
filesToString(writeProjectFileNames: boolean) {
1140-
if (!this.program) {
1141-
return "\tFiles (0)\n";
1142-
}
1140+
if (this.isInitialLoadPending()) return "\tFiles (0) InitialLoadPending\n";
1141+
if (!this.program) return "\tFiles (0) NoProgram\n";
11431142
const sourceFiles = this.program.getSourceFiles();
11441143
let strBuilder = `\tFiles (${sourceFiles.length})\n`;
11451144
if (writeProjectFileNames) {
@@ -1516,7 +1515,8 @@ namespace ts.server {
15161515
/*@internal*/
15171516
projectOptions?: ProjectOptions | true;
15181517

1519-
protected isInitialLoadPending: () => boolean = returnTrue;
1518+
/*@internal*/
1519+
isInitialLoadPending: () => boolean = returnTrue;
15201520

15211521
/*@internal*/
15221522
sendLoadingProjectFinish = false;

tests/baselines/reference/api/tsserverlibrary.d.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8575,7 +8575,6 @@ declare namespace ts.server {
85758575
private externalProjectRefCount;
85768576
private projectErrors;
85778577
private projectReferences;
8578-
protected isInitialLoadPending: () => boolean;
85798578
fileExists(file: string): boolean;
85808579
directoryExists(path: string): boolean;
85818580
/**

0 commit comments

Comments
 (0)