facebook/jest
### [`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))
### [`v28.1.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2813)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.1.2...v28.1.3)
##### Features
- `[jest-leak-detector]` Use native `FinalizationRegistry` when it exists to get rid of external C dependency ([#12973](https://togithub.com/facebook/jest/pull/12973))
##### Fixes
- `[jest-changed-files]` Fix a lock-up after repeated invocations ([#12757](https://togithub.com/facebook/jest/issues/12757))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedSets ([#12977](https://togithub.com/facebook/jest/pull/12977))
- `[jest-mock]` Add index signature support for `spyOn` types ([#13013](https://togithub.com/facebook/jest/pull/13013), [#13020](https://togithub.com/facebook/jest/pull/13020))
- `[jest-snapshot]` Fix indentation of awaited inline snapshots ([#12986](https://togithub.com/facebook/jest/pull/12986))
##### Chore & Maintenance
- `[*]` Replace internal usage of `pretty-format/ConvertAnsi` with `jest-serializer-ansi-escapes` ([#12935](https://togithub.com/facebook/jest/pull/12935), [#13004](https://togithub.com/facebook/jest/pull/13004))
- `[docs]` Update spyOn docs ([#13000](https://togithub.com/facebook/jest/pull/13000))
### [`v28.1.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2812)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.1.1...v28.1.2)
##### Fixes
- `[jest-runtime]` Avoid star type import from `@jest/globals` ([#12949](https://togithub.com/facebook/jest/pull/12949))
##### Chore & Maintenance
- `[docs]` Mention that jest-codemods now supports Sinon ([#12898](https://togithub.com/facebook/jest/pull/12898))
### [`v28.1.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2811)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.1.0...v28.1.1)
##### Features
- `[jest]` Expose `Config` type ([#12848](https://togithub.com/facebook/jest/pull/12848))
- `[@jest/reporters]` Improve `GitHubActionsReporter`s annotation format ([#12826](https://togithub.com/facebook/jest/pull/12826))
- `[@jest/types]` Infer argument types passed to `test` and `describe` callback functions from `each` tables ([#12885](https://togithub.com/facebook/jest/pull/12885), [#12905](https://togithub.com/facebook/jest/pull/12905))
##### Fixes
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS OrderedMaps ([#12899](https://togithub.com/facebook/jest/pull/12899))
- `[jest-docblock]` Handle multiline comments in parseWithComments ([#12845](https://togithub.com/facebook/jest/pull/12845))
- `[jest-mock]` Improve `spyOn` error messages ([#12901](https://togithub.com/facebook/jest/pull/12901))
- `[jest-runtime]` Correctly report V8 coverage with `resetModules: true` ([#12912](https://togithub.com/facebook/jest/pull/12912))
- `[jest-worker]` Make `JestWorkerFarm` helper type to include methods of worker module that take more than one argument ([#12839](https://togithub.com/facebook/jest/pull/12839))
##### Chore & Maintenance
- `[docs]` Updated docs to indicate that `jest-environment-jsdom` is a separate package [#12828](https://togithub.com/facebook/jest/issues/12828)
- `[docs]` Document the comments used by coverage providers [#12835](https://togithub.com/facebook/jest/issues/12835)
- `[docs]` Use `docusaurus-remark-plugin-tab-blocks` to format tabs with code examples ([#12859](https://togithub.com/facebook/jest/pull/12859))
- `[jest-haste-map]` Bump `walker` version ([#12324](https://togithub.com/facebook/jest/pull/12324))
### [`v28.1.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2810)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.0.3...v28.1.0)
##### Features
- `[jest-circus]` Add `failing` test modifier that inverts the behavior of tests ([#12610](https://togithub.com/facebook/jest/pull/12610))
- `[jest-environment-node, jest-environment-jsdom]` Allow specifying `customExportConditions` ([#12774](https://togithub.com/facebook/jest/pull/12774))
##### Fixes
- `[expect]` Adjust typings of `lastCalledWith`, `nthCalledWith`, `toBeCalledWith` matchers to allow a case there a mock was called with no arguments ([#12807](https://togithub.com/facebook/jest/pull/12807))
- `[@jest/expect-utils]` Fix deep equality of ImmutableJS Lists ([#12763](https://togithub.com/facebook/jest/pull/12763))
- `[jest-core]` Do not collect `SIGNREQUEST` as open handles ([#12789](https://togithub.com/facebook/jest/pull/12789))
##### Chore & Maintenance
- `[docs]` Specified documentation about `--filter` CLI docs ([#12799](https://togithub.com/facebook/jest/pull/12799))
- `[@jest-reporters]` Move helper functions from `utils.ts` into separate files ([#12782](https://togithub.com/facebook/jest/pull/12782))
- `[jest-resolve]` Replace `process.versions.pnp` type declaration with `@types/pnpapi` devDependency ([#12783](https://togithub.com/facebook/jest/pull/12783))
### [`v28.0.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2803)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.0.2...v28.0.3)
##### Fixes
- `[jest-config]` Normalize `reporters` option defined in presets ([#12769](https://togithub.com/facebook/jest/pull/12769))
- `[@jest/reporters]` Fix trailing slash in matching `coverageThreshold` key ([#12714](https://togithub.com/facebook/jest/pull/12714))
- `[jest-resolve]` Fix (experimental) ESM module mocking for re-exports ([#12766](https://togithub.com/facebook/jest/pull/12766))
- `[@jest/transform]` Throw better error if an invalid return value if encountered ([#12764](https://togithub.com/facebook/jest/pull/12764))
##### Chore & Maintenance
- `[docs]` Fix typo in `--shard` CLI docs ([#12761](https://togithub.com/facebook/jest/pull/12761))
### [`v28.0.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2802)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.0.1...v28.0.2)
##### Features
- `[jest-worker]` Add `JestWorkerFarm` helper type ([#12753](https://togithub.com/facebook/jest/pull/12753))
##### Fixes
- `[*]` Lower Node 16 requirement to 16.10 from 16.13 due to a [Node bug](https://togithub.com/nodejs/node/issues/40014) that causes memory and performance issues ([#12754](https://togithub.com/facebook/jest/pull/12754))
### [`v28.0.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2801)
[Compare Source](https://togithub.com/facebook/jest/compare/v28.0.0...v28.0.1)
##### Features
- `[jest-resolve]` Expose `ResolverOptions` type ([#12736](https://togithub.com/facebook/jest/pull/12736))
##### Fixes
- `[expect]` Add missing dependency `jest-util` ([#12744](https://togithub.com/facebook/jest/pull/12744))
- `[jest-circus]` Improve `test.concurrent` ([#12748](https://togithub.com/facebook/jest/pull/12748))
- `[jest-resolve]` Correctly throw an error if `jsdom` test environment is used, but not installed ([#12749](https://togithub.com/facebook/jest/pull/12749))
##### Chore & Maintenance
- `[jest-serializer]` Remove deprecated module from source tree ([#12735](https://togithub.com/facebook/jest/pull/12735))
### [`v28.0.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2800)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.5.1...v28.0.0)
##### Features
- `[babel-jest]` Export `createTransformer` function ([#12399](https://togithub.com/facebook/jest/pull/12399))
- `[expect]` Expose `AsymmetricMatchers`, `MatcherFunction` and `MatcherFunctionWithState` interfaces ([#12363](https://togithub.com/facebook/jest/pull/12363), [#12376](https://togithub.com/facebook/jest/pull/12376))
- `[jest-circus]` Support error logging before retry ([#12201](https://togithub.com/facebook/jest/pull/12201))
- `[jest-circus, jest-jasmine2]` Allowed classes and functions as `describe` and `it`/`test` names ([#12484](https://togithub.com/facebook/jest/pull/12484))
- `[jest-cli, jest-config]` \[**BREAKING**] Remove `testURL` config, use `testEnvironmentOptions.url` instead ([#10797](https://togithub.com/facebook/jest/pull/10797))
- `[jest-cli, jest-core]` Add `--shard` parameter for distributed parallel test execution ([#12546](https://togithub.com/facebook/jest/pull/12546))
- `[jest-cli]` \[**BREAKING**] Remove undocumented `--timers` option ([#12572](https://togithub.com/facebook/jest/pull/12572))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-environment-jsdom` by default ([#12354](https://togithub.com/facebook/jest/pull/12354))
- `[jest-config]` \[**BREAKING**] Stop shipping `jest-jasmine2` by default ([#12355](https://togithub.com/facebook/jest/pull/12355))
- `[jest-config, @jest/types]` Add `ci` to `GlobalConfig` ([#12378](https://togithub.com/facebook/jest/pull/12378))
- `[jest-config]` \[**BREAKING**] Rename `moduleLoader` to `runtime` ([#10817](https://togithub.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Rename `extraGlobals` to `sandboxInjectedGlobals` ([#10817](https://togithub.com/facebook/jest/pull/10817))
- `[jest-config]` \[**BREAKING**] Throw an error instead of showing a warning if multiple configs are used ([#12510](https://togithub.com/facebook/jest/pull/12510))
- `[jest-config]` \[**BREAKING**] Do not normalize long deprecated configuration options `preprocessorIgnorePatterns`, `scriptPreprocessor`, `setupTestFrameworkScriptFile` and `testPathDirs` ([#12701](https://togithub.com/facebook/jest/pull/12701))
- `[jest-cli, jest-core]` Add `--ignoreProjects` CLI argument to ignore test suites by project name ([#12620](https://togithub.com/facebook/jest/pull/12620))
- `[jest-core]` Pass project config to `globalSetup`/`globalTeardown` function as second argument ([#12440](https://togithub.com/facebook/jest/pull/12440))
- `[jest-core]` Stabilize test runners with event emitters ([#12641](https://togithub.com/facebook/jest/pull/12641))
- `[jest-core, jest-watcher]` \[**BREAKING**] Move `TestWatcher` class to `jest-watcher` package ([#12652](https://togithub.com/facebook/jest/pull/12652))
- `[jest-core]` Allow using Summary Reporter as stand-alone reporter ([#12687](https://togithub.com/facebook/jest/pull/12687))
- `[jest-environment-jsdom]` \[**BREAKING**] Upgrade jsdom to 19.0.0 ([#12290](https://togithub.com/facebook/jest/pull/12290))
- `[jest-environment-jsdom]` \[**BREAKING**] Add default `browser` condition to `exportConditions` for `jsdom` environment ([#11924](https://togithub.com/facebook/jest/pull/11924))
- `[jest-environment-jsdom]` \[**BREAKING**] Pass global config to Jest environment constructor for `jsdom` environment ([#12461](https://togithub.com/facebook/jest/pull/12461))
- `[jest-environment-jsdom]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#12469](https://togithub.com/facebook/jest/pull/12469))
- `[jest-environment-node]` \[**BREAKING**] Add default `node` and `node-addon` conditions to `exportConditions` for `node` environment ([#11924](https://togithub.com/facebook/jest/pull/11924))
- `[jest-environment-node]` \[**BREAKING**] Pass global config to Jest environment constructor for `node` environment ([#12461](https://togithub.com/facebook/jest/pull/12461))
- `[jest-environment-node]` \[**BREAKING**] Second argument `context` to constructor is mandatory ([#12469](https://togithub.com/facebook/jest/pull/12469))
- `[jest-environment-node]` Add all available globals to test globals, not just explicit ones ([#12642](https://togithub.com/facebook/jest/pull/12642), [#12696](https://togithub.com/facebook/jest/pull/12696))
- `[@jest/expect]` New module which extends `expect` with `jest-snapshot` matchers ([#12404](https://togithub.com/facebook/jest/pull/12404), [#12410](https://togithub.com/facebook/jest/pull/12410), [#12418](https://togithub.com/facebook/jest/pull/12418))
- `[@jest/expect-utils]` New module exporting utils for `expect` ([#12323](https://togithub.com/facebook/jest/pull/12323))
- `[@jest/fake-timers]` \[**BREAKING**] Rename `timers` configuration option to `fakeTimers` ([#12572](https://togithub.com/facebook/jest/pull/12572))
- `[@jest/fake-timers]` \[**BREAKING**] Allow `jest.useFakeTimers()` and `projectConfig.fakeTimers` to take an options bag ([#12572](https://togithub.com/facebook/jest/pull/12572))
- `[jest-haste-map]` \[**BREAKING**] `HasteMap.create` now returns a promise ([#12008](https://togithub.com/facebook/jest/pull/12008))
- `[jest-haste-map]` Add support for `dependencyExtractor` written in ESM ([#12008](https://togithub.com/facebook/jest/pull/12008))
- `[jest-mock]` \[**BREAKING**] Rename exported utility types `ClassLike`, `FunctionLike`, `ConstructorLikeKeys`, `MethodLikeKeys`, `PropertyLikeKeys`; remove exports of utility types `ArgumentsOf`, `ArgsType`, `ConstructorArgumentsOf` - TS builtin utility types `ConstructorParameters` and `Parameters` should be used instead ([#12435](https://togithub.com/facebook/jest/pull/12435), [#12489](https://togithub.com/facebook/jest/pull/12489))
- `[jest-mock]` Improve `isMockFunction` to infer types of passed function ([#12442](https://togithub.com/facebook/jest/pull/12442))
- `[jest-mock]` \[**BREAKING**] Improve the usage of `jest.fn` generic type argument ([#12489](https://togithub.com/facebook/jest/pull/12489))
- `[jest-mock]` Add support for auto-mocking async generator functions ([#11080](https://togithub.com/facebook/jest/pull/11080))
- `[jest-mock]` Add `contexts` member to mock functions ([#12601](https://togithub.com/facebook/jest/pull/12601))
- `[@jest/reporters]` Add GitHub Actions reporter ([#11320](https://togithub.com/facebook/jest/pull/11320), [#12658](https://togithub.com/facebook/jest/pull/12658))
- `[@jest/reporters]` Pass `reporterContext` to custom reporter constructors as third argument ([#12657](https://togithub.com/facebook/jest/pull/12657))
- `[jest-resolve]` \[**BREAKING**] Add support for `package.json` `exports` ([#11961](https://togithub.com/facebook/jest/pull/11961), [#12373](https://togithub.com/facebook/jest/pull/12373))
- `[jest-resolve]` Support package self-reference ([#12682](https://togithub.com/facebook/jest/pull/12682))
- `[jest-resolve, jest-runtime]` Add support for `data:` URI import and mock ([#12392](https://togithub.com/facebook/jest/pull/12392))
- `[jest-resolve, jest-runtime]` Add support for async resolver ([#11540](https://togithub.com/facebook/jest/pull/11540))
- `[jest-resolve]` \[**BREAKING**] Remove `browser?: boolean` from resolver options, `conditions: ['browser']` should be used instead ([#12707](https://togithub.com/facebook/jest/pull/12707))
- `[jest-resolve]` Expose `JestResolver`, `AsyncResolver`, `SyncResolver`, `PackageFilter`, `PathFilter` and `PackageJSON` types ([#12707](https://togithub.com/facebook/jest/pull/12707), ([#12712](https://togithub.com/facebook/jest/pull/12712))
- `[jest-runner]` Allow `setupFiles` module to export an async function ([#12042](https://togithub.com/facebook/jest/pull/12042))
- `[jest-runner]` Allow passing `testEnvironmentOptions` via docblocks ([#12470](https://togithub.com/facebook/jest/pull/12470))
- `[jest-runner]` Expose `CallbackTestRunner`, `EmittingTestRunner` abstract classes and `CallbackTestRunnerInterface`, `EmittingTestRunnerInterface` to help typing third party runners ([#12646](https://togithub.com/facebook/jest/pull/12646), [#12715](https://togithub.com/facebook/jest/pull/12715))
- `[jest-runner]` Lock version of `source-map-support` to 0.5.13 ([#12720](https://togithub.com/facebook/jest/pull/12720))
- `[jest-runtime]` \[**BREAKING**] `Runtime.createHasteMap` now returns a promise ([#12008](https://togithub.com/facebook/jest/pull/12008))
- `[jest-runtime]` Calling `jest.resetModules` function will clear FS and transform cache ([#12531](https://togithub.com/facebook/jest/pull/12531))
- `[jest-runtime]` \[**BREAKING**] Remove `Context` type export, it must be imported from `@jest/test-result` ([#12685](https://togithub.com/facebook/jest/pull/12685))
- `[jest-runtime]` Add `import.meta.jest` ([#12698](https://togithub.com/facebook/jest/pull/12698))
- `[@jest/schemas]` New module for JSON schemas for Jest's config ([#12384](https://togithub.com/facebook/jest/pull/12384))
- `[@jest/source-map]` Migrate from `source-map` to `@jridgewell/trace-mapping` ([#12692](https://togithub.com/facebook/jest/pull/12692))
- `[jest-transform]` \[**BREAKING**] Make it required for `process()` and `processAsync()` methods to always return structured data ([#12638](https://togithub.com/facebook/jest/pull/12638))
- `[jest-test-result]` Add duration property to JSON test output ([#12518](https://togithub.com/facebook/jest/pull/12518))
- `[jest-watcher]` \[**BREAKING**] Make `PatternPrompt` class to take `entityName` as third constructor parameter instead of `this._entityName` ([#12591](https://togithub.com/facebook/jest/pull/12591))
- `[jest-worker]` \[**BREAKING**] Allow only absolute `workerPath` ([#12343](https://togithub.com/facebook/jest/pull/12343))
- `[jest-worker]` \[**BREAKING**] Default to advanced serialization when using child process workers ([#10983](https://togithub.com/facebook/jest/pull/10983))
- `[pretty-format]` New `maxWidth` parameter ([#12402](https://togithub.com/facebook/jest/pull/12402))
##### Fixes
- `[*]` Use `sha256` instead of `md5` as hashing algortihm for compatibility with FIPS systems ([#12722](https://togithub.com/facebook/jest/pull/12722))
- `[babel-jest]` \[**BREAKING**] Pass `rootDir` as `root` in Babel's options ([#12689](https://togithub.com/facebook/jest/pull/12689))
- `[expect]` Move typings of `.not`, `.rejects` and `.resolves` modifiers outside of `Matchers` interface ([#12346](https://togithub.com/facebook/jest/pull/12346))
- `[expect]` Throw useful error if `expect.extend` is called with invalid matchers ([#12488](https://togithub.com/facebook/jest/pull/12488))
- `[expect]` Fix `iterableEquality` ignores other properties ([#8359](https://togithub.com/facebook/jest/pull/8359))
- `[expect]` Fix print for the `closeTo` matcher ([#12626](https://togithub.com/facebook/jest/pull/12626))
- `[jest-changed-files]` Improve `changedFilesWithAncestor` pattern for Mercurial SCM ([#12322](https://togithub.com/facebook/jest/pull/12322))
- `[jest-circus, @jest/types]` Disallow undefined value in `TestContext` type ([#12507](https://togithub.com/facebook/jest/pull/12507))
- `[jest-config]` Correctly detect CI environment and update snapshots accordingly ([#12378](https://togithub.com/facebook/jest/pull/12378))
- `[jest-config]` Pass `moduleTypes` to `ts-node` to enforce CJS when transpiling ([#12397](https://togithub.com/facebook/jest/pull/12397))
- `[jest-config]` \[**BREAKING**] Add `mjs` and `cjs` to default `moduleFileExtensions` config ([#12578](https://togithub.com/facebook/jest/pull/12578))
- `[jest-config, jest-haste-map]` Allow searching for tests in `node_modules` by exposing `retainAllFiles` ([#11084](https://togithub.com/facebook/jest/pull/11084))
- `[jest-core]` \[**BREAKING**] Exit with status `1` if no tests are found with `--findRelatedTests` flag ([#12487](https://togithub.com/facebook/jest/pull/12487))
- `[jest-core]` Do not report unref-ed subprocesses as open handles ([#12705](https://togithub.com/facebook/jest/pull/12705))
- `[jest-each]` `%#` is not replaced with index of the test case ([#12517](https://togithub.com/facebook/jest/pull/12517))
- `[jest-each]` Fixes error message with incorrect count of missing arguments ([#12464](https://togithub.com/facebook/jest/pull/12464))
- `[jest-environment-jsdom]` Make `jsdom` accessible to extending environments again ([#12232](https://togithub.com/facebook/jest/pull/12232))
- `[jest-environment-jsdom]` Log JSDOM errors more cleanly ([#12386](https://togithub.com/facebook/jest/pull/12386))
- `[jest-environment-node]` Add `MessageChannel`, `MessageEvent` to globals ([#12553](https://togithub.com/facebook/jest/pull/12553))
- `[jest-environment-node]` Add `structuredClone` to globals ([#12631](https://togithub.com/facebook/jest/pull/12631))
- `[@jest/expect-utils]` \[**BREAKING**] Fix false positives when looking for `undefined` prop ([#8923](https://togithub.com/facebook/jest/pull/8923))
- `[jest-haste-map]` Don't use partial results if file crawl errors ([#12420](https://togithub.com/facebook/jest/pull/12420))
- `[jest-haste-map]` Make watchman existence check lazy+async ([#12675](https://togithub.com/facebook/jest/pull/12675))
- `[jest-jasmine2, jest-types]` \[**BREAKING**] Move all `jasmine` specific types from `@jest/types` to its own package ([#12125](https://togithub.com/facebook/jest/pull/12125))
- `[jest-jasmine2]` Do not set `duration` to `0` for skipped tests ([#12518](https://togithub.com/facebook/jest/pull/12518))
- `[jest-matcher-utils]` Pass maxWidth to `pretty-format` to avoid printing every element in arrays by default ([#12402](https://togithub.com/facebook/jest/pull/12402))
- `[jest-mock]` Fix function overloads for `spyOn` to allow more correct type inference in complex object ([#12442](https://togithub.com/facebook/jest/pull/12442))
- `[jest-mock]` Handle overridden `Function.name` property ([#12674](https://togithub.com/facebook/jest/pull/12674))
- `[@jest/reporters]` Notifications generated by the `--notify` flag are no longer persistent in GNOME Shell. ([#11733](https://togithub.com/facebook/jest/pull/11733))
- `[@jest/reporters]` Move missing icon file which is needed for `NotifyReporter` class. ([#12593](https://togithub.com/facebook/jest/pull/12593))
- `[@jest/reporters]` Update `v8-to-istanbul` ([#12697](https://togithub.com/facebook/jest/pull/12697))
- `[jest-resolver]` Call custom resolver with core node.js modules ([#12654](https://togithub.com/facebook/jest/pull/12654))
- `[jest-runner]` Correctly resolve `source-map-support` ([#12706](https://togithub.com/facebook/jest/pull/12706))
- `[jest-worker]` Fix `Farm` execution results memory leak ([#12497](https://togithub.com/facebook/jest/pull/12497))
##### Chore & Maintenance
- `[*]` \[**BREAKING**] Drop support for Node v10 and v15 and target first LTS `16.13.0` ([#12220](https://togithub.com/facebook/jest/pull/12220))
- `[*]` \[**BREAKING**] Drop support for `typescript@3.8`, minimum version is now `4.3` ([#11142](https://togithub.com/facebook/jest/pull/11142), [#12648](https://togithub.com/facebook/jest/pull/12648))
- `[*]` Bundle all `.d.ts` files into a single `index.d.ts` per module ([#12345](https://togithub.com/facebook/jest/pull/12345))
- `[*]` Use `globalThis` instead of `global` ([#12447](https://togithub.com/facebook/jest/pull/12447))
- `[babel-jest]` \[**BREAKING**] Only export `createTransformer` ([#12407](https://togithub.com/facebook/jest/pull/12407))
- `[docs]` Add note about not mixing `done()` with Promises ([#11077](https://togithub.com/facebook/jest/pull/11077))
- `[docs, examples]` Update React examples to match with the new React guidelines for code examples ([#12217](https://togithub.com/facebook/jest/pull/12217))
- `[docs]` Add clarity for module factory hoisting limitations ([#12453](https://togithub.com/facebook/jest/pull/12453))
- `[docs]` Add more information about how code transformers work ([#12407](https://togithub.com/facebook/jest/pull/12407))
- `[docs]` Add upgrading guide ([#12633](https://togithub.com/facebook/jest/pull/12633))
- `[expect]` \[**BREAKING**] Remove support for importing `build/utils` ([#12323](https://togithub.com/facebook/jest/pull/12323))
- `[expect]` \[**BREAKING**] Migrate to ESM ([#12344](https://togithub.com/facebook/jest/pull/12344))
- `[expect]` \[**BREAKING**] Snapshot matcher types are moved to `@jest/expect` ([#12404](https://togithub.com/facebook/jest/pull/12404))
- `[jest-cli]` Update `yargs` to v17 ([#12357](https://togithub.com/facebook/jest/pull/12357))
- `[jest-config]` \[**BREAKING**] Remove `getTestEnvironment` export ([#12353](https://togithub.com/facebook/jest/pull/12353))
- `[jest-config]` \[**BREAKING**] Rename config option `name` to `id` ([#11981](https://togithub.com/facebook/jest/pull/11981))
- `[jest-create-cache-key-function]` Added README.md file with basic usage instructions ([#12492](https://togithub.com/facebook/jest/pull/12492))
- `[@jest/core]` Use `index.ts` instead of `jest.ts` as main export ([#12329](https://togithub.com/facebook/jest/pull/12329))
- `[jest-environment-jsdom]` \[**BREAKING**] Migrate to ESM ([#12340](https://togithub.com/facebook/jest/pull/12340))
- `[jest-environment-node]` \[**BREAKING**] Migrate to ESM ([#12340](https://togithub.com/facebook/jest/pull/12340))
- `[jest-haste-map]` Remove legacy `isRegExpSupported` ([#12676](https://togithub.com/facebook/jest/pull/12676))
- `[@jest/fake-timers]` Update `@sinonjs/fake_timers` to v9 ([#12357](https://togithub.com/facebook/jest/pull/12357))
- `[jest-jasmine2, jest-runtime]` \[**BREAKING**] Use `Symbol` to pass `jest.setTimeout` value instead of `jasmine` specific logic ([#12124](https://togithub.com/facebook/jest/pull/12124))
- `[jest-phabricator]` \[**BREAKING**] Migrate to ESM ([#12341](https://togithub.com/facebook/jest/pull/12341))
- `[jest-resolve]` \[**BREAKING**] Make `requireResolveFunction` argument mandatory ([#12353](https://togithub.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Remove some type exports from `@jest/test-result` ([#12353](https://togithub.com/facebook/jest/pull/12353))
- `[jest-runner]` \[**BREAKING**] Second argument to constructor (`Context`) is not optional ([#12640](https://togithub.com/facebook/jest/pull/12640))
- `[jest-serializer]` \[**BREAKING**] Deprecate package in favour of using `v8` APIs directly ([#12391](https://togithub.com/facebook/jest/pull/12391))
- `[jest-snapshot]` \[**BREAKING**] Migrate to ESM ([#12342](https://togithub.com/facebook/jest/pull/12342))
- `[jest-transform]` Update `write-file-atomic` to v4 ([#12357](https://togithub.com/facebook/jest/pull/12357))
- `[jest-types]` \[**BREAKING**] Remove `Config.Glob` and `Config.Path` ([#12406](https://togithub.com/facebook/jest/pull/12406))
- `[jest]` Use `index.ts` instead of `jest.ts` as main export ([#12329](https://togithub.com/facebook/jest/pull/12329))
##### Performance
- `[jest-haste-map]` \[**BREAKING**] Default to `node` crawler over shelling out to `find` if `watchman` is not enabled ([#12320](https://togithub.com/facebook/jest/pull/12320))
### [`v27.5.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2751)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.5.0...v27.5.1)
##### Features
- `[jest-config]` Support comments in JSON config file ([#12316](https://togithub.com/facebook/jest/pull/12316))
- `[pretty-format]` Expose `ConvertAnsi` plugin ([#12308](https://togithub.com/facebook/jest/pull/12308))
##### Fixes
- `[expect]` Add type definitions for asymmetric `closeTo` matcher ([#12304](https://togithub.com/facebook/jest/pull/12304))
- `[jest-cli]` Load binary via exported API ([#12315](https://togithub.com/facebook/jest/pull/12315))
- `[jest-config]` Replace `jsonlint` with `parse-json` ([#12316](https://togithub.com/facebook/jest/pull/12316))
- `[jest-repl]` Make module importable ([#12311](https://togithub.com/facebook/jest/pull/12311) & [#12315](https://togithub.com/facebook/jest/pull/12315))
##### Chore & Maintenance
- `[*]` Avoid anonymous default exports ([#12313](https://togithub.com/facebook/jest/pull/12313))
### [`v27.5.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2750)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.7...v27.5.0)
##### Features
- `[expect]` Add asymmetric matcher `expect.closeTo` ([#12243](https://togithub.com/facebook/jest/pull/12243))
- `[jest-mock]` Added `mockFn.mock.lastCall` to retrieve last argument ([#12285](https://togithub.com/facebook/jest/pull/12285))
##### Fixes
- `[expect]` Add a fix for `.toHaveProperty('')` ([#12251](https://togithub.com/facebook/jest/pull/12251))
- `[jest-each, @jest/globals]` Allow passing `ReadonlyArray` type of a table to `describe.each` and `test.each` ([#12297](https://togithub.com/facebook/jest/pull/12297))
- `[@jest/globals]` Add missing `options` argument to `jest.doMock` typing ([#12292](https://togithub.com/facebook/jest/pull/12292))
- `[jest-environment-node]` Add `atob` and `btoa` ([#12269](https://togithub.com/facebook/jest/pull/12269))
- `[jest-matcher-utils]` Correct diff for expected asymmetric matchers ([#12264](https://togithub.com/facebook/jest/pull/12264))
- `[jest-message-util]` Fix `.getTopFrame()` (and `toMatchInlineSnapshot()`) with `mjs` files ([#12277](https://togithub.com/facebook/jest/pull/12277))
##### Chore & Maintenance
- `[*]` Update `graceful-fs` to `^4.2.9` ([#11749](https://togithub.com/facebook/jest/pull/11749))
##### Performance
- `[jest-resolve]` perf: skip error creation on not found `stat` calls ([#11749](https://togithub.com/facebook/jest/pull/11749))
### [`v27.4.7`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2747)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.6...v27.4.7)
##### Fixes
- `jest-config` Add missing `@babel/core` dependency ([#12216](https://togithub.com/facebook/jest/pull/12216))
### [`v27.4.6`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2746)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.5...v27.4.6)
##### Fixes
- `[jest-environment-node]` Add `AbortSignal` ([#12157](https://togithub.com/facebook/jest/pull/12157))
- `[jest-environment-node]` Add Missing node global `performance` ([#12002](https://togithub.com/facebook/jest/pull/12002))
- `[jest-runtime]` Handle missing `mocked` property ([#12213](https://togithub.com/facebook/jest/pull/12213))
- `[@jest/transform]` Update dependency package `pirates` to 4.0.4 ([#12002](https://togithub.com/facebook/jest/pull/12002))
##### Performance
- `jest-config` perf: only register ts-node once when loading TS config files ([#12160](https://togithub.com/facebook/jest/pull/12160))
### [`v27.4.5`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2745)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.4...v27.4.5)
##### Fixes
- `[jest-worker]` Stop explicitly passing `process.env` ([#12141](https://togithub.com/facebook/jest/pull/12141))
### [`v27.4.4`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2744)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.3...v27.4.4)
##### Fixes
- `[babel-jest]` Add `process.version` chunk to the cache key ([#12122](https://togithub.com/facebook/jest/pull/12122))
- `[jest-environment]` Add `mocked` to `jest` object ([#12133](https://togithub.com/facebook/jest/pull/12133))
- `[jest-worker]` Stop explicitly passing `execArgv` ([#12128](https://togithub.com/facebook/jest/pull/12128))
##### Chore & Maintenance
- `[website]` Fix the card front that looks overlapping part of the card back
### [`v27.4.3`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2743)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.2...v27.4.3)
##### Fixes
- `[jest-environment-jsdom]` Remove `@types/jsdom` dependency (and make its `dom` property `private`) ([#12107](https://togithub.com/facebook/jest/pull/12107))
### [`v27.4.2`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2742)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.1...v27.4.2)
##### Fixes
- `[jest-worker]` Add additional `execArgv` to filter ([#12103](https://togithub.com/facebook/jest/pull/12103))
### [`v27.4.1`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2741)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.4.0...v27.4.1)
##### Fixes
- `[jest-worker]` Filter `execArgv` correctly ([#12097](https://togithub.com/facebook/jest/pull/12097))
### [`v27.4.0`](https://togithub.com/facebook/jest/blob/HEAD/CHANGELOG.md#2740)
[Compare Source](https://togithub.com/facebook/jest/compare/v27.3.1...v27.4.0)
##### Features
- `[expect]` Enhancing the `toHaveProperty` matcher to support array selection ([#12092](https://togithub.com/facebook/jest/pull/12092))
- `[jest-core]` Add support for `testResultsProcessor` written in ESM ([#12006](https://togithub.com/facebook/jest/pull/12006))
- `[jest-diff, pretty-format]` Add `compareKeys` option for custom sorting of object keys ([#11992](https://togithub.com/facebook/jest/pull/11992))
- `[jest-mock]` Add `ts-jest` mock util functions ([#12089](https://togithub.com/facebook/jest/pull/12089))
##### Fixes
- `[expect]` Allow
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 this update 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:
^23.6.0
->^29.0.0
Release Notes
facebook/jest
### [`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.createMockFromModuleConfiguration
📅 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 this update again.
This PR has been generated by Mend Renovate. View repository job log here.