From 1b846fcd7235c45e0b179da5483f04a427916f06 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Tue, 25 Oct 2022 23:11:40 -0400 Subject: [PATCH 1/5] chore(typescript-estree): deprecate createDefaultProgram --- packages/parser/README.md | 10 ++-------- packages/typescript-estree/README.md | 3 ++- .../src/create-program/createDefaultProgram.ts | 4 ++++ .../src/create-program/createProjectProgram.ts | 2 +- .../src/parseSettings/createParseSettings.ts | 3 ++- packages/typescript-estree/src/parseSettings/index.ts | 5 ++++- packages/typescript-estree/src/parser-options.ts | 3 ++- packages/typescript-estree/src/parser.ts | 3 ++- packages/typescript-estree/tests/lib/parse.test.ts | 10 +++++----- .../typescript-estree/tests/lib/semanticInfo.test.ts | 2 +- packages/website/src/components/linter/config.ts | 2 +- 11 files changed, 26 insertions(+), 21 deletions(-) diff --git a/packages/parser/README.md b/packages/parser/README.md index b32ed30beab..703749c998b 100644 --- a/packages/parser/README.md +++ b/packages/parser/README.md @@ -168,7 +168,7 @@ This option allows you to provide a path to your project's `tsconfig.json`. **Th - TypeScript will ignore files with duplicate filenames in the same folder (for example, `src/file.ts` and `src/file.js`). TypeScript purposely ignore all but one of the files, only keeping the one file with the highest priority extension (the extension priority order (from highest to lowest) is `.ts`, `.tsx`, `.d.ts`, `.js`, `.jsx`). For more info see #955. -- Note that if this setting is specified and `createDefaultProgram` is not, you must only lint files that are included in the projects as defined by the provided `tsconfig.json` files. If your existing configuration does not include all of the files you would like to lint, you can create a separate `tsconfig.eslint.json` as follows: +- Note that if this setting is specified, you must only lint files that are included in the projects as defined by the provided `tsconfig.json` files. If your existing configuration does not include all of the files you would like to lint, you can create a separate `tsconfig.eslint.json` as follows: ```jsonc { @@ -217,18 +217,12 @@ Default `true`. This option allows you to toggle the warning that the parser will give you if you use a version of TypeScript which is not explicitly supported -### `parserOptions.createDefaultProgram` - -Default `false`. - -This option allows you to request that when the `project` setting is specified, files will be allowed when not included in the projects defined by the provided `tsconfig.json` files. **Using this option will incur significant performance costs. This option is primarily included for backwards-compatibility.** See the **`project`** section above for more information. - ### `parserOptions.programs` Default `undefined`. This option allows you to programmatically provide an array of one or more instances of a TypeScript Program object that will provide type information to rules. -This will override any programs that would have been computed from `parserOptions.project` or `parserOptions.createDefaultProgram`. +This will override any programs that would have been computed from `parserOptions.project`. All linted files must be part of the provided program(s). ### `parserOptions.moduleResolver` diff --git a/packages/typescript-estree/README.md b/packages/typescript-estree/README.md index cb1d0d0312c..ffdc7336ce3 100644 --- a/packages/typescript-estree/README.md +++ b/packages/typescript-estree/README.md @@ -207,6 +207,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { programs?: Program[]; /** + * @deprecated *************************************************************************************** * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * *************************************************************************************** @@ -215,7 +216,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { * This means that if the parser encounters a file not included in any of the provided `project`s, * it will not error, but will instead parse the file and its dependencies in a new program. */ - createDefaultProgram?: boolean; + deprecated__createDefaultProgram?: boolean; /** * ESLint (and therefore typescript-eslint) is used in both "single run"/one-time contexts, diff --git a/packages/typescript-estree/src/create-program/createDefaultProgram.ts b/packages/typescript-estree/src/create-program/createDefaultProgram.ts index a2de81399d2..a567b8183fe 100644 --- a/packages/typescript-estree/src/create-program/createDefaultProgram.ts +++ b/packages/typescript-estree/src/create-program/createDefaultProgram.ts @@ -14,6 +14,9 @@ const log = debug('typescript-eslint:typescript-estree:createDefaultProgram'); /** * @param parseSettings Internal settings for parsing the file * @returns If found, returns the source file corresponding to the code and the containing program + * @deprecated + * This is a legacy option that comes with severe performance penalties. + * Please do not use it. */ function createDefaultProgram( parseSettings: ParseSettings, @@ -66,4 +69,5 @@ function createDefaultProgram( return ast && { ast, program }; } +// eslint-disable-next-line deprecation/deprecation export { createDefaultProgram }; diff --git a/packages/typescript-estree/src/create-program/createProjectProgram.ts b/packages/typescript-estree/src/create-program/createProjectProgram.ts index 326100d3578..057ec6f37a0 100644 --- a/packages/typescript-estree/src/create-program/createProjectProgram.ts +++ b/packages/typescript-estree/src/create-program/createProjectProgram.ts @@ -36,7 +36,7 @@ function createProjectProgram( ); // The file was either matched within the tsconfig, or we allow creating a default program - if (astAndProgram || parseSettings.createDefaultProgram) { + if (astAndProgram || parseSettings.deprecated__createDefaultProgram) { return astAndProgram; } diff --git a/packages/typescript-estree/src/parseSettings/createParseSettings.ts b/packages/typescript-estree/src/parseSettings/createParseSettings.ts index b1cde9d4c9a..4fc8d25fcee 100644 --- a/packages/typescript-estree/src/parseSettings/createParseSettings.ts +++ b/packages/typescript-estree/src/parseSettings/createParseSettings.ts @@ -28,7 +28,8 @@ export function createParseSettings( code: enforceString(code), comment: options.comment === true, comments: [], - createDefaultProgram: options.createDefaultProgram === true, + deprecated__createDefaultProgram: + options.deprecated__createDefaultProgram === true, debugLevel: options.debugLevel === true ? new Set(['typescript-eslint']) diff --git a/packages/typescript-estree/src/parseSettings/index.ts b/packages/typescript-estree/src/parseSettings/index.ts index 0a9734d1b24..e67150e53cb 100644 --- a/packages/typescript-estree/src/parseSettings/index.ts +++ b/packages/typescript-estree/src/parseSettings/index.ts @@ -26,8 +26,11 @@ export interface MutableParseSettings { /** * Whether to create a TypeScript program if one is not provided. + * @deprecated + * This is a legacy option that comes with severe performance penalties. + * Please do not use it. */ - createDefaultProgram: boolean; + deprecated__createDefaultProgram: boolean; /** * Which debug areas should be logged. diff --git a/packages/typescript-estree/src/parser-options.ts b/packages/typescript-estree/src/parser-options.ts index cec95c3b413..29c47a5aae5 100644 --- a/packages/typescript-estree/src/parser-options.ts +++ b/packages/typescript-estree/src/parser-options.ts @@ -144,6 +144,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { programs?: ts.Program[]; /** + * @deprecated *************************************************************************************** * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * *************************************************************************************** @@ -152,7 +153,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { * This means that if the parser encounters a file not included in any of the provided `project`s, * it will not error, but will instead parse the file and its dependencies in a new program. */ - createDefaultProgram?: boolean; + deprecated__createDefaultProgram?: boolean; /** * ESLint (and therefore typescript-eslint) is used in both "single run"/one-time contexts, diff --git a/packages/typescript-estree/src/parser.ts b/packages/typescript-estree/src/parser.ts index c5504ba961a..a46ae46f1fc 100644 --- a/packages/typescript-estree/src/parser.ts +++ b/packages/typescript-estree/src/parser.ts @@ -44,7 +44,8 @@ function getProgramAndAST( useProvidedPrograms(parseSettings.programs, parseSettings)) || (shouldProvideParserServices && createProjectProgram(parseSettings)) || (shouldProvideParserServices && - parseSettings.createDefaultProgram && + // eslint-disable-next-line deprecation/deprecation + parseSettings.deprecated__createDefaultProgram && createDefaultProgram(parseSettings)) || createIsolatedProgram(parseSettings) ); diff --git a/packages/typescript-estree/tests/lib/parse.test.ts b/packages/typescript-estree/tests/lib/parse.test.ts index dab87e38ab6..e862003d96f 100644 --- a/packages/typescript-estree/tests/lib/parse.test.ts +++ b/packages/typescript-estree/tests/lib/parse.test.ts @@ -773,10 +773,10 @@ describe('parseAndGenerateServices', () => { tsconfigRootDir: PROJECT_DIR, filePath: resolve(PROJECT_DIR, 'file.ts'), }; - const withDefaultProgramConfig: TSESTreeOptions = { + const withDeprecatedDefaultProgramConfig: TSESTreeOptions = { ...config, project: './tsconfig.defaultProgram.json', - createDefaultProgram: true, + deprecated__createDefaultProgram: true, }; describe('when file is in the project', () => { @@ -818,11 +818,11 @@ describe('parseAndGenerateServices', () => { }); }); - describe('when file is not in the project and createDefaultProgram=true', () => { + describe('when file is not in the project and deprecated__createDefaultProgram=true', () => { it('returns error because __PLACEHOLDER__ can not be resolved', () => { expect( parser - .parseAndGenerateServices(code, withDefaultProgramConfig) + .parseAndGenerateServices(code, withDeprecatedDefaultProgramConfig) .services.program.getSemanticDiagnostics(), ).toHaveProperty( [0, 'messageText'], @@ -834,7 +834,7 @@ describe('parseAndGenerateServices', () => { expect( parser .parseAndGenerateServices(code, { - ...withDefaultProgramConfig, + ...withDeprecatedDefaultProgramConfig, moduleResolver: resolve(PROJECT_DIR, './moduleResolver.js'), }) .services.program.getSemanticDiagnostics(), diff --git a/packages/typescript-estree/tests/lib/semanticInfo.test.ts b/packages/typescript-estree/tests/lib/semanticInfo.test.ts index fae6a383662..5a2ad257e18 100644 --- a/packages/typescript-estree/tests/lib/semanticInfo.test.ts +++ b/packages/typescript-estree/tests/lib/semanticInfo.test.ts @@ -287,7 +287,7 @@ describe('semanticInfo', () => { it('default program produced with option', () => { const parseResult = parseCodeAndGenerateServices('var foo = 5;', { ...createOptions(''), - createDefaultProgram: true, + deprecated__createDefaultProgram: true, }); expect(parseResult.services.program).toBeDefined(); diff --git a/packages/website/src/components/linter/config.ts b/packages/website/src/components/linter/config.ts index f077f3786ee..4dc76d4a4d0 100644 --- a/packages/website/src/components/linter/config.ts +++ b/packages/website/src/components/linter/config.ts @@ -4,7 +4,7 @@ export const parseSettings: ParseSettings = { code: '', comment: true, comments: [], - createDefaultProgram: false, + deprecated__createDefaultProgram: false, debugLevel: new Set(), errorOnUnknownASTType: false, extraFileExtensions: [], From 2091225c445ca0b02f60b88cce42793e8da43915 Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Wed, 26 Oct 2022 11:13:40 -0400 Subject: [PATCH 2/5] Apply suggestions from code review Co-authored-by: Brad Zacher --- packages/typescript-estree/README.md | 2 +- .../src/create-program/createDefaultProgram.ts | 2 +- packages/typescript-estree/src/parser.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/typescript-estree/README.md b/packages/typescript-estree/README.md index ffdc7336ce3..59567f1b47d 100644 --- a/packages/typescript-estree/README.md +++ b/packages/typescript-estree/README.md @@ -216,7 +216,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { * This means that if the parser encounters a file not included in any of the provided `project`s, * it will not error, but will instead parse the file and its dependencies in a new program. */ - deprecated__createDefaultProgram?: boolean; + DEPRECATED__createDefaultProgram?: boolean; /** * ESLint (and therefore typescript-eslint) is used in both "single run"/one-time contexts, diff --git a/packages/typescript-estree/src/create-program/createDefaultProgram.ts b/packages/typescript-estree/src/create-program/createDefaultProgram.ts index a567b8183fe..bfcc3066b17 100644 --- a/packages/typescript-estree/src/create-program/createDefaultProgram.ts +++ b/packages/typescript-estree/src/create-program/createDefaultProgram.ts @@ -69,5 +69,5 @@ function createDefaultProgram( return ast && { ast, program }; } -// eslint-disable-next-line deprecation/deprecation +// eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major export { createDefaultProgram }; diff --git a/packages/typescript-estree/src/parser.ts b/packages/typescript-estree/src/parser.ts index a46ae46f1fc..13b3133f5be 100644 --- a/packages/typescript-estree/src/parser.ts +++ b/packages/typescript-estree/src/parser.ts @@ -44,7 +44,7 @@ function getProgramAndAST( useProvidedPrograms(parseSettings.programs, parseSettings)) || (shouldProvideParserServices && createProjectProgram(parseSettings)) || (shouldProvideParserServices && - // eslint-disable-next-line deprecation/deprecation + // eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major parseSettings.deprecated__createDefaultProgram && createDefaultProgram(parseSettings)) || createIsolatedProgram(parseSettings) From ac22db87a31e8222cbf7d5e55691358015c7201f Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Wed, 26 Oct 2022 11:14:32 -0400 Subject: [PATCH 3/5] More updates to comments and name --- packages/typescript-estree/README.md | 10 ++-------- .../src/create-program/createProjectProgram.ts | 2 +- .../src/parseSettings/createParseSettings.ts | 4 ++-- .../typescript-estree/src/parseSettings/index.ts | 2 +- packages/typescript-estree/src/parser-options.ts | 12 +++--------- packages/typescript-estree/src/parser.ts | 2 +- packages/typescript-estree/tests/lib/parse.test.ts | 4 ++-- .../typescript-estree/tests/lib/semanticInfo.test.ts | 2 +- packages/website/src/components/linter/config.ts | 2 +- 9 files changed, 14 insertions(+), 26 deletions(-) diff --git a/packages/typescript-estree/README.md b/packages/typescript-estree/README.md index 59567f1b47d..5a645dd5f20 100644 --- a/packages/typescript-estree/README.md +++ b/packages/typescript-estree/README.md @@ -207,14 +207,8 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { programs?: Program[]; /** - * @deprecated - *************************************************************************************** - * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * - *************************************************************************************** - * - * When passed with `project`, this allows the parser to create a catch-all, default program. - * This means that if the parser encounters a file not included in any of the provided `project`s, - * it will not error, but will instead parse the file and its dependencies in a new program. + * @deprecated - this flag will be removed in the next major. + * Do not rely on the behaviour provided by this flag. */ DEPRECATED__createDefaultProgram?: boolean; diff --git a/packages/typescript-estree/src/create-program/createProjectProgram.ts b/packages/typescript-estree/src/create-program/createProjectProgram.ts index 057ec6f37a0..fedec4b5fba 100644 --- a/packages/typescript-estree/src/create-program/createProjectProgram.ts +++ b/packages/typescript-estree/src/create-program/createProjectProgram.ts @@ -36,7 +36,7 @@ function createProjectProgram( ); // The file was either matched within the tsconfig, or we allow creating a default program - if (astAndProgram || parseSettings.deprecated__createDefaultProgram) { + if (astAndProgram || parseSettings.DEPRECATED__createDefaultProgram) { return astAndProgram; } diff --git a/packages/typescript-estree/src/parseSettings/createParseSettings.ts b/packages/typescript-estree/src/parseSettings/createParseSettings.ts index 4fc8d25fcee..186b5ce9e11 100644 --- a/packages/typescript-estree/src/parseSettings/createParseSettings.ts +++ b/packages/typescript-estree/src/parseSettings/createParseSettings.ts @@ -28,8 +28,8 @@ export function createParseSettings( code: enforceString(code), comment: options.comment === true, comments: [], - deprecated__createDefaultProgram: - options.deprecated__createDefaultProgram === true, + DEPRECATED__createDefaultProgram: + options.DEPRECATED__createDefaultProgram === true, debugLevel: options.debugLevel === true ? new Set(['typescript-eslint']) diff --git a/packages/typescript-estree/src/parseSettings/index.ts b/packages/typescript-estree/src/parseSettings/index.ts index e67150e53cb..1fe9e448f86 100644 --- a/packages/typescript-estree/src/parseSettings/index.ts +++ b/packages/typescript-estree/src/parseSettings/index.ts @@ -30,7 +30,7 @@ export interface MutableParseSettings { * This is a legacy option that comes with severe performance penalties. * Please do not use it. */ - deprecated__createDefaultProgram: boolean; + DEPRECATED__createDefaultProgram: boolean; /** * Which debug areas should be logged. diff --git a/packages/typescript-estree/src/parser-options.ts b/packages/typescript-estree/src/parser-options.ts index 29c47a5aae5..29e051740c5 100644 --- a/packages/typescript-estree/src/parser-options.ts +++ b/packages/typescript-estree/src/parser-options.ts @@ -144,16 +144,10 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { programs?: ts.Program[]; /** - * @deprecated - *************************************************************************************** - * IT IS RECOMMENDED THAT YOU DO NOT USE THIS OPTION, AS IT CAUSES PERFORMANCE ISSUES. * - *************************************************************************************** - * - * When passed with `project`, this allows the parser to create a catch-all, default program. - * This means that if the parser encounters a file not included in any of the provided `project`s, - * it will not error, but will instead parse the file and its dependencies in a new program. + * @deprecated - this flag will be removed in the next major. + * Do not rely on the behaviour provided by this flag. */ - deprecated__createDefaultProgram?: boolean; + DEPRECATED__createDefaultProgram?: boolean; /** * ESLint (and therefore typescript-eslint) is used in both "single run"/one-time contexts, diff --git a/packages/typescript-estree/src/parser.ts b/packages/typescript-estree/src/parser.ts index 13b3133f5be..0e75a2db6f7 100644 --- a/packages/typescript-estree/src/parser.ts +++ b/packages/typescript-estree/src/parser.ts @@ -45,7 +45,7 @@ function getProgramAndAST( (shouldProvideParserServices && createProjectProgram(parseSettings)) || (shouldProvideParserServices && // eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major - parseSettings.deprecated__createDefaultProgram && + parseSettings.DEPRECATED__createDefaultProgram && createDefaultProgram(parseSettings)) || createIsolatedProgram(parseSettings) ); diff --git a/packages/typescript-estree/tests/lib/parse.test.ts b/packages/typescript-estree/tests/lib/parse.test.ts index e862003d96f..afa44a8c5f8 100644 --- a/packages/typescript-estree/tests/lib/parse.test.ts +++ b/packages/typescript-estree/tests/lib/parse.test.ts @@ -776,7 +776,7 @@ describe('parseAndGenerateServices', () => { const withDeprecatedDefaultProgramConfig: TSESTreeOptions = { ...config, project: './tsconfig.defaultProgram.json', - deprecated__createDefaultProgram: true, + DEPRECATED__createDefaultProgram: true, }; describe('when file is in the project', () => { @@ -818,7 +818,7 @@ describe('parseAndGenerateServices', () => { }); }); - describe('when file is not in the project and deprecated__createDefaultProgram=true', () => { + describe('when file is not in the project and DEPRECATED__createDefaultProgram=true', () => { it('returns error because __PLACEHOLDER__ can not be resolved', () => { expect( parser diff --git a/packages/typescript-estree/tests/lib/semanticInfo.test.ts b/packages/typescript-estree/tests/lib/semanticInfo.test.ts index 5a2ad257e18..04b0b7e6052 100644 --- a/packages/typescript-estree/tests/lib/semanticInfo.test.ts +++ b/packages/typescript-estree/tests/lib/semanticInfo.test.ts @@ -287,7 +287,7 @@ describe('semanticInfo', () => { it('default program produced with option', () => { const parseResult = parseCodeAndGenerateServices('var foo = 5;', { ...createOptions(''), - deprecated__createDefaultProgram: true, + DEPRECATED__createDefaultProgram: true, }); expect(parseResult.services.program).toBeDefined(); diff --git a/packages/website/src/components/linter/config.ts b/packages/website/src/components/linter/config.ts index 4dc76d4a4d0..c3e95b321c3 100644 --- a/packages/website/src/components/linter/config.ts +++ b/packages/website/src/components/linter/config.ts @@ -4,7 +4,7 @@ export const parseSettings: ParseSettings = { code: '', comment: true, comments: [], - deprecated__createDefaultProgram: false, + DEPRECATED__createDefaultProgram: false, debugLevel: new Set(), errorOnUnknownASTType: false, extraFileExtensions: [], From a4a470fe75e2265218492f05494a07d666b6453b Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Wed, 26 Oct 2022 11:16:12 -0400 Subject: [PATCH 4/5] One more comment line removal --- packages/typescript-estree/src/parseSettings/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/typescript-estree/src/parseSettings/index.ts b/packages/typescript-estree/src/parseSettings/index.ts index 1fe9e448f86..02479d5bd2b 100644 --- a/packages/typescript-estree/src/parseSettings/index.ts +++ b/packages/typescript-estree/src/parseSettings/index.ts @@ -25,7 +25,6 @@ export interface MutableParseSettings { comments: TSESTree.Comment[]; /** - * Whether to create a TypeScript program if one is not provided. * @deprecated * This is a legacy option that comes with severe performance penalties. * Please do not use it. From ae52f07855516e7af9469fc1fd58c5d61e0b8e6a Mon Sep 17 00:00:00 2001 From: Josh Goldberg Date: Wed, 26 Oct 2022 17:50:03 -0400 Subject: [PATCH 5/5] Fix lint complaints --- packages/typescript-estree/README.md | 2 +- .../src/create-program/createProjectProgram.ts | 1 + .../typescript-estree/src/parseSettings/createParseSettings.ts | 1 + packages/typescript-estree/src/parser-options.ts | 2 +- packages/typescript-estree/src/parser.ts | 1 + 5 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/typescript-estree/README.md b/packages/typescript-estree/README.md index 5a645dd5f20..f2da0d9cdf1 100644 --- a/packages/typescript-estree/README.md +++ b/packages/typescript-estree/README.md @@ -208,7 +208,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { /** * @deprecated - this flag will be removed in the next major. - * Do not rely on the behaviour provided by this flag. + * Do not rely on the behavior provided by this flag. */ DEPRECATED__createDefaultProgram?: boolean; diff --git a/packages/typescript-estree/src/create-program/createProjectProgram.ts b/packages/typescript-estree/src/create-program/createProjectProgram.ts index fedec4b5fba..315e3b05c2f 100644 --- a/packages/typescript-estree/src/create-program/createProjectProgram.ts +++ b/packages/typescript-estree/src/create-program/createProjectProgram.ts @@ -36,6 +36,7 @@ function createProjectProgram( ); // The file was either matched within the tsconfig, or we allow creating a default program + // eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major if (astAndProgram || parseSettings.DEPRECATED__createDefaultProgram) { return astAndProgram; } diff --git a/packages/typescript-estree/src/parseSettings/createParseSettings.ts b/packages/typescript-estree/src/parseSettings/createParseSettings.ts index 186b5ce9e11..7a0965ae51c 100644 --- a/packages/typescript-estree/src/parseSettings/createParseSettings.ts +++ b/packages/typescript-estree/src/parseSettings/createParseSettings.ts @@ -29,6 +29,7 @@ export function createParseSettings( comment: options.comment === true, comments: [], DEPRECATED__createDefaultProgram: + // eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major options.DEPRECATED__createDefaultProgram === true, debugLevel: options.debugLevel === true diff --git a/packages/typescript-estree/src/parser-options.ts b/packages/typescript-estree/src/parser-options.ts index 29e051740c5..8a4054f9237 100644 --- a/packages/typescript-estree/src/parser-options.ts +++ b/packages/typescript-estree/src/parser-options.ts @@ -145,7 +145,7 @@ interface ParseAndGenerateServicesOptions extends ParseOptions { /** * @deprecated - this flag will be removed in the next major. - * Do not rely on the behaviour provided by this flag. + * Do not rely on the behavior provided by this flag. */ DEPRECATED__createDefaultProgram?: boolean; diff --git a/packages/typescript-estree/src/parser.ts b/packages/typescript-estree/src/parser.ts index 0e75a2db6f7..478cfa490c9 100644 --- a/packages/typescript-estree/src/parser.ts +++ b/packages/typescript-estree/src/parser.ts @@ -46,6 +46,7 @@ function getProgramAndAST( (shouldProvideParserServices && // eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major parseSettings.DEPRECATED__createDefaultProgram && + // eslint-disable-next-line deprecation/deprecation -- will be cleaned up with the next major createDefaultProgram(parseSettings)) || createIsolatedProgram(parseSettings) );