facebook/jest
### [`v27.0.6`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2706)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.5...v27.0.6)
##### Fixes
- `[*]` Publish all modules to include the build change in [#11569](https://togithub.com/facebook/jest/pull/11569)
### [`v27.0.5`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2705)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.4...v27.0.5)
##### Features
- `[@jest/fake-timers]` Flush callbacks scheduled with `requestAnimationFrame` every 16ms when using legacy timers. ([#11523](https://togithub.com/facebook/jest/pull/11567))
- `[pretty-format]` Use `globalThis` (with polyfill if required) to bring support for esbuild's browser bundling mode ([#11569](https://togithub.com/facebook/jest/pull/11569))
##### Fixes
- `[jest-core]` Support special characters like `@`, `+` and `()` on Windows with `--findRelatedTests` ([#11548](https://togithub.com/facebook/jest/pull/11548))
- `[@jest/fake-timers]` Do not add `setImmediate` and `clearImmediate` if they do not exist in the global environment ([#11599](https://togithub.com/facebook/jest/pull/11599))
- `[@jest/reporters]` Allow `node-notifier@10` as peer dependency ([#11523](https://togithub.com/facebook/jest/pull/11523))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#11523](https://togithub.com/facebook/jest/pull/11523))
### [`v27.0.4`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2704)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.3...v27.0.4)
##### Fixes
- `[jest-config, jest-resolve]` Pass in `require.resolve` to resolvers to resolve from correct base ([#11493](https://togithub.com/facebook/jest/pull/11493))
### [`v27.0.3`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2703)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.2...v27.0.3)
##### Fixes
- `[jest-config]` `require.resolve` on default test sequencer and test environment ([#11482](https://togithub.com/facebook/jest/pull/11482))
- `[jest-mock]` Fixed `fn` and `spyOn` exports ([#11480](https://togithub.com/facebook/jest/pull/11480))
### [`v27.0.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2702)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.1...v27.0.2)
##### Features
- `[jest-circus]` Add some APIs to make it easier to build your own test runner
- `[jest-reporters]` Expose the `getResultHeader` util ([#11460](https://togithub.com/facebook/jest/pull/11460))
- `[jest-resolver]` Export `resolve*` utils for different Jest modules ([#11466](https://togithub.com/facebook/jest/pull/11466))
- `[@jest/test-result]` Export `Test`, `TestEvents` and `TestFileEvent` ([#11466](https://togithub.com/facebook/jest/pull/11466))
##### Fixes
- `[jest-circus]` Add missing `slash` dependency ([#11465](https://togithub.com/facebook/jest/pull/11465))
- `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://togithub.com/facebook/jest/pull/11466))
- `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://togithub.com/facebook/jest/pull/11465))
- `[jest-config]` Make sure to support functions as config ([#11475](https://togithub.com/facebook/jest/pull/11475))
- `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://togithub.com/facebook/jest/pull/11470))
- `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://togithub.com/facebook/jest/pull/11466))
- `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://togithub.com/facebook/jest/pull/11451))
### [`v27.0.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2701)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.0.0...v27.0.1)
##### Fixes
- `[jest-environment-jsdom]` Bump version of JSDOM to avoid deprecated `request` package ([#11442](https://togithub.com/facebook/jest/pull/11442))
### [`v27.0.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2700)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.6.3...v27.0.0)
##### Features
- `[babel-jest]` Add async transformation ([#11192](https://togithub.com/facebook/jest/pull/11192))
- `[jest-changed-files]` Use '--' to separate paths from revisions ([#11160](https://togithub.com/facebook/jest/pull/11160))
- `[jest-circus]` \[**BREAKING**] Fail tests when multiple `done()` calls are made ([#10624](https://togithub.com/facebook/jest/pull/10624))
- `[jest-circus, jest-jasmine2]` \[**BREAKING**] Fail the test instead of just warning when describe returns a value ([#10947](https://togithub.com/facebook/jest/pull/10947))
- `[jest-config]` \[**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://togithub.com/facebook/jest/pull/9874))
- `[jest-config]` \[**BREAKING**] Use `jest-circus` as default test runner ([#10686](https://togithub.com/facebook/jest/pull/10686))
- `[jest-config]` Add support for `preset` written in ESM ([#11200](https://togithub.com/facebook/jest/pull/11200))
- `[jest-config, jest-runtime]` Support ESM for files other than `.js` and `.mjs` ([#10823](https://togithub.com/facebook/jest/pull/10823))
- `[jest-config, jest-runtime]` \[**BREAKING**] Use "modern" implementation as default for fake timers ([#10874](https://togithub.com/facebook/jest/pull/10874) & [#11197](https://togithub.com/facebook/jest/pull/11197))
- `[jest-config` Allow passing `forceNodeFilesystemAPI` through to `jest-haste-map` ([#11264](https://togithub.com/facebook/jest/pull/11264))
- `[jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types]` \[**BREAKING**] Add custom HasteMap class implementation config option ([#11107](https://togithub.com/facebook/jest/pull/11107))
- `[jest-core]` make `TestWatcher` extend `emittery` ([#10324](https://togithub.com/facebook/jest/pull/10324))
- `[jest-core]` Run failed tests interactively the same way we do with snapshots ([#10858](https://togithub.com/facebook/jest/pull/10858))
- `[jest-core]` more `TestSequencer` methods can be async ([#10980](https://togithub.com/facebook/jest/pull/10980))
- `[jest-core]` Add support for `testSequencer` written in ESM ([#11207](https://togithub.com/facebook/jest/pull/11207))
- `[jest-core]` Add support for `globalSetup` and `globalTeardown` written in ESM ([#11267](https://togithub.com/facebook/jest/pull/11267))
- `[jest-core]` Add support for `watchPlugins` written in ESM ([#11315](https://togithub.com/facebook/jest/pull/11315))
- `[jest-core]` Add support for `runner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-core]` Add support for `reporters` written in ESM ([#11427](https://togithub.com/facebook/jest/pull/11427))
- `[jest-each]` Add support for interpolation with object properties ([#11388](https://togithub.com/facebook/jest/pull/11388))
- `[jest-environment-node]` Add AbortController to globals ([#11182](https://togithub.com/facebook/jest/pull/11182))
- `[@jest/fake-timers]` Update to `@sinonjs/fake-timers` to v7 ([#11198](https://togithub.com/facebook/jest/pull/11198))
- `[jest-haste-map]` Handle injected scm clocks ([#10966](https://togithub.com/facebook/jest/pull/10966))
- `[jest-haste-map]` Add `enableSymlinks` configuration option to follow symlinks for test files ([#9351](https://togithub.com/facebook/jest/pull/9351))
- `[jest-repl, jest-runner]` \[**BREAKING**] Run transforms over environment ([#8751](https://togithub.com/facebook/jest/pull/8751))
- `[jest-repl]` Add support for `testEnvironment` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-runner]` \[**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://togithub.com/facebook/jest/pull/10728))
- `[jest-runner]` \[**BREAKING**] Run transforms over `runner` ([#8823](https://togithub.com/facebook/jest/pull/8823))
- `[jest-runner]` \[**BREAKING**] Run transforms over `testRunner` ([#8823](https://togithub.com/facebook/jest/pull/8823))
- `[jest-runner]` Possibility to use ESM for test environment ([11033](https://togithub.com/facebook/jest/pull/11033))
- `[jest-runner]` Add support for `testRunner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://togithub.com/facebook/jest/pull/10988))
- `[jest-runtime]` Support for async code transformations ([#11191](https://togithub.com/facebook/jest/pull/11191) & [#11220](https://togithub.com/facebook/jest/pull/11220))
- `[jest-reporters]` Add static filepath property to all reporters ([#11015](https://togithub.com/facebook/jest/pull/11015))
- `[jest-snapshot]` \[**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://togithub.com/facebook/jest/pull/7792) & [#11192](https://togithub.com/facebook/jest/pull/11192))
- `[jest-snapshot]` \[**BREAKING**] Run transforms over `snapshotResolver` ([#8751](https://togithub.com/facebook/jest/pull/8829))
- `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://togithub.com/facebook/jest/pull/10926))
- `[jest-transform]` Add support for transformers written in ESM ([#11163](https://togithub.com/facebook/jest/pull/11163))
- `[jest-transform]` \[**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://togithub.com/facebook/jest/pull/11163))
- `[jest-transform]` Async code transformations ([#9889](https://togithub.com/facebook/jest/pull/9889))
- `[jest-transform]` Support transpiled transformers ([#11193](https://togithub.com/facebook/jest/pull/11193))
- `[jest-transform]` \[**BREAKING**] `requireAndTranspileModule` always return a `Promise`, and the third parameter type is changed to `RequireAndTranspileModuleOptions` which accept `applyInteropRequireDefault` option ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-transform]` \[**BREAKING**] `createTranspilingRequire` return function which return a `Promise` now ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-util]` add requireOrImportModule for importing CJS or ESM ([#11199](https://togithub.com/facebook/jest/pull/11199))
- `[jest-util]` add `applyInteropRequireDefault` option on `requireOrImportModule` ([#11232](https://togithub.com/facebook/jest/pull/11232))
- `[jest-watcher]` Added support for clearing the line when `` is pressed in a watch mode pattern prompt ([#11358](https://togithub.com/facebook/jest/pull/11358))
- `[jest-worker]` Add support for custom task queues and adds a `PriorityQueue` implementation. ([#10921](https://togithub.com/facebook/jest/pull/10921))
- `[jest-worker]` Add in-order scheduling policy to jest worker ([10902](https://togithub.com/facebook/jest/pull/10902))
- `[pretty-format]` Better print for sparse arrays ([11326](https://togithub.com/facebook/jest/pull/11326))
- `[pretty-print]` Add option `printBasicPrototype` which determines whether or not the prototype should be printed for raw objects or arrays ([#11441](https://togithub.com/facebook/jest/pull/11441))
##### Fixes
- `[babel-plugin-jest-hoist]` Add `__dirname` and `__filename` to whitelisted globals ([#10903](https://togithub.com/facebook/jest/pull/10903))
- `[expect]` \[**BREAKING**] Revise `expect.not.objectContaining()` to be the inverse of `expect.objectContaining()`, as documented. ([#10708](https://togithub.com/facebook/jest/pull/10708))
- `[expect]` \[**BREAKING**] Make `toContain` more strict with the received type ([#10119](https://togithub.com/facebook/jest/pull/10119) & [#10929](https://togithub.com/facebook/jest/pull/10929))
- `[expect]` \[**BREAKING**] `matcherResult` on `JestAssertionError` are now strings rather than functions ([#10989](https://togithub.com/facebook/jest/pull/10989))
- `[jest-circus]` Fixed the issue of beforeAll & afterAll hooks getting executed even if it is inside a skipped `describe` block [#10451](https://togithub.com/facebook/jest/issues/10451)
- `[jest-circus]` Fix `testLocation` on Windows when using `test.each` ([#10871](https://togithub.com/facebook/jest/pull/10871))
- `[jest-cli]` Use testFailureExitCode when bailing from a failed test ([#10958](https://togithub.com/facebook/jest/pull/10958))
- `[jest-cli]` Print custom error if error thrown from global hooks is not an error already ([#11003](https://togithub.com/facebook/jest/pull/11003))
- `[jest-cli]` Allow running multiple "projects" from programmatic API ([#11307](https://togithub.com/facebook/jest/pull/11307))
- `[jest-cli]` Fix missing collectCoverage after init ([#11353](https://togithub.com/facebook/jest/pull/11353))
- `[jest-cli, jest-config, jest-types]` Move all default values into `jest-config` ([#9924](https://togithub.com/facebook/jest/pull/9924))
- `[jest-config]` \[**BREAKING**] Change default file extension order by moving json behind ts and tsx ([10572](https://togithub.com/facebook/jest/pull/10572))
- `[jest-console]` `console.dir` now respects the second argument correctly ([#10638](https://togithub.com/facebook/jest/pull/10638))
- `[jest-core]` Don't report PerformanceObserver as open handle ([#11123](https://togithub.com/facebook/jest/pull/11123))
- `[jest-core]` Use `WeakRef` to hold timers when detecting open handles ([#11277](https://togithub.com/facebook/jest/pull/11277))
- `[jest-core]` Correctly detect open handles that were created in test functions using `done` callbacks ([#11382](https://togithub.com/facebook/jest/pull/11382))
- `[jest-core]` Do not collect `RANDOMBYTESREQUEST` as open handles ([#11278](https://togithub.com/facebook/jest/pull/11278))
- `[jest-core]` Wait briefly for open handles to close before flagging them when using `--detectOpenHandles` ([#11429](https://togithub.com/facebook/jest/pull/11429))
- `[jest-diff]` \[**BREAKING**] Use only named exports ([#11371](https://togithub.com/facebook/jest/pull/11371))
- `[jest-each]` \[**BREAKING**] Ignore excess words in headings ([#8766](https://togithub.com/facebook/jest/pull/8766))
- `[jest-each]` Support array index with template strings ([#10763](https://togithub.com/facebook/jest/pull/10763))
- `[jest-each]` Interpolate `%%` correctly ([#11364](https://togithub.com/facebook/jest/pull/11364))
- `[jest-each]` Fix wrong interpolation when the value of array contains multiple `%` ([#11364](https://togithub.com/facebook/jest/pull/11364))
- `[jest-environment]` \[**BREAKING**] Drop support for `runScript` for test environments ([#11155](https://togithub.com/facebook/jest/pull/11155))
- `[jest-environment-jsdom]` Use inner realmβs `ArrayBuffer` constructor ([#10885](https://togithub.com/facebook/jest/pull/10885))
- `[jest-environment-jsdom]` \[**BREAKING**] Remove Node globals `setImmediate` and `clearImmediate` [#11222](https://togithub.com/facebook/jest/pull/11222)
- `[jest-get-type]` \[**BREAKING**] Convert to ES Module ([#11359](https://togithub.com/facebook/jest/pull/11359))
- `[jest-globals]` \[**BREAKING**] Disallow return values other than a `Promise` from hooks and tests ([#10512](https://togithub.com/facebook/jest/pull/10512))
- `[jest-globals]` \[**BREAKING**] Disallow mixing a done callback and returning a `Promise` from hooks and tests ([#10512](https://togithub.com/facebook/jest/pull/10512))
- `[jest-haste-map]` Vendor `NodeWatcher` from `sane` ([#10919](https://togithub.com/facebook/jest/pull/10919))
- `[jest-jasmine2]` Fixed the issue of `beforeAll` & `afterAll` hooks getting executed even if it is inside a skipped `describe` block when it has child `tests` marked as either `only` or `todo` [#10451](https://togithub.com/facebook/jest/issues/10451)
- `[jest-jasmine2]` Fixed the issues of child `tests` marked with `only` or `todo` getting executed even if it is inside a skipped parent `describe` block [#10451](https://togithub.com/facebook/jest/issues/10451)
- `[jest-jasmine2]` Wrap all test functions so they open handles that were created in test functions using `done` callbacks can be detected ([#11382](https://togithub.com/facebook/jest/pull/11382))
- `[jest-reporter]` Handle empty files when reporting code coverage with V8 ([#10819](https://togithub.com/facebook/jest/pull/10819))
- `[jest-resolve]` Replace read-pkg-up with escalade package ([#10781](https://togithub.com/facebook/jest/pull/10781))
- `[jest-resolve]` Disable `jest-pnp-resolver` for Yarn 2 ([#10847](https://togithub.com/facebook/jest/pull/10847))
- `[jest-runtime]` \[**BREAKING**] Do not inject `global` variable into module wrapper ([#10644](https://togithub.com/facebook/jest/pull/10644))
- `[jest-runtime]` \[**BREAKING**] remove long-deprecated `jest.addMatchers`, `jest.resetModuleRegistry`, and `jest.runTimersToTime` ([#9853](https://togithub.com/facebook/jest/pull/9853))
- `[jest-runtime]` Fix stack overflow and promise deadlock when importing mutual dependant ES module ([#10892](https://togithub.com/facebook/jest/pull/10892))
- `[jest-runtime]` Prevent global module registry from leaking into `isolateModules` registry ([#10963](https://togithub.com/facebook/jest/pull/10963))
- `[jest-runtime]` Refactor to prevent race condition when linking and evaluating ES Modules ([#11150](https://togithub.com/facebook/jest/pull/11150))
- `[jest-runtime]` Throw correct error when attempting to load ESM via `require` ([#11260](https://togithub.com/facebook/jest/pull/11260))
- `[jest-runtime]` Do not cache modules that throw during evaluation ([#11263](https://togithub.com/facebook/jest/pull/11263))
- `[jest-transform]` Show enhanced `SyntaxError` message for all `SyntaxError`s ([#10749](https://togithub.com/facebook/jest/pull/10749))
- `[jest-transform]` \[**BREAKING**] Refactor API to pass an options bag around rather than multiple boolean options ([#10753](https://togithub.com/facebook/jest/pull/10753))
- `[jest-transform]` \[**BREAKING**] Refactor API of transformers to pass an options bag rather than separate `config` and other options ([#10834](https://togithub.com/facebook/jest/pull/10834))
- `[jest-types]` Fix `Config.ts` `projects` types ([#11285](https://togithub.com/facebook/jest/pull/11285))
- `[jest-util]` Replace micromatch with picomatch to fix issues with negated globs ([#11287](https://togithub.com/facebook/jest/pull/11287))
- `[jest-validate]` Use `en-US` locale to avoid case conversion problems while validating CLI options on machines with some certain locales(e.g. Turkish) set as default locale. ([#11412](https://togithub.com/facebook/jest/pull/11412))
- `[jest-worker]` \[**BREAKING**] Use named exports ([#10623](https://togithub.com/facebook/jest/pull/10623))
- `[jest-worker]` Do not swallow errors during serialization ([#10984](https://togithub.com/facebook/jest/pull/10984))
- `[jest-worker]` Handle `ERR_IPC_CHANNEL_CLOSED` errors properly ([#11143](https://togithub.com/facebook/jest/pull/11143))
- `[pretty-format]` \[**BREAKING**] Convert to ES Modules ([#10515](https://togithub.com/facebook/jest/pull/10515))
- `[pretty-format]` Only call `hasAttribute` if it's a function ([#11000](https://togithub.com/facebook/jest/pull/11000))
- `[pretty-format]` Handle jsdom attributes properly ([#11189](https://togithub.com/facebook/jest/pull/11189))
- `[pretty-format]` Import pretty-format using named imports ([#11360](https://togithub.com/facebook/jest/pull/11360))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Only support Node LTS releases and Node 15 ([#10685](https://togithub.com/facebook/jest/pull/10685))
- `[*]` \[**BREAKING**] Add `exports` field to all `package.json`s ([#9921](https://togithub.com/facebook/jest/pull/9921))
- `[*]` Make it easier for Jest's packages to use the VM escape hatch ([#10824](https://togithub.com/facebook/jest/pull/10824))
- `[*]` \[**BREAKING**] Remove deprecated `mapCoverage` ([#9968](https://togithub.com/facebook/jest/pull/9968))
- `[babel-jest]` \[**BREAKING**] Migrate to ESM ([#11193](https://togithub.com/facebook/jest/pull/11193))
- `[docs]` Correct example using `browser-resolve` ([#11140](https://togithub.com/facebook/jest/pull/11140))
- `[docs]` Clarify `timers` configuration property ([#11376](https://togithub.com/facebook/jest/pull/11376))
- `[jest, jest-core]` \[**BREAKING**] Replace `TestScheduler` export with `createTestScheduler` ([#11427](https://togithub.com/facebook/jest/pull/11427))
- `[jest-config]` \[**BREAKING**] Remove `enabledTestsMap` config, use `filter` instead ([#10787](https://togithub.com/facebook/jest/pull/10787))
- `[jest-console]` \[**BREAKING**] Move `root` into `config` and take `GlobalConfig` as mandatory parameter for `getConsoleOutput` ([#10126](https://togithub.com/facebook/jest/pull/10126))
- `[jest-console]` Export LogEntry ([#11017](https://togithub.com/facebook/jest/pull/11017))
- `[jest-fake-timers]` Clarify global behavior of `jest.useFakeTimers` and `jest.useRealTimers` ([#10867](https://togithub.com/facebook/jest/pull/10867))
- `[jest-haste-map]` \[**BREAKING**] Migrate to ESM ([#10875](https://togithub.com/facebook/jest/pull/10875))
- `[jest-haste-map]` \[**BREAKING**] Remove support for deprecated option `ignorePattern` as function ([#10348](https://togithub.com/facebook/jest/pull/10348))
- `[jest-jasmine2]` \[**BREAKING**] Migrate to ESM ([#10906](https://togithub.com/facebook/jest/pull/10906))
- `[jest-jasmine2]` \[**BREAKING**] Remove unused options argument from `Env` constructor ([#10240](https://togithub.com/facebook/jest/pull/10240))
- `[jest-repl, jest-runtime]` \[**BREAKING**] Move the `jest-runtime` CLI into `jest-repl` ([#10016](https://togithub.com/facebook/jest/pull/10016) & [#10925](https://togithub.com/facebook/jest/pull/10925))
- `[jest-resolve]` \[**BREAKING**] Migrate to ESM ([#10688](https://togithub.com/facebook/jest/pull/10688))
- `[jest-resolve-dependencies]` \[**BREAKING**] Migrate to ESM ([#10876](https://togithub.com/facebook/jest/pull/10876))
- `[jest-mock]` \[**BREAKING**] Migrate to ESM ([#10887](https://togithub.com/facebook/jest/pull/10887))
- `[jest-reporters]` \[**BREAKING**] Make `node-notifier` a peer dependency ([#10977](https://togithub.com/facebook/jest/pull/10977))
- `[jest-resolve, jest-runtime]` \[**BREAKING**] Use `Map`s instead of objects for all cached resources ([#10968](https://togithub.com/facebook/jest/pull/10968))
- `[jest-runner]` \[**BREAKING**] Migrate to ESM ([#10900](https://togithub.com/facebook/jest/pull/10900))
- `[jest-runtime]` \[**BREAKING**] Remove deprecated and unused `getSourceMapInfo` from Runtime ([#9969](https://togithub.com/facebook/jest/pull/9969))
- `[jest-transformer]` \[**BREAKING**] Remove unused `isCoreModule` option ([#11166](https://togithub.com/facebook/jest/pull/11166))
- `[jest-util]` No longer checking `enumerable` when adding `process.domain` ([#10862](https://togithub.com/facebook/jest/pull/10862))
- `[jest-validate]` \[**BREAKING**] Remove `recursiveBlacklist` option in favor of previously introduced `recursiveDenylist` ([#10650](https://togithub.com/facebook/jest/pull/10650))
- `[website]` Replace 'Github' with 'GitHub' ([#11279](https://togithub.com/facebook/jest/pull/11279))
- `[website]` Remove a language code from the link to the Node.js website ([#11282](https://togithub.com/facebook/jest/pull/11282))
- `[website]` Remove a duplicated word ([#11281](https://togithub.com/facebook/jest/pull/11281))
- `[website]` Add french to website ([#11361](https://togithub.com/facebook/jest/pull/11361))
##### Performance
- `[jest-resolve]` Cache reading and parsing of `package.json`s ([#11076](https://togithub.com/facebook/jest/pull/11076))
- `[jest-runtime, jest-transform]` share `cacheFS` between runtime and transformer ([#10901](https://togithub.com/facebook/jest/pull/10901))
- `[jest-runtime]` Load `chalk` only once per worker ([#10864](https://togithub.com/facebook/jest/pull/10864))
- `[jest-worker]` Fix memory leak of previous task arguments while no new task is scheduled ([#11187](https://togithub.com/facebook/jest/pull/11187))
### [`v26.6.3`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2663)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.6.2...v26.6.3)
##### Fixes
- `[jest-resolve-dependencies]` Continue dependency resolution if mock dependency can't be found ([#10779](https://togithub.com/facebook/jest/pull/10779))
### [`v26.6.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2662)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.6.1...v26.6.2)
##### Features
- `[jest-core]` Add `findRelatedTests` and `nonFlagArgs` in allowed config options for `updateConfigAndRun` in watch plugins ([#10659](https://togithub.com/facebook/jest/pull/10659))
##### Fixes
- `[babel-plugin-jest-hoist]` Preserve order of hoisted mock nodes within containing block ([#10536](https://togithub.com/facebook/jest/pull/10536))
- `[babel-plugin-jest-hoist]` Hoist pure constants to support experimental JSX transform in hoisted mocks ([#10723](https://togithub.com/facebook/jest/pull/10723))
- `[babel-preset-jest]` Update `babel-preset-current-node-syntax` to support top level await ([#10747](https://togithub.com/facebook/jest/pull/10747))
- `[expect]` Revert "Fix `objectContaining` to work recursively into sub-objects ([#10508](https://togithub.com/facebook/jest/pull/10508))" ([#10766](https://togithub.com/facebook/jest/pull/10766))
- `[jest-circus, jest-jasmine2]` fix: don't assume `stack` is always a string ([#10697](https://togithub.com/facebook/jest/pull/10697))
- `[jest-config]` Fix bug introduced in watch mode by PR [#10678](https://togithub.com/facebook/jest/pull/10678/files#r511037803) ([#10692](https://togithub.com/facebook/jest/pull/10692))
- `[jest-config]` Throw correct error for missing preset modules ([#10737](https://togithub.com/facebook/jest/pull/10737))
- `[jest-resolve-dependencies]` Resolve mocks as dependencies ([#10713](https://togithub.com/facebook/jest/pull/10713))
- `[jest-runtime]` Handle file URLs in dynamic imports ([#10744](https://togithub.com/facebook/jest/pull/10744))
- `[jest-runtime, babel-jest]` Pass more ESM options to `@jest/transform` ([#10752](https://togithub.com/facebook/jest/pull/10752))
- `[jest-runtime]` Properly inject `extraGlobals` into the runtime ([#10758](https://togithub.com/facebook/jest/pull/10758))
- `[jest-transform]` Link to ESM docs on syntax errors ([#10748](https://togithub.com/facebook/jest/pull/10748))
##### Chore & Maintenance
- `[docs]` Add docs for using mocks in TypeScript ([#10415](https://togithub.com/facebook/jest/pull/10415))
- `[eslint-config-fb-strict]` Move package from this repo to `fbjs` repo ([#10739](https://togithub.com/facebook/jest/pull/10739))
- `[examples]` Update TypeScript example to show use of newer Jest types ([#10399](https://togithub.com/facebook/jest/pull/10399))
- `[jest-cli]` chore: standardize files and folder names ([#10698](https://togithub.com/facebook/jest/pull/10698))
- `[jest-config]` Switch ts-node `Register` type to `Service` due to deprecation ([#11210](https://togithub.com/facebook/jest/pull/11210))
### [`v26.6.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2661)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.6.0...v26.6.1)
##### Features
- `[jest-runtime]` Support named exports from CommonJS as named ES Module imports ([#10673](https://togithub.com/facebook/jest/pull/10673))
- `[jest-validate]` Add support for `recursiveDenylist` option as an alternative to `recursiveBlacklist` ([#10236](https://togithub.com/facebook/jest/pull/10236))
##### Fixes
- `[expect]` Fix `objectContaining` to work recursively into sub-objects ([#10508](https://togithub.com/facebook/jest/pull/10508))
- `[jest-cli, jest-core, jest-config, jest-types]` Fix `--onlyFailures` flag to work in non-watch mode ([#10678](https://togithub.com/facebook/jest/pull/10678/files))
- `[jest-config]` Fix for the `jest.config.ts` compiler to not interfere with `tsconfig.json` files ([#10675](https://togithub.com/facebook/jest/pull/10675))
- `[jest-message-util]` Update to work properly with Node 15 ([#10660](https://togithub.com/facebook/jest/pull/10660))
- `[jest-mock]` Allow to mock methods in getters (TypeScript 3.9 export) ([#10156](https://togithub.com/facebook/jest/pull/10156))
### [`v26.6.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2660)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.5.3...v26.6.0)
##### Features
- `[jest-cli, jest-config]` Add support for the `jest.config.ts` configuration file ([#10564](https://togithub.com/facebook/jest/pull/10564))
##### Fixes
- `[jest-config]` Simplify transform RegExp ([#10207](https://togithub.com/facebook/jest/pull/10207))
- `[jest-fake-timers]` Lazily instantiate mock timers ([#10551](https://togithub.com/facebook/jest/pull/10551))
- `[jest-runtime]` `require.main` is no longer `undefined` when using `jest.resetModules` ([#10626](https://togithub.com/facebook/jest/pull/10626))
- `[@jest/types]` Add missing values for `timers` ([#10632](https://togithub.com/facebook/jest/pull/10632))
##### Chore & Maintenance
- `[docs]` Add step for fetching `backers.json` file in website setup docs ([#10631](https://togithub.com/facebook/jest/pull/10631))
- `[docs]` Add page detailing environment variables set by Jest ([#10630](https://togithub.com/facebook/jest/pull/10630))
- `[jest-circus]` Refactor `callAsyncCircusFn` parameters ([#10629](https://togithub.com/facebook/jest/pull/10629))
### [`v26.5.3`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2653)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.5.2...v26.5.3)
##### Features
- `[jest-runtime]` add support for dynamic `import()` from CommonJS ([#10620](https://togithub.com/facebook/jest/pull/10620))
##### Fixes
- `[jest-runner, jest-runtime]` `require.main` should not be `undefined` with `createRequire()` ([#10610](https://togithub.com/facebook/jest/pull/10610))
- `[jest-runtime]` add missing `module.path` property ([#10615](https://togithub.com/facebook/jest/pull/10615))
- `[jest-runtime]` Add `mainModule` instance variable to runtime ([#10621](https://togithub.com/facebook/jest/pull/10621))
- `[jest-runtime]` Evaluate Node core modules on dynamic `import()` ([#10622](https://togithub.com/facebook/jest/pull/10622))
- `[jest-validate]` Show suggestion only when unrecognized cli param is longer than 1 character ([#10604](https://togithub.com/facebook/jest/pull/10604))
- `[jest-validate]` Validate `testURL` as CLI option ([#10595](https://togithub.com/facebook/jest/pull/10595))
### [`v26.5.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2652)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.5.0...v26.5.2)
##### Fixes
- `[*]` Revert usage of Escalade and rollback Yargs to v15 as it breaks Node 13 ([#10599](https://togithub.com/facebook/jest/pull/10599))
- `[jest-circus]` Setup globals before emitting `setup`, and include Jest globals in the `setup` payload ([#10598](https://togithub.com/facebook/jest/pull/10598))
- `[jest-mock]` Fix typings for `mockResolvedValue`, `mockResolvedValueOnce`, `mockRejectedValue` and `mockRejectedValueOnce` ([#10600](https://togithub.com/facebook/jest/pull/10600))
### [`v26.5.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2650)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.4.2...v26.5.0)
##### Features
- `[jest-circus, jest-config, jest-runtime]` Add new `injectGlobals` config and CLI option to disable injecting global variables into the runtime ([#10484](https://togithub.com/facebook/jest/pull/10484))
- `[jest-each]` Fixes `.each` type to always be callable ([#10447](https://togithub.com/facebook/jest/pull/10447))
- `[jest-runner]` Add support for `moduleLoader`s with `default` exports ([#10541](https://togithub.com/facebook/jest/pull/10541))
- `[@jest/create-cache-key-function]` Added a new package for creating cache keys ([#10587](https://togithub.com/facebook/jest/pull/10587))
##### Fixes
- `[jest-circus, jest-jasmine2]` Find correct location for `test.each` tests ([#10413](https://togithub.com/facebook/jest/pull/10413))
- `[jest-console]` Add `Console` constructor to `console` object ([#10502](https://togithub.com/facebook/jest/pull/10502))
- `[jest-globals]` Fix lifecycle hook function types ([#10480](https://togithub.com/facebook/jest/pull/10480))
- `[jest-runtime]` Remove usage of `vm.compileFunction` due to a performance issue ([#10586](https://togithub.com/facebook/jest/pull/10586))
##### Chore & Maintenance
- `[jest-resolve]` Replace read-pkg-up with escalade package ([10558](https://togithub.com/facebook/jest/pull/10558))
- `[jest-environment-jsdom]` Update jsdom to 16.4.0 ([10578](https://togithub.com/facebook/jest/pull/10578))
### [`v26.4.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2642)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.4.1...v26.4.2)
##### Fixes
- `[expect]` Fix `toMatchObject` to work with inherited class getters ([#10381](https://togithub.com/facebook/jest/pull/10381))
- `[pretty-format]` Lower minimum node version to >= 10 ([#10435](https://togithub.com/facebook/jest/pull/10435))
### [`v26.4.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2641)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.4.0...v26.4.1)
##### Fixes
- `[jest-core]` Don't report ELDHistogram as open handle ([#10417](https://togithub.com/facebook/jest/pull/10417))
- `[jest-matcher-utils]` Fix diffing object contain readonly symbol key object ([#10414](https://togithub.com/facebook/jest/pull/10414))
- `[jest-reporters]` Fixes notify reporter on Linux (using notify-send) ([#10393](https://togithub.com/facebook/jest/pull/10400))
- `[jest-snapshot]` Correctly handles arrays and property matchers in snapshots ([#10404](https://togithub.com/facebook/jest/pull/10404))
### [`v26.4.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2640)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.3.0...v26.4.0)
##### Features
- `[jest-resolve]` Add support for `packageFilter` on custom resolver ([#10393](https://togithub.com/facebook/jest/pull/10393))
##### Fixes
- `[pretty-format]` Handle `tagName` not being a string ([#10397](https://togithub.com/facebook/jest/pull/10397))
### [`v26.3.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2630)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.2.2...v26.3.0)
##### Features
- `[jest-circus, jest-jasmine2]` Include `failureDetails` property in test results ([#9496](https://togithub.com/facebook/jest/pull/9496))
- `[jest-each, jest-jasmine, jest-circus]` Add support for `.concurrent.each` ([#9326](https://togithub.com/facebook/jest/pull/9326))
##### Fixes
- `[jest-config]` Add `.pnp.js` to `transformIgnorePatterns` defaults ([#10383](https://togithub.com/facebook/jest/pull/10383))
- `[jest-leak-detector]` Wait properly for GC runs due to changes in Node 14.7 ([#10366](https://togithub.com/facebook/jest/pull/10366))
- `[jest-worker]` Downgrade minimum node version to 10.13 ([#10352](https://togithub.com/facebook/jest/pull/10352))
- `[docs]` Update snapshot testing documentation([#10359](https://togithub.com/facebook/jest/pull/10359))
### [`v26.2.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2622)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.2.1...v26.2.2)
##### Fixes
- `[jest-cli]` Use correct file name to override existing jest config on init ([#10337](https://togithub.com/facebook/jest/pull/10337))
- `[jest-haste-map]` Properly detect support for native `find` ([#10346](https://togithub.com/facebook/jest/pull/10346))
### [`v26.2.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2621)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.2.0...v26.2.1)
##### Fixes
- `[jest-worker]` Make sure to work with Node TS typings v12 ([#10336](https://togithub.com/facebook/jest/pull/10336))
### [`v26.2.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2620)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.1.0...v26.2.0)
##### Features
- `[jest-core, jest-circus, jest-reporter, jest-runner]` Added support for reporting individual test cases using jest-circus ([#10227](https://togithub.com/facebook/jest/pull/10227))
- `[jest-config, jest-reporter, jest-runner, jest-test-sequencer]` Add `slowTestThreshold` configuration option ([#9366](https://togithub.com/facebook/jest/pull/9366))
- `[jest-haste-map]` Watchman crawler now includes dotfiles ([#10075](https://togithub.com/facebook/jest/pull/10075))
- `[jest-worker]` Added support for workers to send custom messages to parent in jest-worker ([#10293](https://togithub.com/facebook/jest/pull/10293))
- `[jest-worker]` Support passing `resourceLimits` ([#10335](https://togithub.com/facebook/jest/pull/10335))
- `[pretty-format]` Added support for serializing custom elements (web components) ([#10217](https://togithub.com/facebook/jest/pull/10237))
##### Fixes
- `[expect]` Match symbols and bigints in `any()` ([#10223](https://togithub.com/facebook/jest/pull/10223))
- `[jest-changed-files]` Use `git diff` instead of `git log` for `--changedSince` ([#10155](https://togithub.com/facebook/jest/pull/10155))
- `[jest-console]` Add missing `console.timeLog` for compatibility with Node ([#10209](https://togithub.com/facebook/jest/pull/10209))
- `[jest-haste-map]` Check `find` binary supports the `-iname` parameter ([#10308](https://togithub.com/facebook/jest/pull/10308))
- `[jest-snapshot]` Strip added indentation for inline error snapshots ([#10217](https://togithub.com/facebook/jest/pull/10217))
##### Chore & Maintenance
- `[*]` Add missing dependency on `@types/node` ([#10248](https://togithub.com/facebook/jest/pull/10248))
- `[jest-jasmine2]` Convert `PCancelable` to TypeScript ([#10215](https://togithub.com/facebook/jest/pull/10215))
- `[jest-jasmine2]` Refine typings of `queueRunner` ([#10215](https://togithub.com/facebook/jest/pull/10215))
- `[jest-jasmine2]` Remove usage of `Function` type ([#10216](https://togithub.com/facebook/jest/pull/10216))
- `[jest-resolve]` Improve types ([#10239](https://togithub.com/facebook/jest/pull/10239))
- `[docs]` Clarify the [`jest.requireActual(moduleName)`](https://jestjs.io/docs/jest-object#jestrequireactualmodulename) example
- `[jest-types]` Refine typings of `coverageReporters` ([#10275](https://togithub.com/facebook/jest/pull/10275))
### [`v26.1.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2610)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.0.1...v26.1.0)
##### Features
- `[jest-mock]` Export `Mock`, `MockInstance`, `SpyInstance` types ([#10138](https://togithub.com/facebook/jest/pull/10138))
- `[jest-config]` Support config files exporting (`async`) `function`s ([#10001](https://togithub.com/facebook/jest/pull/10001))
- `[jest-cli, jest-core]` Add `--selectProjects` CLI argument to filter test suites by project name ([#8612](https://togithub.com/facebook/jest/pull/8612))
- `[jest-cli, jest-init]` Add `coverageProvider` to `jest --init` prompts ([#10044](https://togithub.com/facebook/jest/pull/10044))
##### Fixes
- `[jest-console]` `getConsoleOutput` to receive global stack trace config and use it to format stack trace ([#10081](https://togithub.com/facebook/jest/pull/10081))
- `[jest-jasmine2]` Stop adding `:` after an error that has no message ([#9990](https://togithub.com/facebook/jest/pull/9990))
- `[jest-diff]` Control no diff message color with `commonColor` in diff options ([#9997](https://togithub.com/facebook/jest/pull/9997))
- `[jest-snapshot]` Fix TypeScript compilation ([#10008](https://togithub.com/facebook/jest/pull/10008))
##### Chore & Maintenance
- `[docs]` Correct confusing filename in `enableAutomock` example ([#10055](https://togithub.com/facebook/jest/pull/10055))
- `[jest-core]` πππππππππππππππππππππππππ ([#10000](https://togithub.com/facebook/jest/pull/10000))
- `[jest-core, jest-reporters, jest-test-result, jest-types]` Cleanup `displayName` type ([#10049](https://togithub.com/facebook/jest/pull/10049))
- `[jest-runtime]` Jest-internal sandbox escape hatch ([#9907](https://togithub.com/facebook/jest/pull/9907))
- `[jest-fake-timers]` Update `now` param type to support `Date` in addition to `number`. ([#10169](https://togithub.com/facebook/jest/pull/10169))
- `[docs]` Add param to `setSystemTime` docs and remove preceding period from it and `getRealSystemTime` ([#10169](https://togithub.com/facebook/jest/pull/10169))
- `[jest-snapshot, jest-util]` Replace `make-dir` with `fs.mkdir` ([#10136](https://togithub.com/facebook/jest/pull/10136))
- `[docs]` Added parcel-bundler documentation inside readme.md file
##### Performance
- `[jest-core, jest-transform, jest-haste-map]` Improve Jest startup time and test runtime, particularly when running with coverage, by caching micromatch and avoiding recreating RegExp instances ([#10131](https://togithub.com/facebook/jest/pull/10131))
### [`v26.0.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2601)
[Compare Source](https://togithub.com/facebook/jest/compare/v26.0.0...v26.0.1)
##### Fixes
- `[jest-circus]` Backward compatibility for deprecated `DescribeBlock.tests` to not break e.g. Detox reporter
kulshekhar/ts-jest
### [`v27.0.3`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2703-httpsgithubcomkulshekharts-jestcomparev2702v2703-2021-06-06)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v27.0.2...v27.0.3)
##### Bug Fixes
- revert `exports` field to support all node versions ([#2658](https://togithub.com/kulshekhar/ts-jest/issues/2658)) ([132c8ba](https://togithub.com/kulshekhar/ts-jest/commit/132c8ba85c3e61b7d9ede0dc9730580b79618ab7))
##### Features
- emit ESM codes if using ESM mode with Babel ([#2661](https://togithub.com/kulshekhar/ts-jest/issues/2661)) ([9b55404](https://togithub.com/kulshekhar/ts-jest/commit/9b55404a8dfc760238e19786da98a2edf043b9da)), closes [#2650](https://togithub.com/kulshekhar/ts-jest/issues/2650)
### [`v27.0.2`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2702-httpsgithubcomkulshekharts-jestcomparev2701v2702-2021-05-30)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v27.0.1...v27.0.2)
##### Bug Fixes
- **compiler:** add empty string file content to compiler cache ([#2633](https://togithub.com/kulshekhar/ts-jest/issues/2633)) ([0feb556](https://togithub.com/kulshekhar/ts-jest/commit/0feb5560a588f87d1d989bf521859fba0fda20fe)), closes [#2625](https://togithub.com/kulshekhar/ts-jest/issues/2625)
- **config:** `exclude` should only exclude files which match glob values ([#2637](https://togithub.com/kulshekhar/ts-jest/issues/2637)) ([c5ce979](https://togithub.com/kulshekhar/ts-jest/commit/c5ce97902c1b84dc354f270a4f596a6f5f634611)), closes [#2634](https://togithub.com/kulshekhar/ts-jest/issues/2634)
### [`v27.0.1`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2701-httpsgithubcomkulshekharts-jestcomparev2700v2701-2021-05-26)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v27.0.0...v27.0.1)
##### Bug Fixes
- **cli:** keep `testMatch` if old jest config contains it ([#2618](https://togithub.com/kulshekhar/ts-jest/issues/2618)) ([c568f49](https://togithub.com/kulshekhar/ts-jest/commit/c568f49907fb5559ba1e8c67f1ec5d5eb4af920a)), closes [#2616](https://togithub.com/kulshekhar/ts-jest/issues/2616)
- **compiler:** make sure `isolatedModules: false` use updated compiler options ([#2628](https://togithub.com/kulshekhar/ts-jest/issues/2628)) ([348e30f](https://togithub.com/kulshekhar/ts-jest/commit/348e30f426803efc51ecba26ab42619938fcb5af)), closes [#2629](https://togithub.com/kulshekhar/ts-jest/issues/2629)
- add missing export `presets` ([#2624](https://togithub.com/kulshekhar/ts-jest/issues/2624)) ([0ea025e](https://togithub.com/kulshekhar/ts-jest/commit/0ea025ebb456d3a31671e31fac0b401c2734a2b1)), closes [#2623](https://togithub.com/kulshekhar/ts-jest/issues/2623)
### [`v27.0.0`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2700-httpsgithubcomkulshekharts-jestcomparev2656v2700-2021-05-25)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v26.5.6...v27.0.0)
##### Bug Fixes
- **compiler:** return file content on emitSkipped for non ts/tsx files ([#2519](https://togithub.com/kulshekhar/ts-jest/issues/2519)) ([a4e5640](https://togithub.com/kulshekhar/ts-jest/commit/a4e5640f54a7810c9b7aba32663ce4a53893d22f)), closes [#2513](https://togithub.com/kulshekhar/ts-jest/issues/2513)
- **compiler:** retype check other files if processing file is used by those ones in watch mode ([#2481](https://togithub.com/kulshekhar/ts-jest/issues/2481)) ([ac8f3d0](https://togithub.com/kulshekhar/ts-jest/commit/ac8f3d025de67bfc2708a8422ee657fc42455513)), closes [#943](https://togithub.com/kulshekhar/ts-jest/issues/943)
- **compiler:** initialize compiler with `.ts`/`.tsx`/`.d.ts` files only ([#2458](https://togithub.com/kulshekhar/ts-jest/issues/2458)) ([a89f0e2](https://togithub.com/kulshekhar/ts-jest/commit/a89f0e2061e01440337dde4134639ff6a2d69936)), closes [#2445](https://togithub.com/kulshekhar/ts-jest/issues/2445)
- **compiler:** resolve nested imported modules for each processing file ([#2436](https://togithub.com/kulshekhar/ts-jest/issues/2436)) ([3cb9019](https://togithub.com/kulshekhar/ts-jest/commit/3cb9019289bb64deecffaf52e840faf6a4656092)), closes [#1390](https://togithub.com/kulshekhar/ts-jest/issues/1390) [#1747](https://togithub.com/kulshekhar/ts-jest/issues/1747)
- **config:** create fallback jest config when jest config is `undefined` ([#2433](https://togithub.com/kulshekhar/ts-jest/issues/2433)) ([c6d6e4c](https://togithub.com/kulshekhar/ts-jest/commit/c6d6e4cd534e1c368fcb7141784ee43584525ca4)), closes [#2085](https://togithub.com/kulshekhar/ts-jest/issues/2085)
- remove `@types/jest` from direct dep ([#2409](https://togithub.com/kulshekhar/ts-jest/issues/2409)) ([8913120](https://togithub.com/kulshekhar/ts-jest/commit/89131203c358c8f9e89655800e500a9e88a17334)), closes [#2406](https://togithub.com/kulshekhar/ts-jest/issues/2406) [#2411](https://togithub.com/kulshekhar/ts-jest/issues/2411)
- **compiler:** return original file content and show warning on emit skip ([#2410](https://togithub.com/kulshekhar/ts-jest/issues/2410)) ([c2b2164](https://togithub.com/kulshekhar/ts-jest/commit/c2b2164ddd1e606fc2490326244a6efc63f6c4a0)), closes [#2407](https://togithub.com/kulshekhar/ts-jest/issues/2407)
- **compiler:** type check correctly in watch mode when a file content itself has changed ([#2405](https://togithub.com/kulshekhar/ts-jest/issues/2405)) ([064bf3a](https://togithub.com/kulshekhar/ts-jest/commit/064bf3a73e9a304aa9366d27db8973b68be23ffd)), closes [#2118](https://togithub.com/kulshekhar/ts-jest/issues/2118)
- **compiler:** exclude files in `outDir` from compiler source files ([#2375](https://togithub.com/kulshekhar/ts-jest/issues/2375)) ([ec68c74](https://togithub.com/kulshekhar/ts-jest/commit/ec68c74bccf56d682a7ed9e5c48ea676dcf3fbf9)), closes [#2350](https://togithub.com/kulshekhar/ts-jest/issues/2350) [#2374](https://togithub.com/kulshekhar/ts-jest/issues/2374)
- **config:** cache config and compiler correctly between runs ([#2356](https://togithub.com/kulshekhar/ts-jest/issues/2356)) ([5f91336](https://togithub.com/kulshekhar/ts-jest/commit/5f91336b9023da1051cc85b509ad02c525679fcb))
- **config:** improve emit skipped error message ([#2358](https://togithub.com/kulshekhar/ts-jest/issues/2358)) ([2ae8df4](https://togithub.com/kulshekhar/ts-jest/commit/2ae8df4515d6f6e975e57719a89184b5583f9e2f)), closes [#2350](https://togithub.com/kulshekhar/ts-jest/issues/2350)
- **typings:** set correct typing for `tsconfig` option ([#2383](https://togithub.com/kulshekhar/ts-jest/issues/2383)) ([584324a](https://togithub.com/kulshekhar/ts-jest/commit/584324a60c0784275e9bf8bcfd0814735a250d24)), closes [#2368](https://togithub.com/kulshekhar/ts-jest/issues/2368)
- **config:** invalidate Jest transform cache when `astTransformers` value changes ([#2345](https://togithub.com/kulshekhar/ts-jest/issues/2345)) ([d726016](https://togithub.com/kulshekhar/ts-jest/commit/d726016a17a26215fad782cf57bb9b9bec807307))
- reduce size of `node_modules` when adding `ts-jest` ([#2263](https://togithub.com/kulshekhar/ts-jest/issues/2263)) ([8e0675c](https://togithub.com/kulshekhar/ts-jest/commit/8e0675c02b6095af6656df50c8782c01ad9e87a3))
##### Features
- **config:** allow disable sourcemap ([#2544](https://togithub.com/kulshekhar/ts-jest/issues/2544)) ([47da6ad](https://togithub.com/kulshekhar/ts-jest/commit/47da6ada5089e58e9bc68ce8e9bc9e17aaa127ae))
- **compiler:** expose `TsCompiler` as public api ([#2344](https://togithub.com/kulshekhar/ts-jest/issues/2344)) ([871cd6a](https://togithub.com/kulshekhar/ts-jest/commit/871cd6a3abb10569a04d05f72bbb41c952665ed4))
- **config:** support typed config options for jest config typescript ([#2335](https://togithub.com/kulshekhar/ts-jest/issues/2335)) ([3cfc37b](https://togithub.com/kulshekhar/ts-jest/commit/3cfc37b1eba125fe861cea0415095dbe1f538520))
- **presets:** add typing for `presets` entry point ([#2337](https://togithub.com/kulshekhar/ts-jest/issues/2337)) ([1a3058f](https://togithub.com/kulshekhar/ts-jest/commit/1a3058f3b7f8a2e377cb6a7e829cea310a06d4fa))
- **compiler:** allow custom transformers to access internal `Program` ([#2299](https://togithub.com/kulshekhar/ts-jest/issues/2299)) ([387964f](https://togithub.com/kulshekhar/ts-jest/commit/387964faed14ce24d2cf8170a04eee244d69b8b9))
- **config:** replace `pathRegex` with `exclude` ([#2295](https://togithub.com/kulshekhar/ts-jest/issues/2295)) ([f2f99c3](https://togithub.com/kulshekhar/ts-jest/commit/f2f99c3a46ac18a1fd6cc98922329b71a7e8c4e8))
- **config:** type checking `js` files based on `checkJs` ([#2283](https://togithub.com/kulshekhar/ts-jest/issues/2283)) ([1e04433](https://togithub.com/kulshekhar/ts-jest/commit/1e044335a38907ff5c06eb43efeb2e5fd9769a0c))
- **compiler:** support ESM for `isolatedModules: false` ([#2269](https://togithub.com/kulshekhar/ts-jest/issues/2269)) ([9bb0c05](https://togithub.com/kulshekhar/ts-jest/commit/9bb0c054a3a7bd8949b0c12b2bb42348f69e2e2e)), closes [#1709](https://togithub.com/kulshekhar/ts-jest/issues/1709)
- **compiler:** support ESM for `isolatedModule: true` ([#2219](https://togithub.com/kulshekhar/ts-jest/issues/2219)) ([e101db0](https://togithub.com/kulshekhar/ts-jest/commit/e101db01095ce75ce9a48e27a1d9bf84bb8e19ee)), closes [#1709](https://togithub.com/kulshekhar/ts-jest/issues/1709)
- **presets:** add 3 new presets to work with ESM ([#2207](https://togithub.com/kulshekhar/ts-jest/issues/2207)) ([c277858](https://togithub.com/kulshekhar/ts-jest/commit/c277858c7820d8873c2d7d0c6e3704a47868d600))
- allow subclasses of `TsJestTransformer` to have version checking ([#2176](https://togithub.com/kulshekhar/ts-jest/issues/2176)) ([ca8d7c4](https://togithub.com/kulshekhar/ts-jest/commit/ca8d7c44779105ef208d17cdd8c6baaf96b479ad))
##### Performance Improvements
- reuse jest file system cache for `isolatedModules: false` ([#2189](https://togithub.com/kulshekhar/ts-jest/issues/2189)) ([68f446b](https://togithub.com/kulshekhar/ts-jest/commit/68f446b8351bb8925ac4822aa631aa6b23f2f711))
##### Code Refactoring
- **config:** remove support for `astTransformers` string array ([#2129](https://togithub.com/kulshekhar/ts-jest/issues/2129)) ([1e0b2ce](https://togithub.com/kulshekhar/ts-jest/commit/1e0b2ce5599a35c108712456e455bf29c8c5fd24))
- **config:** remove support for `packageJson` option ([#2128](https://togithub.com/kulshekhar/ts-jest/issues/2128)) ([05916b9](https://togithub.com/kulshekhar/ts-jest/commit/05916b920160da5b43a20b47025eea43b4a1a5c3))
- move jest transformer class to package entry ([#2122](https://togithub.com/kulshekhar/ts-jest/issues/2122)) ([5bbfd06](https://togithub.com/kulshekhar/ts-jest/commit/5bbfd06a0c114dbecd75b763bcfa76d4a6203ab1))
- **config:** remove support for `tsConfig` option ([#2127](https://togithub.com/kulshekhar/ts-jest/issues/2127)) ([3cc9b80](https://togithub.com/kulshekhar/ts-jest/commit/3cc9b806be2b2096b981253d39ca40df65bb0f7b))
#### BREAKING CHANGES
- By default, `ts-jest` will use `sourceMap` option from your `tsconfig`. If users want to have sourcemap on, they need to set `sourceMap: true` in `tsconfig`.
- follow Jest support Node engines ([#2478](https://togithub.com/kulshekhar/ts-jest/pull/2478)) ([1fecf7f](https://togithub.com/kulshekhar/ts-jest/commit/1fecf7ff92a5f1a0cc6ea1d27026f9f54a3d5ead))
- add `exports` field to `package.json`, see https://nodejs.org/api/packages.html#packages_package_entry_points ([#2467](https://togithub.com/kulshekhar/ts-jest/pull/2467)) ([d3aba3e](https://togithub.com/kulshekhar/ts-jest/commit/d3aba3e103f85b3a42d0e2ecaea9d3457917319e))
- `ts-jest` custom AST transformer function signature has changed to
import type { TsCompilerInstance } from 'ts-jest/dist/types'
export function factory(compilerInstance: TsCompilerInstance) {
//...
}
- One is currently using `pathRegex` should use `exclude` with `glob` patterns.
- If one currently relies on type check for `js` files, please set `checkJs: true` in your tsconfig.
- Now both `isolatedModules: true` and `isolatedModule: false` codes are in one single class `TsCompiler` which is an instance created in `TsJestCompiler` based on config option `compiler` with value `typescript` or `ttypescript`.
- **config:** `packageJson` config option is not used in internal `ts-jest` so this option is now removed.
- **config:** One is defining ast transformers in `jest.config.js`/`package.json` should change to
// jest.config.js
module.exports = {
//...
globals: {
'ts-jest': {
astTransformers: {
before: ['your_before_transformer_path'],
after: ['your_after_transformer_path'],
afterDeclarations: ['your_afterDeclarations_transformer_path'],
}
}
}
}
or
// package.json
{
"jest": {
"globals": {
"ts-jest": {
"astTransformers": {
"before": [
Configuration
π Schedule: At any time (no schedule defined).
π¦ Automerge: Enabled.
β» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
π» Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box.
This PR contains the following updates:
^26.0.0
->^27.0.0
^25.0.0
->^27.0.0
Release Notes
facebook/jest
### [`v27.0.6`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2706) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.5...v27.0.6) ##### Fixes - `[*]` Publish all modules to include the build change in [#11569](https://togithub.com/facebook/jest/pull/11569) ### [`v27.0.5`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2705) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.4...v27.0.5) ##### Features - `[@jest/fake-timers]` Flush callbacks scheduled with `requestAnimationFrame` every 16ms when using legacy timers. ([#11523](https://togithub.com/facebook/jest/pull/11567)) - `[pretty-format]` Use `globalThis` (with polyfill if required) to bring support for esbuild's browser bundling mode ([#11569](https://togithub.com/facebook/jest/pull/11569)) ##### Fixes - `[jest-core]` Support special characters like `@`, `+` and `()` on Windows with `--findRelatedTests` ([#11548](https://togithub.com/facebook/jest/pull/11548)) - `[@jest/fake-timers]` Do not add `setImmediate` and `clearImmediate` if they do not exist in the global environment ([#11599](https://togithub.com/facebook/jest/pull/11599)) - `[@jest/reporters]` Allow `node-notifier@10` as peer dependency ([#11523](https://togithub.com/facebook/jest/pull/11523)) - `[@jest/reporters]` Update `v8-to-istanbul` ([#11523](https://togithub.com/facebook/jest/pull/11523)) ### [`v27.0.4`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2704) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.3...v27.0.4) ##### Fixes - `[jest-config, jest-resolve]` Pass in `require.resolve` to resolvers to resolve from correct base ([#11493](https://togithub.com/facebook/jest/pull/11493)) ### [`v27.0.3`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2703) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.2...v27.0.3) ##### Fixes - `[jest-config]` `require.resolve` on default test sequencer and test environment ([#11482](https://togithub.com/facebook/jest/pull/11482)) - `[jest-mock]` Fixed `fn` and `spyOn` exports ([#11480](https://togithub.com/facebook/jest/pull/11480)) ### [`v27.0.2`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2702) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.1...v27.0.2) ##### Features - `[jest-circus]` Add some APIs to make it easier to build your own test runner - `[jest-reporters]` Expose the `getResultHeader` util ([#11460](https://togithub.com/facebook/jest/pull/11460)) - `[jest-resolver]` Export `resolve*` utils for different Jest modules ([#11466](https://togithub.com/facebook/jest/pull/11466)) - `[@jest/test-result]` Export `Test`, `TestEvents` and `TestFileEvent` ([#11466](https://togithub.com/facebook/jest/pull/11466)) ##### Fixes - `[jest-circus]` Add missing `slash` dependency ([#11465](https://togithub.com/facebook/jest/pull/11465)) - `[jest-circus, @jest/test-sequencer]` Remove dependency on `jest-runner` ([#11466](https://togithub.com/facebook/jest/pull/11466)) - `[jest-config]` Resolve `config.runner` to absolute path ([#11465](https://togithub.com/facebook/jest/pull/11465)) - `[jest-config]` Make sure to support functions as config ([#11475](https://togithub.com/facebook/jest/pull/11475)) - `[jest-core]` Do not warn about `DNSCHANNEL` handles when using the `--detectOpenHandles` option ([#11470](https://togithub.com/facebook/jest/pull/11470)) - `[jest-runner]` Remove dependency on `jest-config` ([#11466](https://togithub.com/facebook/jest/pull/11466)) - `[jest-worker]` Loosen engine requirement to `>= 10.13.0` ([#11451](https://togithub.com/facebook/jest/pull/11451)) ### [`v27.0.1`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2701) [Compare Source](https://togithub.com/facebook/jest/compare/v27.0.0...v27.0.1) ##### Fixes - `[jest-environment-jsdom]` Bump version of JSDOM to avoid deprecated `request` package ([#11442](https://togithub.com/facebook/jest/pull/11442)) ### [`v27.0.0`](https://togithub.com/facebook/jest/blob/master/CHANGELOG.md#2700) [Compare Source](https://togithub.com/facebook/jest/compare/v26.6.3...v27.0.0) ##### Features - `[babel-jest]` Add async transformation ([#11192](https://togithub.com/facebook/jest/pull/11192)) - `[jest-changed-files]` Use '--' to separate paths from revisions ([#11160](https://togithub.com/facebook/jest/pull/11160)) - `[jest-circus]` \[**BREAKING**] Fail tests when multiple `done()` calls are made ([#10624](https://togithub.com/facebook/jest/pull/10624)) - `[jest-circus, jest-jasmine2]` \[**BREAKING**] Fail the test instead of just warning when describe returns a value ([#10947](https://togithub.com/facebook/jest/pull/10947)) - `[jest-config]` \[**BREAKING**] Default to Node testing environment instead of browser (JSDOM) ([#9874](https://togithub.com/facebook/jest/pull/9874)) - `[jest-config]` \[**BREAKING**] Use `jest-circus` as default test runner ([#10686](https://togithub.com/facebook/jest/pull/10686)) - `[jest-config]` Add support for `preset` written in ESM ([#11200](https://togithub.com/facebook/jest/pull/11200)) - `[jest-config, jest-runtime]` Support ESM for files other than `.js` and `.mjs` ([#10823](https://togithub.com/facebook/jest/pull/10823)) - `[jest-config, jest-runtime]` \[**BREAKING**] Use "modern" implementation as default for fake timers ([#10874](https://togithub.com/facebook/jest/pull/10874) & [#11197](https://togithub.com/facebook/jest/pull/11197)) - `[jest-config` Allow passing `forceNodeFilesystemAPI` through to `jest-haste-map` ([#11264](https://togithub.com/facebook/jest/pull/11264)) - `[jest-config, jest-haste-map, jest-resolve, jest-runner, jest-runtime, jest-test-sequencer, jest-transform, jest-types]` \[**BREAKING**] Add custom HasteMap class implementation config option ([#11107](https://togithub.com/facebook/jest/pull/11107)) - `[jest-core]` make `TestWatcher` extend `emittery` ([#10324](https://togithub.com/facebook/jest/pull/10324)) - `[jest-core]` Run failed tests interactively the same way we do with snapshots ([#10858](https://togithub.com/facebook/jest/pull/10858)) - `[jest-core]` more `TestSequencer` methods can be async ([#10980](https://togithub.com/facebook/jest/pull/10980)) - `[jest-core]` Add support for `testSequencer` written in ESM ([#11207](https://togithub.com/facebook/jest/pull/11207)) - `[jest-core]` Add support for `globalSetup` and `globalTeardown` written in ESM ([#11267](https://togithub.com/facebook/jest/pull/11267)) - `[jest-core]` Add support for `watchPlugins` written in ESM ([#11315](https://togithub.com/facebook/jest/pull/11315)) - `[jest-core]` Add support for `runner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-core]` Add support for `reporters` written in ESM ([#11427](https://togithub.com/facebook/jest/pull/11427)) - `[jest-each]` Add support for interpolation with object properties ([#11388](https://togithub.com/facebook/jest/pull/11388)) - `[jest-environment-node]` Add AbortController to globals ([#11182](https://togithub.com/facebook/jest/pull/11182)) - `[@jest/fake-timers]` Update to `@sinonjs/fake-timers` to v7 ([#11198](https://togithub.com/facebook/jest/pull/11198)) - `[jest-haste-map]` Handle injected scm clocks ([#10966](https://togithub.com/facebook/jest/pull/10966)) - `[jest-haste-map]` Add `enableSymlinks` configuration option to follow symlinks for test files ([#9351](https://togithub.com/facebook/jest/pull/9351)) - `[jest-repl, jest-runner]` \[**BREAKING**] Run transforms over environment ([#8751](https://togithub.com/facebook/jest/pull/8751)) - `[jest-repl]` Add support for `testEnvironment` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-runner]` \[**BREAKING**] set exit code to 1 if test logs after teardown ([#10728](https://togithub.com/facebook/jest/pull/10728)) - `[jest-runner]` \[**BREAKING**] Run transforms over `runner` ([#8823](https://togithub.com/facebook/jest/pull/8823)) - `[jest-runner]` \[**BREAKING**] Run transforms over `testRunner` ([#8823](https://togithub.com/facebook/jest/pull/8823)) - `[jest-runner]` Possibility to use ESM for test environment ([11033](https://togithub.com/facebook/jest/pull/11033)) - `[jest-runner]` Add support for `testRunner` written in ESM ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-runtime]` Detect reexports from CJS as named exports in ESM ([#10988](https://togithub.com/facebook/jest/pull/10988)) - `[jest-runtime]` Support for async code transformations ([#11191](https://togithub.com/facebook/jest/pull/11191) & [#11220](https://togithub.com/facebook/jest/pull/11220)) - `[jest-reporters]` Add static filepath property to all reporters ([#11015](https://togithub.com/facebook/jest/pull/11015)) - `[jest-snapshot]` \[**BREAKING**] Make prettier optional for inline snapshots - fall back to string replacement ([#7792](https://togithub.com/facebook/jest/pull/7792) & [#11192](https://togithub.com/facebook/jest/pull/11192)) - `[jest-snapshot]` \[**BREAKING**] Run transforms over `snapshotResolver` ([#8751](https://togithub.com/facebook/jest/pull/8829)) - `[jest-transform]` Pass config options defined in Jest's config to transformer's `process` and `getCacheKey` functions ([#10926](https://togithub.com/facebook/jest/pull/10926)) - `[jest-transform]` Add support for transformers written in ESM ([#11163](https://togithub.com/facebook/jest/pull/11163)) - `[jest-transform]` \[**BREAKING**] Do not export `ScriptTransformer` class, instead export the async function `createScriptTransformer` ([#11163](https://togithub.com/facebook/jest/pull/11163)) - `[jest-transform]` Async code transformations ([#9889](https://togithub.com/facebook/jest/pull/9889)) - `[jest-transform]` Support transpiled transformers ([#11193](https://togithub.com/facebook/jest/pull/11193)) - `[jest-transform]` \[**BREAKING**] `requireAndTranspileModule` always return a `Promise`, and the third parameter type is changed to `RequireAndTranspileModuleOptions` which accept `applyInteropRequireDefault` option ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-transform]` \[**BREAKING**] `createTranspilingRequire` return function which return a `Promise` now ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-util]` add requireOrImportModule for importing CJS or ESM ([#11199](https://togithub.com/facebook/jest/pull/11199)) - `[jest-util]` add `applyInteropRequireDefault` option on `requireOrImportModule` ([#11232](https://togithub.com/facebook/jest/pull/11232)) - `[jest-watcher]` Added support for clearing the line when `kulshekhar/ts-jest
### [`v27.0.3`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2703-httpsgithubcomkulshekharts-jestcomparev2702v2703-2021-06-06) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v27.0.2...v27.0.3) ##### Bug Fixes - revert `exports` field to support all node versions ([#2658](https://togithub.com/kulshekhar/ts-jest/issues/2658)) ([132c8ba](https://togithub.com/kulshekhar/ts-jest/commit/132c8ba85c3e61b7d9ede0dc9730580b79618ab7)) ##### Features - emit ESM codes if using ESM mode with Babel ([#2661](https://togithub.com/kulshekhar/ts-jest/issues/2661)) ([9b55404](https://togithub.com/kulshekhar/ts-jest/commit/9b55404a8dfc760238e19786da98a2edf043b9da)), closes [#2650](https://togithub.com/kulshekhar/ts-jest/issues/2650) ### [`v27.0.2`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2702-httpsgithubcomkulshekharts-jestcomparev2701v2702-2021-05-30) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v27.0.1...v27.0.2) ##### Bug Fixes - **compiler:** add empty string file content to compiler cache ([#2633](https://togithub.com/kulshekhar/ts-jest/issues/2633)) ([0feb556](https://togithub.com/kulshekhar/ts-jest/commit/0feb5560a588f87d1d989bf521859fba0fda20fe)), closes [#2625](https://togithub.com/kulshekhar/ts-jest/issues/2625) - **config:** `exclude` should only exclude files which match glob values ([#2637](https://togithub.com/kulshekhar/ts-jest/issues/2637)) ([c5ce979](https://togithub.com/kulshekhar/ts-jest/commit/c5ce97902c1b84dc354f270a4f596a6f5f634611)), closes [#2634](https://togithub.com/kulshekhar/ts-jest/issues/2634) ### [`v27.0.1`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2701-httpsgithubcomkulshekharts-jestcomparev2700v2701-2021-05-26) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v27.0.0...v27.0.1) ##### Bug Fixes - **cli:** keep `testMatch` if old jest config contains it ([#2618](https://togithub.com/kulshekhar/ts-jest/issues/2618)) ([c568f49](https://togithub.com/kulshekhar/ts-jest/commit/c568f49907fb5559ba1e8c67f1ec5d5eb4af920a)), closes [#2616](https://togithub.com/kulshekhar/ts-jest/issues/2616) - **compiler:** make sure `isolatedModules: false` use updated compiler options ([#2628](https://togithub.com/kulshekhar/ts-jest/issues/2628)) ([348e30f](https://togithub.com/kulshekhar/ts-jest/commit/348e30f426803efc51ecba26ab42619938fcb5af)), closes [#2629](https://togithub.com/kulshekhar/ts-jest/issues/2629) - add missing export `presets` ([#2624](https://togithub.com/kulshekhar/ts-jest/issues/2624)) ([0ea025e](https://togithub.com/kulshekhar/ts-jest/commit/0ea025ebb456d3a31671e31fac0b401c2734a2b1)), closes [#2623](https://togithub.com/kulshekhar/ts-jest/issues/2623) ### [`v27.0.0`](https://togithub.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md#2700-httpsgithubcomkulshekharts-jestcomparev2656v2700-2021-05-25) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v26.5.6...v27.0.0) ##### Bug Fixes - **compiler:** return file content on emitSkipped for non ts/tsx files ([#2519](https://togithub.com/kulshekhar/ts-jest/issues/2519)) ([a4e5640](https://togithub.com/kulshekhar/ts-jest/commit/a4e5640f54a7810c9b7aba32663ce4a53893d22f)), closes [#2513](https://togithub.com/kulshekhar/ts-jest/issues/2513) - **compiler:** retype check other files if processing file is used by those ones in watch mode ([#2481](https://togithub.com/kulshekhar/ts-jest/issues/2481)) ([ac8f3d0](https://togithub.com/kulshekhar/ts-jest/commit/ac8f3d025de67bfc2708a8422ee657fc42455513)), closes [#943](https://togithub.com/kulshekhar/ts-jest/issues/943) - **compiler:** initialize compiler with `.ts`/`.tsx`/`.d.ts` files only ([#2458](https://togithub.com/kulshekhar/ts-jest/issues/2458)) ([a89f0e2](https://togithub.com/kulshekhar/ts-jest/commit/a89f0e2061e01440337dde4134639ff6a2d69936)), closes [#2445](https://togithub.com/kulshekhar/ts-jest/issues/2445) - **compiler:** resolve nested imported modules for each processing file ([#2436](https://togithub.com/kulshekhar/ts-jest/issues/2436)) ([3cb9019](https://togithub.com/kulshekhar/ts-jest/commit/3cb9019289bb64deecffaf52e840faf6a4656092)), closes [#1390](https://togithub.com/kulshekhar/ts-jest/issues/1390) [#1747](https://togithub.com/kulshekhar/ts-jest/issues/1747) - **config:** create fallback jest config when jest config is `undefined` ([#2433](https://togithub.com/kulshekhar/ts-jest/issues/2433)) ([c6d6e4c](https://togithub.com/kulshekhar/ts-jest/commit/c6d6e4cd534e1c368fcb7141784ee43584525ca4)), closes [#2085](https://togithub.com/kulshekhar/ts-jest/issues/2085) - remove `@types/jest` from direct dep ([#2409](https://togithub.com/kulshekhar/ts-jest/issues/2409)) ([8913120](https://togithub.com/kulshekhar/ts-jest/commit/89131203c358c8f9e89655800e500a9e88a17334)), closes [#2406](https://togithub.com/kulshekhar/ts-jest/issues/2406) [#2411](https://togithub.com/kulshekhar/ts-jest/issues/2411) - **compiler:** return original file content and show warning on emit skip ([#2410](https://togithub.com/kulshekhar/ts-jest/issues/2410)) ([c2b2164](https://togithub.com/kulshekhar/ts-jest/commit/c2b2164ddd1e606fc2490326244a6efc63f6c4a0)), closes [#2407](https://togithub.com/kulshekhar/ts-jest/issues/2407) - **compiler:** type check correctly in watch mode when a file content itself has changed ([#2405](https://togithub.com/kulshekhar/ts-jest/issues/2405)) ([064bf3a](https://togithub.com/kulshekhar/ts-jest/commit/064bf3a73e9a304aa9366d27db8973b68be23ffd)), closes [#2118](https://togithub.com/kulshekhar/ts-jest/issues/2118) - **compiler:** exclude files in `outDir` from compiler source files ([#2375](https://togithub.com/kulshekhar/ts-jest/issues/2375)) ([ec68c74](https://togithub.com/kulshekhar/ts-jest/commit/ec68c74bccf56d682a7ed9e5c48ea676dcf3fbf9)), closes [#2350](https://togithub.com/kulshekhar/ts-jest/issues/2350) [#2374](https://togithub.com/kulshekhar/ts-jest/issues/2374) - **config:** cache config and compiler correctly between runs ([#2356](https://togithub.com/kulshekhar/ts-jest/issues/2356)) ([5f91336](https://togithub.com/kulshekhar/ts-jest/commit/5f91336b9023da1051cc85b509ad02c525679fcb)) - **config:** improve emit skipped error message ([#2358](https://togithub.com/kulshekhar/ts-jest/issues/2358)) ([2ae8df4](https://togithub.com/kulshekhar/ts-jest/commit/2ae8df4515d6f6e975e57719a89184b5583f9e2f)), closes [#2350](https://togithub.com/kulshekhar/ts-jest/issues/2350) - **typings:** set correct typing for `tsconfig` option ([#2383](https://togithub.com/kulshekhar/ts-jest/issues/2383)) ([584324a](https://togithub.com/kulshekhar/ts-jest/commit/584324a60c0784275e9bf8bcfd0814735a250d24)), closes [#2368](https://togithub.com/kulshekhar/ts-jest/issues/2368) - **config:** invalidate Jest transform cache when `astTransformers` value changes ([#2345](https://togithub.com/kulshekhar/ts-jest/issues/2345)) ([d726016](https://togithub.com/kulshekhar/ts-jest/commit/d726016a17a26215fad782cf57bb9b9bec807307)) - reduce size of `node_modules` when adding `ts-jest` ([#2263](https://togithub.com/kulshekhar/ts-jest/issues/2263)) ([8e0675c](https://togithub.com/kulshekhar/ts-jest/commit/8e0675c02b6095af6656df50c8782c01ad9e87a3)) ##### Features - **config:** allow disable sourcemap ([#2544](https://togithub.com/kulshekhar/ts-jest/issues/2544)) ([47da6ad](https://togithub.com/kulshekhar/ts-jest/commit/47da6ada5089e58e9bc68ce8e9bc9e17aaa127ae)) - **compiler:** expose `TsCompiler` as public api ([#2344](https://togithub.com/kulshekhar/ts-jest/issues/2344)) ([871cd6a](https://togithub.com/kulshekhar/ts-jest/commit/871cd6a3abb10569a04d05f72bbb41c952665ed4)) - **config:** support typed config options for jest config typescript ([#2335](https://togithub.com/kulshekhar/ts-jest/issues/2335)) ([3cfc37b](https://togithub.com/kulshekhar/ts-jest/commit/3cfc37b1eba125fe861cea0415095dbe1f538520)) - **presets:** add typing for `presets` entry point ([#2337](https://togithub.com/kulshekhar/ts-jest/issues/2337)) ([1a3058f](https://togithub.com/kulshekhar/ts-jest/commit/1a3058f3b7f8a2e377cb6a7e829cea310a06d4fa)) - **compiler:** allow custom transformers to access internal `Program` ([#2299](https://togithub.com/kulshekhar/ts-jest/issues/2299)) ([387964f](https://togithub.com/kulshekhar/ts-jest/commit/387964faed14ce24d2cf8170a04eee244d69b8b9)) - **config:** replace `pathRegex` with `exclude` ([#2295](https://togithub.com/kulshekhar/ts-jest/issues/2295)) ([f2f99c3](https://togithub.com/kulshekhar/ts-jest/commit/f2f99c3a46ac18a1fd6cc98922329b71a7e8c4e8)) - **config:** type checking `js` files based on `checkJs` ([#2283](https://togithub.com/kulshekhar/ts-jest/issues/2283)) ([1e04433](https://togithub.com/kulshekhar/ts-jest/commit/1e044335a38907ff5c06eb43efeb2e5fd9769a0c)) - **compiler:** support ESM for `isolatedModules: false` ([#2269](https://togithub.com/kulshekhar/ts-jest/issues/2269)) ([9bb0c05](https://togithub.com/kulshekhar/ts-jest/commit/9bb0c054a3a7bd8949b0c12b2bb42348f69e2e2e)), closes [#1709](https://togithub.com/kulshekhar/ts-jest/issues/1709) - **compiler:** support ESM for `isolatedModule: true` ([#2219](https://togithub.com/kulshekhar/ts-jest/issues/2219)) ([e101db0](https://togithub.com/kulshekhar/ts-jest/commit/e101db01095ce75ce9a48e27a1d9bf84bb8e19ee)), closes [#1709](https://togithub.com/kulshekhar/ts-jest/issues/1709) - **presets:** add 3 new presets to work with ESM ([#2207](https://togithub.com/kulshekhar/ts-jest/issues/2207)) ([c277858](https://togithub.com/kulshekhar/ts-jest/commit/c277858c7820d8873c2d7d0c6e3704a47868d600)) - allow subclasses of `TsJestTransformer` to have version checking ([#2176](https://togithub.com/kulshekhar/ts-jest/issues/2176)) ([ca8d7c4](https://togithub.com/kulshekhar/ts-jest/commit/ca8d7c44779105ef208d17cdd8c6baaf96b479ad)) ##### Performance Improvements - reuse jest file system cache for `isolatedModules: false` ([#2189](https://togithub.com/kulshekhar/ts-jest/issues/2189)) ([68f446b](https://togithub.com/kulshekhar/ts-jest/commit/68f446b8351bb8925ac4822aa631aa6b23f2f711)) ##### Code Refactoring - **config:** remove support for `astTransformers` string array ([#2129](https://togithub.com/kulshekhar/ts-jest/issues/2129)) ([1e0b2ce](https://togithub.com/kulshekhar/ts-jest/commit/1e0b2ce5599a35c108712456e455bf29c8c5fd24)) - **config:** remove support for `packageJson` option ([#2128](https://togithub.com/kulshekhar/ts-jest/issues/2128)) ([05916b9](https://togithub.com/kulshekhar/ts-jest/commit/05916b920160da5b43a20b47025eea43b4a1a5c3)) - move jest transformer class to package entry ([#2122](https://togithub.com/kulshekhar/ts-jest/issues/2122)) ([5bbfd06](https://togithub.com/kulshekhar/ts-jest/commit/5bbfd06a0c114dbecd75b763bcfa76d4a6203ab1)) - **config:** remove support for `tsConfig` option ([#2127](https://togithub.com/kulshekhar/ts-jest/issues/2127)) ([3cc9b80](https://togithub.com/kulshekhar/ts-jest/commit/3cc9b806be2b2096b981253d39ca40df65bb0f7b)) #### BREAKING CHANGES - By default, `ts-jest` will use `sourceMap` option from your `tsconfig`. If users want to have sourcemap on, they need to set `sourceMap: true` in `tsconfig`. - follow Jest support Node engines ([#2478](https://togithub.com/kulshekhar/ts-jest/pull/2478)) ([1fecf7f](https://togithub.com/kulshekhar/ts-jest/commit/1fecf7ff92a5f1a0cc6ea1d27026f9f54a3d5ead)) - add `exports` field to `package.json`, see https://nodejs.org/api/packages.html#packages_package_entry_points ([#2467](https://togithub.com/kulshekhar/ts-jest/pull/2467)) ([d3aba3e](https://togithub.com/kulshekhar/ts-jest/commit/d3aba3e103f85b3a42d0e2ecaea9d3457917319e)) - `ts-jest` custom AST transformer function signature has changed to import type { TsCompilerInstance } from 'ts-jest/dist/types' export function factory(compilerInstance: TsCompilerInstance) { //... } - One is currently using `pathRegex` should use `exclude` with `glob` patterns. - If one currently relies on type check for `js` files, please set `checkJs: true` in your tsconfig. - Now both `isolatedModules: true` and `isolatedModule: false` codes are in one single class `TsCompiler` which is an instance created in `TsJestCompiler` based on config option `compiler` with value `typescript` or `ttypescript`. - **config:** `packageJson` config option is not used in internal `ts-jest` so this option is now removed. - **config:** One is defining ast transformers in `jest.config.js`/`package.json` should change to // jest.config.js module.exports = { //... globals: { 'ts-jest': { astTransformers: { before: ['your_before_transformer_path'], after: ['your_after_transformer_path'], afterDeclarations: ['your_afterDeclarations_transformer_path'], } } } } or // package.json { "jest": { "globals": { "ts-jest": { "astTransformers": { "before": [Configuration
π Schedule: At any time (no schedule defined).
π¦ Automerge: Enabled.
β» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
π» Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by WhiteSource Renovate. View repository job log here.