Skip to content

Commit

Permalink
fix(compiler): return original file content and show warning on emit …
Browse files Browse the repository at this point in the history
…skip (#2410)

Closes #2407
  • Loading branch information
ahnpnl authored Feb 28, 2021
1 parent 064bf3a commit c2b2164
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 2 deletions.
4 changes: 3 additions & 1 deletion src/compiler/ts-compiler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,9 @@ export class TsCompiler implements TsCompilerInstance {
this._doTypeChecking(fileName)
/* istanbul ignore next (this should never happen but is kept for security) */
if (output.emitSkipped) {
throw new Error(interpolate(Errors.CannotCompile, { file: fileName }))
this._logger.warn(interpolate(Errors.CannotProcessFile, { file: fileName }))

return fileContent
}
// Throw an error when requiring `.d.ts` files.
if (!output.outputFiles.length) {
Expand Down
2 changes: 1 addition & 1 deletion src/utils/messages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export const enum Errors {
GotUnknownFileTypeWithBabel = 'Got a unknown file type to compile (file: {{path}}). To fix this, in your Jest config change the `transform` key which value is `ts-jest` so that it does not match this kind of files anymore. If you still want Babel to process it, add another entry to the `transform` option with value `babel-jest` which key matches this type of files.',
ConfigNoModuleInterop = 'If you have issues related to imports, you should consider setting `esModuleInterop` to `true` in your TypeScript configuration file (usually `tsconfig.json`). See https://blogs.msdn.microsoft.com/typescript/2018/01/31/announcing-typescript-2-7/#easier-ecmascript-module-interoperability for more information.',
MismatchNodeTargetMapping = 'There is a mismatch between your NodeJs version {{nodeJsVer}} and your TypeScript target {{compilationTarget}}. This might lead to some unexpected errors when running tests with `ts-jest`. To fix this, you can check https://github.com/microsoft/TypeScript/wiki/Node-Target-Mapping',
CannotCompile = "Unable to process '{{file}}'. Please make sure that `outDir` in your tsconfig is neither `''` or `'.'`.",
CannotProcessFile = "Unable to process '{{file}}', falling back to original file content. Please make sure that `outDir` in your tsconfig is neither `''` or `'.'`. You can also configure Jest config option `transformIgnorePatterns` to ignore {{file}} from transformation",
}

/**
Expand Down

0 comments on commit c2b2164

Please sign in to comment.