From b0901799adc519959a954dba5e7b8fc8b97a9665 Mon Sep 17 00:00:00 2001 From: Ahn <27772165+ahnpnl@users.noreply.github.com> Date: Sun, 24 Apr 2022 19:03:36 +0200 Subject: [PATCH] feat: mark `TsJestTransformer` as legacy (#3451) --- .../hoist-jest/jest-isolated.config.js | 2 +- e2e/ast-transformers/hoist-jest/package.json | 2 +- .../transformer-in-ts/package.json | 2 +- .../jest-isolated.config.js | 2 +- .../transformer-options/package.json | 2 +- e2e/const-enum/jest-isolated.config.js | 2 +- e2e/const-enum/package.json | 2 +- e2e/coverage-report/jest-isolated.config.js | 2 +- e2e/coverage-report/package.json | 2 +- e2e/custom-compiler/ttypescript/package.json | 2 +- e2e/diagnostics/jest-disabled.config.js | 2 +- e2e/diagnostics/jest-exclude.config.js | 2 +- e2e/diagnostics/jest-ignored-code.config.js | 2 +- e2e/diagnostics/jest-isolated.config.js | 2 +- e2e/diagnostics/jest-warn.config.js | 2 +- e2e/diagnostics/package.json | 2 +- e2e/enum/jest-isolated.config.js | 2 +- e2e/enum/package.json | 2 +- e2e/extend-ts-jest/foo-transformer.js | 4 ++-- e2e/native-esm-js/isolated/package.json | 2 +- e2e/native-esm-js/non-isolated/package.json | 2 +- e2e/native-esm-ts/jest-isolated.config.js | 2 +- e2e/native-esm-ts/package.json | 2 +- e2e/presets/package.json | 2 +- .../disabled/jest-isolated.config.js | 2 +- e2e/source-map/disabled/jest.config.js | 2 +- .../enabled/jest-isolated.config.js | 2 +- e2e/source-map/enabled/jest.config.js | 2 +- e2e/test-utils/package.json | 2 +- .../babel-cjs-file/jest.config.js | 2 +- e2e/transform-js/babel-enabled/jest.config.js | 2 +- e2e/transform-js/babel-js-file/jest.config.js | 2 +- e2e/transform-js/no-type-check/jest.config.js | 2 +- e2e/transform-js/type-check/jest.config.js | 2 +- e2e/transform-tsx/jest-isolated.config.js | 2 +- e2e/transform-tsx/package.json | 2 +- jest.config.js | 2 +- legacy.js | 1 + src/index.spec.ts | 2 +- src/index.ts | 8 ++++--- .../ts-jest-transformer.spec.ts.snap | 0 src/legacy/index.ts | 7 ++++++ src/{ => legacy}/ts-jest-transformer.spec.ts | 15 ++++++------ src/{ => legacy}/ts-jest-transformer.ts | 23 +++++++++++-------- src/utils/messages.ts | 7 ++++++ 45 files changed, 80 insertions(+), 59 deletions(-) create mode 100644 legacy.js rename src/{ => legacy}/__snapshots__/ts-jest-transformer.spec.ts.snap (100%) create mode 100644 src/legacy/index.ts rename src/{ => legacy}/ts-jest-transformer.spec.ts (98%) rename src/{ => legacy}/ts-jest-transformer.ts (95%) diff --git a/e2e/ast-transformers/hoist-jest/jest-isolated.config.js b/e2e/ast-transformers/hoist-jest/jest-isolated.config.js index ba69e7d5b0..25d1604668 100644 --- a/e2e/ast-transformers/hoist-jest/jest-isolated.config.js +++ b/e2e/ast-transformers/hoist-jest/jest-isolated.config.js @@ -13,6 +13,6 @@ module.exports = { react$: '/node_modules/react', }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/ast-transformers/hoist-jest/package.json b/e2e/ast-transformers/hoist-jest/package.json index 27f6fac969..2df0e19d16 100644 --- a/e2e/ast-transformers/hoist-jest/package.json +++ b/e2e/ast-transformers/hoist-jest/package.json @@ -16,7 +16,7 @@ "react$": "/node_modules/react" }, "transform": { - "^.+\\.[tj]sx?$": "/../../../dist/index.js" + "^.+\\.[tj]sx?$": "/../../../legacy.js" } } } diff --git a/e2e/ast-transformers/transformer-in-ts/package.json b/e2e/ast-transformers/transformer-in-ts/package.json index b7af817e87..a1e4408309 100644 --- a/e2e/ast-transformers/transformer-in-ts/package.json +++ b/e2e/ast-transformers/transformer-in-ts/package.json @@ -11,7 +11,7 @@ } }, "transform": { - "^.+\\.[tj]sx?$": "/../../../dist/index.js" + "^.+\\.[tj]sx?$": "/../../../legacy.js" } } } diff --git a/e2e/ast-transformers/transformer-options/jest-isolated.config.js b/e2e/ast-transformers/transformer-options/jest-isolated.config.js index 763bbef262..d0b7ce8a22 100644 --- a/e2e/ast-transformers/transformer-options/jest-isolated.config.js +++ b/e2e/ast-transformers/transformer-options/jest-isolated.config.js @@ -16,6 +16,6 @@ module.exports = { }, }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/ast-transformers/transformer-options/package.json b/e2e/ast-transformers/transformer-options/package.json index cc41479bfc..d6d41c1405 100644 --- a/e2e/ast-transformers/transformer-options/package.json +++ b/e2e/ast-transformers/transformer-options/package.json @@ -20,7 +20,7 @@ } }, "transform": { - "^.+\\.[tj]sx?$": "/../../../dist/index.js" + "^.+\\.[tj]sx?$": "/../../../legacy.js" } } } diff --git a/e2e/const-enum/jest-isolated.config.js b/e2e/const-enum/jest-isolated.config.js index 11cb510fe5..b26cdb58b7 100644 --- a/e2e/const-enum/jest-isolated.config.js +++ b/e2e/const-enum/jest-isolated.config.js @@ -6,6 +6,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/const-enum/package.json b/e2e/const-enum/package.json index a2662c811c..ae8fcdff76 100644 --- a/e2e/const-enum/package.json +++ b/e2e/const-enum/package.json @@ -1,7 +1,7 @@ { "jest": { "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/e2e/coverage-report/jest-isolated.config.js b/e2e/coverage-report/jest-isolated.config.js index 2f557a6c8d..a4e809e916 100644 --- a/e2e/coverage-report/jest-isolated.config.js +++ b/e2e/coverage-report/jest-isolated.config.js @@ -7,6 +7,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/coverage-report/package.json b/e2e/coverage-report/package.json index 2346541e3d..5c85972908 100644 --- a/e2e/coverage-report/package.json +++ b/e2e/coverage-report/package.json @@ -7,7 +7,7 @@ "!**/coverage/**" ], "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/e2e/custom-compiler/ttypescript/package.json b/e2e/custom-compiler/ttypescript/package.json index 02b0659d4b..fb7ca396f2 100644 --- a/e2e/custom-compiler/ttypescript/package.json +++ b/e2e/custom-compiler/ttypescript/package.json @@ -10,7 +10,7 @@ } }, "transform": { - "^.+.tsx?$": "/../../../dist/index.js" + "^.+.tsx?$": "/../../../legacy.js" } } } diff --git a/e2e/diagnostics/jest-disabled.config.js b/e2e/diagnostics/jest-disabled.config.js index daa9be25b7..b0ca64c765 100644 --- a/e2e/diagnostics/jest-disabled.config.js +++ b/e2e/diagnostics/jest-disabled.config.js @@ -6,6 +6,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/diagnostics/jest-exclude.config.js b/e2e/diagnostics/jest-exclude.config.js index abb3cb017d..b18806e22e 100644 --- a/e2e/diagnostics/jest-exclude.config.js +++ b/e2e/diagnostics/jest-exclude.config.js @@ -8,6 +8,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/diagnostics/jest-ignored-code.config.js b/e2e/diagnostics/jest-ignored-code.config.js index e4583808fa..6bea033881 100644 --- a/e2e/diagnostics/jest-ignored-code.config.js +++ b/e2e/diagnostics/jest-ignored-code.config.js @@ -8,6 +8,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/diagnostics/jest-isolated.config.js b/e2e/diagnostics/jest-isolated.config.js index 11cb510fe5..b26cdb58b7 100644 --- a/e2e/diagnostics/jest-isolated.config.js +++ b/e2e/diagnostics/jest-isolated.config.js @@ -6,6 +6,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/diagnostics/jest-warn.config.js b/e2e/diagnostics/jest-warn.config.js index c4383858c9..0cef38d0e2 100644 --- a/e2e/diagnostics/jest-warn.config.js +++ b/e2e/diagnostics/jest-warn.config.js @@ -8,6 +8,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/diagnostics/package.json b/e2e/diagnostics/package.json index a2662c811c..ae8fcdff76 100644 --- a/e2e/diagnostics/package.json +++ b/e2e/diagnostics/package.json @@ -1,7 +1,7 @@ { "jest": { "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/e2e/enum/jest-isolated.config.js b/e2e/enum/jest-isolated.config.js index 11cb510fe5..b26cdb58b7 100644 --- a/e2e/enum/jest-isolated.config.js +++ b/e2e/enum/jest-isolated.config.js @@ -6,6 +6,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/enum/package.json b/e2e/enum/package.json index a2662c811c..ae8fcdff76 100644 --- a/e2e/enum/package.json +++ b/e2e/enum/package.json @@ -1,7 +1,7 @@ { "jest": { "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/e2e/extend-ts-jest/foo-transformer.js b/e2e/extend-ts-jest/foo-transformer.js index ae714ded38..249aad6ad7 100644 --- a/e2e/extend-ts-jest/foo-transformer.js +++ b/e2e/extend-ts-jest/foo-transformer.js @@ -1,8 +1,8 @@ -const tsJestTransformer = require('../../dist/ts-jest-transformer') +const tsJestTransformer = require('../../dist/legacy/ts-jest-transformer') class FooTransformer extends tsJestTransformer.TsJestTransformer { async processAsync(sourceText, sourcePath, transformOptions) { - return new Promise((resolve) => resolve(this.process(sourceText, sourcePath, transformOptions))) + return Promise.resolve(this.process(sourceText, sourcePath, transformOptions)) } } module.exports = { diff --git a/e2e/native-esm-js/isolated/package.json b/e2e/native-esm-js/isolated/package.json index 714a13fd93..fc4aa211e7 100644 --- a/e2e/native-esm-js/isolated/package.json +++ b/e2e/native-esm-js/isolated/package.json @@ -13,7 +13,7 @@ "@jest/globals": "/../../../node_modules/@jest/globals" }, "transform": { - "^.+.tsx?$": "/../../../dist/index.js" + "^.+.tsx?$": "/../../../legacy.js" } } } diff --git a/e2e/native-esm-js/non-isolated/package.json b/e2e/native-esm-js/non-isolated/package.json index 11f8725250..4d0edd416a 100644 --- a/e2e/native-esm-js/non-isolated/package.json +++ b/e2e/native-esm-js/non-isolated/package.json @@ -15,7 +15,7 @@ "@jest/globals": "/../../../node_modules/@jest/globals" }, "transform": { - "^.+.tsx?$": "/../../../dist/index.js" + "^.+.tsx?$": "/../../../legacy.js" } } } diff --git a/e2e/native-esm-ts/jest-isolated.config.js b/e2e/native-esm-ts/jest-isolated.config.js index 6b069a7afe..fa9836cc20 100644 --- a/e2e/native-esm-ts/jest-isolated.config.js +++ b/e2e/native-esm-ts/jest-isolated.config.js @@ -8,6 +8,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/native-esm-ts/package.json b/e2e/native-esm-ts/package.json index 78b9f57cab..86ef0d85db 100644 --- a/e2e/native-esm-ts/package.json +++ b/e2e/native-esm-ts/package.json @@ -7,7 +7,7 @@ } }, "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/e2e/presets/package.json b/e2e/presets/package.json index a9ae602e9a..16a509099c 100644 --- a/e2e/presets/package.json +++ b/e2e/presets/package.json @@ -9,7 +9,7 @@ } }, "transform": { - "^.+.[tj]sx?$": "/../../dist/index.js" + "^.+.[tj]sx?$": "/../../legacy.js" } } } diff --git a/e2e/source-map/disabled/jest-isolated.config.js b/e2e/source-map/disabled/jest-isolated.config.js index 7691305a8f..0e93df47a6 100644 --- a/e2e/source-map/disabled/jest-isolated.config.js +++ b/e2e/source-map/disabled/jest-isolated.config.js @@ -11,6 +11,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../../dist/index.js', + '^.+.tsx?$': '/../../../legacy.js', }, } diff --git a/e2e/source-map/disabled/jest.config.js b/e2e/source-map/disabled/jest.config.js index 865c88d8ca..1a0450792d 100644 --- a/e2e/source-map/disabled/jest.config.js +++ b/e2e/source-map/disabled/jest.config.js @@ -10,6 +10,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../../dist/index.js', + '^.+.tsx?$': '/../../../legacy.js', }, } diff --git a/e2e/source-map/enabled/jest-isolated.config.js b/e2e/source-map/enabled/jest-isolated.config.js index b87431545b..1112a2b54e 100644 --- a/e2e/source-map/enabled/jest-isolated.config.js +++ b/e2e/source-map/enabled/jest-isolated.config.js @@ -8,6 +8,6 @@ module.exports = { }, }, transform: { - '^.+.tsx?$': '/../../../dist/index.js', + '^.+.tsx?$': '/../../../legacy.js', }, } diff --git a/e2e/source-map/enabled/jest.config.js b/e2e/source-map/enabled/jest.config.js index 736c67bc1f..5ecd034bbb 100644 --- a/e2e/source-map/enabled/jest.config.js +++ b/e2e/source-map/enabled/jest.config.js @@ -3,6 +3,6 @@ module.exports = { displayName: 'sourcemap-enabled', roots: ['', '/../__tests__'], transform: { - '^.+.tsx?$': '/../../../dist/index.js', + '^.+.tsx?$': '/../../../legacy.js', }, } diff --git a/e2e/test-utils/package.json b/e2e/test-utils/package.json index a2662c811c..ae8fcdff76 100644 --- a/e2e/test-utils/package.json +++ b/e2e/test-utils/package.json @@ -1,7 +1,7 @@ { "jest": { "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/e2e/transform-js/babel-cjs-file/jest.config.js b/e2e/transform-js/babel-cjs-file/jest.config.js index 7995e4026c..74a5cfb9c0 100644 --- a/e2e/transform-js/babel-cjs-file/jest.config.js +++ b/e2e/transform-js/babel-cjs-file/jest.config.js @@ -13,6 +13,6 @@ module.exports = { 'babel-jest': '/../../../node_modules/babel-jest', }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/transform-js/babel-enabled/jest.config.js b/e2e/transform-js/babel-enabled/jest.config.js index ab6e5ebe4f..77d1d4dcab 100644 --- a/e2e/transform-js/babel-enabled/jest.config.js +++ b/e2e/transform-js/babel-enabled/jest.config.js @@ -13,6 +13,6 @@ module.exports = { 'babel-jest': '/../../../node_modules/babel-jest', }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/transform-js/babel-js-file/jest.config.js b/e2e/transform-js/babel-js-file/jest.config.js index 353825c30e..55c91408fd 100644 --- a/e2e/transform-js/babel-js-file/jest.config.js +++ b/e2e/transform-js/babel-js-file/jest.config.js @@ -13,6 +13,6 @@ module.exports = { 'babel-jest': '/../../../node_modules/babel-jest', }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/transform-js/no-type-check/jest.config.js b/e2e/transform-js/no-type-check/jest.config.js index 0e81b1ea4d..468f9900e0 100644 --- a/e2e/transform-js/no-type-check/jest.config.js +++ b/e2e/transform-js/no-type-check/jest.config.js @@ -9,6 +9,6 @@ module.exports = { }, }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/transform-js/type-check/jest.config.js b/e2e/transform-js/type-check/jest.config.js index a2579c2aba..58d29fa0dd 100644 --- a/e2e/transform-js/type-check/jest.config.js +++ b/e2e/transform-js/type-check/jest.config.js @@ -8,6 +8,6 @@ module.exports = { }, }, transform: { - '^.+.[tj]sx?$': '/../../../dist/index.js', + '^.+.[tj]sx?$': '/../../../legacy.js', }, } diff --git a/e2e/transform-tsx/jest-isolated.config.js b/e2e/transform-tsx/jest-isolated.config.js index 5ddb63a8d5..d2b16e75cd 100644 --- a/e2e/transform-tsx/jest-isolated.config.js +++ b/e2e/transform-tsx/jest-isolated.config.js @@ -7,6 +7,6 @@ module.exports = { }, testEnvironment: 'jsdom', transform: { - '^.+.tsx?$': '/../../dist/index.js', + '^.+.tsx?$': '/../../legacy.js', }, } diff --git a/e2e/transform-tsx/package.json b/e2e/transform-tsx/package.json index 49c78e7d8d..2880d71f2f 100644 --- a/e2e/transform-tsx/package.json +++ b/e2e/transform-tsx/package.json @@ -7,7 +7,7 @@ "jest": { "testEnvironment": "jsdom", "transform": { - "^.+.tsx?$": "/../../dist/index.js" + "^.+.tsx?$": "/../../legacy.js" } } } diff --git a/jest.config.js b/jest.config.js index f4d9d36a3e..509efd3c02 100644 --- a/jest.config.js +++ b/jest.config.js @@ -12,6 +12,6 @@ module.exports = { snapshotSerializers: [require.resolve('jest-snapshot-serializer-raw')], testPathIgnorePatterns: ['src/__mocks__/*', '/node_modules/', '/examples/', '/e2e/.*/__tests__', '\\.snap$'], transform: { - '^.+.tsx?$': '/dist/index.js', + '^.+.tsx?$': '/legacy.js', }, } diff --git a/legacy.js b/legacy.js new file mode 100644 index 0000000000..4d6c08b787 --- /dev/null +++ b/legacy.js @@ -0,0 +1 @@ +module.exports = require('./dist/legacy') diff --git a/src/index.spec.ts b/src/index.spec.ts index bd96400d75..70e5c3569d 100644 --- a/src/index.spec.ts +++ b/src/index.spec.ts @@ -1,4 +1,4 @@ -import { TsJestTransformer } from './ts-jest-transformer' +import { TsJestTransformer } from './legacy/ts-jest-transformer' import tsJest from '.' diff --git a/src/index.ts b/src/index.ts index 0b329a439c..5260b69652 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,14 +1,16 @@ -import { TsJestTransformer } from './ts-jest-transformer' +import { TsJestTransformer } from './legacy' +export * from './legacy' export * from './constants' export * from './compiler' export * from './config' export * from './presets/create-jest-preset' export * from './utils' export * from './raw-compiler-options' -export * from './ts-jest-transformer' export * from './types' export default { - createTransformer: (): TsJestTransformer => new TsJestTransformer(), + createTransformer() { + return new TsJestTransformer(true) + }, } diff --git a/src/__snapshots__/ts-jest-transformer.spec.ts.snap b/src/legacy/__snapshots__/ts-jest-transformer.spec.ts.snap similarity index 100% rename from src/__snapshots__/ts-jest-transformer.spec.ts.snap rename to src/legacy/__snapshots__/ts-jest-transformer.spec.ts.snap diff --git a/src/legacy/index.ts b/src/legacy/index.ts new file mode 100644 index 0000000000..cd4424988c --- /dev/null +++ b/src/legacy/index.ts @@ -0,0 +1,7 @@ +import { TsJestTransformer } from './ts-jest-transformer' + +export * from './ts-jest-transformer' + +export default { + createTransformer: (): TsJestTransformer => new TsJestTransformer(), +} diff --git a/src/ts-jest-transformer.spec.ts b/src/legacy/ts-jest-transformer.spec.ts similarity index 98% rename from src/ts-jest-transformer.spec.ts rename to src/legacy/ts-jest-transformer.spec.ts index d4e18042bc..847b218f13 100644 --- a/src/ts-jest-transformer.spec.ts +++ b/src/legacy/ts-jest-transformer.spec.ts @@ -4,14 +4,15 @@ import path from 'path' import { LogLevels } from 'bs-logger' import { removeSync, writeFileSync } from 'fs-extra' -import { createConfigSet } from './__helpers__/fakers' -import { logTargetMock } from './__helpers__/mocks' -import { TsJestCompiler } from './compiler' +import { createConfigSet } from '../__helpers__/fakers' +import { logTargetMock } from '../__helpers__/mocks' +import { TsJestCompiler } from '../compiler' +import type { DepGraphInfo } from '../types' +import { stringify } from '../utils' +import { importer } from '../utils/importer' +import { sha1 } from '../utils/sha1' + import { CACHE_KEY_EL_SEPARATOR, TsJestTransformer } from './ts-jest-transformer' -import type { DepGraphInfo } from './types' -import { stringify } from './utils' -import { importer } from './utils/importer' -import { sha1 } from './utils/sha1' const SOURCE_MAPPING_PREFIX = 'sourceMappingURL=' diff --git a/src/ts-jest-transformer.ts b/src/legacy/ts-jest-transformer.ts similarity index 95% rename from src/ts-jest-transformer.ts rename to src/legacy/ts-jest-transformer.ts index 189c836cb5..84d8498b13 100644 --- a/src/ts-jest-transformer.ts +++ b/src/legacy/ts-jest-transformer.ts @@ -4,15 +4,15 @@ import path from 'path' import type { SyncTransformer, TransformedSource } from '@jest/transform' import type { Logger } from 'bs-logger' -import { TsJestCompiler } from './compiler' -import { ConfigSet } from './config' -import { DECLARATION_TYPE_EXT, JS_JSX_REGEX, TS_TSX_REGEX } from './constants' -import type { CompilerInstance, DepGraphInfo, ProjectConfigTsJest, TransformOptionsTsJest } from './types' -import { parse, stringify, JsonableValue, rootLogger } from './utils' -import { importer } from './utils/importer' -import { Errors, interpolate } from './utils/messages' -import { sha1 } from './utils/sha1' -import { VersionCheckers } from './utils/version-checkers' +import { TsJestCompiler } from '../compiler' +import { ConfigSet } from '../config' +import { DECLARATION_TYPE_EXT, JS_JSX_REGEX, TS_TSX_REGEX } from '../constants' +import type { CompilerInstance, DepGraphInfo, ProjectConfigTsJest, TransformOptionsTsJest } from '../types' +import { parse, stringify, JsonableValue, rootLogger } from '../utils' +import { importer } from '../utils/importer' +import { Deprecations, Errors, interpolate } from '../utils/messages' +import { sha1 } from '../utils/sha1' +import { VersionCheckers } from '../utils/version-checkers' interface CachedConfigSet { configSet: ConfigSet @@ -48,9 +48,12 @@ export class TsJestTransformer implements SyncTransformer { private _depGraphs: Map = new Map() private _watchMode = false - constructor() { + constructor(isLegacy = false) { this._logger = rootLogger.child({ namespace: 'ts-jest-transformer' }) VersionCheckers.jest.warn() + if (isLegacy) { + this._logger.warn(Deprecations.LegacyTransformerEntry) + } /** * For some unknown reasons, `this` is undefined in `getCacheKey` and `process` * when running Jest in ESM mode diff --git a/src/utils/messages.ts b/src/utils/messages.ts index 43223df492..ff6ea90e1e 100644 --- a/src/utils/messages.ts +++ b/src/utils/messages.ts @@ -39,6 +39,13 @@ export const enum Deprecations { ConfigOption = '"[jest-config].{{oldPath}}" is deprecated, use "[jest-config].{{newPath}}" instead.', ConfigOptionWithNote = '"[jest-config].{{oldPath}}" is deprecated, use "[jest-config].{{newPath}}" instead.\n ↳ {{note}}', ConfigOptionUseBabelRcNote = 'See `babel-jest` related issue: https://github.com/facebook/jest/issues/3845', + LegacyTransformerEntry = `Use 'ts-jest' entry point in v28 will resolve in refactored transformer. If you wish to use legacy transformer, please adjust your Jest 'transform' config. For example: + module.exports = { + transform: { + '^.+\\\\.tsx?$': 'ts-jest/legacy' + } + } + `, } /**