facebook/jest
### [`v29.5.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2950)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.4.3...v29.5.0)
##### Features
- `[jest-changed-files]` Support Sapling ([#13941](https://togithub.com/facebook/jest/pull/13941))
- `[jest-circus, @jest/cli, jest-config]` Add feature to randomize order of tests via CLI flag or through the config file([#12922](https://togithub.com/facebook/jest/pull/12922))
- `[jest-cli, jest-config, @jest/core, jest-haste-map, @jest/reporters, jest-runner, jest-runtime, @jest/types]` Add `workerThreads` configuration option to allow using [worker threads](https://nodejs.org/dist/latest/docs/api/worker_threads.html) for parallelization ([#13939](https://togithub.com/facebook/jest/pull/13939))
- `[jest-cli]` Export `yargsOptions` ([#13970](https://togithub.com/facebook/jest/pull/13970))
- `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#13875](https://togithub.com/facebook/jest/pull/13875))
- `[@jest/create-cache-key-function]` Allow passing `length` argument to `createCacheKey()` function and set its default value to `16` on Windows ([#13827](https://togithub.com/facebook/jest/pull/13827))
- `[jest-message-util]` Add support for [AggregateError](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/AggregateError) ([#13946](https://togithub.com/facebook/jest/pull/13946) & [#13947](https://togithub.com/facebook/jest/pull/13947))
- `[jest-message-util]` Add support for [Error causes](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause) in `test` and `it` ([#13935](https://togithub.com/facebook/jest/pull/13935) & [#13966](https://togithub.com/facebook/jest/pull/13966))
- `[jest-reporters]` Add `summaryThreshold` option to summary reporter to allow overriding the internal threshold that is used to print the summary of all failed tests when the number of test suites surpasses it ([#13895](https://togithub.com/facebook/jest/pull/13895))
- `[jest-runtime]` Expose `@sinonjs/fake-timers` async APIs functions `advanceTimersByTimeAsync(msToRun)` (`tickAsync(msToRun)`), `advanceTimersToNextTimerAsync(steps)` (`nextAsync`), `runAllTimersAsync` (`runAllAsync`), and `runOnlyPendingTimersAsync` (`runToLastAsync`) ([#13981](https://togithub.com/facebook/jest/pull/13981))
- `[jest-runtime, @jest/transform]` Allow V8 coverage provider to collect coverage from files which were not loaded explicitly ([#13974](https://togithub.com/facebook/jest/pull/13974))
- `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#13975](https://togithub.com/facebook/jest/pull/13975))
- `[jest-worker]` Add `start` method to worker farms ([#13937](https://togithub.com/facebook/jest/pull/13937))
- `[jest-worker]` Support passing a URL as path to worker ([#13982](https://togithub.com/facebook/jest/pull/13982))
##### Fixes
- `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#13952](https://togithub.com/facebook/jest/pull/13952))
- `[jest-circus]` Send test case results for `todo` tests ([#13915](https://togithub.com/facebook/jest/pull/13915))
- `[jest-circus]` Update message printed on test timeout ([#13830](https://togithub.com/facebook/jest/pull/13830))
- `[jest-circus]` Avoid creating the word "testfalse" when `takesDoneCallback` is `false` in the message printed on test timeout AND updated timeouts test ([#13954](https://togithub.com/facebook/jest/pull/13954))
- `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#13972](https://togithub.com/facebook/jest/pull/13972))
- `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#13960](https://togithub.com/facebook/jest/pull/13960))
- `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#13950](https://togithub.com/facebook/jest/pull/13950))
##### Chore & Maintenance
- `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#13977](https://togithub.com/facebook/jest/pull/13977))
### [`v29.4.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2943)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.4.2...v29.4.3)
##### Features
- `[expect]` Update `toThrow()` to be able to use error `cause`s ([#13606](https://togithub.com/facebook/jest/pull/13606))
- `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#13846](https://togithub.com/facebook/jest/pull/13846))
- `[jest-message-util]` Add support for [error `cause`s](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause) ([#13868](https://togithub.com/facebook/jest/pull/13868) & [#13912](https://togithub.com/facebook/jest/pull/13912))
- `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#13911](https://togithub.com/facebook/jest/pull/13911))
##### Fixes
- `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#13824](https://togithub.com/facebook/jest/pull/13824))
- `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#13867](https://togithub.com/facebook/jest/pull/13867))
- `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#13888](https://togithub.com/facebook/jest/pull/13888))
- `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#13866](https://togithub.com/facebook/jest/pull/13866))
### [`v29.4.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2942)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.4.1...v29.4.2)
##### Features
- `[@jest/core]` Instrument significant lifecycle events with [`performance.mark()`](https://nodejs.org/docs/latest-v16.x/api/perf_hooks.html#performancemarkname-options) ([#13859](https://togithub.com/facebook/jest/pull/13859))
##### Fixes
- `[expect, @jest/expect]` Provide type of `actual` as a generic argument to `Matchers` to allow better-typed extensions ([#13848](https://togithub.com/facebook/jest/pull/13848))
- `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#13847](https://togithub.com/facebook/jest/pull/13847))
- `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#13856](https://togithub.com/facebook/jest/pull/13856))
- `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#13853](https://togithub.com/facebook/jest/pull/13853))
- `[jest-worker]` Ignore IPC messages not intended for Jest ([#13543](https://togithub.com/facebook/jest/pull/13543))
##### Chore & Maintenance
- `[*]` make sure to exclude `.eslintcache` from published module ([#13832](https://togithub.com/facebook/jest/pull/13832))
- `[docs]` Cleanup incorrect links in CHANGELOG.md ([#13857](https://togithub.com/facebook/jest/pull/13857))
### [`v29.4.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2941)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.4.0...v29.4.1)
##### Features
- `[expect, jest-circus, @jest/types]` Implement `numPassingAsserts` of testResults to track the number of passing asserts in a test ([#13795](https://togithub.com/facebook/jest/pull/13795))
- `[jest-core]` Add newlines to JSON output ([#13817](https://togithub.com/facebook/jest/pull/13817))
- `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#13626](https://togithub.com/facebook/jest/pull/13626))
##### Fixes
- `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#13810](https://togithub.com/facebook/jest/pull/13810))
- `[jest-runtime]` Handle missing `replaceProperty` ([#13823](https://togithub.com/facebook/jest/pull/13823))
- `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#13756](https://togithub.com/facebook/jest/pull/13756))
### [`v29.4.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2940)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.3.1...v29.4.0)
##### Features
- `[expect, @jest/expect-utils]` Support custom equality testers ([#13654](https://togithub.com/facebook/jest/pull/13654))
- `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#13738](https://togithub.com/facebook/jest/pull/13738))
- `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#13496](https://togithub.com/facebook/jest/pull/13496))
- `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#13674](https://togithub.com/facebook/jest/pull/13674))
- `[jest-resolve]` Support subpath imports ([#13705](https://togithub.com/facebook/jest/pull/13705), [#13723](https://togithub.com/facebook/jest/pull/13723), [#13777](https://togithub.com/facebook/jest/pull/13777))
- `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#13680](https://togithub.com/facebook/jest/pull/13680))
- `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#13741](https://togithub.com/facebook/jest/pull/13741))
- `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#13700](https://togithub.com/facebook/jest/pull/13700))
- `[jest-transform]` Support for asynchronous `createTransformer` ([#13762](https://togithub.com/facebook/jest/pull/13762))
##### Fixes
- `[jest-environment-node]` Fix non-configurable globals ([#13687](https://togithub.com/facebook/jest/pull/13687))
- `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#13639](https://togithub.com/facebook/jest/pull/13639))
- `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#13692](https://togithub.com/facebook/jest/pull/13692))
- `[jest-resolve]` Add global paths to `require.resolve.paths` ([#13633](https://togithub.com/facebook/jest/pull/13633))
- `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#13806](https://togithub.com/facebook/jest/pull/13806))
- `[jest-runtime]` Support WASM files that import JS resources ([#13608](https://togithub.com/facebook/jest/pull/13608))
- `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#13735](https://togithub.com/facebook/jest/pull/13735))
- `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#12755](https://togithub.com/facebook/jest/pull/12755) & [#13805](https://togithub.com/facebook/jest/pull/13805))
- `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#13694](https://togithub.com/facebook/jest/pull/13694))
- `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#13770](https://togithub.com/facebook/jest/pull/13770))
##### Chore & Maintenance
- `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#13612](https://togithub.com/facebook/jest/pull/13612))
- `[docs]` Improve custom puppeteer example to prevent worker warnings ([#13619](https://togithub.com/facebook/jest/pull/13619))
### [`v29.3.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2931)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.3.0...v29.3.1)
##### Fixes
- `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#13583](https://togithub.com/facebook/jest/pull/13583))
##### Performance
- `[jest-transform]` Defer creation of cache directory ([#13420](https://togithub.com/facebook/jest/pull/13420))
### [`v29.3.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2930)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.2.2...v29.3.0)
##### Features
- `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#13505](https://togithub.com/facebook/jest/pull/13505))
##### Fixes
- `[jest-config]` Add config validation for `projects` option ([#13565](https://togithub.com/facebook/jest/pull/13565))
- `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#13513](https://togithub.com/facebook/jest/pull/13513))
- `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#13566](https://togithub.com/facebook/jest/pull/13566))
##### Chore & Maintenance
- `[@jest/transform]` Update `convert-source-map` ([#13509](https://togithub.com/facebook/jest/pull/13509))
- `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#13560](https://togithub.com/facebook/jest/pull/13560))
### [`v29.2.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2922)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.2.1...v29.2.2)
##### Fixes
- `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#13476](https://togithub.com/facebook/jest/pull/13476))
- `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#13504](https://togithub.com/facebook/jest/pull/13504))
- `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#13503](https://togithub.com/facebook/jest/pull/13503))
- `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#13480](https://togithub.com/facebook/jest/issues/13480))
##### Chore & Maintenance
- `[docs]` Update link to Jest 28 upgrade guide in error message ([#13483](https://togithub.com/facebook/jest/pull/13483))
- `[jest-runner, jest-watcher]` Update `emittery` ([#13490](https://togithub.com/facebook/jest/pull/13490))
### [`v29.2.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2921)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.2.0...v29.2.1)
##### Features
- `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#13440](https://togithub.com/facebook/jest/pull/13440))
##### Fixes
- `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#13467](https://togithub.com/facebook/jest/pull/13467))
- `[jest-mock]` Revert [#13398](https://togithub.com/facebook/jest/pull/13398) to restore mocking of setters ([#13472](https://togithub.com/facebook/jest/pull/13472))
##### Performance
- `[*]` Use sha1 instead of sha256 for hashing ([#13421](https://togithub.com/facebook/jest/pull/13421))
### [`v29.2.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2920)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.1.2...v29.2.0)
##### Features
- `[@jest/cli, jest-config]` A seed for the test run will be randomly generated, or set by a CLI option ([#13400](https://togithub.com/facebook/jest/pull/13400))
- `[@jest/cli, jest-config]` `--show-seed` will display the seed value in the report, and can be set via a CLI flag or through the config file ([#13400](https://togithub.com/facebook/jest/pull/13400))
- `[jest-config]` Add `readInitialConfig` utility function ([#13356](https://togithub.com/facebook/jest/pull/13356))
- `[jest-core]` Allow `testResultsProcessor` to be async ([#13343](https://togithub.com/facebook/jest/pull/13343))
- `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#13400](https://togithub.com/facebook/jest/pull/13400))
- `[expect, @jest/expect-utils]` Allow `isA` utility to take a type argument ([#13355](https://togithub.com/facebook/jest/pull/13355))
- `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#13411](https://togithub.com/facebook/jest/pull/13411))
##### Fixes
- `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#13367](https://togithub.com/facebook/jest/pull/13367))
- `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#13414](https://togithub.com/facebook/jest/pull/13414))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#13398](https://togithub.com/facebook/jest/pull/13398))
- `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#13399](https://togithub.com/facebook/jest/pull/13399))
- `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#13381](https://togithub.com/facebook/jest/pull/13381))
- `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#13385](https://togithub.com/facebook/jest/pull/13385))
##### Chore & Maintenance
- `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#13422](https://togithub.com/facebook/jest/pull/13422))
##### Performance
- `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#13282](https://togithub.com/facebook/jest/pull/13282))
### [`v29.1.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2912)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.1.1...v29.1.2)
##### Fixes
- `[expect, @jest/expect]` Revert buggy inference of argument types for `*CalledWith` and `*ReturnedWith` matchers introduced in 29.1.0 ([#13339](https://togithub.com/facebook/jest/pull/13339))
- `[jest-worker]` Add missing dependency on `jest-util` ([#13341](https://togithub.com/facebook/jest/pull/13341))
### [`v29.1.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2911)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.1.0...v29.1.1)
##### Fixes
- `[jest-mock]` Revert [#13145](https://togithub.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules
### [`v29.1.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2910)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.0.3...v29.1.0)
##### Features
- `[expect, @jest/expect]` Support type inference for function parameters in `CalledWith` assertions ([#13268](https://togithub.com/facebook/jest/pull/13268))
- `[expect, @jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#13278](https://togithub.com/facebook/jest/pull/13278))
- `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#13253](https://togithub.com/facebook/jest/pull/13253))
- `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#13254](https://togithub.com/facebook/jest/pull/13254))
- `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#13244](https://togithub.com/facebook/jest/pull/13244), [#13246](https://togithub.com/facebook/jest/pull/13246))
- `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#13281](https://togithub.com/facebook/jest/pull/13281))
- `[expect]` Export `toThrow*` matchers ([#13328](https://togithub.com/facebook/jest/pull/13328))
##### Fixes
- `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#13322](https://togithub.com/facebook/jest/pull/13322))
- `[jest-haste-map]` Remove `__proto__` usage ([#13256](https://togithub.com/facebook/jest/pull/13256))
- `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#13247](https://togithub.com/facebook/jest/pull/13247))
- `[jest-mock]` Fix mocking of getters and setters on classes ([#13145](https://togithub.com/facebook/jest/pull/13145))
- `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#13263](https://togithub.com/facebook/jest/pull/13263))
- `[jest-snapshot]` Prioritize parser used in the project ([#13323](https://togithub.com/facebook/jest/pull/13323))
- `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#11423](https://togithub.com/facebook/jest/pull/11423))
### [`v29.0.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2903)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.0.2...v29.0.3)
##### Features
- `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModule()` method ([#13202](https://togithub.com/facebook/jest/pull/13202))
- `[expect]` Expose `ExpectationResult` type ([#13240](https://togithub.com/facebook/jest/pull/13240))
- `[jest-snapshot]` Expose `Context` type ([#13240](https://togithub.com/facebook/jest/pull/13240))
- `[@jest/globals]` Add `jest.Mock` type helper ([#13235](https://togithub.com/facebook/jest/pull/13235))
##### Fixes
- `[jest-core]` Capture `execError` during `TestScheduler.scheduleTests` and dispatch to reporters ([#13203](https://togithub.com/facebook/jest/pull/13203))
- `[jest-resolve]` Make sure to resolve module paths after looking at `exports` ([#13242](https://togithub.com/facebook/jest/pull/13242))
- `[jest-resolve]` Improve error on module not found deep in the `require` stack ([#8704](https://togithub.com/facebook/jest/pull/8704))
- `[jest-snapshot]` Fix typings of snapshot matchers ([#13240](https://togithub.com/facebook/jest/pull/13240))
##### Chore & Maintenance
- `[*]` Fix inconsistent workspace prefixes ([#13217](https://togithub.com/facebook/jest/pull/13217))
- `[jest-haste-map]` Expose a minimal public API to TypeScript ([#13023](https://togithub.com/facebook/jest/pull/13023))
### [`v29.0.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2902)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.0.1...v29.0.2)
##### Features
- `[jest-transform]` Expose `TransformFactory` type ([#13184](https://togithub.com/facebook/jest/pull/13184))
##### Fixes
- `[babel-plugin-jest-hoist]` Support imported `jest` in mock factory ([#13188](https://togithub.com/facebook/jest/pull/13188))
- `[jest-mock]` Align the behavior and return type of `generateFromMetadata` method ([#13207](https://togithub.com/facebook/jest/pull/13207))
- `[jest-runtime]` Support `jest.resetModules()` with ESM ([#13211](https://togithub.com/facebook/jest/pull/13211))
### [`v29.0.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2901)
[Compare Source](https://togithub.com/facebook/jest/compare/v29.0.0...v29.0.1)
##### Fixes
- `[jest-snapshot]` Pass `snapshotFormat` through when diffing snapshots ([#13181](https://togithub.com/facebook/jest/pull/13181))
### [`v29.0.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2900)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.1.3...v29.0.0)
##### Features
- `[expect]` \[**BREAKING**] Differentiate between `MatcherContext` `MatcherUtils` and `MatcherState` types ([#13141](https://togithub.com/facebook/jest/pull/13141))
- `[jest-circus]` Add support for `test.failing.each` ([#13142](https://togithub.com/facebook/jest/pull/13142))
- `[jest-config]` \[**BREAKING**] Make `snapshotFormat` default to `escapeString: false` and `printBasicPrototype: false` ([#13036](https://togithub.com/facebook/jest/pull/13036))
- `[jest-config]` \[**BREAKING**] Remove undocumented `collectCoverageOnlyFrom` option ([#13156](https://togithub.com/facebook/jest/pull/13156))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade to `jsdom@20` ([#13037](https://togithub.com/facebook/jest/pull/13037), [#13058](https://togithub.com/facebook/jest/pull/13058))
- `[@jest/globals]` Add `jest.Mocked`, `jest.MockedClass`, `jest.MockedFunction` and `jest.MockedObject` utility types ([#12727](https://togithub.com/facebook/jest/pull/12727))
- `[jest-mock]` \[**BREAKING**] Refactor `Mocked*` utility types. `MaybeMockedDeep` and `MaybeMocked` became `Mocked` and `MockedShallow` respectively; only deep mocked variants of `MockedClass`, `MockedFunction` and `MockedObject` are exported ([#13123](https://togithub.com/facebook/jest/pull/13123), [#13124](https://togithub.com/facebook/jest/pull/13124))
- `[jest-mock]` \[**BREAKING**] Change the default `jest.mocked` helper’s behavior to deep mocked ([#13125](https://togithub.com/facebook/jest/pull/13125))
- `[jest-snapshot]` \[**BREAKING**] Let `babel` find config when updating inline snapshots ([#13150](https://togithub.com/facebook/jest/pull/13150))
- `[@jest/test-result, @jest/types]` \[**BREAKING**] Replace `Bytes` and `Milliseconds` types with `number` ([#13155](https://togithub.com/facebook/jest/pull/13155))
- `[jest-worker]` Adds `workerIdleMemoryLimit` option which is used as a check for worker memory leaks >= Node 16.11.0 and recycles child workers as required ([#13056](https://togithub.com/facebook/jest/pull/13056), [#13105](https://togithub.com/facebook/jest/pull/13105), [#13106](https://togithub.com/facebook/jest/pull/13106), [#13107](https://togithub.com/facebook/jest/pull/13107))
- `[pretty-format]` \[**BREAKING**] Remove `ConvertAnsi` plugin in favour of `jest-serializer-ansi-escapes` ([#13040](https://togithub.com/facebook/jest/pull/13040))
- `[pretty-format]` Allow to opt out from sorting object keys with `compareKeys: null` ([#12443](https://togithub.com/facebook/jest/pull/12443))
##### Fixes
- `[jest-config]` Fix testing multiple projects with TypeScript config files ([#13099](https://togithub.com/facebook/jest/pull/13099))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Record ([#13055](https://togithub.com/facebook/jest/pull/13055))
- `[jest-haste-map]` Increase the maximum possible file size that jest-haste-map can handle ([#13094](https://togithub.com/facebook/jest/pull/13094))
- `[jest-runtime]` Properly support CJS re-exports from dual packages ([#13170](https://togithub.com/facebook/jest/pull/13170))
- `[jest-snapshot]` Make `prettierPath` optional in `SnapshotState` ([#13149](https://togithub.com/facebook/jest/pull/13149))
- `[jest-snapshot]` Fix parsing error from inline snapshot files with `JSX` ([#12760](https://togithub.com/facebook/jest/pull/12760))
- `[jest-worker]` When a process runs out of memory worker exits correctly and doesn't spin indefinitely ([#13054](https://togithub.com/facebook/jest/pull/13054))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v12 and v17 ([#13033](https://togithub.com/facebook/jest/pull/13033))
- `[docs]` Fix webpack name ([#13049](https://togithub.com/facebook/jest/pull/13049))
- `[docs]` Explicit how to set `n` for `--bail` ([#13128](https://togithub.com/facebook/jest/pull/13128))
- `[docs]` Update Enzyme URL ([#13166](https://togithub.com/facebook/jest/pull/13166))
- `[jest-leak-detector]` Remove support for `weak-napi` ([#13035](https://togithub.com/facebook/jest/pull/13035))
- `[jest-snapshot]` \[**BREAKING**] Require `rootDir` as argument to `SnapshotState` ([#13150](https://togithub.com/facebook/jest/pull/13150))
kulshekhar/ts-jest
### [`v29.1.0`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0)
##### Features
- Support TypeScript 5.x ([#4064](https://togithub.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://togithub.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#4048](https://togithub.com/kulshekhar/ts-jest/issues/4048)
#### [29.0.5](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.4...v29.0.5) (2023-01-13)
##### Reverts
- Revert "fix(transformer): don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://togithub.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966)
#### [29.0.4](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4) (2023-01-10)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://togithub.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#3976](https://togithub.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://togithub.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
#### [29.0.3](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3) (2022-09-28)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#3842](https://togithub.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://togithub.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#3841](https://togithub.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#3833](https://togithub.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://togithub.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#3792](https://togithub.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://togithub.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
#### [29.0.2](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2) (2022-09-23)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#3816](https://togithub.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://togithub.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#3815](https://togithub.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#3825](https://togithub.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://togithub.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
#### [29.0.2](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2) (2022-09-22)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#3816](https://togithub.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://togithub.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#3815](https://togithub.com/kulshekhar/ts-jest/issues/3815)
#### [29.0.1](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1) (2022-09-13)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#3803](https://togithub.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://togithub.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#3805](https://togithub.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://togithub.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.5`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.4...v29.0.5)
##### Reverts
- Revert "fix(transformer): don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://togithub.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966)
### [`v29.0.4`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4)
##### Bug Fixes
- **transformer:** don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://togithub.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a))
- bump `json5` to `2.2.3` ([#3976](https://togithub.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://togithub.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536))
### [`v29.0.3`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3)
##### Bug Fixes
- merge config from `globals` with transformer config correctly ([#3842](https://togithub.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://togithub.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#3841](https://togithub.com/kulshekhar/ts-jest/issues/3841)
- **presets:** allow merging transform config when using presets ([#3833](https://togithub.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://togithub.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372))
##### Features
- add `useESM` option to `pathsToModuleNameMapper` options ([#3792](https://togithub.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://togithub.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b))
### [`v29.0.2`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2)
##### Bug Fixes
- mark `ts-jest` as optional in `ConfigGlobals` ([#3816](https://togithub.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://togithub.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#3815](https://togithub.com/kulshekhar/ts-jest/issues/3815)
- use correct typings for `config:init` command ([#3825](https://togithub.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://togithub.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570))
### [`v29.0.1`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1)
##### Bug Fixes
- **legacy:** include existing globals config in cached config ([#3803](https://togithub.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://togithub.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6))
##### Features
- add typings for `ts-jest` options via `transform` config ([#3805](https://togithub.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://togithub.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff))
### [`v29.0.0`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08)
[Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0)
##### Features
- drop Node 12 and Node 17 support ([#3787](https://togithub.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://togithub.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a))
- migrate globals config to transformer config ([#3780](https://togithub.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://togithub.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343))
- support Jest 29 ([#3767](https://togithub.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://togithub.com/kulshekhar/ts-jest/commit/94b553ba085c52db60f7a7078e3a74d9a02121b1))
##### DEPRECATIONS
- Define `ts-jest` config under `globals` is now deprecated. Please define the config via transformer config instead.
##### BREAKING CHANGES
- Only Node 14, 16 and 18 are supported
- **Jest 29** is required.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
^28.1.5
->^29.0.0
^28.1.3
->^29.0.0
^28.0.6
->^29.0.0
Release Notes
facebook/jest
### [`v29.5.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2950) [Compare Source](https://togithub.com/facebook/jest/compare/v29.4.3...v29.5.0) ##### Features - `[jest-changed-files]` Support Sapling ([#13941](https://togithub.com/facebook/jest/pull/13941)) - `[jest-circus, @jest/cli, jest-config]` Add feature to randomize order of tests via CLI flag or through the config file([#12922](https://togithub.com/facebook/jest/pull/12922)) - `[jest-cli, jest-config, @jest/core, jest-haste-map, @jest/reporters, jest-runner, jest-runtime, @jest/types]` Add `workerThreads` configuration option to allow using [worker threads](https://nodejs.org/dist/latest/docs/api/worker_threads.html) for parallelization ([#13939](https://togithub.com/facebook/jest/pull/13939)) - `[jest-cli]` Export `yargsOptions` ([#13970](https://togithub.com/facebook/jest/pull/13970)) - `[jest-config]` Add `openHandlesTimeout` option to configure possible open handles warning. ([#13875](https://togithub.com/facebook/jest/pull/13875)) - `[@jest/create-cache-key-function]` Allow passing `length` argument to `createCacheKey()` function and set its default value to `16` on Windows ([#13827](https://togithub.com/facebook/jest/pull/13827)) - `[jest-message-util]` Add support for [AggregateError](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/AggregateError) ([#13946](https://togithub.com/facebook/jest/pull/13946) & [#13947](https://togithub.com/facebook/jest/pull/13947)) - `[jest-message-util]` Add support for [Error causes](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause) in `test` and `it` ([#13935](https://togithub.com/facebook/jest/pull/13935) & [#13966](https://togithub.com/facebook/jest/pull/13966)) - `[jest-reporters]` Add `summaryThreshold` option to summary reporter to allow overriding the internal threshold that is used to print the summary of all failed tests when the number of test suites surpasses it ([#13895](https://togithub.com/facebook/jest/pull/13895)) - `[jest-runtime]` Expose `@sinonjs/fake-timers` async APIs functions `advanceTimersByTimeAsync(msToRun)` (`tickAsync(msToRun)`), `advanceTimersToNextTimerAsync(steps)` (`nextAsync`), `runAllTimersAsync` (`runAllAsync`), and `runOnlyPendingTimersAsync` (`runToLastAsync`) ([#13981](https://togithub.com/facebook/jest/pull/13981)) - `[jest-runtime, @jest/transform]` Allow V8 coverage provider to collect coverage from files which were not loaded explicitly ([#13974](https://togithub.com/facebook/jest/pull/13974)) - `[jest-snapshot]` Add support to `cts` and `mts` TypeScript files to inline snapshots ([#13975](https://togithub.com/facebook/jest/pull/13975)) - `[jest-worker]` Add `start` method to worker farms ([#13937](https://togithub.com/facebook/jest/pull/13937)) - `[jest-worker]` Support passing a URL as path to worker ([#13982](https://togithub.com/facebook/jest/pull/13982)) ##### Fixes - `[babel-plugin-jest-hoist]` Fix unwanted hoisting of nested `jest` usages ([#13952](https://togithub.com/facebook/jest/pull/13952)) - `[jest-circus]` Send test case results for `todo` tests ([#13915](https://togithub.com/facebook/jest/pull/13915)) - `[jest-circus]` Update message printed on test timeout ([#13830](https://togithub.com/facebook/jest/pull/13830)) - `[jest-circus]` Avoid creating the word "testfalse" when `takesDoneCallback` is `false` in the message printed on test timeout AND updated timeouts test ([#13954](https://togithub.com/facebook/jest/pull/13954)) - `[jest-environment-jsdom]` Stop setting `document` to `null` on teardown ([#13972](https://togithub.com/facebook/jest/pull/13972)) - `[@jest/expect-utils]` Update `toStrictEqual()` to be able to check `jest.fn().mock.calls` ([#13960](https://togithub.com/facebook/jest/pull/13960)) - `[@jest/test-result]` Allow `TestResultsProcessor` type to return a Promise ([#13950](https://togithub.com/facebook/jest/pull/13950)) ##### Chore & Maintenance - `[jest-snapshot]` Remove dependency on `jest-haste-map` ([#13977](https://togithub.com/facebook/jest/pull/13977)) ### [`v29.4.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2943) [Compare Source](https://togithub.com/facebook/jest/compare/v29.4.2...v29.4.3) ##### Features - `[expect]` Update `toThrow()` to be able to use error `cause`s ([#13606](https://togithub.com/facebook/jest/pull/13606)) - `[jest-core]` allow to use `workerIdleMemoryLimit` with only 1 worker or `runInBand` option ([#13846](https://togithub.com/facebook/jest/pull/13846)) - `[jest-message-util]` Add support for [error `cause`s](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause) ([#13868](https://togithub.com/facebook/jest/pull/13868) & [#13912](https://togithub.com/facebook/jest/pull/13912)) - `[jest-runtime]` Revert `import assertions` for JSON modules as it's been relegated to Stage 2 ([#13911](https://togithub.com/facebook/jest/pull/13911)) ##### Fixes - `[@jest/expect-utils]` `subsetEquality` should consider also an object's inherited string keys ([#13824](https://togithub.com/facebook/jest/pull/13824)) - `[jest-mock]` Clear mock state when `jest.restoreAllMocks()` is called ([#13867](https://togithub.com/facebook/jest/pull/13867)) - `[jest-mock]` Prevent `mockImplementationOnce` and `mockReturnValueOnce` bleeding into `withImplementation` ([#13888](https://togithub.com/facebook/jest/pull/13888)) - `[jest-mock]` Do not restore mocks when `jest.resetAllMocks()` is called ([#13866](https://togithub.com/facebook/jest/pull/13866)) ### [`v29.4.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2942) [Compare Source](https://togithub.com/facebook/jest/compare/v29.4.1...v29.4.2) ##### Features - `[@jest/core]` Instrument significant lifecycle events with [`performance.mark()`](https://nodejs.org/docs/latest-v16.x/api/perf_hooks.html#performancemarkname-options) ([#13859](https://togithub.com/facebook/jest/pull/13859)) ##### Fixes - `[expect, @jest/expect]` Provide type of `actual` as a generic argument to `Matchers` to allow better-typed extensions ([#13848](https://togithub.com/facebook/jest/pull/13848)) - `[jest-circus]` Added explicit mention of test failing because `done()` is not being called in error message ([#13847](https://togithub.com/facebook/jest/pull/13847)) - `[jest-runtime]` Handle CJS re-exports of node core modules from ESM ([#13856](https://togithub.com/facebook/jest/pull/13856)) - `[jest-transform]` Downgrade `write-file-atomic` to v4 ([#13853](https://togithub.com/facebook/jest/pull/13853)) - `[jest-worker]` Ignore IPC messages not intended for Jest ([#13543](https://togithub.com/facebook/jest/pull/13543)) ##### Chore & Maintenance - `[*]` make sure to exclude `.eslintcache` from published module ([#13832](https://togithub.com/facebook/jest/pull/13832)) - `[docs]` Cleanup incorrect links in CHANGELOG.md ([#13857](https://togithub.com/facebook/jest/pull/13857)) ### [`v29.4.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2941) [Compare Source](https://togithub.com/facebook/jest/compare/v29.4.0...v29.4.1) ##### Features - `[expect, jest-circus, @jest/types]` Implement `numPassingAsserts` of testResults to track the number of passing asserts in a test ([#13795](https://togithub.com/facebook/jest/pull/13795)) - `[jest-core]` Add newlines to JSON output ([#13817](https://togithub.com/facebook/jest/pull/13817)) - `[@jest/reporters]` Automatic log folding in GitHub Actions Reporter ([#13626](https://togithub.com/facebook/jest/pull/13626)) ##### Fixes - `[@jest/expect-utils]` `toMatchObject` diffs should include `Symbol` properties ([#13810](https://togithub.com/facebook/jest/pull/13810)) - `[jest-runtime]` Handle missing `replaceProperty` ([#13823](https://togithub.com/facebook/jest/pull/13823)) - `[@jest/types]` Add partial support for `done` callbacks in typings of `each` ([#13756](https://togithub.com/facebook/jest/pull/13756)) ### [`v29.4.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2940) [Compare Source](https://togithub.com/facebook/jest/compare/v29.3.1...v29.4.0) ##### Features - `[expect, @jest/expect-utils]` Support custom equality testers ([#13654](https://togithub.com/facebook/jest/pull/13654)) - `[jest-config, jest-worker]` Use `os.availableParallelism` if available to calculate number of workers to spawn ([#13738](https://togithub.com/facebook/jest/pull/13738)) - `[@jest/globals, jest-mock]` Add `jest.replaceProperty()` that replaces property value ([#13496](https://togithub.com/facebook/jest/pull/13496)) - `[jest-haste-map]` ignore Sapling vcs directories (`.sl/`) ([#13674](https://togithub.com/facebook/jest/pull/13674)) - `[jest-resolve]` Support subpath imports ([#13705](https://togithub.com/facebook/jest/pull/13705), [#13723](https://togithub.com/facebook/jest/pull/13723), [#13777](https://togithub.com/facebook/jest/pull/13777)) - `[jest-runtime]` Add `jest.isolateModulesAsync` for scoped module initialization of asynchronous functions ([#13680](https://togithub.com/facebook/jest/pull/13680)) - `[jest-runtime]` Add `jest.isEnvironmentTornDown` function ([#13741](https://togithub.com/facebook/jest/pull/13741)) - `[jest-test-result]` Added `skipped` and `focused` status to `FormattedTestResult` ([#13700](https://togithub.com/facebook/jest/pull/13700)) - `[jest-transform]` Support for asynchronous `createTransformer` ([#13762](https://togithub.com/facebook/jest/pull/13762)) ##### Fixes - `[jest-environment-node]` Fix non-configurable globals ([#13687](https://togithub.com/facebook/jest/pull/13687)) - `[@jest/expect-utils]` `toMatchObject` should handle `Symbol` properties ([#13639](https://togithub.com/facebook/jest/pull/13639)) - `[jest-mock]` Fix `mockReset` and `resetAllMocks` `undefined` return value([#13692](https://togithub.com/facebook/jest/pull/13692)) - `[jest-resolve]` Add global paths to `require.resolve.paths` ([#13633](https://togithub.com/facebook/jest/pull/13633)) - `[jest-resolve]` Correct node core module detection when using `node:` specifiers ([#13806](https://togithub.com/facebook/jest/pull/13806)) - `[jest-runtime]` Support WASM files that import JS resources ([#13608](https://togithub.com/facebook/jest/pull/13608)) - `[jest-runtime]` Use the `scriptTransformer` cache in `jest-runner` ([#13735](https://togithub.com/facebook/jest/pull/13735)) - `[jest-runtime]` Enforce import assertions when importing JSON in ESM ([#12755](https://togithub.com/facebook/jest/pull/12755) & [#13805](https://togithub.com/facebook/jest/pull/13805)) - `[jest-snapshot]` Make sure to import `babel` outside of the sandbox ([#13694](https://togithub.com/facebook/jest/pull/13694)) - `[jest-transform]` Ensure the correct configuration is passed to preprocessors specified multiple times in the `transform` option ([#13770](https://togithub.com/facebook/jest/pull/13770)) ##### Chore & Maintenance - `[@jest/fake-timers]` Update `@sinonjs/fake-timers` ([#13612](https://togithub.com/facebook/jest/pull/13612)) - `[docs]` Improve custom puppeteer example to prevent worker warnings ([#13619](https://togithub.com/facebook/jest/pull/13619)) ### [`v29.3.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2931) [Compare Source](https://togithub.com/facebook/jest/compare/v29.3.0...v29.3.1) ##### Fixes - `[jest-config]` Do not warn about `preset` in `ProjectConfig` ([#13583](https://togithub.com/facebook/jest/pull/13583)) ##### Performance - `[jest-transform]` Defer creation of cache directory ([#13420](https://togithub.com/facebook/jest/pull/13420)) ### [`v29.3.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2930) [Compare Source](https://togithub.com/facebook/jest/compare/v29.2.2...v29.3.0) ##### Features - `[jest-runtime]` Support WebAssembly (Wasm) imports in ESM modules ([#13505](https://togithub.com/facebook/jest/pull/13505)) ##### Fixes - `[jest-config]` Add config validation for `projects` option ([#13565](https://togithub.com/facebook/jest/pull/13565)) - `[jest-mock]` Treat cjs modules as objects so they can be mocked ([#13513](https://togithub.com/facebook/jest/pull/13513)) - `[jest-worker]` Throw an error instead of hanging when jest workers terminate unexpectedly ([#13566](https://togithub.com/facebook/jest/pull/13566)) ##### Chore & Maintenance - `[@jest/transform]` Update `convert-source-map` ([#13509](https://togithub.com/facebook/jest/pull/13509)) - `[docs]` Mention `toStrictEqual` in UsingMatchers docs. ([#13560](https://togithub.com/facebook/jest/pull/13560)) ### [`v29.2.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2922) [Compare Source](https://togithub.com/facebook/jest/compare/v29.2.1...v29.2.2) ##### Fixes - `[@jest/test-sequencer]` Make sure sharding does not produce empty groups ([#13476](https://togithub.com/facebook/jest/pull/13476)) - `[jest-circus]` Test marked as `todo` are shown as todo when inside a focussed describe ([#13504](https://togithub.com/facebook/jest/pull/13504)) - `[jest-mock]` Ensure mock resolved and rejected values are promises from correct realm ([#13503](https://togithub.com/facebook/jest/pull/13503)) - `[jest-snapshot]` Don't highlight passing asymmetric property matchers in snapshot diff ([#13480](https://togithub.com/facebook/jest/issues/13480)) ##### Chore & Maintenance - `[docs]` Update link to Jest 28 upgrade guide in error message ([#13483](https://togithub.com/facebook/jest/pull/13483)) - `[jest-runner, jest-watcher]` Update `emittery` ([#13490](https://togithub.com/facebook/jest/pull/13490)) ### [`v29.2.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2921) [Compare Source](https://togithub.com/facebook/jest/compare/v29.2.0...v29.2.1) ##### Features - `[@jest/globals, jest-mock]` Add `jest.Spied*` utility types ([#13440](https://togithub.com/facebook/jest/pull/13440)) ##### Fixes - `[jest-environment-node]` make `globalThis.performance` writable for Node 19 and fake timers ([#13467](https://togithub.com/facebook/jest/pull/13467)) - `[jest-mock]` Revert [#13398](https://togithub.com/facebook/jest/pull/13398) to restore mocking of setters ([#13472](https://togithub.com/facebook/jest/pull/13472)) ##### Performance - `[*]` Use sha1 instead of sha256 for hashing ([#13421](https://togithub.com/facebook/jest/pull/13421)) ### [`v29.2.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2920) [Compare Source](https://togithub.com/facebook/jest/compare/v29.1.2...v29.2.0) ##### Features - `[@jest/cli, jest-config]` A seed for the test run will be randomly generated, or set by a CLI option ([#13400](https://togithub.com/facebook/jest/pull/13400)) - `[@jest/cli, jest-config]` `--show-seed` will display the seed value in the report, and can be set via a CLI flag or through the config file ([#13400](https://togithub.com/facebook/jest/pull/13400)) - `[jest-config]` Add `readInitialConfig` utility function ([#13356](https://togithub.com/facebook/jest/pull/13356)) - `[jest-core]` Allow `testResultsProcessor` to be async ([#13343](https://togithub.com/facebook/jest/pull/13343)) - `[@jest/environment, jest-environment-node, jest-environment-jsdom, jest-runtime]` Add `getSeed()` to the `jest` object ([#13400](https://togithub.com/facebook/jest/pull/13400)) - `[expect, @jest/expect-utils]` Allow `isA` utility to take a type argument ([#13355](https://togithub.com/facebook/jest/pull/13355)) - `[expect]` Expose `AsyncExpectationResult` and `SyncExpectationResult` types ([#13411](https://togithub.com/facebook/jest/pull/13411)) ##### Fixes - `[babel-plugin-jest-hoist]` Ignore `TSTypeQuery` when checking for hoisted references ([#13367](https://togithub.com/facebook/jest/pull/13367)) - `[jest-core]` Fix `detectOpenHandles` false positives for some special objects such as `TLSWRAP` ([#13414](https://togithub.com/facebook/jest/pull/13414)) - `[jest-mock]` Fix mocking of getters and setters on classes ([#13398](https://togithub.com/facebook/jest/pull/13398)) - `[jest-reporters]` Revert: Transform file paths into hyperlinks ([#13399](https://togithub.com/facebook/jest/pull/13399)) - `[@jest/types]` Infer type of `each` table correctly when the table is a tuple or array ([#13381](https://togithub.com/facebook/jest/pull/13381)) - `[@jest/types]` Rework typings to allow the `*ReturnedWith` matchers to be called with no argument ([#13385](https://togithub.com/facebook/jest/pull/13385)) ##### Chore & Maintenance - `[*]` Update `@babel/*` deps, resulting in slightly different stack traces for `each` ([#13422](https://togithub.com/facebook/jest/pull/13422)) ##### Performance - `[jest-runner]` Do not instrument v8 coverage data if coverage should not be collected ([#13282](https://togithub.com/facebook/jest/pull/13282)) ### [`v29.1.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2912) [Compare Source](https://togithub.com/facebook/jest/compare/v29.1.1...v29.1.2) ##### Fixes - `[expect, @jest/expect]` Revert buggy inference of argument types for `*CalledWith` and `*ReturnedWith` matchers introduced in 29.1.0 ([#13339](https://togithub.com/facebook/jest/pull/13339)) - `[jest-worker]` Add missing dependency on `jest-util` ([#13341](https://togithub.com/facebook/jest/pull/13341)) ### [`v29.1.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2911) [Compare Source](https://togithub.com/facebook/jest/compare/v29.1.0...v29.1.1) ##### Fixes - `[jest-mock]` Revert [#13145](https://togithub.com/facebook/jest/pull/13145) which broke mocking of transpiled ES modules ### [`v29.1.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2910) [Compare Source](https://togithub.com/facebook/jest/compare/v29.0.3...v29.1.0) ##### Features - `[expect, @jest/expect]` Support type inference for function parameters in `CalledWith` assertions ([#13268](https://togithub.com/facebook/jest/pull/13268)) - `[expect, @jest/expect]` Infer type of `*ReturnedWith` matchers argument ([#13278](https://togithub.com/facebook/jest/pull/13278)) - `[@jest/environment, jest-runtime]` Allow `jest.requireActual` and `jest.requireMock` to take a type argument ([#13253](https://togithub.com/facebook/jest/pull/13253)) - `[@jest/environment]` Allow `jest.mock` and `jest.doMock` to take a type argument ([#13254](https://togithub.com/facebook/jest/pull/13254)) - `[@jest/fake-timers]` Add `jest.now()` to return the current fake clock time ([#13244](https://togithub.com/facebook/jest/pull/13244), [#13246](https://togithub.com/facebook/jest/pull/13246)) - `[@jest/mock]` Add `withImplementation` method for temporarily overriding a mock ([#13281](https://togithub.com/facebook/jest/pull/13281)) - `[expect]` Export `toThrow*` matchers ([#13328](https://togithub.com/facebook/jest/pull/13328)) ##### Fixes - `[jest-circus, jest-jasmine2]` Fix error messages for Node's `assert.throes` ([#13322](https://togithub.com/facebook/jest/pull/13322)) - `[jest-haste-map]` Remove `__proto__` usage ([#13256](https://togithub.com/facebook/jest/pull/13256)) - `[jest-mock]` Improve `spyOn` typings to handle optional properties ([#13247](https://togithub.com/facebook/jest/pull/13247)) - `[jest-mock]` Fix mocking of getters and setters on classes ([#13145](https://togithub.com/facebook/jest/pull/13145)) - `[jest-snapshot]` Throw useful error when an array is passed as property matchers ([#13263](https://togithub.com/facebook/jest/pull/13263)) - `[jest-snapshot]` Prioritize parser used in the project ([#13323](https://togithub.com/facebook/jest/pull/13323)) - `[jest-transform]` Attempt to work around issues with atomic writes on Windows ([#11423](https://togithub.com/facebook/jest/pull/11423)) ### [`v29.0.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2903) [Compare Source](https://togithub.com/facebook/jest/compare/v29.0.2...v29.0.3) ##### Features - `[@jest/environment, jest-runtime]` Allow passing a generic type argument to `jest.createMockFromModulekulshekhar/ts-jest
### [`v29.1.0`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2910-httpsgithubcomkulshekharts-jestcomparev2905v2910-2023-03-26) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.5...v29.1.0) ##### Features - Support TypeScript 5.x ([#4064](https://togithub.com/kulshekhar/ts-jest/issues/4064)) ([db98cc9](https://togithub.com/kulshekhar/ts-jest/commit/87f27821db99be411288b50a4f9baa7bedb98cc9)), closes [#4048](https://togithub.com/kulshekhar/ts-jest/issues/4048) #### [29.0.5](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.4...v29.0.5) (2023-01-13) ##### Reverts - Revert "fix(transformer): don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://togithub.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966) #### [29.0.4](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4) (2023-01-10) ##### Bug Fixes - **transformer:** don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://togithub.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a)) - bump `json5` to `2.2.3` ([#3976](https://togithub.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://togithub.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536)) #### [29.0.3](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3) (2022-09-28) ##### Bug Fixes - merge config from `globals` with transformer config correctly ([#3842](https://togithub.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://togithub.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#3841](https://togithub.com/kulshekhar/ts-jest/issues/3841) - **presets:** allow merging transform config when using presets ([#3833](https://togithub.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://togithub.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372)) ##### Features - add `useESM` option to `pathsToModuleNameMapper` options ([#3792](https://togithub.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://togithub.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b)) #### [29.0.2](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2) (2022-09-23) ##### Bug Fixes - mark `ts-jest` as optional in `ConfigGlobals` ([#3816](https://togithub.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://togithub.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#3815](https://togithub.com/kulshekhar/ts-jest/issues/3815) - use correct typings for `config:init` command ([#3825](https://togithub.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://togithub.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570)) #### [29.0.2](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2) (2022-09-22) ##### Bug Fixes - mark `ts-jest` as optional in `ConfigGlobals` ([#3816](https://togithub.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://togithub.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#3815](https://togithub.com/kulshekhar/ts-jest/issues/3815) #### [29.0.1](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1) (2022-09-13) ##### Bug Fixes - **legacy:** include existing globals config in cached config ([#3803](https://togithub.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://togithub.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6)) ##### Features - add typings for `ts-jest` options via `transform` config ([#3805](https://togithub.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://togithub.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff)) ### [`v29.0.5`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2905-httpsgithubcomkulshekharts-jestcomparev2904v2905-2023-01-13) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.4...v29.0.5) ##### Reverts - Revert "fix(transformer): don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966))" ([185eb18](https://togithub.com/kulshekhar/ts-jest/commit/185eb189d7076c717a107066817d2d6959a8fe39)), closes [#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966) ### [`v29.0.4`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2904-httpsgithubcomkulshekharts-jestcomparev2903v2904-2023-01-10) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.3...v29.0.4) ##### Bug Fixes - **transformer:** don't use cache when `tsJestConfig` is different ([#3966](https://togithub.com/kulshekhar/ts-jest/issues/3966)) ([a445638](https://togithub.com/kulshekhar/ts-jest/commit/a445638ca631911e8ab1a896ffdfcd21506ce71a)) - bump `json5` to `2.2.3` ([#3976](https://togithub.com/kulshekhar/ts-jest/pull/3976))([b9f7809](https://togithub.com/kulshekhar/ts-jest/commit/b9f7809948309f92534aeba63f3ffb01cb7dc536)) ### [`v29.0.3`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2903-httpsgithubcomkulshekharts-jestcomparev2902v2903-2022-09-28) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.2...v29.0.3) ##### Bug Fixes - merge config from `globals` with transformer config correctly ([#3842](https://togithub.com/kulshekhar/ts-jest/issues/3842)) ([9c9fd60](https://togithub.com/kulshekhar/ts-jest/commit/9c9fd6097aea36a6e8b06b0e8841df22896f9121)), closes [#3841](https://togithub.com/kulshekhar/ts-jest/issues/3841) - **presets:** allow merging transform config when using presets ([#3833](https://togithub.com/kulshekhar/ts-jest/issues/3833)) ([afc6a94](https://togithub.com/kulshekhar/ts-jest/commit/afc6a948b17c2dc22be51b1a9475a0f6ecbbc372)) ##### Features - add `useESM` option to `pathsToModuleNameMapper` options ([#3792](https://togithub.com/kulshekhar/ts-jest/issues/3792)) ([eabe906](https://togithub.com/kulshekhar/ts-jest/commit/eabe906e1dd6b132a7b0d05ffc13172cd8a6b73b)) ### [`v29.0.2`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2902-httpsgithubcomkulshekharts-jestcomparev2901v2902-2022-09-23) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.1...v29.0.2) ##### Bug Fixes - mark `ts-jest` as optional in `ConfigGlobals` ([#3816](https://togithub.com/kulshekhar/ts-jest/issues/3816)) ([cbb88bb](https://togithub.com/kulshekhar/ts-jest/commit/cbb88bba34dbb852d8f4013be6e020769feb306d)), closes [#3815](https://togithub.com/kulshekhar/ts-jest/issues/3815) - use correct typings for `config:init` command ([#3825](https://togithub.com/kulshekhar/ts-jest/issues/3825)) ([21b94db](https://togithub.com/kulshekhar/ts-jest/commit/21b94dbca25b762f79e63b92dea12d830f444570)) ### [`v29.0.1`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2901-httpsgithubcomkulshekharts-jestcomparev2900v2901-2022-09-13) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v29.0.0...v29.0.1) ##### Bug Fixes - **legacy:** include existing globals config in cached config ([#3803](https://togithub.com/kulshekhar/ts-jest/issues/3803)) ([e79be47](https://togithub.com/kulshekhar/ts-jest/commit/e79be47d2b81a677d0dd39d84328a38ca0f0ffc6)) ##### Features - add typings for `ts-jest` options via `transform` config ([#3805](https://togithub.com/kulshekhar/ts-jest/issues/3805)) ([664b0f2](https://togithub.com/kulshekhar/ts-jest/commit/664b0f2b446a36dd7661f4840ca3dd7722f1f6ff)) ### [`v29.0.0`](https://togithub.com/kulshekhar/ts-jest/blob/HEAD/CHANGELOG.md#2900-httpsgithubcomkulshekharts-jestcomparev2900-next1v2900-2022-09-08) [Compare Source](https://togithub.com/kulshekhar/ts-jest/compare/v28.0.8...v29.0.0) ##### Features - drop Node 12 and Node 17 support ([#3787](https://togithub.com/kulshekhar/ts-jest/issues/3787)) ([0f1de16](https://togithub.com/kulshekhar/ts-jest/commit/0f1de16608dcc7a8ab00bf7fd6a01ebcec6a210a)) - migrate globals config to transformer config ([#3780](https://togithub.com/kulshekhar/ts-jest/issues/3780)) ([31e5843](https://togithub.com/kulshekhar/ts-jest/commit/31e584355434c4fc96022f9e8b41f04c11d24343)) - support Jest 29 ([#3767](https://togithub.com/kulshekhar/ts-jest/issues/3767)) ([94b553b](https://togithub.com/kulshekhar/ts-jest/commit/94b553ba085c52db60f7a7078e3a74d9a02121b1)) ##### DEPRECATIONS - Define `ts-jest` config under `globals` is now deprecated. Please define the config via transformer config instead. ##### BREAKING CHANGES - Only Node 14, 16 and 18 are supported - **Jest 29** is required.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate. View repository job log here.