await withESLintClass()

in server/src/eslintServer.ts [1614:1643]


	await withESLintClass(async (eslintClass) => {
		codeActions.delete(uri);
		const reportResults: ESLintDocumentReport[] = await eslintClass.lintText(content, { filePath: file, warnIgnored: settings.onIgnoredFiles !== ESLintSeverity.off });
		RuleMetaData.capture(eslintClass, reportResults);
		const diagnostics: Diagnostic[] = [];
		if (reportResults && Array.isArray(reportResults) && reportResults.length > 0) {
			const docReport = reportResults[0];
			if (docReport.messages && Array.isArray(docReport.messages)) {
				docReport.messages.forEach((problem) => {
					if (problem) {
						const [diagnostic, override] = makeDiagnostic(settings, problem);
						if (!(override === RuleSeverity.off || (settings.quiet && diagnostic.severity === DiagnosticSeverity.Warning))) {
							diagnostics.push(diagnostic);
						}
						if (fixTypes !== undefined && problem.ruleId !== undefined && problem.fix !== undefined) {
							const type = RuleMetaData.getType(problem.ruleId);
							if (type !== undefined && fixTypes.has(type)) {
								recordCodeAction(document, diagnostic, problem);
							}
						} else {
							recordCodeAction(document, diagnostic, problem);
						}
					}
				});
			}
		}
		if (publishDiagnostics) {
			connection.sendDiagnostics({ uri, diagnostics });
		}
	}, settings);