diff options
-rw-r--r-- | js/compiler.ts | 9 | ||||
-rw-r--r-- | js/compiler_test.ts | 3 | ||||
-rw-r--r-- | rollup.config.js | 1 |
3 files changed, 9 insertions, 4 deletions
diff --git a/js/compiler.ts b/js/compiler.ts index 904e38eba..85d808520 100644 --- a/js/compiler.ts +++ b/js/compiler.ts @@ -68,6 +68,7 @@ interface Ts { createLanguageService: typeof ts.createLanguageService; /* tslint:disable-next-line:max-line-length */ formatDiagnosticsWithColorAndContext: typeof ts.formatDiagnosticsWithColorAndContext; + formatDiagnostics: typeof ts.formatDiagnostics; } /** A simple object structure for caching resolved modules and their contents. @@ -344,10 +345,10 @@ class Compiler implements ts.LanguageServiceHost, ts.FormatDiagnosticsHost { ...service.getSemanticDiagnostics(fileName) ]; if (diagnostics.length > 0) { - const errMsg = this._ts.formatDiagnosticsWithColorAndContext( - diagnostics, - this - ); + const errMsg = os.noColor + ? this._ts.formatDiagnostics(diagnostics, this) + : this._ts.formatDiagnosticsWithColorAndContext(diagnostics, this); + console.log(errMsg); // All TypeScript errors are terminal for deno this._os.exit(1); diff --git a/js/compiler_test.ts b/js/compiler_test.ts index 771fbcc6b..57da29ea0 100644 --- a/js/compiler_test.ts +++ b/js/compiler_test.ts @@ -308,6 +308,9 @@ const tsMock = { createLanguageService() { return {} as any; }, + formatDiagnostics(diagnostics: ReadonlyArray<any>, _host: any): string { + return JSON.stringify(diagnostics.map(({ messageText }) => messageText)); + }, formatDiagnosticsWithColorAndContext( diagnostics: ReadonlyArray<any>, _host: any diff --git a/rollup.config.js b/rollup.config.js index cd5e8394a..30d03bd77 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -264,6 +264,7 @@ export default function makeConfig(commandOptions) { // bundle [typescriptPath]: [ "createLanguageService", + "formatDiagnostics", "formatDiagnosticsWithColorAndContext", "ModuleKind", "ScriptKind", |