8000 feat(typescript-estree): add debug logs for useProgramFromProjectServ… · yeonjuan/typescript-eslint@8431d9d · GitHub
[go: up one dir, main page]

Skip to content
8000

Commit 8431d9d

Browse files
feat(typescript-estree): add debug logs for useProgramFromProjectService (typescript-eslint#8426)
* feat(typescript-estree): add debug logs for useProgramFromProjectService * Added a bit more around filePathMatchedBy * Update packages/typescript-estree/src/useProgramFromProjectService.ts
1 parent fb82a33 commit 8431d9d

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

packages/typescript-estree/src/useProgramFromProjectService.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import debug from 'debug';
12
import { minimatch } from 'minimatch';
23

34
import { createProjectProgram } from './create-program/createProjectProgram';
@@ -9,12 +10,17 @@ import {
910
} from './create-program/shared';
1011
import type { MutableParseSettings } from './parseSettings';
1112

13+
const log = debug(
14+
'typescript-eslint:typescript-estree:useProgramFromProjectService',
15+
);
16+
1217
export function useProgramFromProjectService(
1318
{ allowDefaultProjectForFiles, service }: ProjectServiceSettings,
1419
parseSettings: Readonly<MutableParseSettings>,
1520
hasFullTypeInformation: boolean,
1621
): ASTAndDefiniteProgram | undefined {
1722
const filePath = getCanonicalFileName(parseSettings.filePath);
23+
log('Opening project service file for: %s', filePath);
1824

1925
const opened = service.openClientFile(
2026
ensureAbsolutePath(filePath, service.host.getCurrentDirectory()),
@@ -23,7 +29,14 @@ export function useProgramFromProjectService(
2329
parseSettings.tsconfigRootDir,
2430
);
2531

32+
log('Opened project service file: %o', opened);
33+
2634
if (hasFullTypeInformation) {
35+
log(
36+
'Project service type information enabled; checking for file path match on: %o',
37+
allowDefaultProjectForFiles,
38+
);
39+
2740
if (opened.configFileName) {
2841
if (filePathMatchedBy(filePath, allowDefaultProjectForFiles)) {
2942
throw new Error(
@@ -37,16 +50,21 @@ export function useProgramFromProjectService(
3750
}
3851
}
3952

53+
log('Retrieving script info and then program for: %s', filePath);
54+
4055
const scriptInfo = service.getScriptInfo(filePath);
4156
const program = service
4257
.getDefaultProjectForFile(scriptInfo!.fileName, true)!
4358
.getLanguageService(/*ensureSynchronized*/ true)
4459
.getProgram();
4560

4661
if (!program) {
62+
log('Could not find project service program for: %s', filePath);
4763
return undefined;
4864
}
4965

66+
log('Found project service program for: %s', filePath);
67+
5068
return createProjectProgram(parseSettings, [program]);
5169
}
5270

0 commit comments

Comments
 (0)
0