@typescript-eslint/typescript-estree 7.7.2-alpha.4 → 7.7.2-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/clear-caches.d.ts.map +1 -1
- package/dist/clear-caches.js +1 -0
- package/dist/clear-caches.js.map +1 -1
- package/dist/create-program/createProjectService.d.ts +2 -1
- package/dist/create-program/createProjectService.d.ts.map +1 -1
- package/dist/create-program/createProjectService.js +9 -5
- package/dist/create-program/createProjectService.js.map +1 -1
- package/dist/create-program/validateDefaultProjectForFilesGlob.d.ts +4 -0
- package/dist/create-program/validateDefaultProjectForFilesGlob.d.ts.map +1 -0
- package/dist/create-program/validateDefaultProjectForFilesGlob.js +24 -0
- package/dist/create-program/validateDefaultProjectForFilesGlob.js.map +1 -0
- package/dist/parser-options.d.ts +8 -0
- package/dist/parser-options.d.ts.map +1 -1
- package/dist/parser.d.ts +2 -1
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +7 -2
- package/dist/parser.js.map +1 -1
- package/dist/useProgramFromProjectService.d.ts +1 -1
- package/dist/useProgramFromProjectService.d.ts.map +1 -1
- package/dist/useProgramFromProjectService.js +13 -1
- package/dist/useProgramFromProjectService.js.map +1 -1
- package/package.json +3 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"clear-caches.d.ts","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"clear-caches.d.ts","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":"AAWA;;;;;;GAMG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAOlC;AAGD,eAAO,MAAM,iBAAiB,oBAAc,CAAC"}
|
package/dist/clear-caches.js
CHANGED
@@ -13,6 +13,7 @@ const resolveProjectList_1 = require("./parseSettings/resolveProjectList");
|
|
13
13
|
* - In custom lint tooling that iteratively lints one project at a time to prevent OOMs.
|
14
14
|
*/
|
15
15
|
function clearCaches() {
|
16
|
+
(0, parser_1.clearDefaultProjectMatchedFiles)();
|
16
17
|
(0, parser_1.clearProgramCache)();
|
17
18
|
(0, getWatchProgramsForProjects_1.clearWatchCaches)();
|
18
19
|
(0, createParseSettings_1.clearTSConfigMatchCache)();
|
package/dist/clear-caches.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"clear-caches.js","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":";;;AAAA,8FAAgF;AAChF,
|
1
|
+
{"version":3,"file":"clear-caches.js","sourceRoot":"","sources":["../src/clear-caches.ts"],"names":[],"mappings":";;;AAAA,8FAAgF;AAChF,qCAGkB;AAClB,6EAG6C;AAC7C,2EAAoE;AAEpE;;;;;;GAMG;AACH,SAAgB,WAAW;IACzB,IAAA,wCAA+B,GAAE,CAAC;IAClC,IAAA,0BAAyB,GAAE,CAAC;IAC5B,IAAA,8CAAgB,GAAE,CAAC;IACnB,IAAA,6CAAuB,GAAE,CAAC;IAC1B,IAAA,iDAA2B,GAAE,CAAC;IAC9B,IAAA,mCAAc,GAAE,CAAC;AACnB,CAAC;AAPD,kCAOC;AAED,mCAAmC;AACtB,QAAA,iBAAiB,GAAG,WAAW,CAAC"}
|
@@ -3,7 +3,8 @@ import type { ProjectServiceOptions } from '../parser-options';
|
|
3
3
|
export type TypeScriptProjectService = ts.server.ProjectService;
|
4
4
|
export interface ProjectServiceSettings {
|
5
5
|
allowDefaultProjectForFiles: string[] | undefined;
|
6
|
+
maximumDefaultProjectFileMatchCount: number;
|
6
7
|
service: TypeScriptProjectService;
|
7
8
|
}
|
8
|
-
export declare function createProjectService(
|
9
|
+
export declare function createProjectService(optionsRaw: boolean | ProjectServiceOptions | undefined, jsDocParsingMode: ts.JSDocParsingMode | undefined): ProjectServiceSettings;
|
9
10
|
//# sourceMappingURL=createProjectService.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createProjectService.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectService.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;
|
1
|
+
{"version":3,"file":"createProjectService.d.ts","sourceRoot":"","sources":["../../src/create-program/createProjectService.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAW/D,MAAM,MAAM,wBAAwB,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC;AAEhE,MAAM,WAAW,sBAAsB;IACrC,2BAA2B,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAClD,mCAAmC,EAAE,MAAM,CAAC;IAC5C,OAAO,EAAE,wBAAwB,CAAC;CACnC;AAED,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,EACvD,gBAAgB,EAAE,EAAE,CAAC,gBAAgB,GAAG,SAAS,GAChD,sBAAsB,CAqFxB"}
|
@@ -6,11 +6,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.createProjectService = void 0;
|
7
7
|
/* eslint-disable @typescript-eslint/no-empty-function -- for TypeScript APIs*/
|
8
8
|
const node_os_1 = __importDefault(require("node:os"));
|
9
|
+
const validateDefaultProjectForFilesGlob_1 = require("./validateDefaultProjectForFilesGlob");
|
10
|
+
const DEFAULT_PROJECT_MATCHED_FILES_THRESHOLD = 8;
|
9
11
|
const doNothing = () => { };
|
10
12
|
const createStubFileWatcher = () => ({
|
11
13
|
close: doNothing,
|
12
14
|
});
|
13
|
-
function createProjectService(
|
15
|
+
function createProjectService(optionsRaw, jsDocParsingMode) {
|
16
|
+
const options = typeof optionsRaw === 'object' ? optionsRaw : {};
|
17
|
+
(0, validateDefaultProjectForFilesGlob_1.validateDefaultProjectForFilesGlob)(options);
|
14
18
|
// We import this lazily to avoid its cost for users who don't use the service
|
15
19
|
// TODO: Once we drop support for TS<5.3 we can import from "typescript" directly
|
16
20
|
const tsserver = require('typescript/lib/tsserverlibrary');
|
@@ -46,7 +50,7 @@ function createProjectService(options, jsDocParsingMode) {
|
|
46
50
|
session: undefined,
|
47
51
|
jsDocParsingMode,
|
48
52
|
});
|
49
|
-
if (
|
53
|
+
if (options.defaultProject) {
|
50
54
|
let configRead;
|
51
55
|
try {
|
52
56
|
configRead = tsserver.readConfigFile(options.defaultProject, system.readFile);
|
@@ -64,9 +68,9 @@ function createProjectService(options, jsDocParsingMode) {
|
|
64
68
|
service.setCompilerOptionsForInferredProjects(configRead.config.compilerOptions);
|
65
69
|
}
|
66
70
|
return {
|
67
|
-
allowDefaultProjectForFiles:
|
68
|
-
|
69
|
-
|
71
|
+
allowDefaultProjectForFiles: options.allowDefaultProjectForFiles,
|
72
|
+
maximumDefaultProjectFileMatchCount: options.maximumDefaultProjectFileMatchCount_THIS_WILL_SLOW_DOWN_LINTING ??
|
73
|
+
DEFAULT_PROJECT_MATCHED_FILES_THRESHOLD,
|
70
74
|
service,
|
71
75
|
};
|
72
76
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"createProjectService.js","sourceRoot":"","sources":["../../src/create-program/createProjectService.ts"],"names":[],"mappings":";;;;;;AAAA,+EAA+E;AAC/E,sDAAyB;
|
1
|
+
{"version":3,"file":"createProjectService.js","sourceRoot":"","sources":["../../src/create-program/createProjectService.ts"],"names":[],"mappings":";;;;;;AAAA,+EAA+E;AAC/E,sDAAyB;AAKzB,6FAA0F;AAE1F,MAAM,uCAAuC,GAAG,CAAC,CAAC;AAElD,MAAM,SAAS,GAAG,GAAS,EAAE,GAAE,CAAC,CAAC;AAEjC,MAAM,qBAAqB,GAAG,GAAmB,EAAE,CAAC,CAAC;IACnD,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AAUH,SAAgB,oBAAoB,CAClC,UAAuD,EACvD,gBAAiD;IAEjD,MAAM,OAAO,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,IAAA,uEAAkC,EAAC,OAAO,CAAC,CAAC;IAE5C,8EAA8E;IAC9E,iFAAiF;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,gCAAgC,CAAc,CAAC;IAExE,wCAAwC;IACxC,uEAAuE;IACvE,8GAA8G;IAC9G,sCAAsC;IACtC,MAAM,MAAM,GAAyB;QACnC,GAAG,QAAQ,CAAC,GAAG;QACf,cAAc;QACd,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,cAAc,EAAE,qBAAqB;QACrC,SAAS,EAAE,qBAAqB;KACjC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;QACjD,IAAI,EAAE,MAAM;QACZ,iBAAiB,EAAE,EAAE,uBAAuB,EAAE,GAAY,EAAE,CAAC,KAAK,EAAE;QACpE,wBAAwB,EAAE,KAAK;QAC/B,gCAAgC,EAAE,KAAK;QACvC,MAAM,EAAE;YACN,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,GAAc,EAAE,CAAC,SAAS;YAC1C,QAAQ,EAAE,GAAY,EAAE,CAAC,KAAK;YAC9B,IAAI,EAAE,SAAS;YACf,cAAc,EAAE,GAAY,EAAE,CAAC,KAAK;YACpC,GAAG,EAAE,SAAS;YACd,OAAO,EAAE,SAAS;YAClB,UAAU,EAAE,SAAS;SACtB;QACD,OAAO,EAAE,SAAS;QAClB,gBAAgB;KACjB,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,IAAI,UAAU,CAAC;QAEf,IAAI,CAAC;YACH,UAAU,GAAG,QAAQ,CAAC,cAAc,CAClC,OAAO,CAAC,cAAc,EACtB,MAAM,CAAC,QAAQ,CAChB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,oCAAoC,OAAO,CAAC,cAAc,MAAO,KAAe,CAAC,OAAO,EAAE,CAC3F,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,CAAC,cAAc,MAAM,QAAQ,CAAC,gBAAgB,CACtF,UAAU,CAAC,KAAK,EAChB;gBACE,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;gBAC/C,oBAAoB,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ;gBAC1C,UAAU,EAAE,GAAG,EAAE,CAAC,iBAAE,CAAC,GAAG;aACzB,CACF,EAAE,CACJ,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,qCAAqC,CAEzC,UAAU,CAAC,MAGZ,CAAC,eAAe,CAClB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,2BAA2B,EAAE,OAAO,CAAC,2BAA2B;QAChE,mCAAmC,EACjC,OAAO,CAAC,+DAA+D;YACvE,uCAAuC;QACzC,OAAO;KACR,CAAC;AACJ,CAAC;AAxFD,oDAwFC"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import type { ProjectServiceOptions } from '../parser-options';
|
2
|
+
export declare const DEFAULT_PROJECT_FILES_ERROR_EXPLANATION = "\n\nHaving many files run with the default project is known to cause performance issues and slow down linting.\n\nSee https://typescript-eslint.io/troubleshooting/#allowdefaultprojectforfiles-glob-too-wide\n";
|
3
|
+
export declare function validateDefaultProjectForFilesGlob(options: ProjectServiceOptions): void;
|
4
|
+
//# sourceMappingURL=validateDefaultProjectForFilesGlob.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"validateDefaultProjectForFilesGlob.d.ts","sourceRoot":"","sources":["../../src/create-program/validateDefaultProjectForFilesGlob.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/D,eAAO,MAAM,uCAAuC,oNAKnD,CAAC;AAEF,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,qBAAqB,GAC7B,IAAI,CAiBN"}
|
@@ -0,0 +1,24 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.validateDefaultProjectForFilesGlob = exports.DEFAULT_PROJECT_FILES_ERROR_EXPLANATION = void 0;
|
4
|
+
exports.DEFAULT_PROJECT_FILES_ERROR_EXPLANATION = `
|
5
|
+
|
6
|
+
Having many files run with the default project is known to cause performance issues and slow down linting.
|
7
|
+
|
8
|
+
See https://typescript-eslint.io/troubleshooting/#allowdefaultprojectforfiles-glob-too-wide
|
9
|
+
`;
|
10
|
+
function validateDefaultProjectForFilesGlob(options) {
|
11
|
+
if (!options.allowDefaultProjectForFiles?.length) {
|
12
|
+
return;
|
13
|
+
}
|
14
|
+
for (const glob of options.allowDefaultProjectForFiles) {
|
15
|
+
if (glob === '*') {
|
16
|
+
throw new Error(`allowDefaultProjectForFiles contains the overly wide '*'.${exports.DEFAULT_PROJECT_FILES_ERROR_EXPLANATION}`);
|
17
|
+
}
|
18
|
+
if (glob.includes('**')) {
|
19
|
+
throw new Error(`allowDefaultProjectForFiles glob '${glob}' contains a disallowed '**'.${exports.DEFAULT_PROJECT_FILES_ERROR_EXPLANATION}`);
|
20
|
+
}
|
21
|
+
}
|
22
|
+
}
|
23
|
+
exports.validateDefaultProjectForFilesGlob = validateDefaultProjectForFilesGlob;
|
24
|
+
//# sourceMappingURL=validateDefaultProjectForFilesGlob.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"validateDefaultProjectForFilesGlob.js","sourceRoot":"","sources":["../../src/create-program/validateDefaultProjectForFilesGlob.ts"],"names":[],"mappings":";;;AAEa,QAAA,uCAAuC,GAAG;;;;;CAKtD,CAAC;AAEF,SAAgB,kCAAkC,CAChD,OAA8B;IAE9B,IAAI,CAAC,OAAO,CAAC,2BAA2B,EAAE,MAAM,EAAE,CAAC;QACjD,OAAO;IACT,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,2BAA2B,EAAE,CAAC;QACvD,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,4DAA4D,+CAAuC,EAAE,CACtG,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,qCAAqC,IAAI,gCAAgC,+CAAuC,EAAE,CACnH,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAnBD,gFAmBC"}
|
package/dist/parser-options.d.ts
CHANGED
@@ -86,6 +86,14 @@ export interface ProjectServiceOptions {
|
|
86
86
|
* Path to a TSConfig to use instead of TypeScript's default project configuration.
|
87
87
|
*/
|
88
88
|
defaultProject?: string;
|
89
|
+
/**
|
90
|
+
* The maximum number of files {@link allowDefaultProjectForFiles} may match.
|
91
|
+
* Each file match slows down linting, so if you do need to use this, please
|
92
|
+
* file an informative issue on typescript-eslint explaining why - so we can
|
93
|
+
* help you avoid using it!
|
94
|
+
* @default 8
|
95
|
+
*/
|
96
|
+
maximumDefaultProjectFileMatchCount_THIS_WILL_SLOW_DOWN_LINTING?: number;
|
89
97
|
}
|
90
98
|
interface ParseAndGenerateServicesOptions extends ParseOptions {
|
91
99
|
/**
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAM/E,UAAU,YAAY;IACpB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;;;;;OAQG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd;;;;OAIG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IAOd,QAAQ,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC;IAE/C;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,kCAAkC,CAAC,EAAE,OAAO,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,2BAA2B,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"parser-options.d.ts","sourceRoot":"","sources":["../src/parser-options.ts"],"names":[],"mappings":"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"}
|
package/dist/parser.d.ts
CHANGED
@@ -2,6 +2,7 @@ import type * as ts from 'typescript';
|
|
2
2
|
import type { ParserServices, TSESTreeOptions } from './parser-options';
|
3
3
|
import type { TSESTree } from './ts-estree';
|
4
4
|
declare function clearProgramCache(): void;
|
5
|
+
declare function clearDefaultProjectMatchedFiles(): void;
|
5
6
|
interface EmptyObject {
|
6
7
|
}
|
7
8
|
type AST<T extends TSESTreeOptions> = TSESTree.Program & (T['comment'] extends true ? {
|
@@ -16,5 +17,5 @@ interface ParseAndGenerateServicesResult<T extends TSESTreeOptions> {
|
|
16
17
|
declare function parse<T extends TSESTreeOptions = TSESTreeOptions>(code: string, options?: T): AST<T>;
|
17
18
|
declare function clearParseAndGenerateServicesCalls(): void;
|
18
19
|
declare function parseAndGenerateServices<T extends TSESTreeOptions = TSESTreeOptions>(code: ts.SourceFile | string, options: T): ParseAndGenerateServicesResult<T>;
|
19
|
-
export { AST, parse, parseAndGenerateServices, ParseAndGenerateServicesResult, clearProgramCache, clearParseAndGenerateServicesCalls, };
|
20
|
+
export { AST, parse, parseAndGenerateServices, ParseAndGenerateServicesResult, clearDefaultProjectMatchedFiles, clearProgramCache, clearParseAndGenerateServicesCalls, };
|
20
21
|
//# sourceMappingURL=parser.d.ts.map
|
package/dist/parser.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAkBtC,OAAO,KAAK,EACV,cAAc,EAEd,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,iBAAS,iBAAiB,IAAI,IAAI,CAEjC;
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAkBtC,OAAO,KAAK,EACV,cAAc,EAEd,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,iBAAS,iBAAiB,IAAI,IAAI,CAEjC;AAGD,iBAAS,+BAA+B,IAAI,IAAI,CAE/C;AA4DD,UAAU,WAAW;CAAG;AACxB,KAAK,GAAG,CAAC,CAAC,SAAS,eAAe,IAAI,QAAQ,CAAC,OAAO,GACpD,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,IAAI,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,GAC5E,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAA;CAAE,GAAG,WAAW,CAAC,CAAC;AAE1E,UAAU,8BAA8B,CAAC,CAAC,SAAS,eAAe;IAChE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACZ,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAMD,iBAAS,KAAK,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EACxD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,GACV,GAAG,CAAC,CAAC,CAAC,CAGR;AA4CD,iBAAS,kCAAkC,IAAI,IAAI,CAElD;AAED,iBAAS,wBAAwB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,EAC3E,IAAI,EAAE,EAAE,CAAC,UAAU,GAAG,MAAM,EAC5B,OAAO,EAAE,CAAC,GACT,8BAA8B,CAAC,CAAC,CAAC,CA+GnC;AAED,OAAO,EACL,GAAG,EACH,KAAK,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,+BAA+B,EAC/B,iBAAiB,EACjB,kCAAkC,GACnC,CAAC"}
|
package/dist/parser.js
CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.clearParseAndGenerateServicesCalls = exports.clearProgramCache = exports.parseAndGenerateServices = exports.parse = void 0;
|
6
|
+
exports.clearParseAndGenerateServicesCalls = exports.clearProgramCache = exports.clearDefaultProjectMatchedFiles = exports.parseAndGenerateServices = exports.parse = void 0;
|
7
7
|
const debug_1 = __importDefault(require("debug"));
|
8
8
|
const ast_converter_1 = require("./ast-converter");
|
9
9
|
const convert_1 = require("./convert");
|
@@ -28,6 +28,11 @@ function clearProgramCache() {
|
|
28
28
|
existingPrograms.clear();
|
29
29
|
}
|
30
30
|
exports.clearProgramCache = clearProgramCache;
|
31
|
+
const defaultProjectMatchedFiles = new Set();
|
32
|
+
function clearDefaultProjectMatchedFiles() {
|
33
|
+
defaultProjectMatchedFiles.clear();
|
34
|
+
}
|
35
|
+
exports.clearDefaultProjectMatchedFiles = clearDefaultProjectMatchedFiles;
|
31
36
|
/**
|
32
37
|
* @param parseSettings Internal settings for parsing the file
|
33
38
|
* @param hasFullTypeInformation True if the program should be attempted to be calculated from provided tsconfig files
|
@@ -35,7 +40,7 @@ exports.clearProgramCache = clearProgramCache;
|
|
35
40
|
*/
|
36
41
|
function getProgramAndAST(parseSettings, hasFullTypeInformation) {
|
37
42
|
if (parseSettings.EXPERIMENTAL_projectService) {
|
38
|
-
const fromProjectService = (0, useProgramFromProjectService_1.useProgramFromProjectService)(parseSettings.EXPERIMENTAL_projectService, parseSettings, hasFullTypeInformation);
|
43
|
+
const fromProjectService = (0, useProgramFromProjectService_1.useProgramFromProjectService)(parseSettings.EXPERIMENTAL_projectService, parseSettings, hasFullTypeInformation, defaultProjectMatchedFiles);
|
39
44
|
if (fromProjectService) {
|
40
45
|
return fromProjectService;
|
41
46
|
}
|
package/dist/parser.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAG1B,mDAA+C;AAC/C,uCAAyC;AACzC,gFAA6E;AAC7E,kFAA+E;AAC/E,gFAA6E;AAC7E,wEAG2C;AAC3C,8FAA2F;AAE3F,8EAG8C;AAC9C,iEAA8D;AAO9D,6EAA0E;AAC1E,iFAAkF;AAElF,iFAA8E;AAE9E,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,4CAA4C,CAAC,CAAC;AAEhE;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA6B,CAAC;AAC9D,SAAS,iBAAiB;IACxB,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAC3B,CAAC;
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { ProjectServiceSettings } from './create-program/createProjectService';
|
2
2
|
import type { ASTAndDefiniteProgram } from './create-program/shared';
|
3
3
|
import type { MutableParseSettings } from './parseSettings';
|
4
|
-
export declare function useProgramFromProjectService({ allowDefaultProjectForFiles, service }: ProjectServiceSettings, parseSettings: Readonly<MutableParseSettings>, hasFullTypeInformation: boolean): ASTAndDefiniteProgram | undefined;
|
4
|
+
export declare function useProgramFromProjectService({ allowDefaultProjectForFiles, maximumDefaultProjectFileMatchCount, service, }: ProjectServiceSettings, parseSettings: Readonly<MutableParseSettings>, hasFullTypeInformation: boolean, defaultProjectMatchedFiles: Set<string>): ASTAndDefiniteProgram | undefined;
|
5
5
|
//# sourceMappingURL=useProgramFromProjectService.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useProgramFromProjectService.d.ts","sourceRoot":"","sources":["../src/useProgramFromProjectService.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;
|
1
|
+
{"version":3,"file":"useProgramFromProjectService.d.ts","sourceRoot":"","sources":["../src/useProgramFromProjectService.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAM5D,wBAAgB,4BAA4B,CAC1C,EACE,2BAA2B,EAC3B,mCAAmC,EACnC,OAAO,GACR,EAAE,sBAAsB,EACzB,aAAa,EAAE,QAAQ,CAAC,oBAAoB,CAAC,EAC7C,sBAAsB,EAAE,OAAO,EAC/B,0BAA0B,EAAE,GAAG,CAAC,MAAM,CAAC,GACtC,qBAAqB,GAAG,SAAS,CAqFnC"}
|
@@ -8,8 +8,9 @@ const debug_1 = __importDefault(require("debug"));
|
|
8
8
|
const minimatch_1 = require("minimatch");
|
9
9
|
const path_1 = __importDefault(require("path"));
|
10
10
|
const createProjectProgram_1 = require("./create-program/createProjectProgram");
|
11
|
+
const validateDefaultProjectForFilesGlob_1 = require("./create-program/validateDefaultProjectForFilesGlob");
|
11
12
|
const log = (0, debug_1.default)('typescript-eslint:typescript-estree:useProgramFromProjectService');
|
12
|
-
function useProgramFromProjectService({ allowDefaultProjectForFiles, service }, parseSettings, hasFullTypeInformation) {
|
13
|
+
function useProgramFromProjectService({ allowDefaultProjectForFiles, maximumDefaultProjectFileMatchCount, service, }, parseSettings, hasFullTypeInformation, defaultProjectMatchedFiles) {
|
13
14
|
// We don't canonicalize the filename because it caused a performance regression.
|
14
15
|
// See https://github.com/typescript-eslint/typescript-eslint/issues/8519
|
15
16
|
const filePathAbsolute = absolutify(parseSettings.filePath);
|
@@ -42,6 +43,17 @@ function useProgramFromProjectService({ allowDefaultProjectForFiles, service },
|
|
42
43
|
log('Could not find project service program for: %s', filePathAbsolute);
|
43
44
|
return undefined;
|
44
45
|
}
|
46
|
+
defaultProjectMatchedFiles.add(filePathAbsolute);
|
47
|
+
if (defaultProjectMatchedFiles.size > maximumDefaultProjectFileMatchCount) {
|
48
|
+
throw new Error(`Too many files (>${maximumDefaultProjectFileMatchCount}) have matched the default project.${validateDefaultProjectForFilesGlob_1.DEFAULT_PROJECT_FILES_ERROR_EXPLANATION}
|
49
|
+
Matching files:
|
50
|
+
${Array.from(defaultProjectMatchedFiles)
|
51
|
+
.map(file => `- ${file}`)
|
52
|
+
.join('\n')}
|
53
|
+
|
54
|
+
If you absolutely need more files included, set parserOptions.EXPERIMENTAL_useProjectService.maximumDefaultProjectFileMatchCount_THIS_WILL_SLOW_DOWN_LINTING to a larger value.
|
55
|
+
`);
|
56
|
+
}
|
45
57
|
log('Found project service program for: %s', filePathAbsolute);
|
46
58
|
return (0, createProjectProgram_1.createProjectProgram)(parseSettings, [program]);
|
47
59
|
function absolutify(filePath) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useProgramFromProjectService.js","sourceRoot":"","sources":["../src/useProgramFromProjectService.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,yCAAsC;AACtC,gDAAwB;AAExB,gFAA6E;
|
1
|
+
{"version":3,"file":"useProgramFromProjectService.js","sourceRoot":"","sources":["../src/useProgramFromProjectService.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@typescript-eslint/typescript-estree",
|
3
|
-
"version": "7.7.2-alpha.
|
3
|
+
"version": "7.7.2-alpha.5",
|
4
4
|
"description": "A parser that converts TypeScript source code into an ESTree compatible form",
|
5
5
|
"files": [
|
6
6
|
"dist",
|
@@ -54,8 +54,8 @@
|
|
54
54
|
"typecheck": "tsc -p tsconfig.json --noEmit"
|
55
55
|
},
|
56
56
|
"dependencies": {
|
57
|
-
"@typescript-eslint/types": "7.7.2-alpha.
|
58
|
-
"@typescript-eslint/visitor-keys": "7.7.2-alpha.
|
57
|
+
"@typescript-eslint/types": "7.7.2-alpha.5",
|
58
|
+
"@typescript-eslint/visitor-keys": "7.7.2-alpha.5",
|
59
59
|
"debug": "^4.3.4",
|
60
60
|
"globby": "^11.1.0",
|
61
61
|
"is-glob": "^4.0.3",
|